Для AI-агентов: markdown этой страницы — /docs-content/entities/catalog-products/get.md индекс документации — /llms.txt
Получить товар
GET /v1/catalog-products/:id
Возвращает один товар каталога по идентификатору. Ответ содержит больше полей, чем список: кроме полей из справочника приходят символьный код, размеры, тип и пользовательские свойства каталога.
Штатные изображения товара читаются отдельным запросом GET /v1/catalog-products/:productId/images. Он возвращает детальную картинку, картинку анонса и галерею MORE_PHOTO, но не файлы из других пользовательских свойств propertyNNN типа «Файл».
Параметры
| Параметр | Тип | Обяз. | Описание |
|---|---|---|---|
id (path) |
number | да | Идентификатор товара |
Примеры
curl — личный ключ
curl "https://vibecode.bitrix24.tech/v1/catalog-products/541" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth-приложение
curl "https://vibecode.bitrix24.tech/v1/catalog-products/541" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — личный ключ
const res = await fetch('https://vibecode.bitrix24.tech/v1/catalog-products/541', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { success, data } = await res.json()
console.log('Товар:', data.name)
JavaScript — OAuth-приложение
const res = await fetch('https://vibecode.bitrix24.tech/v1/catalog-products/541', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { success, data } = await res.json()
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
success |
boolean | Всегда true при успехе |
data |
object | Объект товара. Базовый набор полей — см. Поля товара |
Дополнительно к полям справочника одна запись содержит:
code— символьный кодsort— порядок сортировкиtype— тип товараvatId— ID ставки НДСquantityReserved— зарезервированный остатокweight,width,height,length— габариты товараxmlId— внешний код- пользовательские свойства каталога вида
propertyNNN— см. раздел «Значения списочных свойств» ниже
Поля с пустым значением приходят как null.
Пример ответа
Показаны основные поля.
{
"success": true,
"data": {
"id": 541,
"iblockId": 25,
"iblockSectionId": null,
"name": "Кабель USB-C",
"active": true,
"code": null,
"measure": 9,
"weight": null,
"vatId": 1,
"vatIncluded": false,
"available": true,
"bundle": false,
"canBuyZero": true,
"quantityTrace": false,
"subscribe": true,
"barcodeMulti": false,
"withoutOrder": false,
"purchasingPrice": 110,
"purchasingCurrency": "RUB",
"quantity": null,
"quantityReserved": null,
"sort": 500,
"type": 1,
"dateCreate": "2021-08-06T12:59:15.000Z",
"timestampX": "2025-10-31T10:24:18.000Z",
"xmlId": "541"
}
}
Значения списочных свойств (`propertyNNN`)
Пользовательские свойства каталога приходят в полях вида propertyNNN, где NNN — id свойства из GET /v1/catalog-product-properties. У свойства-списка значение приходит объектом, и читаемый текст уже лежит в ответе — отдельный запрос за расшифровкой не нужен:
{
"id": 160,
"iblockId": 26,
"name": "Футболка (L)",
"property166": {
"value": "116",
"valueEnum": "L",
"valueId": "674"
}
}
| Ключ | Что это |
|---|---|
value |
ID элемента перечисления, строкой. Это id записи в Значениях списочных свойств |
valueEnum |
Читаемый текст выбранного варианта. Здесь L — это размер, а не код listType |
valueId |
ID строки значения у товара. Служебный, для сопоставления со справочником не нужен |
Форма зависит от listType свойства. Прочитайте её в GET /v1/catalog-product-properties/:id:
listType свойства |
Что приходит в propertyNNN |
|---|---|
L (выпадающий список) |
объект { value, valueEnum, valueId }, как выше |
C (флажок) |
голый скаляр "Y" или "N" — состояние галочки, а не id варианта |
При multiple: true та же форма приходит массивом — разворачивать нужно каждый элемент.
За всеми возможными вариантами свойства (выпадашка, фильтр, экспорт) — GET /v1/catalog-product-property-enums?filter[propertyId]=166&limit=1000. Сопоставление с товаром идёт по String(элемент.id) === товар.propertyNNN.value.
Пример ответа при ошибке
422 — товара с таким id нет:
{
"success": false,
"error": {
"code": "BITRIX_ERROR",
"message": "product does not exist."
}
}
Ошибки
| HTTP | Код | Описание |
|---|---|---|
| 422 | BITRIX_ERROR |
Товара с указанным id не существует (product does not exist.) |
| 403 | SCOPE_DENIED |
API-ключ не имеет скоупа catalog |
| 401 | MISSING_API_KEY |
Не передан заголовок X-Api-Key |
Полный список общих ошибок API — Ошибки.