Поля смарт-процесса в 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.

Какие поля принимают и возвращают методы

Метод

Принимает

Возвращает

crm.smartprocess<entityTypeId>.add

Поля таблицы Объект смарт-процесса, которые можно изменять, и пользовательские поля. Обязательных полей нет: элемент создается и с пустым объектом fields

Идентификатор созданного элемента id

crm.smartprocess<entityTypeId>.update

id элемента и те же поля, что add. Поля, которых нет в fields, сохраняют текущие значения

Признак успеха true

crm.smartprocess<entityTypeId>.get

id элемента и select

Без select — только id. С select — только перечисленные поля, id не добавляется автоматически. Связанный объект целиком, например assignedBy, возвращает все свои поля, а путь через точку, например assignedBy.firstName, — только выбранные. Подробнее — в разделе Связанные объекты

crm.smartprocess<entityTypeId>.list

select, filter, order, pagination

Без select — только id каждого элемента. Поля и связанные объекты запрашиваются в select так же, как в get

Поля с пометкой «только чтение» методы 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
string

Название элемента, до 255 символов. Если не передать название при создании, Битрикс24 подставит название в формате <название типа> #<id>.

Можно изменять, фильтровать и сортировать

xmlId
string

Внешний код элемента, до 255 символов. Используйте для связи элемента с записью во внешней системе.

Можно изменять, фильтровать и сортировать

id
integer

Идентификатор элемента. Назначается при создании.

Только чтение. Можно фильтровать и сортировать

createdTime
datetime

Дата и время создания элемента.

Только чтение. Можно фильтровать и сортировать

createdById
integer

Идентификатор пользователя, который создал элемент.

Только чтение. Можно фильтровать и сортировать

createdBy
object

Пользователь, который создал элемент. Объект типа сотрудник.

Только чтение. Запрашивается в select

updatedTime
datetime

Дата и время последнего изменения элемента.

Только чтение. Можно фильтровать и сортировать

updatedById
integer

Идентификатор пользователя, который последним изменил элемент.

Только чтение. Можно фильтровать и сортировать

updatedBy
object

Пользователь, который последним изменил элемент. Объект типа сотрудник.

Только чтение. Запрашивается в select

lastActivityTime
datetime

Дата и время последней активности в таймлайне элемента.

Только чтение. Можно фильтровать и сортировать

lastActivityById
integer

Идентификатор автора последней активности в таймлайне.

Только чтение. Можно фильтровать и сортировать

lastActivityBy
object

Автор последней активности в таймлайне. Объект типа сотрудник.

Только чтение. Запрашивается в select

assignedById
integer

Идентификатор ответственного за элемент. Идентификаторы пользователей возвращает метод user.get. Если пользователя нет, метод вернет ошибку «Значение поля не содержится в списке допустимых значений».

Можно изменять, фильтровать и сортировать

assignedBy
object

Ответственный. Объект типа сотрудник.

Только чтение. Запрашивается в select

opened
boolean

Доступен ли элемент всем пользователям: true — да, false — нет.

Можно изменять, фильтровать и сортировать

webformId
integer | null

Идентификатор CRM-формы, через которую создан элемент. Если элемент создан не формой — null. Список форм возвращает метод crm.form.list.

Только чтение. Можно фильтровать и сортировать

webform
object | null

CRM-форма, через которую создан элемент. Объект типа CRM-форма.

Только чтение. Запрашивается в select

lastCommunication
object

Даты последних коммуникаций с клиентом по элементу. Объект типа последняя коммуникация.

Только чтение. Запрашивается в select. Можно фильтровать по полям объекта через точку, например ["lastCommunication.callTime", ">=", "2026-11-01T00:00:00+03:00"]

entityTypeId
integer

Идентификатор типа смарт-процесса, например 1038.

Только чтение

canRead
boolean

Может ли текущий пользователь просматривать элемент: true — да, false — нет.

Только чтение

url
string

Относительная ссылка на карточку элемента, например /crm/type/1038/details/29/?categoryId=69.

Только чтение

stageId
string

Идентификатор стадии, например DT1038_69:NEW. Стадия должна относиться к воронке элемента. Стадии воронки возвращает метод crm.smartprocess<entityTypeId>.category.stage.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включены стадии isStagesEnabled

stage
object

Стадия элемента. Объект типа стадия.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включены стадии isStagesEnabled

movedTime
datetime

Дата и время последней смены стадии.

Только чтение. Можно фильтровать и сортировать.

Есть, если в настройках типа включены стадии isStagesEnabled

movedById
integer

Идентификатор пользователя, который последним сменил стадию.

Только чтение. Можно фильтровать и сортировать.

Есть, если в настройках типа включены стадии isStagesEnabled

