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

Структуры сообщений захвата событий

Общая структура hook-сообщения для всех типов событий:

ПараметрТипПримерОписание
event_typestring"click"Название события как в таблице типы событий
event_datestring"2018-03-04T13:13:19.034315796Z"Дата возникновения события в формате RFC 3339
profile_idstring"abcdefgh12345678"ID профиля получателя
_xxhstring"ad1850e0d1d9481e"Хеш от email подписчика, используемый для идентификации в Altcraft
_md5string"145bb30f7ddf1184cb560bc4b7705646"MD5 хеш от email подписчика
list_idint111ID Базы данных (листа), в рамках которого возникло событие
account_idint23ID Аккаунта, в рамках которого возникло событие
sends_trying_numint2Число попыток отправки сообщения
is_testboolfalseБыло ли событие вызвано тестовой отправкой сообщения
is_staticboolfalseИспользовались ли динамические подстановки в отправляемый контент
subscription_hash_idstring"0a4b910312345"Хэш подписки
custom_dataJSON object
{"alice@example.org"}
Набор данных о подписчике, настраиваемый в интерфейсе редактирования Action Hook
event_dataJSON object
{"browser": "Firefox"}
Набор данных, зависящий от типа события (есть два типа — событие в трекинге и возникающее в процессе доставки)

Структура event_data

События системы трекинга

Для событий следующих типов:

  • uopen, open, uclick, click, confirm, confirmsub, unsub, read, glanced, skimmed,
  • uclick_sms, click_sms, uclick_sms, unsub_sms,
  • uopen_push, open_push, click_push, uclick_push.
ПараметрТипПримерОписание
message_idint17ID сообщения в системе Altcraft
campaign_idint973ID кампании в системе Altcraft
segment_idint0ID сегмента, если доступно
resource_idint3ID ресурса
ipstring"10.9.0.14"IPv4 адрес подписчика
countrystring".us"
".ru"
Страна в TLD виде
citystring"New York"
"Moscow"
Город подписчика
postal_codestring"101000"Почтовый код подписчика
regionstring"Ohio"
"Moskovskaya oblast"
Регион подписчика
tzstring"Europe/Vaduz"Временная зона подписчика
latfloat55.244075Географическая широта
lonfloat55.244075Географическая долгота
user_agentstring"Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0"Строка в заголовке User-Agent
osstring"Linux x86_64"Операционная система
browserstring"Firefox"Браузер, версия
devicestring"web"Устройство
link_urlstring"http://www.example.com"HTTP ссылка, на которую был осуществлен редирект
launch_idstring"00000017000003cd5a9bf01a"ID запуска
send_message_idstring"5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78"ID отправленного сообщения
full_message_idstring"fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA"Полный SendMessageID
email_message_idstring"mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry"Email-safe SendMessageID (только для событий email-канала)
extra_uidstring"ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D"Extra UID (только для событий push-канала)

События отправки сообщений

Для событий следующих типов:

  • send, deliv, suppress, complain,
  • send_sms, deliv_sms,
  • send_push, deliv_push.
ПараметрТипПримерОписание
message_idint17ID сообщения в системе Altcraft
campaign_idint973ID кампании в системе Altcraft
segment_idint0ID сегмента, если доступно
resource_idint3ID ресурса в системе Altcraft
launch_idstring"00000017000003cd5a9bf01a"ID запуска
send_message_idstring"5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78"ID отправленного сообщения
full_message_idstring"fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA"Полный SendMessageID
email_message_idstring"mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry"Email-safe SendMessageID (только для событий email-канала)
extra_uidstring"ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D"Extra UID (только для событий push-канала)

Для событий sbounce, hbounce, sbounce_push, hbounce_push также передаются следующие параметры:

ПараметрТипПримерОписание
bounce_codeint500Код ответа от сервера
bounce_messagestring"No such email"Ответ от сервера

Для событий undeliv, undeliv_sms передаются следующие параметры:

ПараметрТипПримерОписание
undeliv_codeint400Код ошибки
undeliv_messagestring"Invalid Caller ID"Сообщение об ошибке

События пикселей

Для событий типа pixel_open:

ПараметрТипПримерОписание
ipstring"10.9.0.14"IPv4 адрес подписчика
countrystring".ru "Страна в TLD виде
citystring"Moscow"Город подписчика
pixel_idint41ID пикселя
postal_codestring"390000"Почтовый код подписчика
regionstring"Ryazanskaya obl"astРегион подписчика
tzstring"Europe/Vaduz"Временная зона подписчика
latfloat55.244075Географическая широта
lonfloat55.244075Географическая долгота
user_agentstring"Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0"Строка в заголовке User-Agent
osstring"Linux x86_64"Операционная система
browserstring"Firefox"Браузер, версия
devicestring"web"Устройство

Полный список возможных параметров указан в этой статье.

