Webhooks: передача событий во внешнюю систему
Для кого эта инструкция
Для администратора и разработчика внешней системы, которой DoCRM должна передавать события. Результат — настроенный сервис, получающий выбранные события в JSON по HTTP POST.
Где находится
Нажмите шестерёнку внизу левого меню → вкладка «Общие настройки» → карточка «Настройки отправки данных» → карандаш справа вверху. Откроется окно «Настройка вебхуков».
Подготовьте принимающий URL
До настройки подготовьте URL внешней системы, который принимает HTTP POST с JSON и отвечает успешным HTTP-статусом 2xx. В настройках DoCRM нет полей для заголовка авторизации или общего секрета вебхука: это нужно учесть в архитектуре принимающего сервиса до включения отправки.
Принимающий сервис должен обрабатывать повторную доставку одного события без дублирования результата. Это важно, потому что DoCRM повторяет неуспешную доставку.
Добавьте сервис
- В окне «Настройка вебхуков» нажмите «Добавить новый сервис».
- В блоке «Сервис #…» заполните «Название». Используйте понятное техническое имя, например «Сайт: обновление оплат».
- В поле «Webhook URL» вставьте подготовленный адрес.
- В поле «Типы событий» выберите нужные категории.
- Нажмите «Сохранить» внизу окна.
Один сервис может получать несколько типов событий. Можно добавить несколько сервисов: DoCRM отправит событие каждому сервису, у которого выбрана соответствующая категория.
Выберите события
В выпадающем поле доступны пять типов:
- «Связанные с клиентом платежи»;
- «Связанные с сотрудником платежи»;
- «Связанные с выручкой платежи»;
- «Записи клиентов на урок»;
- «Создание и изменение сообщений клиентов».
После сохранения DoCRM формирует JSON с полями tenantId, eventType, occurredAt и payload. Содержимое payload зависит от выбранного типа события: платежа, записи клиента на урок или изменения сообщения.
Проверьте доставку
Для проверки выполните безопасное реальное действие нужного типа и посмотрите журнал принимающего сервиса. В форме DoCRM нет отдельной кнопки тестовой отправки или таблицы статусов доставки.
Если принимающий URL вернул ошибку или недоступен, DoCRM делает до трёх повторных попыток с паузами 10, 20 и 30 секунд. Поэтому обработчик на стороне внешней системы должен возвращать 2xx только после успешной обработки и уметь распознавать повтор.
Измените или удалите сервис
Чтобы изменить URL или набор событий, повторно откройте карточку «Настройки отправки данных» и отредактируйте нужный блок. Кнопка «Удалить» в правом верхнем углу блока удаляет сервис из формы; нажмите «Сохранить», чтобы прекратить отправку на этот URL.
Готово: DoCRM передаёт выбранные события во внешнюю систему по настроенному URL.