For AI agents: markdown of this page — /docs-content-en/entities/quotes/get.md documentation index — /llms.txt
Get a quote
GET /v1/quotes/:id
Returns a quote by ID with all fields, including user fields (ufCrm_*).
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
Parameterid (path) |
Typenumber | Requiredyes | DescriptionQuote ID |
Parameterinclude (query) |
Typestring | Requiredno | DescriptionRelated data to include, comma-separated: deal, contact, company. See the "Related data" section |
Parameterselect (query) |
Typestring | Requiredno | DescriptionComma-separated response fields, for example id,title,amount. Without it, every field is returned. Names come from Quote fields |
Examples
curl — personal key
curl "https://vibecode.bitrix24.com/v1/quotes/412" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl "https://vibecode.bitrix24.com/v1/quotes/412" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/quotes/412', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data } = await res.json()
console.log('Quote:', data.title, '—', data.amount, data.currency)
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/quotes/412', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
Response fields
| Field | Type | Description |
|---|---|---|
Fieldsuccess |
Typeboolean | Descriptiontrue when the request succeeds |
Fielddata |
Typeobject | DescriptionThe quote with all fields, including user fields (ufCrm_*). All fields — Quote fields |
Fielddata._included |
Typeobject | DescriptionRelated entities. Returned only with the include parameter — see the "Related data" section |
Related data
To retrieve related entities together with the quote, pass the include parameter in the GET request:
GET /v1/quotes/412?include=deal,contact,company
Available includes: deal, contact, company. The result is in the _included field:
{
"success": true,
"data": {
"id": 412,
"title": "Quote for server hardware",
"_included": {
"deal": { "id": 741, "title": "Equipment delivery", "amount": 50000 },
"contact": { "id": 71, "name": "John Brown" },
"company": { "id": 15, "title": "Acme LLC" }
}
}
}
More about includes: Related data.
Response example
{
"success": true,
"data": {
"id": 412,
"title": "Quote for server hardware",
"amount": 1500,
"currency": "USD",
"stageId": "SENT",
"dealId": 741,
"contactId": 71,
"companyId": 15,
"assignedById": 29,
"createdBy": 1,
"comments": "",
"beginDate": "2026-04-15T00:00:00.000Z",
"closeDate": "2026-05-15T00:00:00.000Z",
"createdTime": "2026-04-15T10:30:00.000Z",
"updatedTime": "2026-04-15T14:22:00.000Z",
"_included": {
"deal": { "id": 741, "title": "Equipment delivery", "amount": 50000 },
"contact": { "id": 71, "name": "John Brown" },
"company": { "id": 15, "title": "Acme LLC" }
}
}
}
Error response example
404 — quote not found:
{
"success": false,
"error": {
"code": "ENTITY_NOT_FOUND",
"message": "Item not found"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| HTTP404 | CodeENTITY_NOT_FOUND |
DescriptionA quote with this ID was not found |
| HTTP400 | CodeINVALID_INCLUDE |
Descriptioninclude contains an unknown name. The message lists the allowed ones: deal, contact, company |
| HTTP400 | CodeUNKNOWN_SELECT_FIELD |
Descriptionselect contains an unknown field. The message lists the allowed names |
| HTTP403 | CodeACCESS_DENIED |
DescriptionNo access to the quote |
| HTTP403 | CodeSCOPE_DENIED |
DescriptionThe API key lacks the crm scope |
| HTTP401 | CodeTOKEN_MISSING |
DescriptionThe API key has no configured tokens |
Full list of common API errors — Errors.