Структуры сообщений захвата событий
Общая структура hook-сообщения для всех типов событий:
Параметр | Тип | Пример | Описание |
---|---|---|---|
event_type | string | "click" | Название события как в таблице типы событий |
event_date | string | "2018-03-04T13:13:19.034315796Z" | Дата возникновения события в формате RFC 3339 |
profile_id | string | "abcdefgh12345678" | ID профиля получателя |
_xxh | string | "ad1850e0d1d9481e" | Хеш от email подписчика, используемый для идентификации в Altcraft |
_md5 | string | "145bb30f7ddf1184cb560bc4b7705646" | MD5 хеш от email подписчика |
list_id | int | 111 | ID Базы данных (листа), в рамках которого возникло событие |
account_id | int | 23 | ID Аккаунта, в рамках которого возникло событие |
sends_trying_num | int | 2 | Число попыток отправки сообщения (присутствует только если количество попыток больше 0) |
is_test | bool | false | Было ли событие вызвано тестовой отправкой сообщения |
is_static | bool | false | Использовались ли динамические подстановки в отправляемый контент |
subscription_hash_id | string | "0a4b910312345" | Хэш подписки |
custom_data | JSON object | {"alice@example.org"} | Набор данных о подписчике, настраиваемый в интерфейсе редактирования Action Hook |
event_data | JSON object | {"browser": "Firefox"} | Набор данных, зависящий от типа события (есть два типа — событие в трекинге и возникающее в процессе доставки) |
subscription | array | [ | Массив с деталями подписки, включающий информацию о ресурсе, канале связи, получателе и статусе подписки. Структура описана ниже. |
Структура 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_id | int | 17 | ID сообщения в системе Altcraft |
campaign_id | int | 973 | ID кампании в системе Altcraft |
segment_id | int | 0 | ID сегмента, если доступно |
resource_id | int | 3 | ID ресурса |
ip | string | "10.9.0.14" | IPv4 адрес подписчика |
country | string | ".us" ".ru" | Страна в TLD виде |
city | string | "New York" "Moscow" | Город подписчика |
postal_code | string | "101000" | Почтовый код подписчика |
region | string | "Ohio" "Moskovskaya oblast" | Регион подписчика |
tz | string | "Europe/Vaduz" | Временная зона подписчика |
lat | float | 55.244075 | Географическая широта |
lon | float | 55.244075 | Географическая долгота |
user_agent | string | "Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0" | Строка в заголовке User-Agent |
os | string | "Linux x86_64" | Операционная система |
browser | string | "Firefox" | Браузер, версия |
device | string | "web" | Устройство |
link_url | string | "http://www.example.com" | HTTP ссылка, на которую был осуществлен редирект |
launch_id | string | "00000017000003cd5a9bf01a" | ID запуска |
send_message_id | string | "5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78" | ID отправленного сообщения |
full_message_id | string | "fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA" | Полный SendMessageID |
email_message_id | string | "mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry" | Email-safe SendMessageID (только для событий email-канала) |
extra_uid | string | "ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D" | Extra UID (только для событий push-канала) |
provider | string | "YandexAppMetricaDeviceIDAndroid" | Провайдер |
События отправки сообщений
Для событий следующих типов:
- send, deliv, suppress, complain,
- send_sms, deliv_sms,
- send_push, deliv_push.
Параметр | Тип | Пример | Описание |
---|---|---|---|
message_id | int | 17 | ID сообщения в системе Altcraft |
campaign_id | int | 973 | ID кампании в системе Altcraft |
segment_id | int | 0 | ID сегмента, если доступно |
resource_id | int | 3 | ID ресурса в системе Altcraft |
launch_id | string | "00000017000003cd5a9bf01a" | ID запуска |
send_message_id | string | "5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78" | ID отправленного сообщения |
full_message_id | string | "fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA" | Полный SendMessageID |
email_message_id | string | "mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry" | Email-safe SendMessageID (только для событий email-канала) |
extra_uid | string | "ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D" | Extra UID (только для событий push-канала) |
provider | string | "YandexAppMetricaDeviceIDAndroid" | Провайдер |
Для событий sbounce, hbounce, sbounce_push, hbounce_push также передаются следующие параметры:
Параметр | Тип | Пример | Описание |
---|---|---|---|
bounce_code | int | 500 | Код ответа от сервера |
bounce_message | string | "No such email" | Ответ от сервера |
Для событий undeliv, undeliv_sms, undeliv_push передаются следующие параметры:
Параметр | Тип | Пример | Описание |
---|---|---|---|
undeliv_code | int | 400 | Код ошибки |
undeliv_message | string | "Invalid Caller ID" | Сообщение об ошибке |
События пикселей
Для событий типа pixel_open:
Параметр | Тип | Пример | Описание |
---|---|---|---|
ip | string | "10.9.0.14" | IPv4 адрес подписчика |
country | string | ".ru " | Страна в TLD виде |
city | string | "Moscow" | Город подписчика |
pixel_id | int | 41 | ID пикселя |
postal_code | string | "390000" | Почтовый код подписчика |
region | string | "Ryazanskaya obl"ast | Регион подписчика |
tz | string | "Europe/Vaduz" | Временная зона подписчика |
lat | float | 55.244075 | Географическая широта |
lon | float | 55.244075 | Географическая долгота |
user_agent | string | "Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0" | Строка в заголовке User-Agent |
os | string | "Linux x86_64" | Операционная система |
browser | string | "Firefox" | Браузер, версия |
device | string | "web" | Устройство |
Полный список возможных параметров указан в этой статье.
События попапов
Для всех событий типа popup_post, popup_click, popup_error, popup_bounce, popup_close, popup_open:
Параметр | Тип | Пример | Описание |
---|---|---|---|
popup_id | int | 123 | ID попапа |
referer | string | "api.example.com" | Заголовок запроса Referer |
smid | string | "fGmXiWU9Y4NSIpCwl4QQQQEQEAABCRA" | Идентификатор отправляемого сообщения |
utm_campaign | string | "utm_campaign" | UTM-метка кампании |
utm_content | string | "utm_content" | UTM-метка контента |
utm_source | string | "utm_source" | UTM-метка источника |
У некоторых событий есть свои уникальные параметры:
Параметр | Тип | Пример | Описание | popup_post |
post_uid | string | "7bc142b5-7f38-4272-bc7e-7539f70b25b1" | Ун икальный идентификатор заполнения формы | popup_click |
name | string | "main_block" | Название элемента, по которому был совершен клик |
url | string | "example.com/page" | Значение атрибута href элемента, по которому был совершен клик | popup_error, popup_bounce |
error | string | "object_not_found" | Текст ошибки |
error_category | int | 404 | Номер ошибки |
События промокодов
Для событий типа promocode_attach, promocode_detach, promocode_activate:
Параметр | Тип | Пример | Описание |
---|---|---|---|
attached | string | "2020-10-25T13:28:52Z" | Дата и время прикрепления промокода к профилю |
detached | string | "2020-10-25T13:28:52Z" | Дата и время отсоединения промокода |
activated | string | "2020-10-25T13:28:52Z" | Дата активации промокода |
code | string | "TEST-XOUH-KBJM-J5K9-24I1" | Промокод |
db_id | int | 123456 | Идентификатор базы профиля |
loyalty_id | int | 9 | Идентификатор программы лояльности |
profile_id | string | "000000000000000000000000" | Идентификатор профиля |
Все даты указываются в формате RFC 3339.
События создания сегмента при импорте
Для событий типа segs_add, segs_remove:
Параметр | Тип | Пример | Описание |
---|---|---|---|
campaign_id | int | 9 | ID кампании в системе Altcraft |
launch_id | string | "" | ID запуска кампании |
message_id | int | 0 | ID сообщения в системе Altcraft |
segment_id | int | 80 | ID сегмента, если доступно |
send_message_id | string | "" | ID отправленного сообщения |
full_message_id | string | "fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA" | Полный SendMessageID |
События объединения нескольких профилей или разделения одного профиля
Для событий типа profile_merge, profile_split:
Параметр | Тип | Пример | Описание |
---|---|---|---|
destination | array | [ | Если происходит объединение профилей, то содержит данные матчинга профиля, который получится в результате объединения. Если происходит разделение профиля, то содержит данные матчинга профилей, которые получатся в результате разделения. |
source | array | [ | При объединении профилей содержит данные матчинга о профилях, которые нужно объединить. При разделении профи ля содержит данные матчинга о профиле, который нужно разделить. |
События каналов
Для событий следующих каналов:
- 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_id | int | 9 | ID кампании в системе Altcraft |
launch_id | string | "" | ID запуска кампании |
message_id | int | 0 | ID сообщения в системе Altcraft |
resource_id | int | 3 | ID ресурса в системе Altcraft |
segment_id | int | 80 | ID сегмента, если доступно |
send_message_id | string | "" | ID отправленного сообщения |
full_message_id | string | "fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA" | Полный SendMessageID |
city | string | "Moscow" | Город подписчика |
browser | string | "Firefox" | Браузер, версия |
country | string | ".ru " | Страна в TLD виде |
device | string | "web" | Устройство |
ip | string | "10.9.0.14" | IPv4 адрес подписчика |
lat | float | 55.244075 | Географическая широта |
link_url | string | "http://www.example.com" | HTTP ссылка, на которую был осуществлен редирект |
lon | float | 55.244075 | Географическая долгота |
os | string | "Linux x86_64" | Операционная система |
postal_code | string | "390000" | Почтовый код подписчика |
region | string | "Ryazanskaya obl"ast | Регион подписчика |
tz | string | "Europe/Vaduz" | Временная зона подписчика |
undeliv_code | int | 500 | Код ошибки недоставки |
undeliv_message | string | "Content is required" | Информация об ошибке |
Соб ытия ошибок кампании
Для событий типа camp_error:
Параметр | Тип | Пример | Описание |
---|---|---|---|
campaign_id | int | 9 | ID кампании в системе Altcraft |
error_code | int | 500 | Код ошибки |
error_text | string | "LOG_INTERNAL_ERROR" | Текст ошибки |
launch_id | string | "" | ID запуска |
message_id | int | 0 | ID сообщения в системе Altcraft |
resource_id | int | 3 | ID ресурса в системе Altcraft |
segment_id | int | 80 | ID сегмента, если доступно |
send_message_id | string | "" | ID отправленного сообщения |
full_message_id | string | "fQIQs4FgAAEBIcARAxDxAQAAEJECFQADuZJygDTgWXpQ_BVrkejVzu2bsMzQ3NDkxODlKR8-gA" | Полный SendMessageID |
Структура campaign_launch
Общая структура campaign_launch:
Параметр | Тип | Пример | Описание |
---|---|---|---|
event_type | string | "campaign_launch" | Тип события |
event_date | string | "2018-03-25T13:13:19.034315796Z" | Дата события в формате RFC 3339 |
account_id | int | 23 | ID аккаунта платформы |
is_test | bool | false | Признак тестовой отправки события |
event_data | JSON object | {} | Объект с данными о кампании |
Структура event_data для campaign_launch
Параметр | Тип | Пример | Описание |
---|---|---|---|
campaign_id | int | 42 | Идентификатор кампании |
campaign_type | string | "broadcast" | Тип кампании |
campaign_name | string | "name" | Название кампании |
campaign_sub_id | string | "x11" | Идентификатор статистики |
data_type | string | "segment" | Тип источника данных |
data_id | int | 3 | Идентификатор источника данных |
launch_id | string | "00000017000003cd5a9bf01a" | ID запуска |
content | JSON 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_id | int | 12 | ID ресурса |
channel | string | "email" | Канал коммуникации |
priority | int | 0 | Приоритет подписки |
status | string | "subscribed" | Статус подписки | Для email-канала |
string | "john@example.com" | Email подписчика | Для SMS-канала |
post_uid | string | "+79991112233" | Телефон подписчика | Для push-канала |
provider | string | "YandexAppMetricaDeviceIDAndroid" | Push-провайдер |
subscription_id | string | "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"
},
}
Параметр | Тип | Пример | Описание |
---|---|---|---|
amp | string | <html amp4email></html> | AMP-версия письма |
from_email | string | "no-reply@altcraft.com" | Email отправителя |
from_name | string | "Altcraft" | Имя отправителя |
html | string | <html></html> | HTML-версия письма |
replyto_email | string | "example@example.com" | Email для обратной связи |
replyto_name | string | "Altcraft" | Имя обратного получателя |
subject | string | "Weather alert" | Тема письма |
text | string | "Text version is important..." | Текстовая верия письма |
to_email | string | "profile@example.com" | Email адрес профиля получателя |
to_name | string | "Fname Lname " | Имя профиля получателя |
webversion_email_html | string | http://click.altkraft.com | Ссылка на web версию письма |
webversion_email_text | string | http://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"
}
}
Параметр | Тип | Пример | Описание |
---|---|---|---|
fromnamesms | string | "abcdefghijklmnqrstuvwxyz" | Caller ID |
sms | string | "Переходи по ссылке и забери приветственные бонусы!" | Текст сообщения |
webversion_sms_text | string | http://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"
}
}
Параметр | Тип | Описание |
---|---|---|
body | string | Тело push сообщения |
click_url | string | Ссылка для перехода по клику |
custom_push_json | JSON object | Кастомный JSON сообщения |
icon | string | Путь до иконки push-сообщения |
title | string | Загол овок сообщения |
result_content | JSON object | Хранит структуру данных, отправленных в push-сервис |
webversion_push_body | string | Ссылка на веб-версию push-сообщения |
app_push_settings | JSON object | Расширенные настройки для мобильных пушей |
web_push_settings | JSON object | Расширенные настройки для браузерных пушей |
Структура app_push_settings
Параметр | Тип | Пример | Описание |
---|---|---|---|
background_color | string | #00CED1 | Цвет фона push-уведомления |
badges | int | 0 | Индикатор событий |
banner | string | http://example.com/path.img" | Путь к изображению-баннеру |
critical_push | bool | false | Активация критического режима в push-уведомлении |
deliver_prior | int | 0,1 | Приоритет доставки |
expir_time | int | 604800 | TTL push-уведомления (задается в секундах) |
led | string | #00CED2 | Цвет светодиодного индикатора |
media | string | http://example.com/path | Путь к локальнoму файлу в приложении |
silent_push | bool | false | Включение/отключение тихого режима |
sound | string | /sound/sound.mp3 | Путь к локальнoму файлу в приложении |
subtitle | string | "Только для вас!" | Подзаголовок сообщения (для iOS) |
vibro | bool | true | Вибрация при поступлении push-уведомления |
soundless | bool | true | Указывает, будет ли push-сообщение сопровождаться звуком (используется провайдерами: android firebase, android huawei, android rustore) |
actions | array | [ | Кнопки в push-уведомлениях |
Структура web_push_settings
Параметр | Тип | Пример | Описание |
---|---|---|---|
actions | JSON object | [] | Массив содержит кнопки пуша: ссылка для перехода (action) + текст кнопки (label) |
button_label | string | "Конечно" | Текст кнопки действия (значение передается только для провайдера Safari) |
large_image | string | "https://.altkraft.com/284834790/1/664c6da207767c769a/image.png" | Путь к изображению-баннеру |
expir_time | string | 604800 | TTL push-уведомленния (задается в секундах) |
large_image | string | "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. Заблокирован на территории РФ.