Интеграции
Всё, что находит мониторинг, попадает в ленту событий проекта. Приёмник получает событие сразу, а по ключу можно добрать пропущенное за любой период. Уведомления в Telegram при этом продолжают приходить как раньше — интеграция их не заменяет.
Приёмники
Адреса, на которые отправляются события. Каждый запрос подписан секретом приёмника.
Ключи API
Нужны тому, кто читает ленту сам. Ключ показывается один раз — в базе только его отпечаток.
Журнал доставок
Что ушло, с каким ответом и за сколько. Не доставленное можно отправить заново.
Как подключиться
Коротко о том, что получает принимающая сторона. Полное описание — на отдельной странице: её можно просто переслать тому, кто пишет приёмник.
- Лента событий
GET /api/v1/integrations/events?since=<курсор>
ЗаголовокX-API-Key. Ответ — массив событий без обёртки, пустая лента это[]. Элемент:id,type,created_at,cursor,data. Порядок по возрастанию времени; передайтеcursorпоследнего обработанного вsince, чтобы получить только новое.- Одна фраза
- Ключ выдан на проект, и в ленте все фразы вперемешку.
GET /api/v1/integrations/rulesотдаёт список фраз с ихid, а…/events?rule=<id или текст фразы>— только её события. Работает и для уже удалённой фразы: её события лежат в ленте положенные тридцать дней. - Что внутри
data - Вложенные
rule(чем поймано),source(где вышло) иmessage(что именно:text,link,published_at,views,media). Текст поста лежит вdata.message.text, не в корне. - Картинки
message.media— до четырёх вложений:type,url(сам файл, если он есть),thumbnail(превью), размеры. У видео заполнено только превью — файла не отдаёт ни одна площадка. Адреса ведут на чужие CDN, поэтому для архива кампании скачивайте картинку сразу, а не ходите по ссылке через год.- Вебхук
- POST с заголовками
X-Telemaks-Event,X-Telemaks-Delivery,X-Telemaks-TimestampиX-Telemaks-Signatureвидаt=…,v1=…, где v1 — HMAC-SHA256 от строкиметка.телона секрете приёмника. Успех — любой ответ 2xx; иначе повтор через минуту, пять, пятнадцать, час и шесть часов. Тело вебхука — конверт доставки (event,delivery_id,occurred_at,cursor) вокруг того жеdata, что в ленте. - Типы событий
- —
- Группировка
- Каждый найденный пост — отдельное событие. Совпадающие тексты мы не
схлопываем: в инфокампании, где сообщества публикуют один текст с хештегом,
считать нужно все посты. Поле
cluster_idсправочное, его можно игнорировать. - Повторы
- Одно событие может прийти дважды, если связь оборвалась после вашего ответа.
Храните
delivery_idи пропускайте повторы.
Полное описание формата — одним текстом. Вставьте его в диалог
с моделью или положите файлом в проект: там есть и подпись
вебхука, и курсор, и разбор data, на котором
обычно и ошибаются.