Поля смарт-процесса в REST 3.0
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Поля относятся к методам REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Поля элемента смарт-процесса возвращают методы crm.smartprocess<entityTypeId>.get и crm.smartprocess<entityTypeId>.list, а принимают методы crm.smartprocess<entityTypeId>.add и crm.smartprocess<entityTypeId>.update. В имя метода подставляется идентификатор типа смарт-процесса entityTypeId, например crm.smartprocess1038.get. Идентификаторы и настройки типов возвращает метод crm.type.list.
Состав полей зависит от настроек типа смарт-процесса: без воронок у элемента нет categoryId, без стадий — stageId и других полей стадии. У таких полей в таблице Объект смарт-процесса указано, какая настройка типа нужна. Список полей конкретного типа возвращает метод crm.smartprocess<entityTypeId>.field.list.
Часть полей существует в двух видах: как идентификатор и как связанный объект, например assignedById и assignedBy. Идентификатор можно передать при записи, а связанный объект — только запросить в select.
Какие поля принимают и возвращают методы
|
Метод |
Принимает |
Возвращает |
|
Поля таблицы Объект смарт-процесса, которые можно изменять, и пользовательские поля. Обязательных полей нет: элемент создается и с пустым объектом |
Идентификатор созданного элемента |
|
|
|
Признак успеха |
|
|
|
Без |
|
|
|
Без |
Поля с пометкой «только чтение» методы add и update не принимают и возвращают ошибку BITRIX_REST_V3_EXCEPTION_VALIDATION_DTOVALIDATIONEXCEPTION с текстом «Поле "contactId" не доступно к заполнению». Связанные объекты, например company и stage, тоже только для чтения: для записи передавайте идентификатор — companyId, stageId.
Поля со значениями из справочников метод проверяет при записи. Если значения нет в справочнике, метод вернет ошибку «Значение поля не содержится в списке допустимых значений». Для стадии, источника и валюты в тексте ошибки перечислены допустимые значения.
Логические поля принимают и возвращают true или false. Значения Y, N, 1 и 0 не подходят: метод вернет ошибку «В поле opened требуется тип данных bool для такого запроса».
Поля типа date принимают и возвращают дату в формате YYYY-MM-DD, например 2026-11-03. Дату со временем или в формате 03.11.2026 такое поле не принимает. Поля типа datetime возвращаются в формате ISO 8601, например 2026-11-03T14:47:23+03:00. В фильтре по полю datetime тоже передавайте дату со временем: значение 2026-11-03 метод не примет.
Фильтровать и сортировать можно только по полям, у которых это указано в описании. На другие поля метод list вернет ошибку «требуется наличие атрибута Filterable» или «Sortable». Через точку можно фильтровать по полям связанных элементов CRM и объекта lastCommunication, например ["company.title", "=", "Ромашка"]. По полям сотрудников, стадии, воронки и источника, например assignedBy.id или stage.semanticId, фильтр не работает: метод вернет ошибку BITRIX_REST_V3_EXCEPTION_INVALIDFILTEREXCEPTION. Формат фильтра описан на странице crm.<тип>.list и в статье Обзор REST API 3.0.
Поля closed, stageSemanticId и stageSemantic есть в ответе crm.smartprocess<entityTypeId>.field.list, но методы get и list их не принимают. На такое поле в select, filter или order метод вернет ошибку BITRIX_REST_V3_EXCEPTION_UNKNOWNDTOPROPERTYEXCEPTION. Группу стадии можно получить из поля semanticId объекта стадии: "select": ["stage.semanticId"].
Объект смарт-процесса
|
Название |
Описание |
|
title |
Название элемента, до 255 символов. Если не передать название при создании, Битрикс24 подставит название в формате Можно изменять, фильтровать и сортировать |
|
xmlId |
Внешний код элемента, до 255 символов. Используйте для связи элемента с записью во внешней системе. Можно изменять, фильтровать и сортировать |
|
id |
Идентификатор элемента. Назначается при создании. Только чтение. Можно фильтровать и сортировать |
|
createdTime |
Дата и время создания элемента. Только чтение. Можно фильтровать и сортировать |
|
createdById |
Идентификатор пользователя, который создал элемент. Только чтение. Можно фильтровать и сортировать |
|
createdBy |
Пользователь, который создал элемент. Объект типа сотрудник. Только чтение. Запрашивается в |
|
updatedTime |
Дата и время последнего изменения элемента. Только чтение. Можно фильтровать и сортировать |
|
updatedById |
Идентификатор пользователя, который последним изменил элемент. Только чтение. Можно фильтровать и сортировать |
|
updatedBy |
Пользователь, который последним изменил элемент. Объект типа сотрудник. Только чтение. Запрашивается в |
|
lastActivityTime |
Дата и время последней активности в таймлайне элемента. Только чтение. Можно фильтровать и сортировать |
|
lastActivityById |
Идентификатор автора последней активности в таймлайне. Только чтение. Можно фильтровать и сортировать |
|
lastActivityBy |
Автор последней активности в таймлайне. Объект типа сотрудник. Только чтение. Запрашивается в |
|
assignedById |
Идентификатор ответственного за элемент. Идентификаторы пользователей возвращает метод user.get. Если пользователя нет, метод вернет ошибку «Значение поля не содержится в списке допустимых значений». Можно изменять, фильтровать и сортировать |
|
assignedBy |
Ответственный. Объект типа сотрудник. Только чтение. Запрашивается в |
|
opened |
Доступен ли элемент всем пользователям: Можно изменять, фильтровать и сортировать |
|
webformId |
Идентификатор CRM-формы, через которую создан элемент. Если элемент создан не формой — Только чтение. Можно фильтровать и сортировать |
|
webform |
CRM-форма, через которую создан элемент. Объект типа CRM-форма. Только чтение. Запрашивается в |
|
lastCommunication |
Даты последних коммуникаций с клиентом по элементу. Объект типа последняя коммуникация. Только чтение. Запрашивается в |
|
entityTypeId |
Идентификатор типа смарт-процесса, например Только чтение |
|
canRead |
Может ли текущий пользователь просматривать элемент: Только чтение |
|
url |
Относительная ссылка на карточку элемента, например Только чтение |
|
stageId |
Идентификатор стадии, например Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включены стадии |
|
stage |
Стадия элемента. Объект типа стадия. Только чтение. Запрашивается в Есть, если в настройках типа включены стадии |
|
movedTime |
Дата и время последней смены стадии. Только чтение. Можно фильтровать и сортировать. Есть, если в настройках типа включены стадии |
|
movedById |
Идентификатор пользователя, который последним сменил стадию. Только чтение. Можно фильтровать и сортировать. Есть, если в настройках типа включены стадии |
|
movedBy |
Пользователь, который последним сменил стадию. Объект типа сотрудник. Только чтение. Запрашивается в Есть, если в настройках типа включены стадии |
|
closed |
Закрыт ли элемент: Только чтение. Поле есть в ответе Есть, если в настройках типа включены стадии |
|
stageSemanticId |
Группа стадии. Возможные значения:
Только чтение. Поле есть в ответе Есть, если в настройках типа включены стадии |
|
stageSemantic |
Группа стадии с названием: Только чтение. Поле есть в ответе Есть, если в настройках типа включены стадии |
|
beginTime |
Дата начала. Если не передать при создании, Битрикс24 подставит дату создания элемента. Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включены даты начала и завершения |
|
closeTime |
Дата завершения. Если не передать при создании, Битрикс24 подставит дату через семь дней после создания элемента. Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включены даты начала и завершения |
|
categoryId |
Идентификатор воронки. Если не передать при создании, элемент попадет в воронку по умолчанию. Воронки типа возвращает метод Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включены воронки |
|
category |
Воронка элемента. Объект типа воронка. Только чтение. Запрашивается в Есть, если в настройках типа включены воронки |
|
observersId |
Идентификаторы наблюдателей. Идентификаторы пользователей возвращает метод user.get. Можно изменять и фильтровать, сортировать нельзя. В фильтре Есть, если в настройках типа включены наблюдатели |
|
observers |
Наблюдатели. Массив объектов типа сотрудник. Если наблюдателей нет — пустой массив. Только чтение. Запрашивается в Есть, если в настройках типа включены наблюдатели |
|
contactId |
Идентификатор основного контакта — первого в списке Только чтение. Можно фильтровать, сортировать нельзя. Есть, если в настройках типа включена привязка к клиенту |
|
contact |
Основной контакт. Объект типа элемент CRM. Только чтение. Запрашивается в Есть, если в настройках типа включена привязка к клиенту |
|
contactsId |
Идентификаторы контактов элемента. Контакты возвращает метод crm.contact.list. Переданный массив заменяет текущий список контактов. Можно изменять и фильтровать, сортировать нельзя. Есть, если в настройках типа включена привязка к клиенту |
|
contacts |
Контакты элемента. Массив объектов типа элемент CRM. Если контактов нет — пустой массив. Только чтение. Запрашивается в Есть, если в настройках типа включена привязка к клиенту |
|
companyId |
Идентификатор компании. Компании возвращает метод crm.company.list. Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включена привязка к клиенту |
|
company |
Компания. Объект типа элемент CRM. Только чтение. Запрашивается в Есть, если в настройках типа включена привязка к клиенту |
|
myCompanyId |
Идентификатор вашей компании, от имени которой работаете с клиентом. Список ваших компаний возвращает метод crm.mycompany.list. Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включены реквизиты вашей компании |
|
myCompany |
Ваша компания. Объект типа элемент CRM. Только чтение. Запрашивается в Есть, если в настройках типа включены реквизиты вашей компании |
|
sourceId |
Идентификатор источника, например Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включено поле источника |
|
source |
Источник. Объект типа значение справочника. Только чтение. Запрашивается в Есть, если в настройках типа включено поле источника |
|
sourceDescription |
Дополнительная информация об источнике. Можно изменять и фильтровать, сортировать нельзя. Есть, если в настройках типа включено поле источника |
|
opportunity |
Сумма элемента, не меньше Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включена привязка товаров |
|
taxValue |
Сумма налога. Рассчитывается по товарным позициям. Только чтение. Можно фильтровать и сортировать. Есть, если в настройках типа включена привязка товаров |
|
isManualOpportunity |
Режим расчета суммы: Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включена привязка товаров |
|
currencyId |
Идентификатор валюты, например Можно изменять, фильтровать и сортировать. Есть, если в настройках типа включена привязка товаров |
|
currency |
Валюта. Объект типа валюта. Только чтение. Запрашивается в Есть, если в настройках типа включена привязка товаров |
|
related<Код типа>Id |
Идентификатор родительского элемента другого типа объекта, например Можно изменять и фильтровать, сортировать нельзя |
|
related<Код типа> |
Родительский элемент другого типа объекта, например Только чтение. Запрашивается в |
Поля связей с другими типами
Поля related<Код типа>Id и related<Код типа> появляются, когда в Битрикс24 настроена связь, в которой смарт-процесс подчинен другому типу объекта. Для каждого родительского типа у смарт-процесса есть пара полей:
related<Код типа>Id— идентификатор родительского элемента, напримерrelatedLeadIdдля лида,relatedSmartInvoiceIdдля счета,relatedSmartProcess177Idдля смарт-процесса сentityTypeId = 177related<Код типа>— родительский элемент как объект типа элемент CRM, напримерrelatedLead
Название поля в ответе field.list совпадает с названием родительского типа, например «Лид» или «Закупка оборудования». Метод проверяет, что элемент с переданным идентификатором существует. Если элемента нет, метод вернет ошибку «Значение поля не содержится в списке допустимых значений».
Состав этих полей у каждого типа свой. Актуальный список возвращает метод crm.smartprocess<entityTypeId>.field.list.
Связанные объекты
Связанный объект запрашивается в select по имени поля без суффикса Id: assignedBy, stage, category. Имя объекта целиком возвращает все его поля, путь через точку — только выбранные, например ["stage.name", "assignedBy.firstName"]. Путь поддерживает один уровень вложенности.
Связанный элемент CRM — contact, company, myCompany, related<Код типа> — по имени целиком возвращает только id. Остальные поля элемента запрашивайте через точку, например ["company.title", "company.url"].
Если связь не заполнена, объект приходит как null, а массив объектов, например observers или contacts, — как пустой массив.
Объект сотрудника
Поля createdBy, updatedBy, lastActivityBy, assignedBy, movedBy, observers.
|
Название |
Описание |
|
id |
Идентификатор пользователя |
|
firstName |
Имя |
|
lastName |
Фамилия |
|
personalGender |
Пол: |
|
url |
Относительная ссылка на профиль пользователя, например |
|
personalPhoto |
Ссылка на фотографию пользователя. Если фотографии нет — |
Объект элемента CRM
Поля contact, contacts, company, myCompany, related<Код типа>.
|
Название |
Описание |
|
id |
Идентификатор элемента |
|
entityTypeId |
Идентификатор типа объекта, например |
|
canRead |
Может ли текущий пользователь просматривать элемент |
|
title |
Название элемента. У контакта — фамилия, имя и отчество |
|
url |
Относительная ссылка на карточку элемента, например |
Объект стадии
Поле stage.
|
Название |
Описание |
|
id |
Идентификатор стадии, например |
|
name |
Название стадии |
|
sort |
Порядок стадии в воронке |
|
color |
Цвет стадии в формате |
|
semanticId |
Группа стадии: |
Объект воронки
Поле category.
|
Название |
Описание |
|
id |
Идентификатор воронки |
|
name |
Название воронки |
|
sort |
Порядок сортировки воронки |
|
isDefault |
Воронка по умолчанию: |
Объект значения справочника
Поле source.
|
Название |
Описание |
|
id |
Идентификатор значения, например |
|
name |
Название значения, например |
|
sort |
Порядок сортировки |
Объект CRM-формы
Поле webform.
|
Название |
Описание |
|
id |
Идентификатор CRM-формы |
|
name |
Название CRM-формы |
Объект последней коммуникации
Поле lastCommunication. Если коммуникации такого вида не было, поле равно null.
|
Название |
Описание |
|
communicationTime |
Дата и время последней коммуникации любого вида |
|
callTime |
Дата и время последнего звонка |
|
emailTime |
Дата и время последнего письма |
|
imolTime |
Дата и время последнего сообщения в открытой линии |
|
webformTime |
Дата и время последнего заполнения CRM-формы |
Объект валюты
Поле currency.
|
Название |
Описание |
|
id |
Код валюты, например |
|
fullName |
Название валюты |
|
formatString |
Шаблон вывода суммы. Символ |
|
decPoint |
Десятичный разделитель |
|
thousandsSep |
Разделитель разрядов. Может приходить HTML-сущностью, например |
|
decimals |
Количество знаков после запятой |
|
hideZero |
Скрывать ли незначащие нули в дробной части |
|
amount |
Курс валюты относительно базовой |
|
amountCount |
Количество единиц валюты, к которому относится курс |
|
base |
Базовая валюта: |
|
sort |
Порядок сортировки |
|
numericCode |
Цифровой код валюты, например |
|
languageId |
Язык, для которого заданы название и формат |
|
createdTime |
Дата и время создания валюты |
|
updatedTime |
Дата и время изменения валюты |
|
createdById |
Идентификатор пользователя, который создал валюту |
|
updatedById |
Идентификатор пользователя, который изменил валюту |
Пользовательские поля
Пользовательские поля смарт-процесса называются UF_CRM_<id типа>_<код>, например UF_CRM_3_1628508893. В имени стоит идентификатор типа id, а не entityTypeId: поле из примера принадлежит типу с id = 3 и entityTypeId = 174. Оба идентификатора возвращает метод crm.type.list. Пользовательские поля передают и запрашивают по имени так же, как стандартные поля. Список пользовательских полей типа возвращает метод crm.smartprocess<entityTypeId>.field.custom.list.
У каждого пользовательского поля есть парное поле UF_CRM_…_data — только для чтения, запрашивается в select. Оно содержит значение в нескольких представлениях:
value— значение в том же формате, что в самом полеrawValue— значение в формате хранения, например100.5|RUBдля поля «Деньги»formattedValue— значение для показа пользователю:100.50 ₽для денег, имя сотрудника для поля «Привязка к сотруднику», текст варианта для спискаextra— дополнительные данные: для денег —amount,currencyIdиcurrencyFullName, для сотрудника — поля объекта сотрудника. Для строки, даты и списка —null
У множественного пользовательского поля UF_CRM_…_data — массив таких объектов.