movedBy
object

Пользователь, который последним сменил стадию. Объект типа сотрудник.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включены стадии isStagesEnabled

closed
boolean

Закрыт ли элемент: true — да, false — нет.

Только чтение. Поле есть в ответе field.list, но методы get и list его не принимают и возвращают ошибку BITRIX_REST_V3_EXCEPTION_UNKNOWNDTOPROPERTYEXCEPTION.

Есть, если в настройках типа включены стадии isStagesEnabled

stageSemanticId
string

Группа стадии. Возможные значения:

  • P — в работе
  • S — успех
  • F — провал

Только чтение. Поле есть в ответе field.list, но методы get и list его не принимают и возвращают ошибку BITRIX_REST_V3_EXCEPTION_UNKNOWNDTOPROPERTYEXCEPTION. Группу стадии возвращает поле stage.semanticId.

Есть, если в настройках типа включены стадии isStagesEnabled

stageSemantic
object

Группа стадии с названием: id и name. Справочник групп возвращает метод crm.dictionary.stagesemantic.list.

Только чтение. Поле есть в ответе field.list, но методы get и list его не принимают и возвращают ошибку BITRIX_REST_V3_EXCEPTION_UNKNOWNDTOPROPERTYEXCEPTION.

Есть, если в настройках типа включены стадии isStagesEnabled

beginTime
date

Дата начала. Если не передать при создании, Битрикс24 подставит дату создания элемента.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включены даты начала и завершения isBeginCloseDatesEnabled

closeTime
date

Дата завершения. Если не передать при создании, Битрикс24 подставит дату через семь дней после создания элемента.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включены даты начала и завершения isBeginCloseDatesEnabled

categoryId
integer

Идентификатор воронки. Если не передать при создании, элемент попадет в воронку по умолчанию. Воронки типа возвращает метод crm.smartprocess<entityTypeId>.category.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включены воронки isCategoriesEnabled

category
object

Воронка элемента. Объект типа воронка.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включены воронки isCategoriesEnabled

observersId
integer[]

Идентификаторы наблюдателей. Идентификаторы пользователей возвращает метод user.get.

Можно изменять и фильтровать, сортировать нельзя. В фильтре ["observersId", "=", 1] находит элементы, у которых среди наблюдателей есть пользователь 1.

Есть, если в настройках типа включены наблюдатели isObserversEnabled

observers
object[]

Наблюдатели. Массив объектов типа сотрудник. Если наблюдателей нет — пустой массив.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включены наблюдатели isObserversEnabled

contactId
integer | null

Идентификатор основного контакта — первого в списке contactsId. Назначить основной контакт можно методом crm.smartprocess<entityTypeId>.setprimarycontact.

Только чтение. Можно фильтровать, сортировать нельзя.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

contact
object | null

Основной контакт. Объект типа элемент CRM.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

contactsId
integer[]

Идентификаторы контактов элемента. Контакты возвращает метод crm.contact.list. Переданный массив заменяет текущий список контактов.

Можно изменять и фильтровать, сортировать нельзя.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

contacts
object[]

Контакты элемента. Массив объектов типа элемент CRM. Если контактов нет — пустой массив.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

companyId
integer | null

Идентификатор компании. Компании возвращает метод crm.company.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

company
object | null

Компания. Объект типа элемент CRM.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включена привязка к клиенту isClientEnabled

myCompanyId
integer | null

Идентификатор вашей компании, от имени которой работаете с клиентом. Список ваших компаний возвращает метод crm.mycompany.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включены реквизиты вашей компании isMycompanyEnabled

myCompany
object | null

Ваша компания. Объект типа элемент CRM.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включены реквизиты вашей компании isMycompanyEnabled

sourceId
string

Идентификатор источника, например CALL. Источники возвращает метод crm.dictionary.source.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включено поле источника isSourceEnabled

source
object | null

Источник. Объект типа значение справочника.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включено поле источника isSourceEnabled

sourceDescription
string

Дополнительная информация об источнике.

Можно изменять и фильтровать, сортировать нельзя.

Есть, если в настройках типа включено поле источника isSourceEnabled

opportunity
double

Сумма элемента, не меньше 0. Способ расчета суммы задает поле isManualOpportunity.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включена привязка товаров isLinkWithProductsEnabled

taxValue
double

Сумма налога. Рассчитывается по товарным позициям.

Только чтение. Можно фильтровать и сортировать.

Есть, если в настройках типа включена привязка товаров isLinkWithProductsEnabled

isManualOpportunity
boolean

Режим расчета суммы: true — сумма задается вручную, false — рассчитывается по товарным позициям.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включена привязка товаров isLinkWithProductsEnabled

currencyId
string

