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

🔔 Вебхуки

Что это. Вебхук — обмен событиями по HTTP без опроса: одна сторона отправляет запрос сразу, как только что-то произошло, вторая его принимает и обрабатывает.

Когда нужно. Когда внешняя система должна узнавать об изменениях в Fixorix в момент их появления, а не выяснять их регулярными запросами к API. И наоборот — когда события внешней системы должны попадать внутрь платформы.

Сервис есть, раздела в интерфейсе пока нет

Вебхуки обслуживает отдельный сервис Fixorix. Он раскатан на тестовом контуре и умеет оба направления: приём событий извне и доставку событий наружу — с HMAC-подписью, повторными попытками и журналом доставок.

Но подписаться на события продукта из интерфейса сейчас нельзя: раздела вебхуков в дашборде нет, управляющее API закрыто служебным токеном, а каталога типов событий продукта ещё не существует.

Два направления

Направления независимы: у каждого своя настройка, свои ограничения и свои коды ответа.

НаправлениеКто кому отправляетДля чегоСтраница
ИсходящиеFixorix → ваш серверПолучать события платформы на свой адресИсходящие вебхуки
ВходящиеВаша система → FixorixПередавать в платформу события извнеВходящие вебхуки

Что уже есть и чего ещё нет

ВозможностьСостояние
Приём событий по секретной ссылкеРаботает на тестовом контуре: webhook.fixorix.dev и webhook-world.fixorix.dev
Проверка секрета и challenge-рукопожатие на приёмеРаботает
Доставка событий на HTTPS-адрес с подписью HMAC-SHA256Работает в сервисе
Повторные попытки, пауза, ротация секрета, тестовая отправкаРаботают в сервисе
Журнал доставок и журнал HTTP-попытокРаботают в сервисе
Каталог типов событий продуктаПока нет — тип события задаёт та система, которая его публикует
Публикация событий сервисами FixorixПока нет — в этот контур события ещё никто не пишет
Раздел «Вебхуки» в интерфейсеПока нет
Управление вебхуками по API-ключу проектаПока нет — управляющее API закрыто служебным токеном
Подписаться на события продукта пока нельзя

Сервис готов и раскатывается, но подписка на события Fixorix из интерфейса недоступна: нет ни каталога типов событий, ни публикации событий сервисами платформы, ни раздела в дашборде. Технически подписку завести можно — доставлять по ней пока нечего.

Страницы раздела

СтраницаО чём
Исходящие вебхукиПодписка, формат доставки, заголовки, подпись, повторные попытки, журнал
Входящие вебхукиТочка приёма, секретная ссылка, проверка секрета, challenge, коды ответа
Типы событийЧто такое тип события, конверт события, ограничения формата
Вебхуки на дашбордеКак раздел будет выглядеть в интерфейсе, когда появится

Что делать сейчас

Пока события платформы не публикуются, задачи, ради которых обычно берут вебхуки, решаются тремя способами.

Опрос REST API

Актуальные данные можно получать запросами: REST API даёт доступ к ботам и каналам, участникам, сообщениям и базе знаний. Учитывайте лимит — 1000 запросов в минуту на каждый API-ключ.

Вебхук-триггер сценария

Обратное направление внутри платформы работает: у сценария есть тип триггера «Webhook» — внешний вызов запускает сценарий. Подсказка в редакторе: «URL вебхука для этого flow будет доступен после публикации». Тело запроса — не больше 64 КиБ, на проект — не больше 600 вебхуков в минуту.

Не работает по API-ключу

Вебхук-триггер сценария вызывается только из аутентифицированного контекста — с токеном пользователя, состоящего в проекте. В списке публичных маршрутов API этого метода нет, поэтому внешняя система с API-ключом проекта запустить сценарий не может.

Подробнее — в разделе Триггеры.

Реакции внутри платформы

Многое из того, ради чего обычно нужен внешний сервер, делается без него — Сценариями: автоответы, смена статуса, уведомления сотрудникам, HTTP-запрос в вашу систему прямо из сценария, обращение к AI.

Ограничения

  • Каталога типов событий продукта нет: тип события — произвольная строка, её задаёт публикующая сторона.
  • Ни один сервис Fixorix пока не публикует события в контур вебхуков.
  • Управляющее API вебхуков закрыто служебным токеном и наружу не выставлено; по API-ключу проекта оно недоступно.
  • Наружу на тестовом стенде выставлен только приём событий — два домена точки приёма.
  • Раздела вебхуков в интерфейсе нет: слово «вебхук» встречается в дашборде только как тип триггера сценария.

Исходящие вебхуки · Входящие вебхуки · Типы событий · Вебхуки на дашборде · REST API