Iterable конектор

Свържи своята Iterable growth marketing платформа с Brevo за унифицирано ангажиране на клиентите, координация на кампании между канали и консолидирана аналитика през маркетинговите инструменти.

Преглед

СвойствоСтойност
ПлатформаIterable
КатегорияМаркетинг
Сложност на настройкаСредна
Официална интеграцияНе
Синхронизирани данниПотребители, събития, кампании, каталози
Тип на APIREST API
АвтентикацияAPI Key
Base URLhttps://api.iterable.com/api/

Функции

  • Синхронизация на потребителски профили – Двупосочна синхронизация на потребителски данни с контактите в Brevo
  • Аналитика на кампании – Синхронизирай метрики за изпращане, отваряне и кликове на кампании за унифицирано отчитане
  • Данни от експерименти – Проследявай резултати от A/B тестове и печеливши варианти
  • Синхронизация на каталози – Синхронизирай каталози на продукти и съдържание между платформи
  • Workflow събития – Препращай тригери и събития за завършване на workflow към Brevo
  • Синхронизация на channel preferences – Репликирай комуникационните предпочитания на потребителите в Brevo

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

Преди да започнеш, увери се, че имаш:

  1. Акаунт в Iterable с API достъп
  2. Iterable API ключ с подходящи разрешения
  3. Твоя Iterable project ID
  4. Акаунт в Brevo с API достъп
  5. Акаунт в Tajo с активен абонамент

Автентикация

Iterable използва автентикация с API ключ, подаден в хедъра на заявката.

Създаване на API ключ

  1. Влез в своя Iterable dashboard
  2. Навигирай към Integrations > API Keys
  3. Щракни върху New API Key
  4. Наименувай го “Tajo Integration”
  5. Избери тип Server-side ключ
  6. Предостави следните разрешения:
Users: Read/Write
Events: Read/Write
Campaigns: Read
Lists: Read/Write
Catalogs: Read
Experiments: Read
Workflows: Read
Templates: Read
Channels: Read
Message Types: Read

Типът на ключа е от значение

Винаги използвай Server-side API ключ за Tajo интеграцията. Mobile и JavaScript-side ключовете имат ограничени разрешения и не могат да достъпват всички необходими крайни точки.

Свързване с Tajo

Terminal window
tajo connectors install iterable \
--api-key $ITERABLE_API_KEY

Конфигурация

Основна настройка

connectors:
iterable:
enabled: true
sync:
users: true
events: true
campaigns: true
catalogs: true
experiments: true
lists:
all_users: 16
engaged_users: 17
inactive_users: 18

Мапване на полета

Мапвай потребителски полета от Iterable към атрибути на контактите в Brevo:

field_mapping:
# Standard fields
userId: ITERABLE_ID
email: email
firstName: FIRSTNAME
lastName: LASTNAME
phoneNumber: SMS
# Engagement data
signupDate: SIGNUP_DATE
totalPurchases: TOTAL_PURCHASES
lastPurchaseDate: LAST_PURCHASE
# Custom fields
plan_name: PLAN_NAME
company_size: COMPANY_SIZE
preferred_channel: PREFERRED_CHANNEL
lifecycle_stage: LIFECYCLE_STAGE

Конфигурация на събития

event_mapping:
# Iterable event -> Brevo event
purchase: ORDER_PLACED
addToCart: CART_UPDATED
pageView: PAGE_VIEWED
appOpen: APP_OPENED
pushOpen: PUSH_ENGAGED

API крайни точки

Tajo се интегрира със следните Iterable API крайни точки:

Крайна точкаМетодПредназначение
/users/updatePOSTОбновяване на потребителски профили
/users/{email}GETПолучаване на потребител по имейл
/users/bulkUpdatePOSTПакетно обновяване на потребители
/events/trackPOSTПроследяване на персонализирани събития
/events/trackBulkPOSTПакетно проследяване на събития
/campaignsGETСписък с всички кампании
/campaigns/metricsGETPerformance данни за кампании
/experiments/metricsGETРезултати от експерименти
/listsGETСписък с всички потребителски списъци
/lists/subscribePOSTДобавяне на потребители към списък
/lists/unsubscribePOSTПремахване на потребители от списък
/catalogs/{catalogName}/itemsGETПолучаване на артикули от каталог
/channelsGETСписък с messaging канали
/export/data.jsonGETЕкспорт на raw event данни

