Skip to content

Интеграции

можно. поддерживает пользовательские вебхуки — HTTP-запросы, которые сервер отправляет на ваш URL при изменениях в системе.

Как это работает

При наступлении события (создание/изменение/удаление флага, сегмента, стратегии и т.д.) сервер отправляет HTTP POST на указанный URL. Отправка происходит асинхронно, после коммита транзакции в БД.

Тело запроса формируется по заданному вами шаблону с подстановкой переменных события.

Настройка вебхука

Через веб-панель

Раздел ИнтеграцииПодключить. Поля:

ПолеОписание
НазваниеЧеловекочитаемое имя вебхука
URLHTTPS-адрес, куда сервер отправит POST
ЗаголовкиПроизвольные HTTP-заголовки (JSON-объект). По умолчанию: Content-Type: application/json
ТелоШаблон тела запроса. Использует переменные события. Без тела — запрос без тела
СобытияКакие системные события вызывают отправку
АктивенВключён / выключен

Типы событий

СобытиеКогда
flag.createdСоздан новый флаг
flag.updatedИзменены поля флага
flag.archivedФлаг отправлен в архив
flag.unarchivedФлаг восстановлен из архива
flag.deletedФлаг удалён
segment.createdСоздан новый сегмент
segment.updatedИзменены правила сегмента
segment.deletedСегмент удалён
strategy.updatedИзменена стратегия флага
apikey.createdСоздан API-ключ
apikey.updatedИзменён API-ключ
apikey.deletedAPI-ключ удалён
environment.createdСоздано окружение
environment.updatedИзменено окружение
environment.deletedОкружение удалено
project.updatedИзменены настройки проекта

Переменные шаблона тела

Подстановки, которые заменяются при отправке вебхука:

  • events.action — код события (flag.created, flag.updated и т.д.)
  • events.resourceType — тип ресурса (flag, segment, strategy, apikey, environment, project)
  • events.resourceId — ID ресурса (число)
  • events.resourceName — имя/ключ ресурса
  • events.details — детали изменения (текст)
  • events.projectId — ID проекта
  • events.user.id — ID пользователя
  • events.user.name — имя пользователя
  • events.user.email — email пользователя
  • events.timestamp — время события (ISO 8601)

В шаблоне тела переменные обрамляются двойными фигурными скобками.

При передаче JSON-конфига через API используйте двойные квадратные скобки: [[events.action]].

Особенности

  • HTTPS only — URL должен использовать HTTPS, без loopback/localhost
  • Таймаут — 30 секунд на запрос
  • Fire-and-forget — нет повторных попыток при ошибке. Последняя ошибка сохраняется в lastError
  • Асинхронно — отправка не блокирует пользовательский запрос
  • Лимиты — количество вебхуков ограничено (зависит от плана)

Что дальше?

  • Обзор API — аутентификация и базовые принципы
  • Аудит — история всех изменений

Released under the BSL 1.1 License.