События попапов

Для всех событий типа popup_post, popup_click, popup_error, popup_bounce, popup_close, popup_open:

ПараметрТипПримерОписание
popup_idint123ID попапа
refererstring"api.example.com"Заголовок запроса Referer
smidstring"fGmXiWU9Y4NSIpCwl4QQQQEQEAABCRA"Идентификатор отправляемого сообщения
utm_campaignstring"utm_campaign"UTM-метка кампании
utm_contentstring"utm_content"UTM-метка контента
utm_sourcestring"utm_source"UTM-метка источника

У некоторых событий есть свои уникальные параметры:

ПараметрТипПримерОписание
popup_post
post_uidstring"7bc142b5-7f38-4272-bc7e-7539f70b25b1"Уникальный идентификатор заполнения формы
popup_click
namestring"main_block"Название элемента, по которому был совершен клик
urlstring"example.com/page"Значение атрибута href элемента, по которому был совершен клик
popup_error, popup_bounce
errorstring"object_not_found"Текст ошибки
error_categoryint404Номер ошибки

События промокодов

Для событий типа promocode_attach, promocode_detach, promocode_activate:

ПараметрТипПримерОписание
attachedstring"2020-10-25T13:28:52Z"Дата и время прикрепления промокода к профилю
detachedstring"2020-10-25T13:28:52Z"Дата и время отсоединения промокода
activatedstring"2020-10-25T13:28:52Z"Дата активации промокода
codestring"TEST-XOUH-KBJM-J5K9-24I1"Промокод
db_idint123456Идентификатор базы профиля
loyalty_idint9Идентификатор программы лояльности
profile_idstring"000000000000000000000000"Идентификатор профиля

Все даты указываются в формате RFC 3339.

События создания сегмента при импорте

Для событий типа segs_add, segs_remove:

ПараметрТипПримерОписание
campaign_idint9ID кампании в системе Altcraft
launch_idstring""ID запуска кампании
message_idint0ID сообщения в системе Altcraft
segment_idint80ID сегмента, если доступно
send_message_idstring""ID отправленного сообщения
full_message_idstring"fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA"Полный SendMessageID

События объединения нескольких профилей или разделения одного профиля

Для событий типа profile_merge, profile_split:

ПараметрТипПримерОписание
destinationarray
[
   {
      "custom_data": {
         "age": 25
      },
      "db_id": 94,
      "profile_id": "608a8960e3224a6be26a71df"
   }
]
Если происходит объединение профилей, то содержит данные матчинга профиля, который получится в результате объединения.


Если происходит разделение профиля, то содержит данные матчинга профилей, которые получатся в результате разделения.
sourcearray
[
   {
      "custom_data": {
         "age": 25
      },
      "db_id": 94,
      "profile_id": "608a8960e3224a6be26a71df"
   }
]
При объединении профилей содержит данные матчинга о профилях, которые нужно объединить.


При разделении профиля содержит данные матчинга о профиле, который нужно разделить.

События каналов

Для событий следующих каналов:

  • Telegram: telegram_bot_send, telegram_bot_deliv, telegram_bot_click, telegram_bot_uclick, telegram_bot_undeliv, telegram_group_send, telegram_group_deliv, telegram_group_click, telegram_group_undeliv
  • WhatsApp*: whatsapp_deliv, whatsapp_undeliv, whatsapp_send, whatsapp_click, whatsapp_uclick, whatsapp_subscribe, whatsapp_read, whatsapp_unsub
  • Viber*: viber_deliv, viber_undeliv, viber_send, viber_click, viber_uclick, viber_subscribe, viber_read, viber_unsub, viber_complain
  • Notify: notify_deliv, notify_undeliv, notify_send, notify_click, notify_uclick, notify_subscribe, notify_read, notify_unsub, notify_complain
ПараметрТипПримерОписание
campaign_idint9ID кампании в системе Altcraft
launch_idstring""ID запуска кампании
message_idint0ID сообщения в системе Altcraft
resource_idint3ID ресурса в системе Altcraft
segment_idint80ID сегмента, если доступно
send_message_idstring""ID отправленного сообщения
full_message_idstring"fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA"Полный SendMessageID
citystring"Moscow"Город подписчика
browserstring"Firefox"Браузер, версия
countrystring".ru "Страна в TLD виде
devicestring"web"Устройство
ipstring"10.9.0.14"IPv4 адрес подписчика
latfloat55.244075Географическая широта
link_urlstring"http://www.example.com"HTTP ссылка, на которую был осуществлен редирект
lonfloat55.244075Географическая долгота
osstring"Linux x86_64"Операционная система
postal_codestring"390000"Почтовый код подписчика
regionstring"Ryazanskaya obl"astРегион подписчика
tzstring"Europe/Vaduz"Временная зона подписчика
undeliv_codeint500Код ошибки недоставки
undeliv_messagestring"Content is required"Информация об ошибке

