#Поля заказа

GET /v1/orders/fields

Возвращает схему полей заказа: типы, флаги только-для-чтения, список агрегируемых полей.

#Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/orders/fields" \
  -H "X-Api-Key: YOUR_API_KEY"

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

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

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

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

const { data } = await res.json()
console.log('Поля заказа:', Object.keys(data.fields))

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

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

const { data } = await res.json()

#Поля ответа

Поле Тип Описание
id number Идентификатор заказа (только чтение)
accountNumber string Порядковый номер заказа на портале
lid string Идентификатор сайта-источника (всегда "s1" для облачных порталов)
personTypeId number Идентификатор типа плательщика
currency string Валюта заказа. Список: `GET /v1/currencies`
price number Общая сумма заказа
discountValue number Значение скидки
taxValue number Сумма налога
sumPaid number Сумма, уже оплаченная по этому заказу
statusId string Текущий статус заказа. Источник: `GET /v1/order-statuses?filter[type]=O`
userId number Идентификатор пользователя Битрикс24 — покупателя в интернет-магазине. Источник: `GET /v1/users`
companyId number Идентификатор CRM-компании, связанной с заказом. Источник: `GET /v1/companies`
clients array Список CRM-привязок к заказу (только чтение). Каждый элемент: {entityTypeId, entityId, isPrimary, roleId, sort}. entityTypeId = 3 — контакт (`GET /v1/contacts`), = 4 — компания (`GET /v1/companies`). Битрикс24 заполняет массив автоматически на основе userId и companyId
responsibleId number Ответственный сотрудник. Источник: `GET /v1/users`
payed boolean Оплачен ли заказ полностью
canceled boolean Отменён ли заказ
marked boolean Отмечен ли заказ как проблемный
deducted boolean Списан ли товар со склада
reserved boolean Зарезервирован ли товар на складе
reasonCanceled string Причина отмены
reasonMarked string Причина пометки
additionalInfo string Дополнительная информация
comments string Комментарий менеджера к заказу
userDescription string Комментарий покупателя к заказу
orderTopic string Тема заказа
xmlId string Внешний идентификатор для синхронизации
id1c string Идентификатор в 1С
version1c string Версия в 1С
updated1c boolean Обновлён ли заказ через 1С
externalOrder boolean Создан ли заказ во внешней системе
recountFlag boolean Флаг автоматического пересчёта
affiliateId number Идентификатор партнёра-аффилиата
lockedBy number Идентификатор пользователя, заблокировавшего заказ (актуально для коробочных порталов)
dateLock datetime Время блокировки
recurringId number Идентификатор подписки (если заказ создан из рекуррентного шаблона)
dateInsert datetime Дата создания (только чтение)
dateUpdate datetime Дата последнего изменения (только чтение)
datePaid datetime Дата оплаты (только чтение)
dateCanceled datetime Дата отмены (только чтение)
dateStatus datetime Дата установки текущего статуса (только чтение)
dateBill datetime Дата выставления счёта
datePayBefore datetime Дата, до которой нужно оплатить
empPaidId number Сотрудник, отметивший оплату (только чтение)
empCanceledId number Сотрудник, отменивший заказ (только чтение)
empMarkedId number Сотрудник, поставивший пометку (только чтение)
empStatusId number Сотрудник, последний раз менявший статус (только чтение)
userEmail string E-mail покупателя (только чтение, заполняется из карточки контакта)
userName string Имя покупателя (только чтение, заполняется из карточки контакта)

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

JSON
{
  "success": true,
  "data": {
    "fields": {
      "id": { "type": "number", "readonly": true },
      "accountNumber": { "type": "string", "readonly": false },
      "price": { "type": "number", "readonly": false },
      "currency": { "type": "string", "readonly": false },
      "statusId": { "type": "string", "readonly": false },
      "userId": { "type": "number", "readonly": false },
      "dateInsert": { "type": "datetime", "readonly": true },
      "dateUpdate": { "type": "datetime", "readonly": true },
      "payed": { "type": "boolean", "readonly": false },
      "canceled": { "type": "boolean", "readonly": false }
    },
    "aggregatable": ["price", "statusId", "payed", "canceled", "personTypeId", "responsibleId", "userId"],
    "batch": ["create", "update", "delete"]
  }
}

Показаны самые важные поля. Полный набор описан в таблице выше — этот же набор возвращается живым вызовом GET /v1/orders/fields.

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

403 — нет скоупа:

JSON
{
  "success": false,
  "error": {
    "code": "SCOPE_DENIED",
    "message": "This endpoint requires 'sale' scope"
  }
}

#Ошибки

HTTP Код Описание
403 SCOPE_DENIED API-ключ не имеет скоупа sale
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

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

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