---
title: "Iterable Connector"
description: "คู่มือการผสานรวม Iterable ฉบับสมบูรณ์สำหรับการซิงค์ผู้ใช้ แคมเปญ การทดลอง และเหตุการณ์ engagement กับ Brevo ผ่าน Tajo"
url: https://tajo.io/th/docs/connectors/marketing/iterable/
markdown: https://tajo.io/th/docs/connectors/marketing/iterable.md
lang: th-TH
robots: noindex
---

ขอสิทธิ์ใช้งานล่วงหน้า

กรอกชื่อและที่อยู่อีเมลที่ทำงานของคุณ เราจะส่งลิงก์เพื่อยืนยันคำขอเข้าใช้งาน Tajo ทางอีเมล

# Iterable Connector

สถานะตัวเชื่อม: วางแผนไว้ ยังไม่ได้สร้าง ปัจจุบัน Tajo ยังไม่ได้ใช้งานตัวเชื่อมนี้

| ฟิลด์ต้นทาง | ฟิลด์ปลายทาง | ค่าตัวอย่าง |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

เชื่อมต่อ Iterable growth marketing platform ของคุณกับ Brevo เพื่อ customer engagement ที่รวมกัน การประสานงานแคมเปญข้ามช่องทาง และ analytics ที่รวมศูนย์ครอบคลุม marketing tools ทั้งหมด

## ภาพรวม

| คุณสมบัติ | ค่า |
| --- | --- |
| **แพลตฟอร์ม** | Iterable |
| **หมวดหมู่** | การตลาด |
| **ความซับซ้อนในการตั้งค่า** | ปานกลาง |
| **การผสานรวมอย่างเป็นทางการ** | ไม่ |
| **ข้อมูลที่ซิงค์** | ผู้ใช้ เหตุการณ์ แคมเปญ แคตาล็อก |
| **ประเภท API** | REST API |
| **การยืนยันตัวตน** | API Key |
| **Base URL** | `https://api.iterable.com/api/` |

## ฟีเจอร์

- **การซิงค์โปรไฟล์ผู้ใช้** - การซิงค์ข้อมูลผู้ใช้แบบ bidirectional กับ Brevo contacts
- **Campaign analytics** - ซิงค์ metrics การส่ง การเปิด และการคลิกแคมเปญสำหรับรายงานที่รวมกัน
- **ข้อมูลการทดลอง** - ติดตามผลการทดสอบ A/B และตัวแปรที่ชนะ
- **การซิงค์แคตาล็อก** - ซิงค์แคตาล็อกสินค้าและเนื้อหาข้ามแพลตฟอร์ม
- **เหตุการณ์ Workflow** - ส่งต่อเหตุการณ์ trigger และการเสร็จสิ้น workflow ไปยัง Brevo
- **การซิงค์ channel preference** - จำลองการตั้งค่าการสื่อสารของผู้ใช้ใน Brevo

## ข้อกำหนดเบื้องต้น

ก่อนเริ่มต้น ตรวจสอบให้แน่ใจว่าคุณมี:

1. บัญชี Iterable ที่เปิดใช้งาน API access
2. Iterable API key ที่มีสิทธิ์ที่เหมาะสม
3. Iterable project ID ของคุณ
4. บัญชี Brevo ที่มีสิทธิ์เข้าถึง API
5. บัญชี Tajo ที่มีการสมัครสมาชิกที่ใช้งานอยู่

## การยืนยันตัวตน

Iterable ใช้การยืนยันตัวตนด้วย API key ที่ส่งในส่วนหัวของคำขอ

### การสร้าง API Key

1. เข้าสู่ระบบ Iterable dashboard ของคุณ
2. ไปที่ **Integrations** > **API Keys**
3. คลิก **New API Key**
4. ตั้งชื่อว่า “Tajo Integration”
5. เลือกประเภท key **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
```

ประเภท Key สำคัญ

ใช้ API key แบบ **Server-side** เสมอสำหรับการผสานรวม Tajo Keys แบบ Mobile และ JavaScript-side มีสิทธิ์จำกัดและไม่สามารถเข้าถึง endpoints ที่จำเป็นทั้งหมดได้

### การเชื่อมต่อกับ Tajo

```bash
tajo connectors install iterable \
  --api-key $ITERABLE_API_KEY
```

## การกำหนดค่า

### การตั้งค่าพื้นฐาน

```yaml
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:

```yaml
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
```

### การกำหนดค่าเหตุการณ์

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

## API Endpoints

Tajo ผสานรวมกับ Iterable API endpoints ต่อไปนี้:

