curl --request POST \
--url https://cloud.memsource.com/web/api2/v1/quotes \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"analyse": {
"id": "<string>"
},
"name": "<string>",
"priceList": {
"id": "<string>"
},
"project": {
"uid": "3HYnHHLkTPJfMxBCDbPXFe"
},
"workflowStepList": [
{
"id": "<string>"
}
]
}
'import requests
url = "https://cloud.memsource.com/web/api2/v1/quotes"
payload = {
"analyse": { "id": "<string>" },
"name": "<string>",
"priceList": { "id": "<string>" },
"project": { "uid": "3HYnHHLkTPJfMxBCDbPXFe" },
"workflowStepList": [{ "id": "<string>" }]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
analyse: {id: '<string>'},
name: '<string>',
priceList: {id: '<string>'},
project: {uid: '3HYnHHLkTPJfMxBCDbPXFe'},
workflowStepList: [{id: '<string>'}]
})
};
fetch('https://cloud.memsource.com/web/api2/v1/quotes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud.memsource.com/web/api2/v1/quotes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'analyse' => [
'id' => '<string>'
],
'name' => '<string>',
'priceList' => [
'id' => '<string>'
],
'project' => [
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
],
'workflowStepList' => [
[
'id' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://cloud.memsource.com/web/api2/v1/quotes"
payload := strings.NewReader("{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://cloud.memsource.com/web/api2/v1/quotes")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.memsource.com/web/api2/v1/quotes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"analyseUid": "<string>",
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"uid": "<string>",
"userName": "<string>"
},
"currency": "<string>",
"customerEmail": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"editable": true,
"id": 123,
"innerId": 123,
"name": "<string>",
"netRateScheme": {
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"uid": "<string>",
"userName": "<string>"
},
"dateCreated": "2023-11-07T05:31:56Z",
"id": "<string>",
"isDefault": true,
"name": "<string>",
"uid": "<string>"
},
"outdated": true,
"priceList": {
"id": "<string>",
"name": "<string>",
"uid": "<string>"
},
"provider": {
"type": "<string>",
"id": "<string>",
"uid": "<string>"
},
"totalPrice": 123,
"uid": "<string>",
"workflowStepList": [
{
"id": "<string>",
"lqaEnabled": true,
"name": "<string>",
"order": 123,
"uid": "<string>"
}
]
}Create quote
Deprecated. Use /api2/v2/quotes instead. Price lists with Hour billing unit are not supported.
curl --request POST \
--url https://cloud.memsource.com/web/api2/v1/quotes \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"analyse": {
"id": "<string>"
},
"name": "<string>",
"priceList": {
"id": "<string>"
},
"project": {
"uid": "3HYnHHLkTPJfMxBCDbPXFe"
},
"workflowStepList": [
{
"id": "<string>"
}
]
}
'import requests
url = "https://cloud.memsource.com/web/api2/v1/quotes"
payload = {
"analyse": { "id": "<string>" },
"name": "<string>",
"priceList": { "id": "<string>" },
"project": { "uid": "3HYnHHLkTPJfMxBCDbPXFe" },
"workflowStepList": [{ "id": "<string>" }]
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
analyse: {id: '<string>'},
name: '<string>',
priceList: {id: '<string>'},
project: {uid: '3HYnHHLkTPJfMxBCDbPXFe'},
workflowStepList: [{id: '<string>'}]
})
};
fetch('https://cloud.memsource.com/web/api2/v1/quotes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud.memsource.com/web/api2/v1/quotes",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'analyse' => [
'id' => '<string>'
],
'name' => '<string>',
'priceList' => [
'id' => '<string>'
],
'project' => [
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
],
'workflowStepList' => [
[
'id' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://cloud.memsource.com/web/api2/v1/quotes"
payload := strings.NewReader("{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://cloud.memsource.com/web/api2/v1/quotes")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.memsource.com/web/api2/v1/quotes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"analyse\": {\n \"id\": \"<string>\"\n },\n \"name\": \"<string>\",\n \"priceList\": {\n \"id\": \"<string>\"\n },\n \"project\": {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n },\n \"workflowStepList\": [\n {\n \"id\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"analyseUid": "<string>",
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"uid": "<string>",
"userName": "<string>"
},
"currency": "<string>",
"customerEmail": "<string>",
"dateCreated": "2023-11-07T05:31:56Z",
"editable": true,
"id": 123,
"innerId": 123,
"name": "<string>",
"netRateScheme": {
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"uid": "<string>",
"userName": "<string>"
},
"dateCreated": "2023-11-07T05:31:56Z",
"id": "<string>",
"isDefault": true,
"name": "<string>",
"uid": "<string>"
},
"outdated": true,
"priceList": {
"id": "<string>",
"name": "<string>",
"uid": "<string>"
},
"provider": {
"type": "<string>",
"id": "<string>",
"uid": "<string>"
},
"totalPrice": 123,
"uid": "<string>",
"workflowStepList": [
{
"id": "<string>",
"lqaEnabled": true,
"name": "<string>",
"order": 123,
"uid": "<string>"
}
]
}Authorizations
Get a token from auth/login endpoint and then pass it in the Authorization HTTP header in every subsequent API call. For more information visit our help center.
Body
Create quote request
Show child attributes
Show child attributes
255Show child attributes
Show child attributes
Reference to an object by its unique identifier
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Created
UID of the analysis this quote was generated from; null if not analysis-based
Billing unit used for pricing
Character, Word, Page, Hour Show child attributes
Show child attributes
Currency code (ISO 4217) of the quote
Customer email address for the quote; null if not set
Date and time the quote was created
When true, the calling user may edit this quote
Internal numeric identifier
Sequential quote number within the project
Quote name; defaults to "Quote #" when not explicitly set
Show child attributes
Show child attributes
When true, the quote is outdated and should be recalculated
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Type of the quote
BUYER, PROVIDER Current status of the quote
APPROVED, DECLINED, DRAFT, FOR_APPROVAL, NEW Total price of the quote; null if not yet calculated
Unique identifier used in API paths
Workflow steps included in the quote
Show child attributes
Show child attributes
Was this page helpful?