Trình Kết Nối Iterable

Kết nối nền tảng growth marketing Iterable của bạn với Brevo để hợp nhất customer engagement, phối hợp campaigns đa kênh và hợp nhất analytics trên các công cụ marketing.

Tổng Quan

Thuộc TínhGiá Trị
Nền TảngIterable
Danh MụcMarketing
Độ Phức Tạp Thiết LậpTrung Bình
Tích Hợp Chính ThứcKhông
Dữ Liệu Đồng BộUsers, Sự Kiện, Campaigns, Catalogs
Loại APIREST API
Xác ThựcAPI Key
URL Cơ Sởhttps://api.iterable.com/api/

Tính Năng

  • Đồng bộ user profile - Đồng bộ dữ liệu người dùng hai chiều với contacts Brevo
  • Campaign analytics - Đồng bộ số liệu send, open và click cho báo cáo hợp nhất
  • Dữ liệu experiment - Theo dõi kết quả A/B test và winning variants
  • Đồng bộ catalog - Đồng bộ product và content catalogs giữa các nền tảng
  • Workflow events - Forward workflow trigger và completion events sang Brevo
  • Đồng bộ channel preference - Sao chép user communication preferences trong Brevo

Yêu Cầu

Trước khi bắt đầu, hãy đảm bảo bạn có:

  1. Tài khoản Iterable với quyền truy cập API
  2. Iterable API key với quyền phù hợp
  3. Project ID Iterable của bạn
  4. Tài khoản Brevo với quyền truy cập API
  5. Tài khoản Tajo với subscription hoạt động

Xác Thực

Iterable sử dụng API key authentication được truyền trong request header.

Tạo API Key

  1. Đăng nhập vào Iterable dashboard
  2. Điều hướng đến Integrations > API Keys
  3. Nhấp New API Key
  4. Đặt tên là “Tajo Integration”
  5. Chọn loại key Server-side
  6. Cấp các quyền sau:
Users: Read/Write
Events: Read/Write
Campaigns: Read
Lists: Read/Write
Catalogs: Read
Experiments: Read
Workflows: Read
Templates: Read
Channels: Read
Message Types: Read

Loại Key Quan Trọng

Luôn sử dụng API key loại Server-side cho tích hợp Tajo. Keys Mobile và JavaScript-side có quyền hạn chế và không thể truy cập tất cả endpoints cần thiết.

Kết Nối với Tajo

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

Cấu Hình

Thiết Lập Cơ Bản

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

Ánh Xạ Trường

Ánh xạ trường người dùng Iterable sang thuộc tính liên hệ Brevo:

field_mapping:
# Trường tiêu chuẩn
userId: ITERABLE_ID
email: email
firstName: FIRSTNAME
lastName: LASTNAME
phoneNumber: SMS
# Dữ liệu tương tác
signupDate: SIGNUP_DATE
totalPurchases: TOTAL_PURCHASES
lastPurchaseDate: LAST_PURCHASE
# Trường tùy chỉnh
plan_name: PLAN_NAME
company_size: COMPANY_SIZE
preferred_channel: PREFERRED_CHANNEL
lifecycle_stage: LIFECYCLE_STAGE

Cấu Hình Sự Kiện

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

API Endpoints

Tajo tích hợp với các Iterable API endpoints sau:

EndpointPhương ThứcMục Đích
/users/updatePOSTCập nhật user profiles
/users/{email}GETLấy user theo email
/users/bulkUpdatePOSTCập nhật users theo lô
/events/trackPOSTTrack custom events
/events/trackBulkPOSTTrack events theo lô
/campaignsGETLiệt kê tất cả campaigns
/campaigns/metricsGETDữ liệu hiệu suất campaign
/experiments/metricsGETKết quả experiment
/listsGETLiệt kê tất cả user lists
/lists/subscribePOSTThêm users vào list
/lists/unsubscribePOSTXóa users khỏi list
/catalogs/{catalogName}/itemsGETLấy catalog items
/channelsGETLiệt kê messaging channels
/export/data.jsonGETExport raw event data

Ví Dụ Code

Khởi Tạo Trình Kết Nối

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

Đồng Bộ Users

// Đồng bộ tăng dần users từ Iterable sang 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
// }

Theo Dõi Sự Kiện

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

Xử Lý Webhook

// Xử lý 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');
});

Giới Hạn Tốc Độ

Iterable áp dụng giới hạn tốc độ dựa trên gói của bạn:

GóiGiới Hạn Tốc ĐộGiới Hạn Bulk Endpoint
Growth500 yêu cầu/giây500 yêu cầu/giây
EnterpriseTùy chỉnhTùy chỉnh

Giới hạn endpoint cụ thể:

EndpointGiới Hạn
/users/update500 req/s
/users/bulkUpdate500 req/s (1.000 users mỗi request)
/events/track500 req/s
/events/trackBulk500 req/s (8.000 events mỗi request)
/export/data.json4 requests đồng thời

Bulk Endpoints

Tajo tự động nhóm user updates (tới 1.000 mỗi lần gọi) và event tracks (tới 8.000 mỗi lần gọi) để tối đa hóa thông lượng trong khi duy trì trong giới hạn tốc độ.

Khắc Phục Sự Cố

Sự Cố Phổ Biến

Sự CốNguyên NhânGiải Pháp
401 UnauthorizedAPI key không hợp lệXác minh key trong Iterable > Integrations > API Keys
Users không đồng bộLoại key không khớpĐảm bảo dùng Server-side API key
Thiếu campaign dataQuyền không đủThêm quyền Campaigns Read vào API key
Export timeoutKhối lượng dữ liệu lớnSử dụng date range filters để giảm kích thước export
Users trùng lặpĐịnh danh không nhất quánSử dụng email như định danh chính thức nhất quán

Chế Độ Debug

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

Kiểm Tra Kết Nối

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

Thực Hành Tốt Nhất

  1. Sử dụng bulk endpoints - Luôn ưu tiên bulkUpdatetrackBulk cho khối lượng dữ liệu lớn
  2. Deduplicate theo email - Sử dụng email như định danh nhất quán giữa Iterable và Brevo
  3. Đồng bộ tăng dần - Sử dụng date ranges để tránh xử lý lại dữ liệu lịch sử
  4. Ánh xạ channel preferences - Đồng bộ trạng thái opt-in/opt-out để duy trì tuân thủ
  5. Theo dõi export jobs - Exports lớn có thể mất thời gian; thiết lập status polling
  6. Kiểm tra với non-production project - Xác thực mappings trước khi đồng bộ production data

Bảo Mật

  • Xác thực API Key - Server-side keys với quyền chi tiết
  • Chỉ HTTPS - Tất cả giao tiếp API được mã hóa qua TLS 1.2+
  • Key Rotation - Hỗ trợ nhiều API keys hoạt động đồng thời trong quá trình rotation
  • Lưu trữ mã hóa - API credentials được mã hóa lúc nghỉ trong Tajo
  • JWT Webhooks - Webhook payloads được ký bằng JWT để xác minh

Tài Nguyên Liên Quan

Subscribe to updates

developer-docs

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

auto-detect
Trợ lý AI

Xin chào! Hãy hỏi tôi về tài liệu.