Webhooks
Настройте Webhooks, чтобы получать уведомления на свой сервер о событиях в Taddy.
Список событий
В настоящий момент поддерживаются следующие события:
Обмен трафиком: пользователь получен (incoming)
Обмен трафиком: пользователь отправлен (outgoing)
Реклама: показ объявления (impression)
Реклама: просмотр объявления (view-through)
Область действия
Webhook может быть глобальным на всё рабочее пространство или же срабатывать по фильтрам (можно настроить список ресурсов или рекламных кампаний, связанные с которыми события будут триггерить срабатывание webhook'ов)
Политика доставки и повторов
После отправки запроса на ваш сервер, Taddy ожидает от вашего сервера код ответа 2xx
, чтобы считать доставку уведомления успешной. Любой другой код — считается ошибкой и запускает политику повторной доставки. Последующие запросы будут отправляться с нарастающим интервалом.
Максимальное число попыток — 30
Максимальный период доставки — 24 часа
Максимальное время подключения к серверу — 5 сек.
Максимальное время ожидания ответа — 30 сек.
Каждое уведомление имеет уникальный идентификатор и отправляется в заголовке запроса X-Taddy-Event-Id
. Вы можете использовать его для дедупликации уведомлений.
Другие полезные заголовки
X-Taddy-Event-Id
— уникальный идентификатор событияX-Taddy-Event-Date
— дата событияX-Taddy-Attempt
— номер попытки доставки уведомленияX-Taddy-Sign
— контрольная сумма (подпись) уведомления (подробнее ниже)
Проверка подлинности уведомления
Для верификации используется контрольная сумма (подпись) уведомления. Значение передается в заголовке X-Taddy-Sign
и может быть проверено следующим алгоритмом:
Где:
ID — уникальный идентификатор события. Из заголовка
X-Taddy-Event-Id
Например:b9a63e8e-9401-42cc-8c1a-5a7a9658eb51
URL — полный URL начиная с https:// и заканчивая всеми query-параметрами Например:
https://myserver.com/webhook?id=1234&user=4321&score=1.2
BODY — все тело запроса (при его наличии, в противном случае — опускается) Например:
{"id":1234,"user":4321,"score":1.2}
KEY — приватный ключ рабочего пространства (пока выдается через тех.поддержку) Например:
b537ba63622c815a38ec8997eb45f902
Проверка заключается в сравнении заголовка подписи, с той контрольной суммой, что вы вычислили. Если они совпадают — значит уведомление отправлено Taddy и ему можно верить.
Отладка работы
Вы можете включить журнал для вашего webhook, чтобы записывать все запросы Taddy и ответы вашего сервера. По умолчанию ведение журнала отключено.
Используйте журнал только для отладки работы и отключайте его по завершении отладки. Ведение подробного журнала может оказать негативное влияние на производительность системы Webhooks на большом количестве событий.
Записи в журнале хранятся 3 дня.
Last updated