Надсилання історичних подій
Якщо ви перейшли з іншого сервісу або щойно створили обліковий запис в eSputnik, а у вас накопичилася історія:
- offline-замовлень,
- активності контакту,
- підписок на послуги,
- або інших подій, за якими ви бажаєте здійснювати гнучку сегментацію бази для розсилок,
існує можливість передати наявні дані з вашої CRM або іншого сховища даних до системи. Для цього можна скористатися API-ресурсом Generate past events.
ВажливоПеред імпортуванням подій активуйте сегментацію для тих типів подій, які ви збираєтеся завантажити. Тип історичної події не створюється автоматично — його потрібно створити й увімкнути для сегментації заздалегідь, інакше запит повертає помилку
EVENT_SEGMENTATION_DISABLED.Якщо сегментація за подіями не входить до вашого тарифного плану, будь ласка, залишіть заявку за адресою [email protected].
Щоб дані щодо подій поєдналися з контактами, заздалегідь здійсніть імпорт контактів до бази акаунта eSputnik.
Після цього ви можете передати ресурсом Generate past events усі необхідні події до бази акаунта для сегментації. Ресурс дозволяє вказати для кожної події час, коли вона сталася.
Обробка запитів асинхронна, і порядок обробки подій не гарантується. Тому для історичних подій орієнтиром є не порядок надсилання, а час, переданий у самій події в полі occurred. Опубліковані ліміти частоти запитів — 100 запитів за секунду для ресурсу Generate past events і 350 запитів за секунду для ресурсу Generate event. Повний перелік лімітів наведено в статті Rate Limits.
Зверніть увагуЗа замовчуванням історичні події приймаються з глибиною до 366 днів від поточної дати. Для старіших подій запит повертає помилку
OCCURRED_TIME_TOO_DEPTH. Щоб розширити ліміт глибини для вашого акаунта, зверніться до служби підтримки: [email protected].Історичні події, завантажені ресурсом Generate past events, відображаються в Історії подій, але не в розділі Замовлення — там показуються лише події замовлень, передані штатними механізмами, наприклад ресурсом Add orders.
Припустимо, у вас є певна кількість таких замовлень за минулий рік, і ви хотіли б виділити сегмент клієнтів, які цікавляться певним типом товарів чи послуг, отримати вибірку щодо середньої вартості замовлення або навіть сегментувати контакти за певними геоданими (якщо така інформація у вас є).
Для цього треба конвертувати дані замовлення в JSON-формат, придатний для передачі по API, відповідно до специфікації та передати нам. У межах одного запиту можна передати масив до 500 таких подій/замовлень. Для кожного елемента необхідно вказати тимчасову мітку в полі occurred. Формат для дати: YYYY-MM-DD, формат для дати з часом: YYYY-MM-DDThh:mm:ss±hh:mm.
- Параметр події date має передаватися у форматі
ISO 8601із зазначенням зміщення часового поясу відносно UTC. Наприклад:2025-01-05T13:00:00+02:00, де +02:00 означає, що місцевий час випереджає UTC на 2 години.
- Враховуйте, що деякі країни використовують перехід між літнім і зимовим часом.
Прикладом може стати замовлення двох мобільних пристроїв з інтервалом купівлі в декілька років:
{
"events": [
{
"eventTypeKey": "orderCreated",
"keyValue": "test_v3_event_1",
"params": {
"phone": "380501234789",
"externalOrderId": "12345679102",
"externalCustomerId": "AA1100",
"totalCost": "258.0",
"status": "INITIALIZED",
"date": "2025-01-05T13:00:00+02:00",
"currency": "UAH",
"items": [
{
"externalItemId": "200600",
"name": "Super Device",
"category": "devices",
"quantity": 2,
"cost": 999,
"url": "http://example.com/item/200600",
"imageUrl": "http://example.com/item/200600/image.png",
"description": "High quality"
}
]
},
"occurred": "2025-02-04T12:00"
},
{
"eventTypeKey": "orderCreated",
"keyValue": "test_v3_event_1",
"params": {
"phone": "380500000001",
"externalOrderId": "12345679103",
"externalCustomerId": "AA1111",
"totalCost": "258.0",
"status": "INITIALIZED",
"date": "2025-01-07T13:00:00+03:00",
"currency": "UAH",
"items": [
{
"externalItemId": "200600",
"name": "Super Device",
"category": "devices",
"quantity": 2,
"cost": 999,
"url": "http://example.com/item/200600",
"imageUrl": "http://example.com/item/200600/image.png",
"description": "High quality"
}
]
},
"occurred": "2025-02-07T16:00"
}
]
}
Важливо
- Параметр події date має передаватися у форматі
ISO 8601із зазначенням часового зміщення (offset), наприклад+02:00.- При зазначенні зміщення враховуйте сезонний час (зимовий/літній).
Окрім базових полів із назвою, ціною та посиланням на товар, можна переносити різноманітні супутні дані, які будуть доступними для побудови сегмента.
Раніше ми зазначали, що можна будувати сегменти за геоданими; для цього достатньо передати країну й місто покупця.
{
"city": "Los Angeles",
"country": "USA"
}За наявними наборами даних за допомогою умовних груп ви матимете змогу будувати сегменти:

Також є можливість видалити застарілі події або такі, що втратили актуальність. Для цього можна відправити запит до цього ж ресурсу Remove events, але методом DELETE. При цьому в тілі запиту треба вказати часовий діапазон для видалення:
{
"from": "2019-06-04",
"to": "2020-01-04"
}За замовчуванням метод DELETE вимкнено, для активації слід звернутися до служби технічної підтримки: [email protected].
Зверніть увагу
- Метод
DELETEвидаляє лише історичні події, завантажені раніше ресурсом Generate past events V3. Події, надіслані ресурсом Generate event v3, він не видаляє — вони зникають автоматично після завершення терміну зберігання. Історичні замовлення він теж не видаляє: для них є окремий ресурс Remove orders.- Обидві межі діапазону
from/toвключні. Ресурс приймає точний час в UTC, а не лише дату.- Опублікований ліміт частоти запитів — 5 запитів за секунду.
- Якщо для організації не увімкнено відповідну опцію, запит повертає код
403з повідомленням про те, що для організації не активовано видалення подій.- Обробка запиту асинхронна і не має фіксованого SLA. Відповідь підтверджує, що запит прийнято, а не що видалення завершилося. Події обробляються по днях, тому загальна тривалість залежить від обсягу даних.
- Якщо частина даних уже вийшла з основного сховища за строком зберігання (TTL), цей метод не прибирає її із сегментованої історії.
- Події, які ресурс успішно видалив, зникають із сегментації та з історії контакту, але залишаються у звіті Аналітика подій: дані для нього збираються щогодини й після видалення не перераховуються.
Updated 11 days ago