Для AI-агентов: markdown этой страницы — /docs-content/entities/quotes/products-get-single.md индекс документации — /llms.txt

Получить товар из предложения

GET /v1/quotes/:id/products/:rowId

Возвращает одну товарную позицию предложения по ID строки.

Параметры

Параметр Тип Обяз. Описание
Параметрid (path) Типnumber Обяз.да ОписаниеID предложения. Список: GET /v1/quotes
ПараметрrowId (path) Типnumber Обяз.да ОписаниеID товарной строки. Список: GET /v1/quotes/:id/products, при добавлении — ответ POST /v1/quotes/:id/products

rowId — это ID товарной строки, а не productId из каталога товаров.

Примеры

curl — личный ключ

Terminal
curl -X GET "https://vibecode.bitrix24.tech/v1/quotes/741/products/1471" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl -X GET "https://vibecode.bitrix24.tech/v1/quotes/741/products/1471" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/quotes/741/products/1471', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
console.log('Цена:', data.price)

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/quotes/741/products/1471', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { success, data } = await res.json()

Поля ответа

Поле Тип Описание
Полеsuccess Типboolean ОписаниеВсегда true при успехе
Полеdata Типobject ОписаниеТоварная строка
Полеdata.id Типnumber ОписаниеID товарной строки
Полеdata.productId Типnumber ОписаниеID товара из каталога
Полеdata.productName Типstring ОписаниеНазвание товара
Полеdata.price Типnumber ОписаниеЦена за единицу
Полеdata.quantity Типnumber ОписаниеКоличество
Полеdata.discount Типnumber ОписаниеСумма скидки
Полеdata.discountRate Типnumber ОписаниеПроцент скидки
Полеdata.discountTypeId Типnumber ОписаниеТип скидки (1 — сумма, 2 — процент)
Полеdata.taxRate Типnumber | null ОписаниеСтавка налога (%)
Полеdata.taxIncluded Типboolean ОписаниеНалог включён в цену
Полеdata.priceExclusive Типnumber ОписаниеЦена без налога со скидкой
Полеdata.priceNetto Типnumber ОписаниеЦена нетто
Полеdata.priceBrutto Типnumber ОписаниеЦена брутто
Полеdata.priceAccount Типnumber ОписаниеЦена в валюте отчёта
Полеdata.measureCode Типnumber ОписаниеКод единицы измерения
Полеdata.measureName Типstring ОписаниеНазвание единицы измерения
Полеdata.sort Типnumber ОписаниеСортировка
Полеdata.ownerId Типnumber ОписаниеID сущности-владельца, которой принадлежит позиция
Полеdata.ownerType Типstring ОписаниеТип владельца позиции, у предложения — Q
Полеdata.storeId Типnumber | null ОписаниеID склада. Список: GET /v1/warehouses. null, если складской учёт выключен
Полеdata.customized Типstring ОписаниеПризнак ручной правки строки: Y или N
Полеdata.xmlId Типstring ОписаниеВнешний код строки
Полеdata.type Типnumber ОписаниеТип товара

Пример ответа

JSON
{
  "success": true,
  "data": {
    "id": 1471,
    "productId": 1,
    "productName": "Серверное оборудование",
    "price": 5000,
    "priceAccount": 5000,
    "priceExclusive": 5000,
    "priceNetto": 5000,
    "priceBrutto": 5000,
    "quantity": 3,
    "discountTypeId": 2,
    "discountRate": 0,
    "discount": 0,
    "taxRate": null,
    "taxIncluded": false,
    "customized": "Y",
    "measureCode": 796,
    "measureName": "шт",
    "sort": 0,
    "ownerId": 741,
    "ownerType": "Q",
    "storeId": 3,
    "xmlId": "sale_basket_995",
    "type": 1
  }
}

Пример ответа при ошибке

404 — товарная строка не найдена:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Элемент не найден"
  }
}

Ошибки

HTTP Код Описание
HTTP404 КодENTITY_NOT_FOUND ОписаниеТоварной строки с таким rowId нет
HTTP404 КодNOT_FOUND ОписаниеЗапрос прошёл, но товарная строка не вернулась. Сообщение: Product row not found
HTTP400 КодINVALID_ROW_ID ОписаниеrowId не целое положительное число
HTTP403 КодSCOPE_DENIED ОписаниеAPI-ключ не имеет скоупа crm
HTTP401 КодTOKEN_MISSING ОписаниеAPI-ключ не имеет настроенных токенов
HTTP429 КодRATE_LIMITED ОписаниеПревышен лимит запросов: 300 в минуту на портал, все API-ключи портала делят один лимит. Точное значение — в заголовке x-ratelimit-limit (потолок делится на реплики). Повторите после срока из заголовка Retry-After

Полный список общих ошибок API — Ошибки.

Смотрите также