Quotes
Create quote
Method: POST
URL: /quotes
Required Fields:
- first_name
- last_name
Regarding line_litems:
If custom_product is TRUE, then the price and title fields are required for the product to be added to the quote.
If custom_product is FALSE, the variant_id field is required for the product to be added to the quote.
This endpoint will return 200 OK with the current JSON representation of the Quote if the creation was a success. See Get Quote endpoint for more info on the payload.
Example JSON request
Get quote
Method: GET
URL: /quotes/1234
Returns the quote with the ID of 1234
Example JSON response
Get quotes
Method: GET
URL: /quotes
Returns a paginated list of all quotes in a the shop
Optional URL parameters:
- page: The value that was returned in the next_page property from a previous request
- page_size: The number of results per page
The endpoint will return a property called next_page . This is a cursor value and can be passed as the page parameter on subsequent calls to get the next page of results.
Example JSON response
Update quote
Method: PUT
Url: /quotes/1
will update the quote with the id of 1
Only open quotes with a status of Created, Sent, and Viewed can be edited. If you try to update a quote with another status, you will receive a 400 error with a message that the quote has already been accepted or declined and can no longer be edited.
This endpoint will return 200 OK with the current JSON representation of the Quote if the creation was a success. See the Get Quote endpoint for more info on the payload.
Example JSON Request to update the internal notes
Example JSON Request to update the quote status
Valid statuses are created, sent, viewed, accepted, declined, canceled, and ordered.
Example JSON Request to remove the assigned Shopify customer
Example JSON Request to update the customer information
Example JSON Request to update the custom fields

When updating radio, drop down, and checklist field types, the value passed must be an existing option for the selected field. If the option does not exist, then the value for the custom field will be removed.
When updating dates, if the date is not in the correct format, the value will be removed from the custom field. Valid date formats are:
- YYYY-MM-DD
- MM-DD-YYYY
When updating an address field type the value passed should be a valid JSON address object with the following format. If the address is not in the correct format the value will be removed from the custom field.
Passing an empty value for a custom field will remove the existing value from the quote.
Example JSON Request to add discount
Valid discount types are fixed_amount and percentage
Example JSON Request to add custom shipping charge
Only custom shipping rates can be added through the API.
Delete quote
Method: DELETE
URL: /quotes/1
will delete the quote from your shop with the id of 1
No parameters are required. Returns 200 OK if successful.
Send quote
Method: POST
Url: /quotes/email
will send the quote email to the customer
Required fields:
- quote_id
This endpoint will return 200 OK if the request was a success.
Example JSON request
Get quotes by customer ID
Method: GET
URL: /customers/1234/quotes
will return a paginated list of all quotes created for the customer with the ID 1234
Optional URL parameters:
- page: The value that was returned in the next_page property from a previous request
- page_size: The number of results per page
The endpoint will return a property called next_page . This is a cursor value and can be passed as the page parameter on subsequent calls to get the next page of results.
Example JSON response