Get a quote
- Permissions
customers:read,quotes:read- Also available as
fieldtask_get_quote
Returns one quote by its ID, with its line items, terms and customer note.
Use the id from List quotes or from the Location header of a create response. The quote must belong to the organization your credential is connected to; otherwise the response is 404 resource_not_found, the same as for an ID that doesn't exist or a quote that has been deleted.
Reading a quote never changes it. There's no endpoint to send, accept, decline or convert a quote.
Permissions
| Permission | Dependency in the permission map |
|---|---|
customers:read | No dependencies |
quotes:read | Depends on customers:read |
The location summary is only included when the connection also has customer_locations:read. Quotes must be available for your organization, as described in List quotes.
Request
Responses
- 200
- 400
- 401
- 403
- 404
- 405
- 429
- 503
OK
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Bad Request
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Unauthorized
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Forbidden
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Not Found
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Method Not Allowed
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
Too Many Requests
Response Headers
Responses must not be cached.
Seconds before retry; present on 429 and an in-progress operation.
Server-generated request correlation ID.
Service Unavailable
Response Headers
Responses must not be cached.
Server-generated request correlation ID.
What's included
The quote has every field from List quotes, plus:
| Field | Meaning |
|---|---|
items | The line items of the selected revision, in order. |
terms | The quote's terms, or null. |
customer_note | The note for the customer, or null. |
All of these come from the same revision as the amounts: the accepted revision if there is one, otherwise the current revision. A sent quote that someone is editing returns its new draft revision, so check selected_revision.state first. See Which version the values come from.
Each item has:
| Item field | Meaning |
|---|---|
kind | catalog for a product or service from the catalog, custom for a line with its own price, or text for a text-only line. Items created through the API are always catalog. |
item_type | The catalog type, such as service or product, or null. |
name, description | As shown on the quote. |
quantity, unit_price | Decimal strings with two decimal places. |
amount | Quantity × unit price, rounded to the currency's smallest unit. null for a text line. |
The quote totals are calculated from the items as described in Totals, taxes and discounts.
A quote can have at most 200 items in this response. A quote with more returns 503 temporarily_unavailable rather than a partial list.
Errors
This endpoint accepts no query parameters.
| Status | code | Meaning | What to do |
|---|---|---|---|
| 400 | invalid_query | The query string has an unknown, repeated or invalid parameter. | Send only the documented query parameters, each once. |
| 401 | invalid_token | The bearer token is missing, malformed, expired, revoked or issued for a different resource (for example an MCP sign-in). | Send a current REST API token or REST OAuth access token as Authorization: Bearer …. |
| 403 | api_access_not_enabled | FieldTask hasn't enabled API access for this organization, or has disabled it. | An owner or admin requests access in Settings → API connections. |
| 403 | insufficient_scope | The connection lacks a permission this request needs. error.code is missing_permission. | Add the permission named in error.message to the connection. |
| 404 | resource_not_found | The quote doesn't exist, has been deleted or belongs to another organization; Quotes aren't available for your organization or in this environment; or the URL is wrong. | Check the ID, that Quotes is available and switched on for your organization, and that the path has no trailing slash. |
| 405 | method_not_allowed | This path doesn't accept the HTTP method, or the create isn't enabled in this environment. The Allow header lists the methods that are. | Use a method listed in Allow. |
| 429 | rate_limit_exceeded | Too many requests in the current minute, or too many concurrent requests, for the organization or connection. | Wait for Retry-After seconds, then retry. |
| 429 | daily_quota_exceeded | The organization or connection has used its daily allowance for this kind of request. Allowances reset at 00:00 UTC. | Wait for Retry-After seconds, or check remaining allowance in Settings → API connections. |
| 503 | temporarily_unavailable | The service couldn't complete the request, or the quote has more than 200 items or saved values the API can't return. | Retry with exponential backoff. If it keeps failing for one quote, open it in FieldTask and include the request ID when contacting support. |