Примери с код

Инициализация на конектора

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('iterable', {
apiKey: process.env.ITERABLE_API_KEY
});

Синхронизация на потребители

// Incremental user sync from Iterable to Brevo
await tajo.connectors.sync('iterable', {
type: 'incremental',
resources: ['users'],
since: '2024-01-01',
batchSize: 50
});
const status = await tajo.connectors.status('iterable');
console.log(status);
// {
// connected: true,
// lastSync: '2024-03-15T09:45:00Z',
// usersCount: 58700,
// campaignsTracked: 42,
// eventsProcessed: 210000
// }

Проследяване на събития

// Forward Iterable events to Brevo
await tajo.connectors.handleEvent('iterable', {
type: 'custom_event',
payload: {
eventName: 'subscription_upgraded',
dataFields: {
previousPlan: 'starter',
newPlan: 'pro',
mrr: 99.00
}
}
});

Handler за уебхуци

// Handle Iterable system webhooks
app.post('/webhooks/iterable', async (req, res) => {
const event = req.body;
await tajo.connectors.handleWebhook('iterable', {
type: event.eventName,
payload: event
});
res.status(200).send('OK');
});

Ограничения на заявките

Iterable налага rate limits на базата на твоя план:

ПланRate LimitЛимит на bulk крайни точки
Growth500 заявки/секунда500 заявки/секунда
EnterpriseПерсонализиранПерсонализиран

Лимити за конкретни крайни точки:

Крайна точкаЛимит
/users/update500 заявки/сек
/users/bulkUpdate500 заявки/сек (1 000 потребители на заявка)
/events/track500 заявки/сек
/events/trackBulk500 заявки/сек (8 000 събития на заявка)
/export/data.json4 едновременни заявки

Bulk крайни точки

Tajo автоматично пакетира обновленията на потребители (до 1 000 на извикване) и event track-ове (до 8 000 на извикване), за да максимизира throughput, оставайки в рамките на rate limits.

Отстраняване на проблеми

Чести проблеми

ПроблемПричинаРешение
401 UnauthorizedНевалиден API ключПровери ключа в Iterable > Integrations > API Keys
Потребителите не се синхронизиратНесъответствие на тип ключУвери се, че използваш Server-side API ключ
Липсват данни за кампанииНедостатъчни разрешенияДобави разрешението Campaigns Read към API ключа
Timeout при експортГолям обем данниИзползвай филтри по диапазон от дати, за да намалиш размера на експорта
Дублирани потребителиНепоследователни идентификаториИзползвай имейл като основен идентификатор консистентно

Режим за дебъг

connectors:
iterable:
debug: true
log_level: verbose
log_api_calls: true

Тест на връзката

Terminal window
tajo connectors test iterable
# ✓ API connection successful
# ✓ User data accessible
# ✓ Campaign list readable
# ✓ Event tracking operational
# ✓ List management available

Добри практики

  1. Използвай bulk крайни точки – Винаги предпочитай bulkUpdate и trackBulk за големи обеми данни
  2. Дедуплицирай по имейл – Използвай имейл като консистентен идентификатор в Iterable и Brevo
  3. Синхронизирай инкрементално – Използвай диапазони от дати, за да избегнеш повторна обработка на исторически данни
  4. Мапвай channel preferences – Синхронизирай opt-in/opt-out статус за поддържане на съвместимост
  5. Мониторирай export jobs – Големите експорти могат да отнемат време; настрой polling на статус
  6. Тествай с не-production проект – Валидирай мапванията преди синхронизация на production данни

Сигурност

  • Автентикация с API ключ – Server-side ключове с гранулирани разрешения
  • Само HTTPS – Цялата API комуникация е криптирана чрез TLS 1.2+
  • Ротация на ключове – Поддръжка на множество активни API ключове по време на ротация
  • Криптирано съхранение – API credentials криптирани при съхранение в Tajo
  • JWT уебхуци – Webhook payloads подписани с JWT за верификация

Свързани ресурси

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI асистент

Здравейте! Попитайте ме за документацията.