Konektor Iterable

Połącz swoją platformę marketingu wzrostowego Iterable z Brevo dla ujednoliconego zaangażowania klientów, wielokanałowej koordynacji kampanii i skonsolidowanej analityki narzędzi marketingowych.

Przegląd

WłaściwośćWartość
PlatformaIterable
KategoriaMarketing
Poziom konfiguracjiŚredni
Integracja oficjalnaNie
Synchronizowane daneUżytkownicy, Zdarzenia, Kampanie, Katalogi
Typ APIREST API
UwierzytelnianieKlucz API
Bazowy URLhttps://api.iterable.com/api/

Funkcje

  • Synchronizacja profili użytkowników - Dwukierunkowa synchronizacja danych użytkowników z kontaktami Brevo
  • Analityka kampanii - Synchronizuj metryki wysyłania, otwarć i kliknięć kampanii dla ujednoliconego raportowania
  • Dane eksperymentów - Śledź wyniki testów A/B i wygrywające warianty
  • Synchronizacja katalogu - Synchronizuj katalogi produktów i treści między platformami
  • Zdarzenia workflow - Przekazuj zdarzenia wyzwolenia i zakończenia workflow do Brevo
  • Synchronizacja preferencji kanałów - Replikuj preferencje komunikacyjne użytkowników w Brevo

Wymagania wstępne

Zanim zaczniesz, upewnij się, że masz:

  1. Konto Iterable z dostępem do API
  2. Klucz API Iterable z odpowiednimi uprawnieniami
  3. ID projektu Iterable
  4. Konto Brevo z dostępem do API
  5. Konto Tajo z aktywną subskrypcją

Uwierzytelnianie

Iterable używa uwierzytelniania kluczem API przekazywanym w nagłówku żądania.

Tworzenie klucza API

  1. Zaloguj się do dashboardu Iterable
  2. Przejdź do Integrations > API Keys
  3. Kliknij New API Key
  4. Nadaj mu nazwę “Tajo Integration”
  5. Wybierz typ klucza Server-side
  6. Przyznaj następujące uprawnienia:
Users: Read/Write
Events: Read/Write
Campaigns: Read
Lists: Read/Write
Catalogs: Read
Experiments: Read
Workflows: Read
Templates: Read
Channels: Read
Message Types: Read

Typ klucza ma znaczenie

Zawsze używaj klucza API Server-side do integracji z Tajo. Klucze mobilne i JavaScript mają ograniczone uprawnienia i nie mogą uzyskać dostępu do wszystkich wymaganych endpointów.

Połączenie z Tajo

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

Konfiguracja

Podstawowa konfiguracja

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

Mapowanie pól

Mapuj pola użytkowników Iterable na atrybuty kontaktów 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

Konfiguracja zdarzeń

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

Endpointy API

Tajo integruje się z następującymi endpointami API Iterable:

EndpointMetodaPrzeznaczenie
/users/updatePOSTAktualizuj profile użytkowników
/users/{email}GETPobierz użytkownika po e-mailu
/users/bulkUpdatePOSTWsadowa aktualizacja użytkowników
/events/trackPOSTŚledź niestandardowe zdarzenia
/events/trackBulkPOSTWsadowe śledzenie zdarzeń
/campaignsGETLista wszystkich kampanii
/campaigns/metricsGETDane wydajności kampanii
/experiments/metricsGETWyniki eksperymentów
/listsGETLista wszystkich list użytkowników
/lists/subscribePOSTDodaj użytkowników do listy
/lists/unsubscribePOSTUsuń użytkowników z listy
/catalogs/{catalogName}/itemsGETPobierz elementy katalogu
/channelsGETLista kanałów komunikacji
/export/data.jsonGETEksportuj surowe dane zdarzeń

Przykłady kodu

Inicjalizacja konektora

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
});

Synchronizuj użytkowników

// 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
// }

Śledź zdarzenia

// 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
}
}
});

Obsługa webhooków

// 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');
});

Limity API

Iterable egzekwuje limity szybkości na podstawie planu:

PlanLimit szybkościLimit endpointu wsadowego
Growth500 żądań/sekundę500 żądań/sekundę
EnterpriseNiestandardowyNiestandardowy

Szczegółowe limity endpointów:

EndpointLimit
/users/update500 żądań/s
/users/bulkUpdate500 żądań/s (1 000 użytkowników na żądanie)
/events/track500 żądań/s
/events/trackBulk500 żądań/s (8 000 zdarzeń na żądanie)
/export/data.json4 równoczesne żądania

Endpointy wsadowe

Tajo automatycznie grupuje aktualizacje użytkowników (do 1 000 na wywołanie) i śledzenie zdarzeń (do 8 000 na wywołanie), aby zmaksymalizować przepustowość w ramach limitów szybkości.

Rozwiązywanie problemów

Typowe problemy

ProblemPrzyczynaRozwiązanie
401 UnauthorizedNieprawidłowy klucz APIZweryfikuj klucz w Iterable > Integrations > API Keys
Użytkownicy się nie synchronizująNiezgodność typu kluczaUpewnij się, że używasz klucza API Server-side
Brakujące dane kampaniiNiewystarczające uprawnieniaDodaj uprawnienie Campaigns Read do klucza API
Timeout eksportuDuży wolumen danychUżywaj filtrów zakresu dat, aby zmniejszyć rozmiar eksportu
Zduplikowani użytkownicyNiespójne identyfikatoryUżywaj e-maila jako głównego identyfikatora spójnie

Tryb debug

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

Test połączenia

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

Najlepsze praktyki

  1. Używaj endpointów wsadowych - Zawsze preferuj bulkUpdate i trackBulk dla dużych wolumenów danych
  2. Deduplikuj po e-mailu - Używaj e-maila jako spójnego identyfikatora między Iterable a Brevo
  3. Synchronizuj przyrostowo - Używaj zakresów dat, aby unikać ponownego przetwarzania historycznych danych
  4. Mapuj preferencje kanałów - Synchronizuj status opt-in/opt-out, aby zachować zgodność
  5. Monitoruj zadania eksportu - Duże eksporty mogą trwać długo; skonfiguruj odpytywanie statusu
  6. Testuj z projektem nieprodukcyjnym - Weryfikuj mapowania przed synchronizacją danych produkcyjnych

Bezpieczeństwo

  • Uwierzytelnianie kluczem API - Klucze server-side ze szczegółowymi uprawnieniami
  • Tylko HTTPS - Cała komunikacja API szyfrowana przez TLS 1.2+
  • Rotacja kluczy - Obsługa wielu aktywnych kluczy API podczas rotacji
  • Szyfrowane przechowywanie - Poświadczenia API szyfrowane w stanie spoczynku w Tajo
  • Webhooki JWT - Ładunki webhooków podpisane JWT do weryfikacji

Powiązane zasoby

Subscribe to updates

developer-docs

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

auto-detect
Asystent AI

Cześć! Zapytaj mnie o dokumentację.