Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Событие на создание объекта CRM пользовательского типа onCrmDynamicItemAdd». Вы узнаете экспертные методики работы с событие создание и научитесь избегать типичных ошибок начинающих разработчиков.
Событие на создание объекта CRM пользовательского типа onCrmDynamicItemAdd
> Scope: crm
>
> Кто может подписаться: любой пользователь
Событие сработает на добавление элемента любого пользовательского типа объектов в CRM.
События не будут отправляться в приложение, пока установка не завершена. Проверьте установку приложения
Что получает обработчик
Данные передаются в виде POST-запроса {.b24-info}
Событие на создание элемента смарт-процесса с entityTypeId = 1220:
{
"event": "ONCRMDYNAMICITEMADD",
"event_handler_id": "4",
"data": {
"FIELDS": {
"ID": "22",
"ENTITY_TYPE_ID": "1220"
}
},
"ts": "1723534033",
"auth": {
"access_token": "s6p6eclrvim6da22ft9ch94ekreb52lv",
"expires_in": "3600",
"scope": "crm",
"domain": "some-domain.bitrix24.com",
"server_endpoint": "https://oauth.bitrix24.tech/rest/",
"status": "F",
"client_endpoint": "https://some-domain.bitrix24.com/rest/",
"member_id": "a223c6b3710f85df22e9377d6c4f7553",
"refresh_token": "4s386p3q0tr8dy89xvmt96234v3dljg8",
"application_token": "51856fefc120afa4b628cc82d3935cce"
}
}Параметртип | Описание |
|---|---|
| event [ string][1] | Символьный код события. В данном случае — |
| event_handler_id [ integer][1] | Идентификатор обработчика события |
| data [ object][1] | Объект, содержащий информацию о созданном объекте пользовательского типа CRM. Содержит единственный ключ |
| data.FIELDS [ object][1] | Объект содержащий информацию о полях созданного объекта пользовательского типа CRM. Структура описана ниже |
| ts [ timestamp][1] | Дата и время отправки события из очереди событий |
| auth [ object][1] | Объект, содержащий параметры авторизации и данные о портале, на котором произошло событие. Структура описана ниже |
Параметр FIELDS {#fields}
Параметртип | Описание |
|---|---|
| ID [ integer][1] | Идентификатор созданного объекта пользовательского типа CRM |
| ENTITY_TYPE_ID [ integer][1] | Идентификатор пользовательского типа CRM |
Параметр auth {#auth}
Несмотря на то, что универсальные методы CRM позволяют добавлять и модифицировать объекты таких стандартных типов, как сделки, лиды, контакты, компании и коммерческие предложения, событие onCrmDynamicItemAdd не будет срабатывать при добавлении перечисленных объектов.
Для отслеживания новых сделок, лидов и так далее, вы можете воспользоваться специальными событиями:
- [](../../deals/events/on-crm-deal-add)
- [](../../leads/events/on-crm-lead-add)
- [](../../contacts/events/on-crm-contact-add)
- [](../../companies/events/on-crm-company-add)
- [](../../quote/events/on-crm-quote-add)
При добавлении новых счетов событие onCrmDynamicItemAdd сработает.
- [](../../../events/index)
- [](../../../events/event-bind)
- [](index)
- [](on-crm-dynamic-item-update)
- [](on-crm-dynamic-item-delete)
[1]: ../../../data-types.md
💡 Экспертное мнение и рекомендации
Практические рекомендации:
- При написании кастомных компонентов для «Событие на создание объекта CRM пользовательского типа onCrmDynamicItemAdd» всегда разделяйте бизнес-логику и представление (шаблон).
- Используйте отладку SQL-запросов через конструкцию
$wpdb->last_queryили стандартный трекер Битрикса, чтобы контролировать нагрузку.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru