Експорт даних у таблиці BigQuery

Налаштуйте експорт даних у таблиці, щоб регулярно оновлювати інформацію про аудиторію, активність контактів і результати кампаній в BigQuery. Доступні набори даних для експорту:

  • broadcasts
  • contactActivities
  • contacts
  • devices
  • events
  • messages
  • orderItems
  • orders
  • revenue
  • workflows

Як працює експорт

Щоденна черга починається о 00:00 UTC, і акаунти вивантажуються один за одним, тож запуск для вашого акаунта може початися будь-коли протягом доби. Сам запуск триває від кількох секунд до приблизно двох годин залежно від обсягу змінених даних, і BigQuery додає власний час на злиття тимчасових таблиць. Не прив'язуйте своє завдання до фіксованого часу — краще перевіряйте появу нових даних у таблицях.

Після налаштування експорту перша синхронізація відбувається на наступному циклі, а не одразу. Якщо даних немає значно пізніше за це вікно, спершу перевірте, чи в обраних наборах узагалі є що вивантажувати для вашого акаунта — можливо, дані такого типу ще не формувалися. Якщо проблема лишається, зверніться в підтримку.

Якщо експорт завершується з помилкою, eSputnik надсилає сповіщення на email і в App Inbox акаунта (іконка дзвіночка у верхньому меню). Сповіщення надходить не частіше ніж раз на добу. Коли причину помилки усунено, наступний експорт продовжується з місця, де зупинився попередній.

У списку експортів статус та час останнього запуску не відображаються: про збій повідомить сповіщення, а появу нових даних перевіряйте в таблицях BigQuery.

Перший експорт не обмежений попередньою добою: він містить історію, яка вже є в акаунті, і запускати щось вручну не потрібно. Чого він не додасть — це даних, які ніколи не збиралися; глибину для кожного набору дивіться в статті Інтеграція eSputnik і Google BigQuery. Для акаунта з дуже великою базою контактів перший експорт може тривати кілька днів, а наступні запуски переносять лише зміни й завершуються значно швидше.

Створювати таблиці BigQuery заздалегідь не потрібно: вони генеруються автоматично під час першого експорту й оновлюються далі, а їхні назви відповідають наборам даних. Поряд з основними під час синхронізації з'являються тимчасові таблиці patch_<назва таблиці>_<UUID>: зміни спершу завантажуються в них, потім BigQuery зливає їх в основну таблицю й автоматично видаляє тимчасову. Назви таблиць — ні основних, ні тимчасових — змінити не можна. Якщо після синхронізації таблиці patch_ лишаються в наборі даних, зверніться в підтримку.

Ви обираєте набори даних і колонки для експорту, але не рядки — фільтрувати експорт за значенням не можна, тож вивантажується кожен рядок обраного набору. Вибірку на кшталт контактів з emailStatus = UNSUBSCRIBED треба робити на своєму боці, запитом до вивантаженої таблиці.

Набір contacts вивантажується повністю — усі контакти акаунта; він і дані розсилок синхронізуються за весь час існування акаунта. contactActivities — єдиний набір з обмеженням глибини: до 90 днів активності контактів, і не раніше за момент, коли для акаунта ввімкнули збір активності, тож при пізнішому ввімкненні доступна глибина менша.

Цифри з contactActivities не збігаються зі звітом за розсилкою — і не мають збігатися. Кожне відкриття записується окремим рядком, а звіт враховує унікальні відкриття — одне на контакт, тому запит до вивантаження дасть більше активності, ніж показує звіт. Щоб наблизитися до звіту, беріть один статус на пару контакт і iid — ідентифікатор конкретного відправлення. Повністю цифри все одно не збігатимуться.

Створення джерела даних для експорту даних

  1. Перейдіть у Налаштування  → Експорт данихНовий експорт данихBigQuery.
Вибір BigQuery у меню Новий експорт даних
  1. Завантажте файл ключа і позначте галочками ті набори даних, які бажаєте вивантажувати. Потім натисніть Зберегти.
Вибір файлу ключа та наборів даних для експорту в BigQuery

Підключення буде відображено в розділі Експорт даних, тут ви можете змінити його налаштування.

Створене підключення експорту BigQuery у розділі Експорт даних

Список параметрів даних для експорту

Broadcasts

Параметр

Тип даних

Опис

createdDatetimestampДата та час створення повідомлення (формат: '2021-10-08 11:11:02')
groupIdintID груп, що брали участь у розсилці
idintID розсилки
mediaTypevarchar (50)Медіатип (SMS, Email, Web Push, Viber, Mobile Push, AppInbox, Widget)
messageIdintID повідомлення
namevarchar (1000)Назва розсилки
startedDatetimestampДата та час відправки розсилки (формат: '2021-10-08 11:11:02')
statusvarchar (50)Статуси розсилки:
  • IDLE – завершена;
  • RUNNING - почалася;
  • PAUSED - призупинена (якщо розсилка не була зупинена вами вручну, зверніться до служби підтримки для уточнення деталей);
  • SCHEDULED – запланована;
  • UNCONFIRMED – у черзі на модерацію;
  • CONSIDERATION – на модерації;
  • BLOCKED – заблокована модератором.
updatedDatetimestampДата та час оновлення розсилки (формат: '2021-10-08 11:11:02')

ContactActivities

Параметр

Тип даних

Опис

activity
(activityStatus) *
stringСтатус активності:
  • DELIVERED – повідомлення доставлено.
  • UNDELIVERED – повідомлення не доставлено (містить причину statusDescription).
  • READ – повідомлення відкрито.
  • UNSUBSCRIBED – контакт відмовився від розсилки.
  • CLICKED – контакт клікнув посилання у повідомленні.
  • SPAM – контакт повідомив про спам.
  • SUBSCRIPTION_CHANGED – контакт змінив категорію підписки.
  • PUSH_SUBSCRIBED – контакт підписався на push-сповіщення.
workflowInstanceIdstringІдентифікатор окремого запуску сценарію. Використовуйте його для угрупування розсилок у рамках запуску одного сценарію.
broadcastIdintID розсилки
campaignTypestringТип розсилки: 
  • IM — тригерне повідомлення, 
  • Group — масова розсилка.
clickEventLinkstringМістить посилання, яке клікнув контакт (статус CLICKED)
contactIdintID контакту в eSputnik (Внутрішній)
errorCode (statusDescription)*stringПомилка доставки та опис. Для активностей email зі статусом UNDELIVERED тут може міститися необроблена причина відмови SMTP або код, що не належить SMTP, наприклад UNSUBSCRIBED, BLACKLISTED, MEDIA_LOCATOR_FORBIDDEN чи GENERAL_EMAIL_ERROR.
eventKeystringКлюч події
eventTypeKeystringКлюч типу події
eventIdstringІдентифікатор події, яка запустила сценарій
externalCustomerIdstringID контакту у вашій системі (Зовнішній)
iidstringІдентифікатор конкретного відправлення
mediaTypestringМедіатип (SMS, Email, Web Push, Viber, Mobile Push, AppInbox, Widget, In-App, Telegram)
messageInstanceIdintСлужбове поле
messageLanguageCodestringКод мови повідомлення
messageNamestringНазва повідомлення в обліковому записі eSputnik
messageIdintID повідомлення
imIdintІдентифікатор окремого повідомлення. Використовуйте його, щоб пов’язувати активності контакту з конкретним повідомленням.
messageTagsstringМітки повідомлення
messageURLstringМістить посилання на веб-версію email
osNamestringОпераційна система пристрою
osTypestringТип пристрою
senderNamestringІм'я відправника у Viber
started
(activityDateTime)*
timestampДата та час активності: для відправки — час відправки, для кожного наступного статусу — час цього статусу (формат: '2021-10-08 11:11:02')
utmCampaignstringUTM-мітка розсилки. Береться з посилання, на яке клікнув контакт, тому значення є лише в рядках зі статусом CLICKED. У рядках зі DELIVERED чи READ UTM-мітки немає, і налаштування, яке це змінює, відсутнє.
workflowIdstringID сценарію
workflowBlockIdstringID блока сценарію
smsPartsintКількість частин SMS
  • Поле буде видалено як застаріле; використовуйте поле, вказане у дужках

Contacts

Параметр

Тип даних

Опис

contactIdbigintID контакту в eSputnik (Внутрішній)
contactSourcevarchar (50)Джерело контакту:
  • SITE_AUTOMATED - прив'язка email до push-підписника (скрипт збору web push),
  • I_MESSAGE -відправка одного повідомлення,
  • CAMPAIGN - сценарій (блок Створити контакт або блок Додати до групи),
  • IMPORT - імпорт файла або метод Add contacts,
  • MANUAL - створен вручну,
  • SUBSCRIPTION - форма підписки (API метод Subscribe a contact),
  • API метод Add contact,
  • ORDER - замовлення на сайті (API метод Add orders).
createdDatetimestampДата та час створення контакту (формат: '2021-10-08 11:11:02')
emailvarchar (50)Email контакту
emailDomainvarchar (100)Домен email
emailStatusvarchar (50)Статус email
externalCustomerIdvarchar (100)ID контакту у вашій системі (Зовнішній)
firstNamevarchar (50)Ім'я контакту
languageCodevarchar (20)Код мови повідомлень
lastClickedDatetimestampДата та час останнього кліку (формат: '2021-10-08 11:11:02')
lastNamevarchar (50)Прізвище контакту
lastReceivedDatetimestampДата та час останньої доставки (формат: '2021-10-08 11:11:02')
lastSentDatetimestampДата та час останньої відправки (формат: '2021-10-08 11:11:02')
lastViewedDatetimestampДата та час останнього відкриття (формат: '2021-10-08 11:11:02')
marketIdvarchar (100)Ідентифікатор ринку або відділення, до якого належить контакт
smsvarchar (50)Номер телефону
totalClickedintЗагальна кількість кліків
totalReceivedintЗагальна кількість отриманих повідомлень
totalSentintЗагальна кількість надісланих повідомлень
totalViewedintЗагальна кількість переглянутих повідомлень

Devices

Параметр
Тип даних
Опис
appVersionvarchar (50)Версія додатку
applicationIdintID додатку
categoryvarchar (50)Категорія
contactIdbigintID контакту
deviceIdvarchar (250)ID пристрою
deviceModelvarchar (100)Модель пристрою
externalCustomerIdvarchar (100)Зовнішній ID контакту
languageCodevarchar (20)Код мови
osTypevarchar (50)Тип ОС
osVersionvarchar (50)Версія ОС
pushTokenvarchar (max)Пуш-токен
timeZonevarchar (100)Часовий пояс

Events

Параметр
Тип даних
Опис
contactIdintID контакту
eventIdintID події
eventTypeKeystringТип події
keyValuestringКлюч події
occuredtimestampДата і час виникнення (формат: '2021-10-08 11:11:02')
paramsJsonjson50 перших параметрів та значень події (name/value); передається до 300 символів значень.
📘

Зверніть увагу

  • Кількість рядків у таблиці events не збігається з кількістю контактів — кожне виникнення події експортується як окремий рядок. Один контакт може викликати ту саму подію кілька разів (наприклад, через перевстановлення застосунку на новому пристрої або використання кількох пристроїв), і події залишаються в таблиці навіть після видалення пов'язаного контакту. Не використовуйте кількість рядків подій як показник кількості унікальних контактів.
  • paramsJson містить лише плоскі (верхнього рівня) параметри події. Вкладені параметри — де значення параметра саме є об'єктом (наприклад, поле source, вкладене в інший параметр) — не експортуються в BigQuery.

Messages

📘

Зверніть увагу

Якщо ви редагуєте вже експортоване повідомлення (наприклад, додаєте мітку), відповідний рядок у таблиці messages у BigQuery заднім числом не оновлюється.

Параметр
Тип даних
Опис
annoyanceLevelintРівень занепокоєння повідомлення
languagevarchar (50)Мова основної версії повідомлення
mediaTypevarchar (50)Медіатип (SMS, Email, Web Push, Viber, Mobile Push, AppInbox, Widget, In-App)
messageIdintID повідомлення
namevarchar (200)Назва повідомлення
replyTovarchar (200)Адреса для відповідей
sendervarchar (200)Відправник
subjectvarchar (1000)Тема
tagsvarchar (200)Мітки
translationsvarchar (200)Мовні версії повідомлення
updateDatetimestampДата та час оновлення повідомлення (формат: '2021-10-08 11:11:02')

OrderItems

Параметр
Тип даних
Опис
costnumericВартість товару
descriptionvarchar (300)Опис товару
externalProductIdvarchar (100)Зовнішній ID товару
imageUrlvarchar (200)Посилання на зображення товару
namevarchar (100)Назва товару
orderDatetimestampДата створення замовлення (формат: '2021-10-08 11:11:02')
orderIdintID замовлення в eSputnik (Внутрішній)
quantityintКількість товарів
urlvarchar (200)URL-адреса товару

Orders

Параметр

Тип даних

Опис

contactIdintID контакту в eSputnik (Внутрішній)
marketIdvarchar (100)Ідентифікатор ринку
deliveryAddressvarchar (100)Адреса доставки
deliveryMethodvarchar (50)Спосіб доставки
discountnumericЗнижка
emailvarchar (50)Email
externalOrderIdvarchar (100)Зовнішній ID замовлення
firstNamevarchar (50)Ім'я контакту
lastNamevarchar (50)Прізвище контакту
orderCreatedDatetimestampДата створення замовлення на eSputnik (формат: '2021-10-08 11:11:02')
orderDatetimestampДата створення замовлення (формат: '2021-10-08 11:11:02')
orderIdintID замовлення в eSputnik (Внутрішній)
paymentMethodvarchar (50)Спосіб оплати
Phonevarchar (50)Номер телефону
Statusvarchar (50)Статус замовлення:
  • INITIALIZED,
  • IN PROGRESS,
  • DELIVERED,
  • CANCELED.
totalCostnumericЗагальна вартість замовлення

Revenue

Активність повідомлень, надісланих API-ресурсом Send prepared message (smartsend), теж потрапляє в експорт: такі надсилання належать до тригерних, тому campaignType має значення IM.

Параметр

Тип даних

Опис

activity (activityStatus)*varchar (100)Статус активності:
  • DELIVERED – повідомлення доставлено.
  • UNDELIVERED – повідомлення не доставлено (містить причину statusDescription).
  • RECEIVED –повідомлення відкрито.
  • UNSUBSCRIBED – контакт відмовився від розсилки.
  • CLICKED – контакт клікнув посилання у повідомленні.
  • SPAM – контакт повідомив про спам.
  • SUBSCRIPTION_CHANGED – контакт змінив категорію підписки.
  • PUSH_SUBSCRIBED —контакт підписався на push-сповіщення.
campaignTypevarchar (50)Тип розсилки:
  • IM — тригерне повідомлення,
  • Group — масова розсилка.
clickEventLinkvarchar (1000)Містить посилання, яке клікнув контакт (статус CLICKED)
contactIdbigintID контакту в eSputnik (Внутрішній)
currencyvarchar (3)Валюта
externalCustomerIdvarchar (100)ID контакту у вашій системі (Зовнішній)
externalOrderIdvarchar (200)ID замовлення зовнішній
mediaTypevarchar (50)Медіатип (SMS, Email, Web Push, Viber, Mobile Push, AppInbox, Widget)
messageInstanceIdintСлужбове поле
messageNamevarchar (100)Назва повідомлення в обліковому записі eSputnik
messageTagsvarchar (200)Мітки повідомлення
messageUrlvarchar (1000)Містить посилання на веб-версію email
orderDatetimestampДата створення замовлення (формат: '2021-10-08 11:11:02')
senderNamevarchar (200)Ім'я відправника у Viber
started (activityDateTime)*timestampДата та час активності: для відправки — час відправки, для кожного наступного статусу — час цього статусу (формат: '2021-10-08 11:11:02')
totalCostnumericЗагальна вартість замовлення
utmCampaignvarchar (400)UTM-мітка розсилки
eventKeystringКлюч події
eventTypeKeystringКлюч типу події
messageLanguageCodestringКод мови повідомлення
orderIdintID замовлення в eSputnik (Внутрішній)
workflowIdintID сценарію
broadcastIdintID розсилки
  • Поле буде видалено як застаріле; використовуйте поле, вказане у дужках
📘

Зверніть увагу

Існуючі записи в таблиці Revenue (для замовлень, зроблених після 08.03.2024) можна оновлювати разом з вивантаженням нових замовлень. Оновлення може знадобитися, наприклад, якщо змінилася загальна вартість замовлення.

Workflows

Параметр
Тип даних
Опис
createdDatetimestampДата створення сценарію
statusvarchar (100)Статус сценарію (активний/неактивний)
updatedDatetimestampДата оновлення сценарію
workflowIdintID сценарію
workflowNamevarchar (100)Назва сценарію

Приклади використання

Нижче наведено декілька основних варіантів використання експорту даних з eSputnik до BigQuery.

1. Розширений аналіз ефективності кампанії

  • Використаний набір даних: broadcasts, contactActivities, messages
  • Опис: BigQuery дає змогу детально аналізувати ефективність кампаній, відстежуючи ключові показники, такі як рейтинги відкриття та кліків. Експорт даних про розсилки, включаючи критерії сегментації, статус доставлення та тип повідомлення, дозволяє маркетологам оцінити, які кампанії досягають найкращого залучення.
  • Переваги використання: визначивши найефективніші кампанії, маркетологи можуть оптимізувати контент повідомлень, час і таргетинг, підвищуючи вплив і рентабельність інвестицій майбутніх кампаній.

2. Сегментація клієнтів і аналіз поведінки

  • Використаний набір даних: contacts, contactActivities, events
  • Опис: BigQuery може обробляти великі обсяги даних про активність клієнтів, дозволяючи виявляти моделі поведінки, такі як частота покупок або бажані канали взаємодії. Це розуміння дозволяє глибше сегментувати аудиторію, щоб точніше таргетувати зацікавлених клієнтів.
  • Переваги використання: Кампанії, орієнтовані на поведінку, сприяють збільшенню утримання клієнтів і вищій пожиттєвій цінності клієнтів (LTV), надаючи досвід, який резонує з кожним сегментом аудиторії.

3. Прогнозне моделювання

  • Використаний набір даних: contacts, orders, revenue, contactActivities
  • Опис: Історичні дані про доходи, покупки та інші активності контактів дозволяють розробляти прогнозні моделі відтоку клієнтів. Це дає змогу виявляти клієнтів із групи ризику та націлювати на них стратегії утримання.
  • Переваги використання: Цільові кампанії зменшують відтік і збільшують LTV, допомагаючи утримувати цінних клієнтів і підвищувати довгостроковий дохід.

4. Стратегічний аналіз замовлень і доходів

  • Використаний набір даних: orders, orderItems, revenue
  • Опис: Аналізуючи дані про замовлення та доходи в BigQuery, маркетологи можуть відстежувати такі показники, як середня вартість замовлення та тенденції доходу. Цей аналіз допомагає виявити можливості збільшення продажів.
  • Переваги використання: Аналіз моделей доходів дозволяє приймати керовані даними рішення щодо ціноутворення, рекламних акцій і пропозицій продуктів, максимізуючи потенційний дохід.

5. Моніторинг і попередження за ключовими показниками

  • Використаний набір даних: broadcasts, contactActivities, revenue
  • Опис: Інформаційні панелі BigQuery можуть відстежувати ключові показники ефективності (KPI), такі як рівень залученості та доходи, із можливістю налаштування сповіщень про значні зміни (наприклад, раптове зниження показників доставлень).
  • Переваги використання: Моніторинг допомагає підтримувати ефективність кампаній, дозволяючи швидко розв'язувати проблеми та забезпечуючи послідовну взаємодію з підписниками.

6. Аналіз рентабельності інвестицій та розподілу бюджету

  • Використаний набір даних: broadcasts, orders, revenue, contactActivities
  • Опис: Експорт даних про кампанії та доходи в BigQuery дозволяє обчислювати рентабельність інвестицій і оцінювати економічну ефективність кампанії, надаючи відомості для оптимального розподілу бюджету.
  • Переваги використання: Зосереджуючись на високоефективних кампаніях, маркетологи можуть оптимізувати витрати, щоб максимізувати ефективність і віддачу від інвестицій.

7. Відображення омніканального шляху клієнта

  • Використаний набір даних: contacts, contactActivities, events, orders
  • Опис: Можливості обробки даних BigQuery дозволяють брендам аналізувати шляхи користувачів за різними каналами, надаючи розуміння життєвого циклу клієнта від обізнаності до конверсії.
  • Переваги використання: Розуміння шляху клієнта дозволяє виявити моменти деактивації та можливості для вдосконалення, забезпечуючи більш позитивний користувацький досвід і вищі коефіцієнти конверсії.

Опис статусів повідомлень

Поле statusdescription пояснює, чому повідомлення не було надіслано або доставлено:

ЗначенняПояснення
UNSUBSCRIBEDКонтакт відписався від відповідного каналу.
BLACKLISTEDКонтакт або медіалокатор перебуває в чорному списку.
MEDIA_LOCATOR_FORBIDDENНадсилання на медіалокатор заблоковано на рівні системи.
GENERAL_EMAIL_ERRORЗагальна помилка надсилання email. Щоб з'ясувати причину в конкретному випадку, перегляньте активність повідомлення або зверніться до підтримки.

Значення null означає, що опис статусу не записано. Не вважайте кожне заповнене значення помилкою доставки — звіряйте його зі статусом повідомлення.


Did this page help you?