События ошибок кампании

Для событий типа camp_error:

ПараметрТипПримерОписание
campaign_idint9ID кампании в системе Altcraft
error_codeint500Код ошибки
error_textstring"LOG_INTERNAL_ERROR"Текст ошибки
launch_idstring""ID запуска
message_idint0ID сообщения в системе Altcraft
resource_idint3ID ресурса в системе Altcraft
segment_idint80ID сегмента, если доступно
send_message_idstring""ID отправленного сообщения
full_message_idstring"fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA"Полный SendMessageID

Структура campaign_launch

Общая структура campaign_launch:

ПараметрТипПримерОписание
event_typestring"campaign_launch"Тип события
event_datestring"2018-03-25T13:13:19.034315796Z"Дата события в формате RFC 3339
account_idint23ID аккаунта платформы
is_testboolfalseПризнак тестовой отправки события
event_dataJSON object{}Объект с данными о кампании

Структура event_data для campaign_launch

ПараметрТипПримерОписание
campaign_idint42Идентификатор кампании
campaign_typestring"broadcast"Тип кампании
campaign_namestring"name"Название кампании
campaign_sub_idstring"x11"Идентификатор статистики
data_typestring"segment"Тип источника данных
data_idint3Идентификатор источника данных
launch_idstring"00000017000003cd5a9bf01a"ID запуска
contentJSON object{}Информация о шаблонах сообщений кампании

Пример события запуска кампании

{
"event_type": "campaign_launch",
"event_date": "2016-12-09T10:11:24.934079204Z",
"is_test": false,
"account_id": 161,
"event_data": {
"campaign_id": 1472,
"campaign_type": "broadcast",
"campaign_name": "Campaugn Launch Hook",
"campaign_sub_id": "x11",
"data_type": "segment",
"data_id": 1221,
"launch_id": "000000a1000005c0584a834c",
"content": [
{
"message_name": "Hello",
"message_id": 1412,
"suppress_id": 271,
"replyto_email": "",
"replyto_name": "",
"text": "текстовая версия письма",
"html": "<html> html версия письма </html>",
"from_name": "",
"from_email": "",
"attach_links": [],
"subject": "Hello, {your_name}!"
},
{
"message_name": "Hi",
"message_id": 1413,
"suppress_id": 272,
"replyto_email": "monty@altcraft.com",
"replyto_name": "Monty",
"text": "текстовая версия письма",
"html": "<html> html версия письма </html>",
"from_name": "",
"from_email": "",
"attach_links": [
{
"name": "text_file.txt",
"url": "http://test.altcraft.com/api/attach/link/text_file.txt?token=eyJh..."
},
{
"name": "picture_file.png",
"url": "http://test.altcraft.com/api/attach/link/picture_file.png?token=eyJh..."
}
],
"subject": "Hi, {your_name}!"
}
]
}
}

Структура subscription

В этом объекте передается информация о подписке на ресурс, через который произведена отправка:

ПараметрТипПримерОписание
Общие для всех каналов
resource_idint12ID ресурса
channelstring"email"Канал коммуникации
priorityint0Приоритет подписки
statusstring"subscribed"Статус подписки
Для email-канала
emailstring"john@example.com"Email подписчика
Для SMS-канала
post_uidstring"+79991112233"Телефон подписчика
Для push-канала
providerstring"YandexAppMetricaDeviceIDAndroid"Push-провайдер
subscription_idstring"123ab667960efec47b1afe64b56bfa386a3"ID подписки провайдера

Структура content

Если в настройках вебхука активирована опция "Добавить содержимое сообщений", то в общую структуру hook-сообщения добавляется поле content.

Email

{
"content": {
"amp": "<html amp4email></html>",
"from_email": "no-reply@altcraft.com",
"from_name": "Altcraft",
"html": "<html></html>",
"replyto_email": "example@example.com",
"replyto_name": "Altcraft",
"subject": "Weather alert",
"text": "Text version",
"to_email": "profile@example.com",
"to_name": "Fname Lname",
"webversion_email_html": "http://click.altkraft.com/0000/path.html",
"webversion_email_text": "http://click.altkraft.com/0000/path.txt"
},
}
ПараметрТипПримерОписание
ampstring<html amp4email></html>AMP-версия письма
from_emailstring"no-reply@altcraft.com"Email отправителя
from_namestring"Altcraft"Имя отправителя
htmlstring<html></html>HTML-версия письма
replyto_emailstring"example@example.com"Email для обратной связи
replyto_namestring"Altcraft"Имя обратного получателя
subjectstring"Weather alert"Тема письма
textstring"Text version is important..."Текстовая верия письма
to_emailstring"profile@example.com"Email адрес профиля получателя
to_namestring"Fname Lname "Имя профиля получателя
webversion_email_htmlstringhttp://click.altkraft.comСсылка на web версию письма
webversion_email_textstringhttp://click.altkraft.comСсылка на текстовую веб-версию письма

