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

Список позиций оплаты CRM

GET /v1/crm-payments/:id/products

Возвращает позиции оплаты CRM — сколько единиц каждого товара входит в оплату. Нужен, чтобы получить id позиции перед изменением количества или удалением.

Параметры

Параметр Тип Обяз. Описание
id (path) number да ID оплаты. Список оплат объекта: GET /v1/crm-payments

Параметров в строке запроса нет: позиции приходят все сразу, без пагинации и фильтров.

Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/crm-payments/573/products" \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/crm-payments/573/products" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

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

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

const { data, meta } = await res.json()
console.log(`Позиций в оплате: ${meta.total}`)
for (const item of data) {
  console.log(`Позиция ${item.id}: ${item.quantity} шт.`)
}

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

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

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

Поля ответа

Поле Тип Описание
success boolean true при успехе
data array Позиции оплаты. У оплаты без позиций — пустой массив
data[].id number ID позиции оплаты. Передаётся как itemId в PATCH /v1/crm-payments/:id/products/:itemId и DELETE /v1/crm-payments/:id/products/:itemId
data[].paymentId number ID оплаты
data[].quantity number Количество единиц товара в позиции
data[].entityId number ID позиции корзины связанного заказа. Список: GET /v1/basket-items с filter[orderId] — ID заказа из поля orderId оплаты в GET /v1/payments/:id
meta.total number Количество позиций в оплате

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

JSON
{
  "success": true,
  "data": [
    {
      "id": 445,
      "paymentId": 573,
      "quantity": 2,
      "entityId": 1391
    }
  ],
  "meta": {
    "total": 1
  }
}

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

404 — оплаты с таким ID нет:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Payment has not been found"
  }
}

Ошибки

HTTP Код Описание
404 ENTITY_NOT_FOUND Оплаты с таким id нет
400 INVALID_ID id не положительное целое число
422 BITRIX_ERROR Битрикс24 отклонил запрос, причина — в error.message
403 BITRIX_ACCESS_DENIED У пользователя ключа нет доступа к объекту CRM или оплате в Битрикс24
403 SCOPE_DENIED API-ключ не имеет скоупа crm
401 TOKEN_MISSING API-ключ не имеет настроенных токенов
401 MISSING_API_KEY Не передан X-Api-Key

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

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

В позиции нет ID товарной строки сделки. entityId указывает на позицию корзины заказа, а не на товарную строку сделки, которая передавалась как rowId при добавлении позиции. Название, цена и товар позиции — в позиции корзины по entityId.

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