Структуры сообщений захвата событий
Для всех типов событий:
Общая структура hook-сообщения
Параметр | Тип | Пример | Описание |
---|---|---|---|
event_type | string | "click" | Название события как в таблице типы событий. |
event_date | string | "2018-03-04T13:13:19.034315796Z" | Дата возникновения события в формате RFC 3339. |
_xxh | string | "ad1850e0d1d9481e" | Хеш от email подписчика, используемый для идентификации в ALTCRAFT. |
_md5 | string | "145bb30f7ddf1184cb560bc4b7705646" | MD5 хеш от email подписчика. |
list_id | int | 111 | ID Базы данных (листа), в рамках которого возникло событие. |
account_id | int | 23 | ID Аккаунта, в рамках которого возникло событие. |
is_test | bool | false | Было ли событие вызвано тестовой отправкой сообщения. |
custom_data | JSON object | {"alice@example.org"} | Набор данных о подписчике, нас траиваемый в интерфейсе редактирования Action Hook. |
event_data | JSON 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.
Структура event_data для событий, возникающих в системе трекинга
Параметр | Тип | Пример | Описание |
---|---|---|---|
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 отправленного сообщения |
extra_uid | string | "ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D" | Extra UID. Передаётся только для событий в push-канале. |
Для событий следующих типов:
- send, deliv, undeliv, suppress, sbounce, hbounce, complain,
- send_sms, deliv_sms, undeliv_sms,
- send_push, deliv_push.
Структура event_data для событий, возникающих в процессе отправки сообщений
Параметр | Тип | Пример | Описание |
---|---|---|---|
message_id | int | 17 | ID сообщения в системе ALTCRAFT |
campaign_id | int | 973 | ID кампании в системе ALTCRAFT |
segment_id | int | 0 | ID сегмента, если доступно |
resource_id | int | 3 | ID ресурса в системе ALTCRAFT |
bounce_code | int | 500 | Код ответа от мейл сервера для событий sbounce, hbounce |
bounce_message | string | "No such email" | Ответ от мейл сервера, для событий sbounce, hbounce |
launch_id | string | "00000017000003cd5a9bf01a" | ID запуска. |
send_message_id | string | "5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78" | ID отправленного сообщения |
extra_uid | string | "ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D" | Extra UID. Передаётся только для событий в push-канале. |
Для событий типа pixel_open:
Структура event_data для событий пикселей
Полный список возможных параметров указан в этой статье.
Параметр | Тип | Пример | Описание |
---|---|---|---|
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" | Устройство |
Для событий типа promocode_attach, promocode_detach, promocode_activate:
Структура event_data для событий, связанных с промокодами
Все даты указываются в формате RFC 3339
Параметр | Тип | Пример | Описание |
---|---|---|---|
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" | Идентификатор профиля |
Для событий типа segs_add, segs_remove:
Структура event_data для событий, связанных с автоматических создание м статического сегмента при импорте
Параметр | Тип | Пример | Описание |
---|---|---|---|
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 отправленного сообщения |
Для событий типа profile_merge, profile_split:
Структура event_data для событий объединения нескольких профилей или разделения одного профиля
Параметр | Тип | Пример | Описание |
---|---|---|---|
destination | array | [ | Если происходит объединение профилей, то содержит данные матчинга профиля, который получится в результате объединения Если происходит разделение профиля, то содержит данные матчинга профилей, которые получатся в результате разделения |
source | array | [ | При объединении профилей содержит данные матчинга о профилях, которые нужно объединить При разделении профиля содержит данные матчинга о профиле, который нужно разделить |
Для событий типа 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:
Структура event_data для событий Telegram Bot и Telegram Group каналов
Параметр | Тип | Пример | Описание |
---|---|---|---|
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 отправленного сообщения |
Для событий типа camp_error:
Структура event_data для события ошибки кампании
Параметр | Тип | Пример | Описание |
---|---|---|---|
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 отправленного сообщения |
Событие 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}!"
}
]
}
}
Структура 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-уведомления |
Структура 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": ""
}