Quotes
Quotes represent a set of jobs that are quoted together.
The Quote object
Properties
idstring
Unique identifier for the object.
acceptedDatedate
The date the quote was accepted.
applyVATReverseChargeboolean
True if the reverse charge applies.
archiveboolean
True if the entity is archived.
clientobject
The client.clientNotestring
Any notes that are visible to the client.
currencyobject
The currency.discountnumber
The discount percentage.
documentobject
The document configuration.filenameFormatstring
The filename format.
internalNotesarray
The notes linked to the entity.
isConflictingNumberboolean
True if the number is conflicting.
issueDatedate
The date the quote was issued.
labelsarray
The labels.linesarray
The lines.
notesstring
The notes linked to the entity.
numberstring
The quote number.
pinnedboolean
True if the entity is pinned.
rappenRoundingboolean
True if the rounding is in rappen (CHF currency only).
sentDatedate
The date the quote was sent.
sentDateStatusobject
The status of the sent date.statusnumber
The status of the quote. Valid values are:
1
(draft),2
(sent),3
(accepted),4
(refused).tax1object
The first tax.tax2object
The second taxtermsstring
The terms of the quote.
totalobject
The total of the quote.userobject
The user that created the quote.validityDatedate
The date the quote is valid until.
createdAtdate
The date and time the entity was created.
updatedAtdate
The date and time the entity was last updated.
quote object
{
"id": "6728d5531736399b5f80ffaf",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:08:19.412Z",
"labels": [],
"lines": [
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
},
"value": 2000
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 0,
"total": 280
},
"total": 280
},
"group": {
"isParent": false,
"childLines": []
},
"deliveryDate": "2024-10-28T15:00:00.000Z",
"additionalInfo": null,
"unitCost": 0.14,
"discount": 0,
"notIncludeInTaxes": false,
"lineTotal": 280,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 210,
"id": "6728d5531736399b5f80ffb2"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 28,
"id": "6728d5531736399b5f80ffb4"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 42,
"id": "6728d5531736399b5f80ffb6"
}
],
"groupMatches": false,
"id": "6728d5531736399b5f80ffb1"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"status": 1,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:08:19.412Z",
"createdAt": "2024-11-04T14:08:19.417Z",
"updatedAt": "2024-11-04T14:08:19.437Z"
}
List all quotes
This endpoint allows you to retrieve all the quotes.
Request
curl -G https://api.lsp.expert/v2/quotes \
-u {key}:
Response
{
"items": [{
"id": "6728d5531736399b5f80ffaf",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:08:19.412Z",
"labels": [],
"lines": [
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
},
"value": 2000
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 0,
"total": 280
},
"total": 280
},
"group": {
"isParent": false,
"childLines": []
},
"deliveryDate": "2024-10-28T15:00:00.000Z",
"additionalInfo": null,
"unitCost": 0.14,
"discount": 0,
"notIncludeInTaxes": false,
"lineTotal": 280,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 210,
"id": "6728d5531736399b5f80ffb2"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 28,
"id": "6728d5531736399b5f80ffb4"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 42,
"id": "6728d5531736399b5f80ffb6"
}
],
"groupMatches": false,
"id": "6728d5531736399b5f80ffb1"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"status": 1,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:08:19.412Z",
"createdAt": "2024-11-04T14:08:19.417Z",
"updatedAt": "2024-11-04T14:08:19.437Z"
},
{...},
{...}
],
"pageSize": 20,
"page": 1,
"totalPages": 1,
"totalItems": 2,
"hasNextPage": false,
"hasPreviousPage": false
}
Create a quote
This endpoint allows you to add a new quote.
Parameters
clientstring Required
The client id.
currencystring Required
The currency code (ISO, e.g., EUR).
Request
curl https://api.lsp.expert/v2/quotes \
-u {key}: \
-d client="6718a1350e27164043ce9e80" \
-d currency="EUR"
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "002.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:23:41.604Z",
"labels": [],
"lines": [],
"number": "002",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"status": 1,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 0,
"subtotalTaxable": 0,
"subtotalWithoutTaxes": 0,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 0,
"value": 0.21
},
"tax2": null,
"total": 0
},
"user": {
"id": "6718a0b50e27164043ce9130",
"name": "Degallaix Corp."
},
"validityDate": "2024-11-14T14:23:41.604Z",
"createdAt": "2024-11-04T14:23:41.605Z",
"updatedAt": "2024-11-04T14:23:41.611Z"
}
Create a quote for jobs
This endpoint allows you to add a new quote and automatically add several lines for jobs.
Parameters
jobsarray
The list of jobs ids.
Request
curl https://api.lsp.expert/v2/quotes/multi \
-u {key}: \
-d ids=["6718a1ea0e27164043ceb62d", "6719f4f853737267e419408d"]
Response
[
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"id": "6718a1ea0e27164043ceb62d",
"groupId": "671f9cd7fca5590b104135a6",
"name": "Third job",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"deliveryDate": "2024-10-25T08:00:00.000Z",
"additionalInfo": null,
"unitCost": 0.14,
"discount": 0,
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"value": 1000,
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
}
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 140,
"discount": 0,
"total": 140
},
"total": 140
},
"notIncludeInTaxes": false,
"lineTotal": 140,
"matches": [],
"groupMatches": false,
"group": {
"isParent": false,
"childLines": []
},
"id": "6728d9ae1736399b5f810c5c"
},
{
"job": {
"id": "6719f4f853737267e419408d",
"groupId": "671f9cd7fca5590b104135a6",
"name": "Fourth job",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"deliveryDate": "2024-10-25T08:00:00.000Z",
"additionalInfo": null,
"unitCost": 0.14,
"discount": 0,
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"value": 1000,
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
}
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 140,
"discount": 0,
"total": 140
},
"total": 140
},
"notIncludeInTaxes": false,
"lineTotal": 140,
"matches": [],
"groupMatches": false,
"group": {
"isParent": false,
"childLines": []
},
"id": "6728d9ae1736399b5f810c66"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"status": 1,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:26:54.795Z"
}
]
Retrieve a quote
This endpoint allows you to retrieve a quote by providing their id.
Request
curl https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52 \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "002.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:23:41.604Z",
"labels": [],
"lines": [],
"number": "002",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"status": 1,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 0,
"subtotalTaxable": 0,
"subtotalWithoutTaxes": 0,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 0,
"value": 0.21
},
"tax2": null,
"total": 0
},
"user": {
"id": "6718a0b50e27164043ce9130",
"name": "Degallaix Corp."
},
"validityDate": "2024-11-14T14:23:41.604Z",
"createdAt": "2024-11-04T14:23:41.605Z",
"updatedAt": "2024-11-04T14:23:41.611Z"
}
Retrieve a quote as PDF
This endpoint allows you to retrieve a PDF for one or multiple quotes.
Request
curl https://api.lsp.expert/v2/quotes/generate/ids=6728d9ae1736399b5f810c52 \
-u {key}:
Update a quote
This endpoint allows you to perform an update on a quote. Any parameters not provided will be left unchanged.
Parameters
acceptedDatestring,
The date the quote was accepted.
applyVATReverseChargeboolean
True if the reverse charge applies.
clientAddressCitystring,
The city of the client address.
clientAddressCountrystring,
The country of the client address (ISO code).
clientAddressLine1string,
The first line of the client address.
clientAddressLine2string,
The second line of the client address.
clientAddressNamestring,
The name of the client address.
clientAddressPostalCodestring,
The postal code of the client address.
clientAddressStatestring,
The state of the client address.
clientDetailsstring,
Any details about the client.
clientNationalIdentificationNumberstring,
The national identification number of the client.
clientVatNumberstring,
The VAT number of the client.
discountnumber
The discount in percentage.
documentstring
The document id.
filenameFormatstring
The filename format.
issueDatestring
The date the quote was issued.
notesstring,
The notes linked to the entity.
numberstring
The number of the quote.
pinnedboolean
True if the entity is pinned.
rappenRoundingboolean
True if the rounding is in rappen (CHF only).
sentDatestring,
The date the quote was sent.
statusnumber
One of the following value:
1
,2
,3
,4
.tax1string,
The first tax id.
tax2string,
The second tax id.
termsstring,
The terms of the quote.
validityDatestring,
the date the quote is valid until.
Request
curl -X PUT https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52 \
-u {key}: \
-d status=2
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
//...
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:33:40.749Z"
}
Sync quote with client info
This endpoint allows you to sync the quote with the latest client info.
Parameters
Request
curl -X PUT https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/sync-client \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
//...
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:33:40.749Z"
}
Delete a quote
This endpoint allows you to delete a quote.
Request
curl -X DELETE https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52 \
-u {key}:
Send via email
This endpoint allows you to send a quote via email.
Parameters
ccarray
The list of contact ids to cc (if not provided, use the default cc contacts of the client).
contentstring
The content of the email (if not provided, use the default content of the document configuration for the client).
documentSettingsstring
The document id to use for the email (if not provided, use the default document of the client).
isReminderboolean Required
True if the email is a reminder.
subjectstring
The subject of the email (if not provided, use the default subject of the document configuration for the client).
toarray
The list of contact ids to send the emails to (if not provided, use the default to contacts of the client).
Request
curl https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52 \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
//...
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 280,
"subtotalTaxable": 280,
"subtotalWithoutTaxes": 280,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 58.8,
"value": 0.21
},
"tax2": null,
"total": 338.8
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:33:40.749Z"
}
Add line
This endpoint allows you to add a line on the quote.
Parameters
namestring Required
The name of the line.
additionalInfostring
Any additional info.
deliveryDatestring
The delivery date.
discountnumber
The discount applied on the line (percentage).
extraChargeAmountnumber
The extra charge amount.
extraChargeDescriptionstring,null
The extra charge description.
extraChargePercentagenumber
The extra charge percentage.
extraChargeTypestring
One of the following value:
amount
,percentage
.projectManagerstring
The project manager id.
purchaseOrderstring
The purchase order.
quantitynumber Required
The quantity.
quantityTypestring
The quantity type id.
unitCostnumber Required
The cost per unit.
Request
curl https://api.lsp.expert/v2/quotes/671f9a64186d40de4869f3c4/lines \
-u {key}: \
-d name="DHL fee" \
-d quantity=1 \
-d unitCost=13
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"name": "DHL fee",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"unitCost": 13,
"discount": 0,
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0,
"description": null
},
"quantity": {
"value": 1
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 13,
"discount": 0,
"total": 13
},
"total": 13
},
"notIncludeInTaxes": false,
"lineTotal": 13,
"matches": [],
"groupMatches": false,
"group": {
"isParent": false,
"childLines": []
},
"id": "6728dd291736399b5f810f92"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 13,
"subtotalTaxable": 13,
"subtotalWithoutTaxes": 13,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 2.73,
"value": 0.21
},
"tax2": null,
"total": 15.73
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:41:45.261Z"
}
Add line for a job
This endpoint allows you to add a line on the quote for a job.
Parameters
jobIdstring Required
The job id.
Request
curl https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/lines/job \
-u {key}: \
-d jobId="671f9ec7fca5590b10414931"
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"name": "DHL fee",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0,
"description": null
},
"quantity": {
"value": 1
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 13,
"discount": 0,
"total": 13
},
"total": 13
},
"group": {
"isParent": false,
"childLines": []
},
"unitCost": 13,
"discount": 0,
"notIncludeInTaxes": false,
"lineTotal": 13,
"matches": [],
"groupMatches": false,
"id": "6728dd291736399b5f810f92"
},
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"deliveryDate": "2024-10-28T15:00:00.000Z",
"additionalInfo": null,
"unitCost": 0.14,
"discount": 0.1,
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"value": 2000,
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
}
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 28,
"total": 252
},
"total": 252
},
"notIncludeInTaxes": false,
"lineTotal": 252,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 189,
"id": "6728dd791736399b5f81106b"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 25.2,
"id": "6728dd791736399b5f81106d"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 37.8,
"id": "6728dd791736399b5f81106f"
}
],
"groupMatches": false,
"group": {
"isParent": false,
"childLines": []
},
"id": "6728dd791736399b5f81106a"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 265,
"subtotalTaxable": 265,
"subtotalWithoutTaxes": 265,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 55.65,
"value": 0.21
},
"tax2": null,
"total": 320.65
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:43:05.884Z"
}
Update a quote line
This endpoint allows you to perform an update on a quote line. Any parameters not provided will be left unchanged.
Parameters
namestring
The name of the line.
additionalInfostring,null
Any additional info.
deliveryDatestring,null
The delivery date.
discountnumber
The discount applied on the line (percentage).
extraChargeAmountnumber
The extra charge amount.
extraChargeDescriptionstring,null
The extra charge description.
extraChargePercentagenumber
The extra charge percentage.
extraChargeTypestring
One of the following value:
amount
,percentage
.groupMatchesboolean
True if the matches are grouped on the line.
notIncludeInTaxesboolean
True if the line should not be included in the taxes.
projectManagerstring,null
The project manager id.
quantitynumber
The quantity.
quantityTypestring,null
The quantity type id.
unitCostnumber
The cost per unit.
Request
curl -X PUT https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/lines/6728dd791736399b5f81106a \
-u {key}: \
-d name="Brochure 2024 (edit)"
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024 (edit)",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
},
"value": 2000
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 28,
"total": 252
},
"total": 252
},
"group": {
"isParent": false,
"childLines": []
},
"deliveryDate": "2024-10-27T23:00:00.000Z",
"unitCost": 0.14,
"discount": 0.1,
"notIncludeInTaxes": false,
"lineTotal": 252,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 189,
"id": "6728dd791736399b5f81106b"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 25.2,
"id": "6728dd791736399b5f81106d"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 37.8,
"id": "6728dd791736399b5f81106f"
}
],
"groupMatches": false,
"id": "6728dd791736399b5f81106a"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 252,
"subtotalTaxable": 252,
"subtotalWithoutTaxes": 252,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 52.92,
"value": 0.21
},
"tax2": null,
"total": 304.92
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:46:54.704Z"
}
Sync a quote line with the job
This endpoint allows you to sync a line with the related job (quantity, unit cost, etc.).
Parameters
Request
curl -X PUT https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/lines/6728dd791736399b5f81106a/sync \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024 (edit)",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
},
"value": 2000
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 28,
"total": 252
},
"total": 252
},
"group": {
"isParent": false,
"childLines": []
},
"deliveryDate": "2024-10-27T23:00:00.000Z",
"unitCost": 0.14,
"discount": 0.1,
"notIncludeInTaxes": false,
"lineTotal": 252,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 189,
"id": "6728dd791736399b5f81106b"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 25.2,
"id": "6728dd791736399b5f81106d"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 37.8,
"id": "6728dd791736399b5f81106f"
}
],
"groupMatches": false,
"id": "6728dd791736399b5f81106a"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 252,
"subtotalTaxable": 252,
"subtotalWithoutTaxes": 252,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 52.92,
"value": 0.21
},
"tax2": null,
"total": 304.92
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:46:54.704Z"
}
Move a quote line
This endpoint allows you to move a line to a new position.
Parameters
Request
curl -X PUT https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/lines/6728dd791736399b5f81106a/move/1 \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [
{
"job": {
"id": "671f9ec7fca5590b10414931",
"name": "Brochure 2024 (edit)",
"isFixedPrice": false,
"minimumFeeApplied": false
},
"service": {
"id": "6718a0f90e27164043ce95c0",
"name": "Translation"
},
"extraCharge": {
"type": "percentage",
"percentage": 0,
"amount": 0
},
"quantity": {
"quantityType": {
"id": "6718a0f90e27164043ce96a7",
"name": "Words"
},
"value": 2000
},
"totalDetails": {
"extraCharge": {
"amount": 0,
"discount": 0,
"total": 0
},
"subtotal": {
"amount": 280,
"discount": 28,
"total": 252
},
"total": 252
},
"group": {
"isParent": false,
"childLines": []
},
"deliveryDate": "2024-10-27T23:00:00.000Z",
"unitCost": 0.14,
"discount": 0.1,
"notIncludeInTaxes": false,
"lineTotal": 252,
"matches": [
{
"match": {
"id": "671f9eaafca5590b1041459f",
"name": "0%"
},
"unitCost": 0.14,
"quantity": 1500,
"lineTotal": 189,
"id": "6728dd791736399b5f81106b"
},
{
"match": {
"id": "671f9ea7fca5590b10414546",
"name": "100%"
},
"unitCost": 0.14,
"quantity": 200,
"lineTotal": 25.2,
"id": "6728dd791736399b5f81106d"
},
{
"match": {
"id": "671f9eaefca5590b104145fa",
"name": "Fuzzies"
},
"unitCost": 0.14,
"quantity": 300,
"lineTotal": 37.8,
"id": "6728dd791736399b5f81106f"
}
],
"groupMatches": false,
"id": "6728dd791736399b5f81106a"
}
],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 252,
"subtotalTaxable": 252,
"subtotalWithoutTaxes": 252,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 52.92,
"value": 0.21
},
"tax2": null,
"total": 304.92
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:46:54.704Z"
}
Delete a quote line
This endpoint allows you to delete a quote line.
Request
curl -X DELETE https://api.lsp.expert/v2/quotes/6728d9ae1736399b5f810c52/lines/6728dd791736399b5f81106a \
-u {key}:
Response
{
"id": "6728d9ae1736399b5f810c52",
"applyVATReverseCharge": false,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft",
"address": {
"name": "Microsoft"
}
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"discount": 0,
"document": {
"id": "6718a0b50e27164043ce915a",
"name": "English"
},
"filename": "001.pdf",
"filenameFormat": "[number]",
"internalNotes": [],
"isConflictingNumber": false,
"issueDate": "2024-11-04T14:26:54.768Z",
"labels": [],
"lines": [],
"number": "001",
"object": "quote",
"pinned": false,
"rappenRounding": false,
"sentDate": "2024-11-04T14:33:40.741Z",
"status": 2,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"value": 0.21
},
"total": {
"discount": {
"amount": 0,
"value": 0
},
"subtotal": 0,
"subtotalTaxable": 0,
"subtotalWithoutTaxes": 0,
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 0,
"value": 0.21
},
"tax2": null,
"total": 0
},
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"validityDate": "2024-11-14T14:26:54.768Z",
"createdAt": "2024-11-04T14:26:54.769Z",
"updatedAt": "2024-11-04T14:49:54.701Z"
}