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

Поля сделки

GET /v1/deals/fields

Возвращает полный список доступных полей, включая пользовательские (ufCrm_*).

Примеры

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

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

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/deals/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/deals/fields', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
console.log('Полей:', Object.keys(data.fields).length)

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

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

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

Поля ответа

Подписи полей label и description приходят на русском языке, а те, что платформа берёт напрямую с портала, — на языке портала. Заголовками запроса язык не переключается. У значений enum подпись label английская, русская — в labelRu.

Поле Битрикс24 Тип RO Описание
id id number да ID сделки
title title string Название
amount opportunity number Сумма
currency currencyId string Валюта. Список: GET /v1/currencies
stageId stageId string Стадия воронки. Набор стадий и их идентификаторы настраиваются на стороне портала и отличаются между воронками. Актуальный список — GET /v1/statuses?filter[entityId]=DEAL_STAGE для основной воронки, GET /v1/statuses?filter[entityId]=DEAL_STAGE_{N} для воронки с categoryId={N} (значение categoryId берётся из GET /v1/deal-categories)
categoryId categoryId number ID воронки (0 = основная). Список: GET /v1/deal-categories
stageSemanticId stageSemanticId string да Смысловая категория текущей стадии: P — в работе, S — успех, F — провал
companyId companyId number ID компании. Поиск: GET /v1/companies
contactId contactId number ID основного контакта. Поиск: GET /v1/contacts
contactIds contactIds number[] да Все привязанные контакты. Поиск: GET /v1/contacts
assignedById assignedById number Ответственный. Список: GET /v1/users
createdBy createdBy number да Создатель. Поиск: GET /v1/users
updatedBy updatedBy number да Кто изменил. Поиск: GET /v1/users
createdAt createdTime datetime да Дата создания
updatedAt updatedTime datetime да Дата изменения
closedAt closedate datetime Дата закрытия
closed closed boolean да Закрыта ли сделка
sourceId sourceId string Источник. Список: GET /v1/statuses?filter[entityId]=SOURCE
sourceDescription sourceDescription string Описание источника
probability probability number Вероятность успеха (%)
opened opened boolean Доступна для всех
comments comments string Комментарий
observers observers number[] Наблюдатели. Список: GET /v1/users
typeId typeId string Тип записи. Список: GET /v1/statuses?filter[entityId]=DEAL_TYPE
isReturning isReturnCustomer boolean Повторная сделка
leadId leadId number Лид, из которого создана сделка. Приходит null, если сделка не создавалась конвертацией лида. Поиск: GET /v1/leads
quoteId quoteId number Предложение, из которого создана сделка. Приходит null, если сделка создана не из предложения. Поиск: GET /v1/quotes
taxValue taxValue number Сумма налога по сделке, в валюте сделки. Приходит 0, если налога нет
originId originId string Идентификатор этой сделки во внешней системе, из которой она импортирована. Приходит null у сделок, созданных в Битрикс24
originatorId originatorId string Внешняя система, из которой импортирована сделка. Приходит null у сделок, созданных в Битрикс24
additionalInfo additionalInfo string Произвольная дополнительная информация по сделке. Приходит null, если не заполнено
lastActivityBy lastActivityBy number Пользователь, совершивший последнюю активность в таймлайне сделки. Приходит 0, если активности не было. Поиск: GET /v1/users

Семь полей выше — leadId, quoteId, taxValue, originId, originatorId, additionalInfo и lastActivityBy — принимаются в filter и в сортировке, в том числе в GET /v1/deals, POST /v1/deals/search и POST /v1/deals/aggregate. У пяти из них (leadId, quoteId, originId, originatorId, additionalInfo) значение может прийти null, и у трёх строковых пустая строка от Битрикс24 приводится к null — сравнивайте с пустым значением, а не с "".

UTM-поля (utmSource, utmMedium, utmCampaign, utmContent, utmTerm) и contacts возвращаются при чтении, но ни в фильтре, ни в сортировке не принимаются. Запрос отклоняется кодом 400 UNKNOWN_FILTER_FIELD или 400 UNKNOWN_SORT_FIELD до обращения к Битрикс24, а причина по каждому полю приходит в его description в ответе этого же эндпоинта. Для контактов фильтруйте по contactId (основной контакт) или по contactIds (любой из привязанных).

Пользовательские поля (ufCrm_*) также возвращаются в ответах и принимаются при создании/обновлении.

Доступные include

Эндпоинт GET /v1/deals/fields возвращает список доступных include: contact, company, quote.

Пример использования: Получить deals.

Подробнее об include: Связанные данные.

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

JSON
{
  "success": true,
  "data": {
    "fields": {
      "id": { "type": "number", "readonly": true, "label": "ID сделки", "description": "Уникальный числовой идентификатор сделки." },
      "title": { "type": "string", "readonly": false, "label": "Название", "description": "Название сделки." },
      "assignedById": { "type": "number", "readonly": false, "label": "Ответственный", "description": "ID ответственного пользователя. Список: GET /v1/users." },
      "stageSemanticId": { "type": "string", "readonly": true, "label": "Семантика стадии", "description": "Смысловая категория текущей стадии — коды расшифрованы в enum.", "enum": [{ "value": "P", "label": "In progress", "labelRu": "В работе" }, { "value": "S", "label": "Success", "labelRu": "Успех" }, { "value": "F", "label": "Failure", "labelRu": "Провал" }] }
    },
    "batch": ["create", "update", "delete"]
  }
}

Показаны 3 из множества полей. Полный список в таблице выше.

Ошибки

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

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

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