Вебхуки для отслеживания активности | Support eSputnik

Пользовательские данные

Email

Омниканальность

Автоматизация

Отслеживание событий и поведения

Вебхуки для отслеживания активности

Webhooks (рус. вебхуки) – это пользовательские обратные запросы по HTTP. Обычно их отработка связана с каким-либо событием, например, прочтением письма или запуском приветственной серии. Вебхуки считаются удобным инструментом для отслеживания событий в реальном времени: как только событие наступает, на внешний URL отправляется запрос.

В eSputnik есть два варианта для настройки и использования вебхуков:

1. Добавление внешнего URL для аккаунта, чтобы отслеживать активности пользователей.
2. Настройка кастомных запросов в сценариях через специальный блок Webhook.

Вебхуки для отслеживания активностей

Эта функциональность позволяет в режиме реального времени получать информацию обо всех активностях контактов. Данные будут поступать регулярно на указанный URL POST запросами, как описано ниже.

Для сравнения/альтернативы есть метод API Get contacts activity. Он работает при отправке с вашей стороны GET запросов, в которых можно указывать интервал времени (не более 3 месяцев) и параметры (email, статус и т. д.).

При помощи вебхуков вы будете получать информацию обо всех событиях в любом канале:

  • отправлено (только для канала Mobile Push);
  • доставлено;
  • ошибка доставки;
  • прочитано;
  • получатель перешел по ссылке;
  • получатель отписался от рассылок;
  • получатель пожаловался на спам;
  • подписки, уникальные просмотры и конверсия для виджетов.

Как подключить вебхуки для аккаунта

Сконфигурируйте на своем сервере URL, на который вы хотите получать уведомления, POST запросы в формате JSON.

Затем этот URL внесите в настройки eSputnik. Для этого авторизуйтесь в системе, зайдите в настройки аккаунта → раздел “Лаборатория”. Активируйте опцию “Вебхуки” и вставьте ваш URL в поле “Webhook-адрес”.

Как активировать функцию “Вебхуки”

После произойдет проверка URL-адреса GET запросом. Если будет отображена ошибка, то, возможно, на вашей стороне сработала блокировка нашего запроса. Узнать точную причину можно по коду ошибки сервера. Система проверит доступность URL-адреса. Если все прошло успешно, то настройка завершена.

После этого произведите любое действие в аккаунте. Например, отправьте себе письмо. В течение нескольких минут на указанный адрес будет отправлен POST запрос с информацией по последним активностям.

POST запросы отправляются в формате JSON при появлении активности пользователей (отправка email, открытие сообщения, переход и т. д.).
Если webhook URL не возвращает код ответа HTTP 200, то попытка POST запроса будет повторяться с увеличивающимися интервалами (1 минута, 2 минуты, 4 минуты, 8 минут – до одного запроса в час). Следующие запросы будут отложены до успешной отправки первого, а затем будут отправляться так же последовательно.

Перечень возможных параметров 

Параметр Тип Описание
activityDateTime string Дата и время, когда случилась активность
activityStatus string
  • SENT – сообщение отправлено (только для канала Mobile Push)
  • DELIVERED – сообщение доставлено.
  • UNDELIVERED – сообщение не доставлено (в параметре statusDescription описывается причина).
  • READ – сообщение прочитано
  • UNSUBSCRIBED – контакт отписался от рассылок.
  • CLICKED – контакт переходил по ссылкам в сообщении.
  • SPAM – контакт пожаловался на спам.
  • SUBSCRIPTION_CHANGED – контакт изменил категорию подписки.
broadcastId int Идентификатор рассылки.
clickEventLink string Содержит ссылку, по которой перешел контакт (при статусе CLICKED).
contactId int Идентификатор контакта.
email string Email контакта.
externalCustomerId string Уникальный идентификатор контакта в системе клиента.
hardBounce bool Это поле возвращается только в случае, если статус – UNDELIVERED. Параметр оповещает о наличии контакта в черном списке.
  • false – не в черном списке на момент отправки сообщения.
  • true – в черном списке на момент отправки.
iid string Служебный параметр.
mediaType     string Медиатип (SMS, Email, Web Push, Viber, Mobile Push, AppInbox, Widget, In-App, Telegram).
messageId int Идентификатор сообщения.
messageInstanceId int Идентификатор экземпляра сообщения.
messageLanguageCode string Идентификатор языка сообщения.
messageName string Название сообщения (отсутствует для тестовых сообщений).
messageTag string Метка сообщения.
mobilepush string Token подписчика мобильного приложения.
sms string Номер телефона контакта.
sourceEventId int Идентификатор события.
sourceEventKey string Ключ типа события.
sourceEventTypeId int Идентификатор типа события.
sourceEventTypeKey string Значение ключа события.
statusData   Массив с данными.
statusDescription string Это поле возвращается только в случае, если статус – UNDELIVERED. Содержит причину, по которой сообщение не было доставлено. Это может быть ответ сервера получателя, ответ системы о невозможности отправить сообщение, etc.
subscripton   Массив с данными.
subscriptons array of string Ключи категорий подписок.
viber string Номер телефона контакта.
viewMessageLink string Содержит ссылку на веб-версию сообщения.
webpush string Token подписчика вебпуш-уведомлений.
workflowBlockId string Служебный параметр сценария.
workflowId int Идентификатор сценария.
workflowInstanceId int Идентификатор отдельного запуска сценария. Используйте его для группировки рассылок в рамках запуска одного сценария.

Ниже приведены тестовые примеры вебхуков в виде массива JSON со всеми возможными вариантами статусов.

Для массовых рассылок:

JSON
COPY
MORE

Для триггерных рассылок:

JSON
COPY
MORE
    Остались вопросы?
    Специалисты обязательно ответят и помогут решить вашу проблему!
    Консультация в чате
    Готовы к вашим вопросам!
    Написать в чат
    Электронная почта
    Напишите в службу поддержки eSputnik.
    Отправить email