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

Остатки склада

GET /v1/warehouses/:id/stock

Возвращает остатки товаров на складе — по строке на каждый товар, который числится на этом складе. Только для чтения: изменить количество через этот эндпоинт нельзя.

Параметры пути

Параметр Тип Описание
id number Идентификатор склада

Параметры запроса

Параметр Тип По умолч. Описание
limit number 50 Количество строк (до 5000). При limit > 50 ответ автоматически собирается из нескольких страниц Битрикс24
offset number 0 Смещение от начала выборки, построчное: offset=1 начинает со второй строки. Битрикс24 сдвигает выборку только на целую страницу по 50, поэтому Вайбкод запрашивает накрывающую страницу и отсекает лишние строки с начала. Если запрошенное окно не покрывается одной страницей, data придёт пустым при hasMore: true, а в meta.warningsOFFSET_BEYOND_FETCHED_PAGE: увеличьте limit

Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/warehouses/1/stock" \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/warehouses/1/stock" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/warehouses/1/stock', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

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

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

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

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

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data array Строки остатков на складе
data[].id number Идентификатор строки остатка
data[].productId number Идентификатор товара — см. Товары каталога
data[].storeId number Идентификатор склада
data[].amount number Количество на складе. Может быть null — трактуйте как 0
data[].quantityReserved number Зарезервированное количество. Может быть null — трактуйте как 0
meta.total number Количество строк остатков на складе
meta.hasMore boolean Есть ли строки за пределами текущей страницы (offset + длина data < total). Если true — увеличьте limit (до 5000) либо сдвиньте offset

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

JSON
{
  "success": true,
  "data": [
    {
      "id": 3,
      "productId": 200,
      "storeId": 1,
      "amount": 15,
      "quantityReserved": 30
    },
    {
      "id": 5,
      "productId": 201,
      "storeId": 1,
      "amount": 54,
      "quantityReserved": null
    },
    {
      "id": 9,
      "productId": 202,
      "storeId": 1,
      "amount": null,
      "quantityReserved": null
    }
  ],
  "meta": {
    "total": 3,
    "hasMore": false
  }
}

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

400 — некорректный id склада:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "id must be a positive integer"
  }
}

Ошибки

HTTP Код Описание
400 INVALID_PARAMS id, limit или offset заданы некорректно
401 TOKEN_MISSING API-ключ не имеет настроенных токенов
403 SCOPE_DENIED API-ключ не имеет скоупа catalog
502 BITRIX_UNAVAILABLE Битрикс24 недоступен

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

Известные особенности

Пустой склад. Если на складе нет товаров с остатками, data — пустой массив, meta.total0.

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