Перейти к основному контенту

Webhooks: передача событий во внешнюю систему

Для кого эта инструкция

Для администратора и разработчика внешней системы, которой DoCRM должна передавать события. Результат — настроенный сервис, получающий выбранные события в JSON по HTTP POST.

Где находится

Нажмите шестерёнку внизу левого меню → вкладка «Общие настройки» → карточка «Настройки отправки данных» → карандаш справа вверху. Откроется окно «Настройка вебхуков».

Подготовьте принимающий URL

До настройки подготовьте URL внешней системы, который принимает HTTP POST с JSON и отвечает успешным HTTP-статусом 2xx. В настройках DoCRM нет полей для заголовка авторизации или общего секрета вебхука: это нужно учесть в архитектуре принимающего сервиса до включения отправки.

Принимающий сервис должен обрабатывать повторную доставку одного события без дублирования результата. Это важно, потому что DoCRM повторяет неуспешную доставку.

Добавьте сервис

  1. В окне «Настройка вебхуков» нажмите «Добавить новый сервис».
  2. В блоке «Сервис #…» заполните «Название». Используйте понятное техническое имя, например «Сайт: обновление оплат».
  3. В поле «Webhook URL» вставьте подготовленный адрес.
  4. В поле «Типы событий» выберите нужные категории.
  5. Нажмите «Сохранить» внизу окна.

Один сервис может получать несколько типов событий. Можно добавить несколько сервисов: DoCRM отправит событие каждому сервису, у которого выбрана соответствующая категория.

Выберите события

В выпадающем поле доступны пять типов:

  • «Связанные с клиентом платежи»;
  • «Связанные с сотрудником платежи»;
  • «Связанные с выручкой платежи»;
  • «Записи клиентов на урок»;
  • «Создание и изменение сообщений клиентов».

После сохранения DoCRM формирует JSON с полями tenantId, eventType, occurredAt и payload. Содержимое payload зависит от выбранного типа события: платежа, записи клиента на урок или изменения сообщения.

Проверьте доставку

Для проверки выполните безопасное реальное действие нужного типа и посмотрите журнал принимающего сервиса. В форме DoCRM нет отдельной кнопки тестовой отправки или таблицы статусов доставки.

Если принимающий URL вернул ошибку или недоступен, DoCRM делает до трёх повторных попыток с паузами 10, 20 и 30 секунд. Поэтому обработчик на стороне внешней системы должен возвращать 2xx только после успешной обработки и уметь распознавать повтор.

Измените или удалите сервис

Чтобы изменить URL или набор событий, повторно откройте карточку «Настройки отправки данных» и отредактируйте нужный блок. Кнопка «Удалить» в правом верхнем углу блока удаляет сервис из формы; нажмите «Сохранить», чтобы прекратить отправку на этот URL.

Готово: DoCRM передаёт выбранные события во внешнюю систему по настроенному URL.