Идентификатор валюты, например RUB. Валюты возвращает метод crm.currency.list.

Можно изменять, фильтровать и сортировать.

Есть, если в настройках типа включена привязка товаров isLinkWithProductsEnabled

currency
object

Валюта. Объект типа валюта.

Только чтение. Запрашивается в select.

Есть, если в настройках типа включена привязка товаров isLinkWithProductsEnabled

related<Код типа>Id
integer | null

Идентификатор родительского элемента другого типа объекта, например relatedLeadId, relatedSmartInvoiceId, relatedSmartProcess177Id. Подробнее — в разделе Поля связей с другими типами.

Можно изменять и фильтровать, сортировать нельзя

related<Код типа>
object | null

Родительский элемент другого типа объекта, например relatedLead. Объект типа элемент CRM.

Только чтение. Запрашивается в select

Поля related<Код типа>Id и related<Код типа> появляются, когда в Битрикс24 настроена связь, в которой смарт-процесс подчинен другому типу объекта. Для каждого родительского типа у смарт-процесса есть пара полей:

  • related<Код типа>Id — идентификатор родительского элемента, например relatedLeadId для лида, relatedSmartInvoiceId для счета, relatedSmartProcess177Id для смарт-процесса с entityTypeId = 177
  • related<Код типа> — родительский элемент как объект типа элемент 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
integer

Идентификатор пользователя

firstName
string

Имя

lastName
string

Фамилия

personalGender
string | null

Пол: M — мужской, F — женский. Если пол не указан — null

url
string

Относительная ссылка на профиль пользователя, например /company/personal/user/1/

personalPhoto
string | null

Ссылка на фотографию пользователя. Если фотографии нет — null

Объект элемента CRM

Поля contact, contacts, company, myCompany, related<Код типа>.

Название
тип

Описание

id
integer

Идентификатор элемента

entityTypeId
integer

Идентификатор типа объекта, например 3 — контакт, 4 — компания

canRead
boolean

Может ли текущий пользователь просматривать элемент

title
string

Название элемента. У контакта — фамилия, имя и отчество

url
string

Относительная ссылка на карточку элемента, например /crm/company/details/3/

Объект стадии

Поле stage.

Название
тип

Описание

id
string

Идентификатор стадии, например DT1038_69:NEW

name
string

Название стадии

sort
integer

Порядок стадии в воронке

color
string

Цвет стадии в формате #RRGGBB

semanticId
string

Группа стадии: P — в работе, S — успех, F — провал

Объект воронки

Поле category.

Название
тип

Описание

id
integer

Идентификатор воронки

name
string

Название воронки

sort
integer

Порядок сортировки воронки

isDefault
boolean

Воронка по умолчанию: true — да, false — нет

Объект значения справочника

Поле source.

Название
тип

Описание

id
string

Идентификатор значения, например CALL

name
string

Название значения, например Звонок

sort
integer

Порядок сортировки

Объект CRM-формы

Поле webform.

Название
тип

Описание

id
integer

Идентификатор CRM-формы

name
string

Название CRM-формы

Объект последней коммуникации

Поле lastCommunication. Если коммуникации такого вида не было, поле равно null.

Название
тип

Описание

communicationTime
datetime | null

Дата и время последней коммуникации любого вида

callTime
datetime | null

Дата и время последнего звонка

emailTime
datetime | null

Дата и время последнего письма

imolTime
datetime | null

Дата и время последнего сообщения в открытой линии

webformTime
datetime | null

Дата и время последнего заполнения CRM-формы

Объект валюты

Поле currency.

Название
тип

Описание

id
string

Код валюты, например RUB

fullName
string

Название валюты

formatString
string

Шаблон вывода суммы. Символ # заменяется суммой. Знак валюты приходит HTML-сущностью, например # &#8381;

decPoint
string

Десятичный разделитель

thousandsSep
string

Разделитель разрядов. Может приходить HTML-сущностью, например &nbsp;

decimals
integer

Количество знаков после запятой

hideZero
boolean

Скрывать ли незначащие нули в дробной части

amount
double

Курс валюты относительно базовой

amountCount
integer

Количество единиц валюты, к которому относится курс

base
boolean

Базовая валюта: true — да, false — нет

sort
integer

Порядок сортировки

numericCode
string

Цифровой код валюты, например 643

languageId
string

Язык, для которого заданы название и формат

createdTime
datetime | null

Дата и время создания валюты

updatedTime
datetime | null

Дата и время изменения валюты

createdById
integer | null

Идентификатор пользователя, который создал валюту

updatedById
integer | null

Идентификатор пользователя, который изменил валюту

Пользовательские поля

Пользовательские поля смарт-процесса называются 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 — массив таких объектов.

Продолжите изучение

Предыдущая