| Endpoint | เมธอด | จุดประสงค์ |
| --- | --- | --- |
| `/users/update` | POST | อัปเดตโปรไฟล์ผู้ใช้ |
| `/users/{email}` | GET | ดึงผู้ใช้ด้วยอีเมล |
| `/users/bulkUpdate` | POST | อัปเดตผู้ใช้เป็น batch |
| `/events/track` | POST | ติดตาม custom events |
| `/events/trackBulk` | POST | ติดตามเหตุการณ์เป็น batch |
| `/campaigns` | GET | แสดงรายการแคมเปญทั้งหมด |
| `/campaigns/metrics` | GET | ข้อมูลประสิทธิภาพแคมเปญ |
| `/experiments/metrics` | GET | ผลการทดลอง |
| `/lists` | GET | แสดงรายการ user lists ทั้งหมด |
| `/lists/subscribe` | POST | เพิ่มผู้ใช้ในรายการ |
| `/lists/unsubscribe` | POST | ลบผู้ใช้ออกจากรายการ |
| `/catalogs/{catalogName}/items` | GET | ดึงรายการแคตาล็อก |
| `/channels` | GET | แสดงรายการ messaging channels |
| `/export/data.json` | GET | ส่งออกข้อมูลเหตุการณ์แบบ raw |

## ตัวอย่างโค้ด

### เริ่มต้น Connector

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

### ซิงค์ผู้ใช้

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

### ติดตามเหตุการณ์

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

### ตัวจัดการ Webhook

```javascript
// 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 ตามแผนของคุณ:

| แผน | ขีดจำกัดอัตรา | ขีดจำกัด Bulk Endpoint |
| --- | --- | --- |
| **Growth** | 500 คำขอ/วินาที | 500 คำขอ/วินาที |
| **Enterprise** | กำหนดเอง | กำหนดเอง |

ขีดจำกัดเฉพาะ endpoint:

| Endpoint | ขีดจำกัด |
| --- | --- |
| `/users/update` | 500 req/s |
| `/users/bulkUpdate` | 500 req/s (1,000 ผู้ใช้ต่อคำขอ) |
| `/events/track` | 500 req/s |
| `/events/trackBulk` | 500 req/s (8,000 เหตุการณ์ต่อคำขอ) |
| `/export/data.json` | 4 concurrent requests |

Bulk Endpoints

Tajo จัดกลุ่มการอัปเดตผู้ใช้โดยอัตโนมัติ (สูงสุด 1,000 ต่อการเรียก) และการติดตามเหตุการณ์ (สูงสุด 8,000 ต่อการเรียก) เพื่อเพิ่ม throughput สูงสุดภายใน rate limits

## การแก้ไขปัญหา

### ปัญหาทั่วไป

| ปัญหา | สาเหตุ | วิธีแก้ |
| --- | --- | --- |
| 401 Unauthorized | API key ไม่ถูกต้อง | ตรวจสอบ key ใน Iterable > Integrations > API Keys |
| ผู้ใช้ไม่ซิงค์ | ประเภท key ไม่ตรงกัน | ตรวจสอบว่าใช้ Server-side API key |
| ข้อมูลแคมเปญหายไป | สิทธิ์ไม่เพียงพอ | เพิ่มสิทธิ์ Campaigns Read ให้ API key |
| Export timeout | ปริมาณข้อมูลมาก | ใช้ตัวกรองช่วงวันที่เพื่อลดขนาด export |
| ผู้ใช้ซ้ำกัน | Identifiers ไม่สอดคล้องกัน | ใช้อีเมลเป็น primary identifier อย่างสม่ำเสมอ |

### โหมด Debug

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

### ทดสอบการเชื่อมต่อ

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

## แนวทางปฏิบัติที่ดีที่สุด

1. **ใช้ bulk endpoints** - ชอบ `bulkUpdate` และ `trackBulk` เสมอสำหรับข้อมูลจำนวนมาก
2. **Deduplicate ด้วยอีเมล** - ใช้อีเมลเป็น identifier ที่สอดคล้องกันทั้ง Iterable และ Brevo
3. **ซิงค์แบบ incremental** - ใช้ช่วงวันที่เพื่อหลีกเลี่ยงการประมวลผลข้อมูลย้อนหลังซ้ำ
4. **แมป channel preferences** - ซิงค์สถานะ opt-in/opt-out เพื่อรักษาความสอดคล้อง
5. **ตรวจสอบ export jobs** - Exports ขนาดใหญ่อาจใช้เวลา; ตั้งค่าการ polling สถานะ
6. **ทดสอบกับ non-production project** - ตรวจสอบ mappings ก่อนซิงค์ข้อมูล production

## ความปลอดภัย

- **การยืนยันตัวตนด้วย API Key** - Server-side keys พร้อมสิทธิ์แบบละเอียด
- **HTTPS เท่านั้น** - การสื่อสาร API ทั้งหมดเข้ารหัสผ่าน TLS 1.2+
- **Key Rotation** - รองรับ API keys ที่ใช้งานได้หลายตัวระหว่างการหมุนเวียน
- **การจัดเก็บที่เข้ารหัส** - ข้อมูลประจำตัว API เข้ารหัสที่เก็บใน Tajo
- **JWT Webhooks** - Webhook payloads ลงนามด้วย JWT สำหรับการตรวจสอบ

## แหล่งข้อมูลที่เกี่ยวข้อง

- [Braze Connector](https://tajo.io/th/docs/connectors/marketing/braze)
- [Customer.io Connector](https://tajo.io/th/docs/connectors/marketing/customerio)
- [Customer Sync Skill](https://tajo.io/th/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/th/docs/contact-management)
