Получить историю одного профиля
Описание
Получить историю действий одного профиля в сообщениях.
Запрос поддерживает пагинацию по событиям с помощью параметров limit и from_id. По умолчанию возвращается до 1000 событий. Если событий больше, чем указано в limit, в ответе будет поле next_from_id — идентификатор следующего события. Чтобы получить следующую порцию событий, передайте значение next_from_id в параметр from_id следующего запроса. Первый запрос выполняется без from_id или с from_id равным "0".
URL-адрес
Метод: POST
https://example.com/api/v1.1/subscribers/history_get
Параметры запроса
| Параметр | Тип | Пример | Обязательный | Описание |
|---|---|---|---|---|
| list_id | Int | 1 | Да | Идентификатор базы данных |
| xxh | string | "0eb51aefd919f90a" | Нет, если есть matching | xxhash идентификатор профиля |
| matching | string | "email" "email_profile" "email_sub" "phone" "phone_sub" "profile_id" "push_sub" "custom" "custom_sub" "email_phone" "email_phone_sub" | Нет, если поиск по xxh | Режим поиска подписчика. По умолчанию – email. Для каждого типа матчинга в теле запроса необходимо передавать определенные поля. Подробнее об этих полях можно узнать здесь. |
| date_from | string | "2017-01-01" | Нет | Начало отчетного периода xxh.YYYYMMDD По умолчанию — текущая дата минус 30 дней. Если задано значение date_to, но не задано date_from, ограничение периода слева снимается — вернутся все события до указанной даты date_to без ограничения по дате начала. |
| date_to | string | "2017-12-31" | Нет | Конец отчетного периода xxh.YYYYMMDD |
| limit | Int | 1000 | Нет | М аксимальное количество событий в ответе По умолчанию — 1000 |
| from_id | string | "0" | Нет | Идентификатор события, с которого начать вывод По умолчанию — "0" Для продолжения пагинации передайте значение из поля next_from_id предыдущего ответа |
Пример запроса
- JSON
- XML
{
"list_id": 20,
"xxh": "0eb51aefd919f90a",
"limit": 1000,
"from_id": "0"
}
<xml>
<list_id>20</list_id>
<xxh>0eb51aefd919f90a</xxh>
<limit>1000</limit>
<from_id>0</from_id>
</xml>
Пример ответа
- JSON
- XML
{
"data": [
{
"xxh": "9202595093f237d4",
"profile_id": "66f66973096b3b454bbbccec",
"email": "example@example.com",
"list_id": 66,
"action": "send",
"count": 1,
"datetime": "2024-09-27T15:52:57.004Z",
"message_id": 5,
"campaign_id": 137,
"event_id": "66f6aaa9da00a9db1c0b2683",
"smid": "uBAhiRBRQhARg7y489hr5F2b2aXMJaztFS7vM7DE1NGJhZWM5",
"campaign_name": "New astral campaign",
"message_name": "New template",
"subscription": {
"resource_id": 5,
"resource_name": "res1",
"channel": "email",
"email": "sub1@yandex.ru",
"priority": 0,
"status": "subscribed",
"custom_fields": {
"_device_type": "other"
},
"cats": []
},
"channel": "email",
"subscriptions": [
{
"resource_id": 5,
"resource_name": "res1",
"channel": "email",
"email": "sub1@yandex.ru",
"priority": 0,
"status": "subscribed",
"custom_fields": {
"_device_type": "other"
},
"cats": []
},
{
"resource_id": 5,
"resource_name": "res1",
"channel": "email",
"email": "sub2@yandex.ru",
"priority": 0,
"status": "subscribed",
"custom_fields": {
"_device_type": "mob"
},
"cats": []
}
],
"campaign": {
"campaign_id": 137,
"campaign_name": "New astral campaign"
},
"sender": {
"sender_id": 5,
"sender_name": "no-reply@example.com"
}
}
],
"next_from_id": "13",
"error": 0,
"error_text": "Successful operation"
}
<xml>
<data>
<item>
<xxh>9202595093f237d4</xxh>
<profile_id>66f66973096b3b454bbbccec</profile_id>
<email>example@example.ru</email>
<list_id>66</list_id>
<action>send</action>
<count>1</count>
<datetime>2024-09-27T15:52:57.004Z</datetime>
<message_id>5</message_id>
<campaign_id>137</campaign_id>
<event_id>66f6aaa9da00a9db1c0b2683</event_id>
<smid>uBAhiRBRQhARg7y489hr5F2b2aXMJaztFS7vM7DE1NGJhZWM5</smid>
<campaign_name>New astral campaign</campaign_name>
<message_name>New template</message_name>
<subscription>
<resource_id>5</resource_id>
<resource_name>res1</resource_name>
<channel>email</channel>
<email>sub1@yandex.ru</email>
<priority>0</priority>
<status>subscribed</status>
<custom_fields>
<_device_type>other</_device_type>
</custom_fields>
<cats/>
</subscription>
<channel>email</channel>
<subscriptions>
<subscription>
<resource_id>5</resource_id>
<resource_name>res1</resource_name>
<channel>email</channel>
<email>sub1@yandex.ru</email>
<priority>0</priority>
<status>subscribed</status>
<custom_fields>
<_device_type>other</_device_type>
</custom_fields>
<cats/>
</subscription>
<subscription>
<resource_id>5</resource_id>
<resource_name>res1</resource_name>
<channel>email</channel>
<email>sub2@yandex.ru</email>
<priority>0</priority>
<status>subscribed</status>
<custom_fields>
<_device_type>mob</_device_type>
</custom_fields>
<cats/>
</subscription>
</subscriptions>
<campaign>
<campaign_id>137</campaign_id>
<campaign_name>New astral campaign</campaign_name>
</campaign>
<sender>
<sender_id>5</sender_id>
<sender_name>no-reply@example.com</sender_name>
</sender>
</item>
</data>
<next_from_id>13</next_from_id>
<error>0</error>
<error_text>Successful operation</error_text>
</xml>
Возвращаемые параметры
| Параметр | Тип | Описание |
|---|---|---|
| data | string | Массив полученных данных по событиям в истории профиля |
| data.xxh | string | xxhash идентификатор профиля |
| data.profile_id | string | Основной идентификатор профиля |
| data.email | string | Email-адрес профиля |
| data.list_id (db_id) | int | Идентификатор базы данных |
| data.action | string | Действие подписчика (Подробнее) |
| data.count | int | Количество действий, совершенных в эту секунду |
| data.datetime | string | Дата и время действия в формате RFC 3339 (ISO 8601) |
| data.message_id | int | Идентификатор шаблона сообщения Возвращает 0, если действие не предполагает использование шаблона. |
| data.campaign_id | int | Идентификатор рассылки Возвращает 0, если действие не предполагает использование рассылки. |
| data.event_id | string | Идентификатор события |
| data.smid | string | Уникальной идентификатор отправки в рамках рассылки Возвращает пустую строку, если действие не предполагает отправку сообщения. |
| data.campaign_name | string | Название рассылки Возвращает пустую строку, если действие не предполагает использование рассылки. |
| data.message_name | string | Название шаблона сообщения Возвращает пустую строку, если действие не предполагает использование шаблона. |
| data.subscription | string | Объект с информацией о подписке, в рамках которой выполнялась отправка |
| data.channel | string | Канал коммуникации, в рамках которого зарегистрировано событие. Возвращает пустую строку, если канал не задействован. |
| data.subscriptions | array of objects | Все подписки профиля. Для формата CSV будет представлены в виде JSON строки. |
| data.pixel | object | Обогащённые данные пикселя. Присутствует для любого события с pixel_id ≠ 0. Подробнее |
| data.segment | object | Данные сегмента. Присутствует для событий segs_add, segs_remove. Подробнее |
| data.loyalty | object | Данные программы лояльности. Присутствует для событий points_*, loyalty_*, tier_*. Подробнее |
| data.promocode | object | Данные промокода. Присутствует для событий promocode_*. Подробнее |
| data.popup | object | Данные попапа. Присутствует для событий popup_*. Подробнее |
| data.form | object | Данные формы. Присутствует для событий form_*. Подробнее |
| data.relation | object | Данные связи между профилями. Присутствует для событий rel_*. Подробнее |
| data.super_campaign | object | Данные супер-кампании. Присутствует для событий sc_*. Подробнее |
| data.gcg | object | Данные глобальной контрольной группы. Присутствует для событий gcg_*. Подробнее |
| data.suppress | object | Данные стоп-списка. Присутствует для событий suppress_*. Подробнее |
| data.workflow | object | Данные сценариев. Присутствует для событий workflow. Подробнее |
| data.instruction | object | Данные инструкции Tag Manager. Присутствует для событий instruction_target. Подробнее |
| data.order | object | Данные заказа. Присутствует для событий order_*, order_line_*. Подробнее |
| data.campaign | object | Данные кампании. Присутствует для любого события с campaign_id ≠ 0. Подробнее |
| data.sender | object | Данные отправителя. Присутствует для любого события с sender_id ≠ 0. Подробнее |
| data.channel_event | object | Данные канала. Присутствует для любого события с channel_id ≠ 0. Подробнее |
| data.policy | object | Данные политики. Присутствует для любого события с policy_id ≠ 0. Подробнее |
| next_from_id | string | Идентификатор следующего события для продолжения пагинации. Если количество событий превышает значение limit, передайте это значение в параметр from_id следующего запроса для получения следующей порции событий. Если событий больше нет, поле будет пустым или отсутствовать. |
| error | int | Код ошибки |
| error_text | string | Текст ошибки |
События в истории профиля (action)
| События Email канала | |
| send | Email отправлен |
| deliv | Email доставлен |
| undeliv | Email не доставлен |
| open | Email открыт |
| read | Email прочитан. Сообщение открыто пользователем в течении 8 и более секунд |
| click | Клик в Email. Событие регистрируется при переходе по ссылке в письме. Для каждой ссылки регистрируется свое событие клика, т.е. если профиль перейдет по двум разным ссылкам в письме, будут зарегистрированы 2 события клика. |
| confirm | Переход по ссылке подтверждения подписки в Email письме (confirm-link) |
| subscribe_email | Подписан на Email канал ресурса |
| unsubscribe_email | Отписан от Email канала ресурса |
| reply | Получен ответ на Email-письмо |
| complain | Получен статус Жалобщик |
| hbounce | Получен статус Hardbounced |
| События SMS канала | |
| send_sms | SMS сообщение отправлено в шлюз для доставки подписчику |
| deliv_sms | SMS сообщение доставлено |
| undeliv_sms | SMS сообщение не доставлено |
| click_sms | Неуникальный клик по ссылке в SMS сообщении |
| subscribe_sms | Подписан на SMS канал ресурса |
| unsubscribe_sms | Отписан от SMS канала ресурса |
| События Push канала | |
| send_push | Push отправлен |
| deliv_push | Push доставлен |
| open_push | Неуникальное открытие push сообщения |
| click_push | Клик в Push |
| undeliv_push | Push сообщение не доставлено |
| subscribe_push | Подписан на Push канал ресурса |
| unsubscribe_push | Отписан от Push канала ресурса |
| События Telegram Bot канала | |
| telegram_bot_send | В канале Telegram Bot произошло событие Telegram bot отправка |
| telegram_bot_deliv | В канале Telegram Bot произошло событие Telegram bot доставка |
| telegram_bot_undeliv | В канале Telegram Bot произошло событие Telegram bot недоставка |
| telegram_bot_click | В канале Telegram Bot произошло событие Telegram bot клик |
| telegram_bot_subscribe | В канале Telegram Bot произошло событие Telegram bot подписка |
| События WhatsApp*-канала | |
| whatsapp_send | Сообщение отправлено для доставки подписчику в whatsapp чат |
| whatsapp_deliv | Сообщение доставлено в whatsapp чат |
| whatsapp_undeliv | Сообщение не доставлено в whatsapp чат |
| whatsapp_click | Неуникальный клик по ссылке в сообщении в whatsapp чате |
| whatsapp_read | Сообщение прочитано пользователем |
| whatsapp_subscribe | В канале whatsapp произошло событие Whatsapp подписка |
| События Viber канала | |
| viber_send | Сообщение отправлено для доставки подписчику в Viber чат |
| viber_deliv | Сообщение доставлено получателю |
| viber_undeliv | Сообщение не доставлено, так как отклонено Viber или Devino.Online |
| viber_click | Переход по ссылке в сообщении. Если получатель несколько раз кликнул по одной и той же ссылке, фиксируется каждое событие клика. |
| viber_read | Сообщение прочитано пользователем |
| viber_subscribe | В канале Viber произошло событие Viber подписка |
| События для всех каналов | |
| offence | Сообщение не отправлено из-за ограничений политики отправки |
| suppress | Сообщение не было отправлено рассылкой, так как профиль находится в стоп-списке |
| События импорта профилей подписчиков | |
| import_manual | Профиль создан вручную |
| import_api | Профиль создан API-импортом |
| import_file | Профиль создан импортом из файла |
| import_form | Профиль создан импортом из формы |
| import_push | Профиль создан в результате push-импорта |
| import_popup | Профиль создан импортом через попап |
| События отписки | |
| unsub_api | Подписчик отписан от рассылок через API |
| unsub_manual | Отписан вручную (глобальный статус профиля изменен на "Отписан") |
| События пикселя | |
| pixel_open | Достигнута цель |
| События, связанные с промокодами | |
| promocode_attach | Привязан промокод |
| promocode_detach | Отвязан промокод |
| promocode_activate | Активирован промокод |
| События сегментов | |
| segs_add | Вошёл в статический сегмент |
| segs_remove | Вышел из статического сегмента |
| События связей между профилями | |
| rel_attach | Профиль получает связь с другим профилей |
| rel_detach | Профиль теряет связь с другим профилем |
| rel_strengthen | Увеличивается вес связи между профилями |
| События формы | |
| form_load | Форма загружена |
| form_page_show | Страница формы загружена |
| form_post | Форма заполнена и отправлена |
| form_abandon | Форма брошена. Профиль загружает страницу с формой и не закрывает её в течение часа, при этом не отправляя форму |
| form_bounce | Ошибка при заполнении формы (попытка повторного заполнения, технические проблемы и др.) |
Обогащённые данные событий
В ответе API для каждого события могут присутствовать дополнительные вложенные объекты с детальной информацией. Все новые поля — опциональные и присутствуют только если событие относится к соответствующему типу.
События пикселя
Присутствует для любого события с pixel_id ≠ 0 (не только pixel_open).
"pixel": {
"id": 42,
"name": "Purchase Pixel",
"goal": "purchase",
"value": 1500.50,
"data": {"product_id": "SKU-123", "category": "electronics"},
"referer": {"proto": "https", "domain": "example.com", "path": "/checkout", "query": "utm_source=email"},
"origin": {"proto": "https", "domain": "example.com"},
"browser": "Chrome",
"os": "Windows",
"device": "web",
"language": "ru",
"geo": {"lat": 55.7558, "lon": 37.6173, "country": "RU", "region": "Moscow", "city": "Moscow", "address": "Tverskaya st.", "zip": "125009"},
"utm": {"source": "email", "medium": "newsletter", "campaign": "summer-sale", "term": "", "content": "", "keyword": ""},
"market": {"order_eid": "ORD-12345", "product_eid": "PROD-678", "sku_eid": "SKU-999", "endpoint_eid": "EP-001", "region_eid": "RU-MOW", "sl_eid": "online", "count_items": 3, "categories": ["electronics"]},
"loyalty": {"loyalty_id": 5, "promo_id": "promo-abc"}
}
| Поле | Тип | Описание |
|---|---|---|
id | int | Идентификатор пикселя |
name | string | Название пикселя |
goal | string | Имя цели |
value | float | Стоимость/значение цели |
data | object | Данные от клиента (плоский JSON, ≤1 КБ, передаётся при регистрации через goal/register) |
referer.proto | string | Протокол реферера |
referer.domain | string | Домен реферера |
referer.path | string | Путь реферера |
referer.query | string | Query string реферера |
origin.proto | string | Протокол origin |
origin.domain | string | Домен origin |
origin.path | string | Путь origin |
origin.query | string | Query string origin |
browser | string | Браузер |
os | string | ОС |
device | string | Тип устройства (web, mob, other) |
language | string | Язык |
geo.lat | float | Широта |
geo.lon | float | Долгота |
geo.country | string | Страна |
geo.region | string | Регион |
geo.city | string | Город |
geo.address | string | Адрес |
geo.zip | string | Почтовый индекс |
utm.source | string | UTM Source |
utm.medium | string | UTM Medium |
utm.campaign | string | UTM Campaign |
utm.term | string | UTM Term |
utm.content | string | UTM Content |
utm.keyword | string | UTM Keyword |
market.order_eid | string | Внешний идентификатор заказа |
market.product_eid | string | Внешний идентификатор продукта |
market.sku_eid | string | Внешний идентификатор SKU |
market.endpoint_eid | string | Внешний идентификатор точки продаж |
market.region_eid | string | Внешний идентификатор региона продаж |
market.sl_eid | string | Канал продаж |
market.count_items | int | Количество товаров |
market.categories | []string | Категории товаров |
loyalty.loyalty_id | int | Идентификатор программы лояльности |
loyalty.promo_id | string | Идентификатор промокода (hex) |
События сегментов
Присутствует для событий segs_add, segs_remove.
"segment": {"segment_id": 15, "segment_type": "dynamic", "segment_name": "Active Buyers"}
| Поле | Тип | Описание |
|---|---|---|
segment_id | int | Идентификатор сегмента |
segment_type | string | Тип сегмента |
segment_name | string | Название сегмента |
События лояльности
Присутствует для событий points_*, loyalty_*, tier_*.
"loyalty": {"loyalty_program_id": 3, "loyalty_program_name": "Gold Club", "amount": 100, "points_id": 7, "transaction_id": "550e8400-e29b-41d4-a716-446655440000", "register_date": "2026-07-21 12:00:00", "tier_id": 2, "level_id": 1}
| Поле | Тип | Описание |
|---|---|---|
loyalty_program_id | int | Идентификатор программы лояльности |
loyalty_program_name | string | Название программы |
amount | int | Количество баллов |
points_id | int | Идентификатор типа баллов |
transaction_id | string | UUID транзакции |
register_date | string | Дата регистрации (YYYY-MM-DD HH:MM:SS, часовой пояс аккаунта) |
tier_id | int | Идентификатор группы уровней |
level_id | int | Идентификатор уровня |
События промокодов
Присутствует для событий promocode_*.
"promocode": {"loyalty_id": 3, "promo_id": "507f191e810c19729de860ea", "promo_name": "SUMMER2026"}
| Поле | Тип | Описание |
|---|---|---|
loyalty_id | int | Идентификатор программы лояльности |
promo_id | string | Идентификатор промокода (hex) |
promo_name | string | Код промокода |
События попапов
Присутствует для событий popup_*.
"popup": {"popup_id": 8, "popup_name": "Welcome Popup"}
| Поле | Тип | Описание |
|---|---|---|
popup_id | int | Идентификатор попапа |
popup_name | string | Название попапа |
События форм
Присутствует для событий form_*.
"form": {"form_id": 5, "form_page_id": 12, "form_name": "Contact Form"}
| Поле | Тип | Описание |
|---|---|---|
form_id | int | Идентификатор формы |
form_page_id | int | Идентификатор страницы формы |
form_name | string | Название формы |
События связей
Присутствует для событий rel_*.
"relation": {"relation_id": 3, "relation_name": "Family", "profile_idb": "abc123def456"}
| Поле | Тип | Описание |
|---|---|---|
relation_id | int | Идентификатор связи |
relation_name | string | Название связи |
profile_idb | string | Идентификатор связанного профиля |
События супер-кампаний
Присутствует для событий sc_*.
"super_campaign": {"super_campaign_id": 10, "super_stream_id": 5, "super_campaign_name": "Q3 Campaign", "meta_data": "{\"key\": \"value\"}"}
| Поле | Тип | Описание |
|---|---|---|
super_campaign_id | int | Идентификатор кампании |
super_stream_id | int | Идентификатор потока |
super_campaign_name | string | Название кампании |
meta_data | string | Метаданные |
События глобальных контрольных групп
Присутствует для событий gcg_*.
"gcg": {"gcg_id": 7}
Глобальная контрольная группа не имеет названия, поэтому поле gcg_name отсутствует.
События подавления
Присутствует для событий suppress_*.
"suppress": {"suppress_id": 2, "suppress_level": "global", "suppress_name": "Global Suppression"}
| Поле | Тип | Описание |
|---|---|---|
suppress_id | int | Идентификатор стоп-списка |
suppress_level | string | Уровень: system, account или user |
suppress_name | string | Название стоп-списка |
События сценариев
Присутствует для событий workflow.
"workflow": {"workflow_id": 4, "workflow_node_id": 123, "workflow_name": "Onboarding Flow"}
| Поле | Тип | Описание |
|---|---|---|
workflow_id | int | Идентификатор сценария |
workflow_node_id | int | Идентификатор узла сценария |
workflow_name | string | Название сценария |
События инструкций
Присутствует для событий instruction_target.
"instruction": {"popup_id": 9, "popup_name": "Instruction Popup"}
Событие
instruction_targetприходит через popup-трекер (tracker=pp), поэтому доступны толькоpopup_idиpopup_nameизpopupEvent.instruction_idне хранится в ClickHouse — фронтенд не передаёт этот параметр при трекинге.
События заказов
Присутствует для событий order_*, order_line_*.
"order": {"order_eid": "ORD-12345", "endpoint_eid": "EP-001", "sl_eid": "online", "total_price": 15000, "discounted_total_price": 12000, "order_lines_ids": ["line-1", "line-2"], "order_line_eid": "LINE-001", "custom_status_eid": "status-pending", "discounted_price_of_line": 5000, "product_eid": "PROD-678", "sku_eid": "SKU-999", "count_items": 3, "price_per_item": 4000, "categories": ["electronics"], "manufacturer_name": "Samsung", "region_eid": "RU-MOW"}
| Поле | Тип | Описание |
|---|---|---|
order_eid | string | Внешний идентификатор заказа |
endpoint_eid | string | Внешний идентификатор точки продаж |
sl_eid | string | Канал продаж |
total_price | int | Общая цена (мин. единицы) |
discounted_total_price | int | Цена со скидкой |
order_lines_ids | []string | IDs позиций заказа |
order_line_eid | string | Внешний идентификатор позиции |
custom_status_eid | string | Внешний идентификатор пользовательского статуса |
discounted_price_of_line | int | Цена позиции со скидкой |
product_eid | string | Внешний идентификатор продукта (если в позиции именно продукт) |
sku_eid | string | Внешний идентификатор SKU (если в позиции именно SKU) |
count_items | int | Количество товаров |
price_per_item | int | Цена за единицу |
categories | []string | Категории товаров |
manufacturer_name | string | Название производителя |
region_eid | string | Внешний идентификатор региона продаж |
События кампаний
Присутствует для любого события с campaign_id ≠ 0.
"campaign": {"campaign_id": 42, "campaign_name": "Summer Newsletter"}
| Поле | Тип | Описание |
|---|---|---|
campaign_id | int | Идентификатор кампании |
campaign_name | string | Название кампании |
События отправителей
Присутствует для любого события с sender_id ≠ 0.
"sender": {"sender_id": 5, "sender_name": "no-reply@example.com"}
| Поле | Тип | Описание |
|---|---|---|
sender_id | int | Идентификатор отправителя |
sender_name | string | Название отправителя |
События каналов
Присутствует для любого события с channel_id ≠ 0.
"channel_event": {"channel_id": 10, "channel_sid": "cc-abc123", "channel_name": "Telegram Bot"}
| Поле | Тип | Описание |
|---|---|---|
channel_id | int | Идентификатор канала |
channel_sid | string | Строковый идентификатор канала (для пользовательских каналов) |
channel_name | string | Название канала |
События политик
Присутствует для любого события с policy_id ≠ 0.
"policy": {"policy_id": 3, "name": "GDPR Policy"}
| Поле | Тип | Описание |
|---|---|---|
policy_id | int | Идентификатор политики |
name | string | Название политики |
*Организация Meta, которой принадлежат продукты Instagram, Facebook и WhatsApp, признана экстремистской и запрещена на территории РФ.