События
Интерфейс REST позволяет устанавливать свои обработчики серверных событий.
События
Обработчиком служит URL, который будет вызван после того, как пользователь произведет запрошенное действие на портале Битрикс24, на который установлено приложение. Поскольку запросы будут идти с серверов Битрикс, то любой URL должен быть доступен для GET/POST запросов извне.
Обработчик получает на вход следующие данные:
Поле запроса | Описание |
---|---|
event | Имя сработавшего события |
data | Массив данных события. Зависит от события. |
auth | Набор данных авторизации. |
Обработчик может:
- использовать полученные данные авторизации для выполнения запросов к REST API.
- быть установлен только пользователем с правами администрирования портала.
Примечание.Если обработчику события требуется обращение к Rest API для работы с данными, то настоятельно рекомендуется использовать для этого данные авторизации сохраненные на стороне приложения, а не опираться на получение access_token, так как его может и не быть.
При установке события можно указать пользователя, под которым будет авторизовываться обработчик события. По умолчанию обработчику события будет выдана авторизация пользователя, действия которого привели к срабатыванию события.
Обработчик события будет вызван не сразу после срабатывания события, а через некоторое время, зависящее от нагрузки.
Список доступных событий можно получить при помощи REST-метода events.
Установка обработчика события производится при помощи REST-метода event.bind или при помощи функции BX24.callBind js-библиотеки. Получение списка зарегистрированных обработчиков событий производится при помощи REST-метода events.get
Снятие зарегистрированного обработчка события производится при помощи REST-метода event.unbind или при помощи функции BX24.callUnbind js-библиотеки.
Для доступа к каждому событию при регистрации версии приложения должно быть запрошено соответствующее событию право доступа.
Приложение может установить произвольное количество обработчиков одного и того же события, но все обработчики должны быть установлены с авторизацией различных пользователей. Кроме того, вызов обработчика события может зависеть от доступа пользователя, чья авторизация будет выдана обработчику.
Имена событий регистронезависимы.
Внимание! При обновлении версии зарегистрированные обработчики по умолчанию сохранятся, и при необходимости могут быть удалены обработчиком установки новой версии приложения.
Пример
Событие установки приложения
array( 'event' => 'ONAPPINSTALL', 'data' => array( 'VERSION' => '1', 'LANGUAGE_ID' => 'ru', ), 'ts' => '1466439714', 'auth' => array( 'access_token' => 's6p6eclrvim6da22ft9ch94ekreb52lv', 'expires_in' => '3600', 'scope' => 'entity,im', 'domain' => 'portal.bitrix24.com', 'server_endpoint' => 'https://oauth.bitrix.info/rest/', 'status' => 'F', 'client_endpoint' => 'https://portal.bitrix24.ru/rest/', 'member_id' => 'a223c6b3710f85df22e9377d6c4f7553', 'refresh_token' => '4s386p3q0tr8dy89xvmt96234v3dljg8', 'application_token' => '51856fefc120afa4b628cc82d3935cce', ), )
Все события Rest
Событие | Вызывается | Поддерживает вебхуки |
---|---|---|
События приложения | ||
OnAppInstall | Событие на установку приложения | |
OnAppUpdate | Событие на обновление приложения. | |
OnAppUninstall | при удалении приложения | |
OnAppPayment | при оплате приложения | |
OnAppMethodConfirm | при получении решения администратора портала по запросу на использование методов, требующих подтверждения | |
OnAppTest | ||
OnSubscriptionRenew | События на обновление пользователем подписки на приложение на портале. | |
События бот-платформы | ||
OnImBotMessageAdd | Событие на получение чат-ботом сообщения. | |
OnImBotMessageUpdate | Событие на обновление сообщения чат-ботом. | |
OnImBotMessageDelete | Событие на удаление сообщения чат-ботом. | |
OnImBotJoinChat | Событие на получение информации чат-ботом о включении его в чат (или личную переписку). | |
OnImBotDelete | Событие на удаление чат-бота. | |
OnImCommandAdd | Событие на получение чат-ботом команды. | |
События CRM | ||
Счета | ||
onCrmInvoiceAdd | при создании счёта | Да |
onCrmInvoiceDelete | при удалении счёта | Да |
onCrmInvoiceSetStatus | при изменении статуса счёта | Да |
onCrmInvoiceUpdate | при обновлении счёта | Да |
onCrmInvoiceUserFieldAdd | при добавлении пользовательского поля счёта | Да |
onCrmInvoiceUserFieldUpdate | при изменении пользовательского поля счёта | Да |
onCrmInvoiceUserFieldDelete | при удалении пользовательского поля счёта | Да |
onCrmInvoiceUserFieldSetEnumValues | при изменении набора значений для пользовательского поля счёта списочного типа | Да |
onCrmInvoiceRecurringAdd | при создании нового регулярного счета | Да |
onCrmInvoiceRecurringUpdate | при обновлении регулярного счета | Да |
onCrmInvoiceRecurringDelete | при удалении регулярного счета | Да |
onCrmInvoiceRecurringExpose | при выставлении нового счета из регулярного счета | Да |
Товары | ||
onCrmProductAdd | при создании товара | Да |
onCrmProductUpdate | при обновлении товара | Да |
onCrmProductDelete | при удалении товара | Да |
onCrmProductPropertyAdd | при создании свойства товара | Да |
onCrmProductPropertyUpdate | при обновлении свойства товара | Да |
onCrmProductPropertyDelete | при удалении свойства товара | Да |
onCrmProductSectionAdd | после добавлении раздела товара | Да |
onCrmProductSectionUpdate | после изменении раздела товара | Да |
onCrmProductSectionDelete | после удалении раздела товара | Да |
Лиды | ||
onCrmLeadAdd | при создании лида | Да |
onCrmLeadUpdate | при обновлении лида | Да |
onCrmLeadDelete | при удалении лида | Да |
onCrmLeadUserFieldAdd | при добавлении пользовательского поля лида | Да |
onCrmLeadUserFieldUpdate | при изменении пользовательского поля лида | Да |
onCrmLeadUserFieldDelete | при удалении пользовательского поля лида | Да |
onCrmLeadUserFieldSetEnumValues | при изменении набора значений для пользовательского поля лида списочного типа | Да |
Сделки | ||
onCrmDealAdd | при создании сделки | Да |
onCrmDealUpdate | при обновлении сделки | Да |
onCrmDealDelete | при удалении сделки | Да |
onCrmDealUserFieldAdd | при добавлении пользовательского поля сделки | Да |
onCrmDealUserFieldUpdate | при изменении пользовательского поля сделки | Да |
onCrmDealUserFieldDelete | при удалении пользовательского поля сделки | Да |
onCrmDealUserFieldSetEnumValues | при изменении набора значений для пользовательского поля сделки списочного типа | Да |
onCrmDealRecurringAdd | при создании новой регулярной сделки | Да |
onCrmDealRecurringUpdate | при обновлении регулярной сделки | Да |
onCrmDealRecurringDelete | при удалении регулярной сделки | Да |
onCrmDealRecurringExpose | при создании новой сделки из регулярной сделки | Да |
Компании | ||
onCrmCompanyAdd | при создании компании | Да |
onCrmCompanyUpdate | при обновлении компании | Да |
onCrmCompanyDelete | при удалении компании | Да |
onCrmCompanyUserFieldAdd | при добавлении пользовательского поля компании | Да |
onCrmCompanyUserFieldUpdate | при изменении пользовательского поля компании | Да |
onCrmCompanyUserFieldDelete | при удалении пользовательского поля компании | Да |
onCrmCompanyUserFieldSetEnumValues | при изменении набора значений для пользовательского поля компании списочного типа | Да |
Контакты | ||
onCrmContactAdd | при создании контакта | Да |
onCrmContactUpdate | при обновлении контакта | Да |
onCrmContactDelete | при удалении контакта | Да |
onCrmContactUserFieldAdd | при добавлении пользовательского поля | Да |
onCrmContactUserFieldUpdate | при изменении пользовательского поля контакта | Да |
onCrmContactUserFieldDelete | при удалении пользовательского поля контакта | Да |
onCrmContactUserFieldSetEnumValues | при изменении набора значений для пользовательского поля контакта списочного типа | Да |
Валюты | ||
onCrmCurrencyAdd | после создании валюты | Да |
onCrmCurrencyUpdate | после обновлении валюты | Да |
onCrmCurrencyDelete | после удалении валюты | Да |
Дела | ||
onCrmActivityAdd | при создании дела | Да |
onCrmActivityUpdate | при обновлении дела | Да |
onCrmActivityDelete | при удалении дела | Да |
Коммерческие предложения | ||
onCrmQuoteAdd | при создании предложения | Да |
onCrmQuoteUpdate | при обновлении предложения | Да |
onCrmQuoteDelete | при удалении предложения | Да |
onCrmQuoteUserFieldAdd | при добавлении пользовательского поля предложения | Да |
onCrmQuoteUserFieldDelete | при удалении пользовательского поля предложения | Да |
onCrmQuoteUserFieldUpdate | при изменении пользовательского поля предложения | Да |
onCrmQuoteUserFieldSetEnumValues | при изменении набора значений для пользовательского поля предложения списочного типа | Да |
Реквизиты | ||
onCrmRequisiteAdd | При добавлении реквизита | Да |
onCrmRequisiteUpdate | При изменении реквизита | Да |
onCrmRequisiteDelete | При удалении реквизита | Да |
onCrmRequisiteUserFieldAdd | при добавлении пользовательского поля реквизита | Да |
onCrmRequisiteUserFieldUpdate | при изменении пользовательского поля реквизита | Да |
onCrmRequisiteUserFieldDelete | при удалении пользовательского поля реквизита | Да |
onCrmRequisiteUserFieldSetEnumValues | при изменении набора значений для пользовательского поля реквизита списочного типа | Да |
onCrmBankDetailAdd | При добавлении банковского реквизита | Да |
onCrmBankDetailUpdate | При обновлении банковского реквизита | Да |
onCrmBankDetailDelete | При удалении банковского реквизита | Да |
onCrmAddressRegister | При добавлении адреса | Да |
onCrmAddressUnregister | При удалении адреса | Да |
Единицы измерений | ||
onCrmMeasureAdd | При добавлении единицы измерения | Да |
onCrmMeasureUpdate | При обновлении единицы измерения | Да |
onCrmMeasureDelete | При удалении единицы измерения | Да |
Таймлайн | ||
onCrmTimelineCommentAdd | при добавлении нового комментария в таймлайне | Да |
onCrmTimelineCommentUpdate | при обновлении нового комментария в таймлайне | Да |
onCrmTimelineCommentDelete | при удалении нового комментария в таймлайне | Да |
События Телефонии | ||
OnVoximplantCallInit | при инициализации звонка (о поступлении или начале исходящего звонка). | |
OnVoximplantCallStart | при начале разговора (ответе оператора при входящем и ответе абонента при исходящем). | |
OnVoximplantCallEnd | при окончании разговора (запись в историю). | |
OnExternalCallStart | вызывается, когда пользователь нажимает на телефонный номер в объектах CRM для совершения исходящего звонка. | Да |
OnExternalCallBackStart | при заполнении crm-формы обратного звонка. | Да |
События Задач | ||
OnTaskAdd | при добавлении задачи. | Да |
OnTaskUpdate | при обновлении задачи. | Да |
OnTaskDelete | при удалении задачи. | Да |
OnTaskCommentAdd | при добавлении комментария к задаче. | Да |
OnTaskCommentUpdate | при проведении операций над комментарием к задаче. | Да |
OnTaskCommentDelete | при удалении комментария к задаче. | Да |
События Живой ленты | ||
ONLIVEFEEDPOSTADD | Прокси к событию PHP OnAfterSocNetLogAdd. | Да |
ONLIVEFEEDPOSTUPDATE | Прокси к событию PHP OnAfterSocNetLogUpdate. | Да |
ONLIVEFEEDPOSTDELETE | Прокси к событию PHP OnSocNetLogDelete. | Да |
События Рабочих групп | ||
ONSONETGROUPADD | Событие вызывается после добавления новой рабочей группы. Прокси к событию OnSocNetGroupAdd. | Да |
ONSONETGROUPUPDATE | Событие вызывается после изменения рабочей группы. Прокси к событию onSocnetGroupUpdate | Да |
ONSONETGROUPDELETE | Вызывается в момент удаления рабочей группы. Прокси к событию OnSocNetGroupDelete | Да |
ONSONETGROUPSUBJECTADD | Событие вызывается после создания темы рабочих групп. Прокси к событию OnSocNetGroupSubjectAdd. | Да |
ONSONETGROUPSUBJECTUPDATE | Событие вызывается после изменения темы рабочих групп. Прокси к событию OnSocNetGroupSubjectUpdate | Да |
ONSONETGROUPSUBJECTDELETE | Вызывается перед удалением темы рабочих групп.. Прокси к событию OnSocNetGroupSubjectDelete | Да |
События Интернет магазина | ||
OnSaleOrderSaved | Происходит в конце сохранения заказа, когда заказ и все связанные сущности уже сохранены. | Да |
OnSaleBeforeOrderDelete | Вызывается перед удалением заказа. | Да |
On
<сущность>
где <сущность> - это:
- свойство заказа PropertyValue ;
- оплата Payment ;
- отгрузка Shipment ;
- заказ Order .
EntitySaved | Происходит непосредственно после сохранения сущности системы заказов. | Да |
On
<сущность>
где <сущность> - это:
- свойство заказа PropertyValue ;
- оплата Payment ;
- отгрузка Shipment ;
- заказ Order .
Deleted | Вызывается при непосредственном удалении сущности из базы. | Да |
События пользователя | ||
OnUserAdd | При добавлении пользователя в Битрикс24 | Да |
События Коннектора для внешних мессенджеров | ||
OnImConnectorLineDelete | Событие удаления открытой линии. | |
OnImConnectorMessageAdd | Событие нового сообщения из ОЛ. | |
OnImConnectorMessageUpdate | Событие изменения сообщения из ОЛ. | |
OnImConnectorMessageDelete | Событие удаления сообщения из ОЛ. | |
OnImConnectorStatusDelete | Событие удалении конкретного подключения канала приложения конкретной линии. | |
События Календаря | ||
OnCalendarEntryAdd | при добавлении события. | Да |
OnCalendarEntryUpdate | при изменении события. | Да |
OnCalendarEntryDelete | при удалении события. | Да |
OnCalendarSectionAdd | при добавлении секции календаря CALENDAR_SECTION_ID. Подробнее . Также будет вызываться при добавлении ресурса. | Да |
OnCalendarSectionUpdate | при изменении секции/ресурса. | Да |
OnCalendarSectionDelete | при удалении секции/ресурса. | Да |
События Торгового каталога | ||
CATALOG.MEASURE.ON.ADD | При добавлении единицы измерения. | |
CATALOG.MEASURE.ON.DELETE | При удалении единицы измерения. | |
CATALOG.MEASURE.ON.UPDATE | При обновлении единицы измерения. | |
CATALOG.PRICE.ON.ADD | При добавлении цены. | |
CATALOG.PRICE.ON.DELETE | При удалении цены. | |
CATALOG.PRICE.ON.UPDATE | При обновлении цены. | |
CATALOG.PRICE.TYPE.ON.ADD | При добавлении типа цен. | |
CATALOG.PRICE.TYPE.ON.DELETE | При удалении типа цен. | |
CATALOG.PRICE.TYPE.ON.UPDATE | При обновлении типа цен. | |
CATALOG.PRODUCT.ON.ADD | При добавлении товара. | |
CATALOG.PRODUCT.ON.DELETE | При удалении товара. | |
CATALOG.PRODUCT.ON.UPDATE | При обновлении товара. | |
CATALOG.ROUNDING.ON.ADD | При добавлении правила округления цен. | |
CATALOG.ROUNDING.ON.DELETE | При удалении правила округления цен. | |
CATALOG.ROUNDING.ON.UPDATE | При обновлении правила округления цен. | |
CATALOG.STORE.ON.ADD | При добавлении склада. | |
CATALOG.STORE.ON.DELETE | При удалении склада. | |
CATALOG.STORE.ON.UPDATE | При обновлении склада. |
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.