SMS

{
"content": {
"fromnamesms": "abcdefghijklmnqrstuvwxyz",
"sms": "Hello, Aaron! See the new items for you: http://click.altkraft.com/s/path",
"webversion_sms_text": "http://click.altkraft.com/000000/path.txt"
}
}
ПараметрТипПримерОписание
fromnamesmsstring"abcdefghijklmnqrstuvwxyz"Caller ID
smsstring"Переходи по ссылке и забери приветственные бонусы!"Текст сообщения
webversion_sms_textstringhttp://click.altkraft.comСсылка на веб-версию сообщения

Push

{
"content": {
"app_push_settings": {
"background_color": "#00CED1",
"badges": 0,
"banner": "",
"critical_push": false,
"deliver_prior": 0,
"expir_time": 604800,
"led": "",
"media": "",
"silent_push": false,
"sound": "",
"subtitle": "",
"vibro": false
},
"body": "See if our new items are fit to make you even more awesome!",
"click_url": "https://click.altkraft.com/0000000",
"custom_push_json": {},
"icon": "",
"result_content": {
"content_available": true,
"data": {
"hub_link": {
"ack": "https://pxl.altkraft.com/crypto_post_events?/bFOoNcxW7lpDA",
"open": "https://pxl.altkraft.com/crypto_post_events?/LbFOoNcxW7lpDA"
},
"image": "",
"launch_id": "2_3J_4Z2ZTRaQr7p",
"mediaUrl": "",
"message": "See if our new items are fit to make you even more awesome!",
"uid": "fATFSGbgLjinkRE59ZXDOSd0BcAABARnhIxDBBAAAEbAQowRH"
},
"mutable_content": true,
"notification": {
"body": "See if our new items are fit to make you even more awesome!",
"click_action": "https://click.altkraft.com/0000000/abcdefghijklmnqrstuvwxyz",
"color": "",
"icon": "",
"sound": "default"
},
"title": "Just look, Alex! These are awesome!",
"priority": "normal",
"time_to_live": 604800,
"to": "5dbDUxVXHV"
},
"title": "Just look, Alex! These are awesome!",
"webversion_push_body": "http://click.altkraft.com/000000/path.txt"
}
}
ПараметрТипОписание
bodystringТело push сообщения
click_urlstringСсылка для перехода по клику
custom_push_jsonJSON objectКастомный JSON сообщения
iconstringПуть до иконки push-сообщения
titlestringЗаголовок сообщения
result_contentJSON objectХранит структуру данных, отправленных в push-сервис
webversion_push_bodystringСсылка на веб-версию push-сообщения
app_push_settingsJSON objectРасширенные настройки для мобильных пушей
web_push_settingsJSON objectРасширенные настройки для браузерных пушей

Структура app_push_settings

ПараметрТипПримерОписание
background_colorstring#00CED1Цвет фона push-уведомления
badgesint0Индикатор событий
bannerstringhttp://example.com/path.img"Путь к изображению-баннеру
critical_pushboolfalseАктивация критического режима в push-уведомлении
deliver_priorint0,1Приоритет доставки
expir_timeint604800TTL push-уведомления (задается в секундах)
ledstring#00CED2Цвет светодиодного индикатора
mediastringhttp://example.com/pathПуть к локальнoму файлу в приложении
silent_pushboolfalseВключение/отключение тихого режима
soundstring/sound/sound.mp3Путь к локальнoму файлу в приложении
subtitlestring"Только для вас!"Подзаголовок сообщения (для iOS)
vibrobooltrueВибрация при поступлении push-уведомления

Структура web_push_settings

ПараметрТипПримерОписание
actionsJSON object[]Массив содержит кнопки пуша: ссылка для перехода (action) + текст кнопки (label)
button_labelstring"Конечно"Текст кнопки действия (значение передается только для провайдера Safari)
large_imagestring"https://.altkraft.com/284834790/1/664c6da207767c769a/image.png"Путь к изображению-баннеру
expir_timestring604800TTL push-уведомленния (задается в секундах)
large_imagestring"https://click.example.com"Путь к локальнoму изображению баннера
к сведению

Ссылка на веб-версию сообщения передается в объекте content только для события send в каналах email, sms и push. Для остальных событий, а также для события send в кастомном канале объект content содержит поле webversion_link с пустой строкой:

"content": {
"webversion_link": ""
}

*Организация Meta, которой принадлежат продукты Instagram, Facebook и WhatsApp, признана экстремистской и запрещена на территории РФ.
**Viber является товарным знаком Rakuten Group, Inc. Заблокирован на территории РФ.