---
title: "Meta Ads Connector"
description: "คู่มือการผสานรวม Meta Ads ฉบับสมบูรณ์สำหรับการซิงค์ Facebook และ Instagram ad audiences conversions และข้อมูลแคมเปญกับ Brevo ผ่าน Tajo"
url: https://tajo.io/th/docs/connectors/marketing/meta-ads/
markdown: https://tajo.io/th/docs/connectors/marketing/meta-ads.md
lang: th-TH
robots: noindex
---

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

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

# Meta Ads Connector

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

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

เชื่อมต่อ Meta Ads (Facebook & Instagram) กับ Brevo ผ่าน Tajo เพื่อซิงค์ Custom Audiences นำเข้าเหตุการณ์ conversion ผ่าน Conversions API และเชื่อม paid social advertising กับ lifecycle marketing automation

## ภาพรวม

| คุณสมบัติ | ค่า |
| --- | --- |
| **แพลตฟอร์ม** | Meta Ads (Facebook, Instagram, Messenger, WhatsApp) |
| **หมวดหมู่** | การตลาด |
| **ความซับซ้อนในการตั้งค่า** | สูง |
| **การผสานรวมอย่างเป็นทางการ** | ไม่ |
| **ข้อมูลที่ซิงค์** | Audiences Conversions แคมเปญ Leads |
| **Skills ที่มี** | 8 |
| **เวอร์ชัน API** | v25.0 (Graph API) |

## ฟีเจอร์

- **การซิงค์ Custom Audience** - อัปโหลดรายชื่อผู้ติดต่อ Brevo เป็น Meta Custom Audiences
- **Conversions API (CAPI)** - ส่งเหตุการณ์ conversion ฝั่ง server สำหรับการระบุแหล่งที่มาที่แม่นยำ
- **การซิงค์ Lead form** - นำเข้า Facebook Lead Ads submissions โดยตรงไปยัง Brevo contacts
- **Campaign insights** - ดึง metrics ประสิทธิภาพโฆษณาไปยัง Tajo dashboards
- **Lookalike audiences** - สร้าง Lookalike Audiences จาก Brevo segments ที่ซิงค์
- **การซิงค์แคตาล็อก** - ซิงค์แคตาล็อกสินค้าสำหรับ dynamic product ads
- **หลายแพลตฟอร์ม** - การผสานรวมเดียวครอบคลุมโฆษณา Facebook, Instagram, Messenger และ WhatsApp

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

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

1. บัญชี Meta Business Manager
2. Facebook App ที่มีการเข้าถึง Marketing API
3. System User ที่มีสิทธิ์ที่เหมาะสม
4. Access Token พร้อมสิทธิ์ `ads_management` และ `ads_read`
5. บัญชี Brevo ที่มีสิทธิ์เข้าถึง API
6. บัญชี Tajo ที่มี API credentials

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

### System User Access Token

Meta แนะนำให้ใช้ System User tokens สำหรับการผสานรวม server-to-server tokens เหล่านี้ไม่หมดอายุ

```bash
# Required permissions for System User
ads_management
ads_read
business_management
leads_retrieval
pages_read_engagement
catalog_management
```

### การยืนยันตัวตนระดับ App

```bash
curl -G "https://graph.facebook.com/v25.0/act_AD_ACCOUNT_ID/campaigns" \
  -d "access_token=SYSTEM_USER_ACCESS_TOKEN" \
  -d "fields=name,status,objective"
```

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

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

```yaml
connectors:
  meta_ads:
    enabled: true
    app_id: "your-facebook-app-id"
    app_secret: "your-facebook-app-secret"
    access_token: "your-system-user-access-token"
    ad_account_id: "act_123456789"
    business_id: "987654321"
    pixel_id: "111222333444"

    # Data sync options
    sync:
      custom_audiences: true
      conversions_api: true
      lead_forms: true
      campaign_insights: true

    # API version
    api_version: "v25.0"
```

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

ซิงค์รายการ Brevo ไปยัง Meta Custom Audiences:

```yaml
custom_audiences:
  enabled: true
  lists:
    - brevo_list_id: 5
      audience_name: "All Customers"
      subtype: "CUSTOM"
    - brevo_list_id: 6
      audience_name: "High LTV Customers"
      subtype: "CUSTOM"
    - brevo_list_id: 7
      audience_name: "Recent Purchasers"
      subtype: "CUSTOM"

  # Matching fields
  match_keys:
    - EMAIL
    - PHONE
    - FN     # First name
    - LN     # Last name
    - CT     # City
    - ST     # State
    - ZIP
    - COUNTRY

  schedule: "daily"
  sync_mode: "mirror"
```

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

```yaml
conversions_api:
  enabled: true
  pixel_id: "111222333444"
  test_event_code: ""  # Set for testing, clear for production

  events:
    - brevo_event: "order_completed"
      meta_event: "Purchase"
      value_field: "revenue"
      currency_field: "currency"
    - brevo_event: "cart_updated"
      meta_event: "AddToCart"
    - brevo_event: "customer_created"
      meta_event: "Lead"
    - brevo_event: "page_viewed"
      meta_event: "ViewContent"
```

## API Endpoints

| เมธอด | Endpoint | คำอธิบาย |
| --- | --- | --- |
| `POST` | `/v25.0/act_{id}/customaudiences` | สร้าง Custom Audience |
| `POST` | `/v25.0/{audience_id}/users` | เพิ่มผู้ใช้ใน Custom Audience |
| `DELETE` | `/v25.0/{audience_id}/users` | ลบผู้ใช้ออกจาก Custom Audience |
| `POST` | `/v25.0/{pixel_id}/events` | ส่งเหตุการณ์ Conversions API |
| `GET` | `/v25.0/act_{id}/campaigns` | แสดงรายการแคมเปญ |
| `GET` | `/v25.0/act_{id}/insights` | ดึง campaign insights |
| `GET` | `/v25.0/{form_id}/leads` | ดึงข้อมูลจาก lead form |
| `POST` | `/v25.0/act_{id}/adcreatives` | สร้าง ad creatives |
| `GET` | `/v25.0/{catalog_id}/products` | แสดงรายการสินค้าในแคตาล็อก |

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

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

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Meta Ads account
await tajo.connectors.connect('meta-ads', {
  appId: process.env.META_APP_ID,
  appSecret: process.env.META_APP_SECRET,
  accessToken: process.env.META_ACCESS_TOKEN,
  adAccountId: 'act_123456789',
  pixelId: '111222333444'
});
```

### ส่งเหตุการณ์ Conversions API

```javascript
// Send a purchase event via Conversions API
const response = await fetch(
  `https://graph.facebook.com/v25.0/${PIXEL_ID}/events`,
  {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      data: [{
        event_name: 'Purchase',
        event_time: Math.floor(Date.now() / 1000),
        action_source: 'website',
        user_data: {
          em: [hashSHA256('jane@example.com')],
          ph: [hashSHA256('+15551234567')],
          fn: [hashSHA256('jane')],
          ln: [hashSHA256('kim')],
          client_ip_address: '192.168.1.1',
          client_user_agent: 'Mozilla/5.0...',
          fbc: 'fb.1.1234567890.AbCdEfG',  // Click ID
          fbp: 'fb.1.1234567890.987654321'  // Browser ID
        },
        custom_data: {
          value: 89.99,
          currency: 'USD',
          content_ids: ['SKU-001'],
          content_type: 'product'
        }
      }],
      access_token: process.env.META_ACCESS_TOKEN
    })
  }
);
```

### ซิงค์ Custom Audience จากรายการ Brevo

```javascript
// Upload a Brevo contact list as a Meta Custom Audience
await tajo.connectors.syncAudience('meta-ads', {
  brevoListId: 5,
  audienceName: 'High Value Customers',
  matchKeys: ['EMAIL', 'PHONE', 'FN', 'LN'],
  syncMode: 'mirror'
});
```

### ดึง Campaign Insights

```javascript
// Get campaign performance metrics
const insights = await tajo.connectors.query('meta-ads', {
  resource: 'campaigns',
  fields: ['campaign_name', 'impressions', 'clicks', 'spend',
           'actions', 'cost_per_action_type'],
  dateRange: { since: '2024-01-01', until: '2024-01-31' },
  level: 'campaign'
});
```

## ขีดจำกัดอัตรา

| ทรัพยากร | ขีดจำกัด | รายละเอียด |
| --- | --- | --- |
| **Marketing API** | ตามระดับ | ขึ้นอยู่กับระดับการเข้าถึง app และค่าใช้จ่าย |
| **Custom Audience uploads** | 700 คำขอ/ชั่วโมง | ต่อ ad account |
| **Conversions API** | 2,000 เหตุการณ์/วินาที | ต่อ pixel |
| **Insights API** | 200 calls/ชั่วโมง | ต่อ ad account |
| **Lead retrieval** | 200 calls/ชั่วโมง | ต่อ page |
| **Batch requests** | 50 คำขอ/batch | ต่อ batch call |

ต้องมีการยืนยัน Business

การเข้าถึง Marketing API แบบเต็มรูปแบบต้องการการยืนยัน business ใน Meta Business Manager Apps ที่ไม่ได้รับการยืนยันถูกจำกัดให้อยู่ใน development mode พร้อม rate limits ที่จำกัด

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

| ปัญหา | สาเหตุ | วิธีแก้ |
| --- | --- | --- |
| `OAuthException` | Token หมดอายุหรือไม่ถูกต้อง | สร้าง System User access token ใหม่ |
| Custom Audience match rate ต่ำ | คุณภาพข้อมูลไม่ดี | Hash PII ทั้งหมดด้วย SHA-256 รวม match keys หลายตัว |
| Conversions ไม่ถูกระบุแหล่งที่มา | พารามิเตอร์ `fbc`/`fbp` หายไป | ส่ง Facebook Click ID และ Browser ID จาก cookies |
| `RATE_LIMIT_REACHED` | การเรียก API มากเกินไป | ใช้ exponential backoff ตรวจสอบระดับการเข้าถึง API |
| Lead forms ไม่ซิงค์ | ไม่มีสิทธิ์ `leads_retrieval` | เพิ่มสิทธิ์ให้ System User |
| เหตุการณ์ในโหมดทดสอบ | ยังตั้งค่า `test_event_code` อยู่ | ลบ test event code สำหรับ production |

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

1. **ใช้ System User tokens** - System Users ให้ tokens ที่เสถียรและไม่หมดอายุสำหรับการผสานรวม server
2. **Hash PII ทั้งหมด** - Hash SHA-256 ข้อมูลส่วนบุคคลทั้งหมดก่อนส่งไปยัง Meta
3. **ส่งทั้ง CAPI และ Pixel** - ใช้ทั้ง Conversions API และ Meta Pixel สำหรับการติดตามซ้ำซ้อนพร้อม deduplication
4. **รวม event IDs** - ตั้งค่า `event_id` ทั้งบน CAPI และ Pixel events เพื่อเปิดใช้งาน deduplication
5. **ส่ง `fbc` และ `fbp`** - รวม Facebook Click ID และ Browser ID เพื่อการระบุแหล่งที่มาของ conversion สูงสุด
6. **ยืนยัน business ของคุณ** - ทำการยืนยัน Business ให้สมบูรณ์เพื่อการเข้าถึง API แบบเต็มและ rate limits สูงกว่า
7. **ใช้ `test_event_code`** - ทดสอบเหตุการณ์ Conversions API ใน Events Manager ก่อนเผยแพร่

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

- **System User tokens** - tokens การยืนยันตัวตนระดับ business ที่ไม่ใช่บุคคล
- **SHA-256 hashing** - PII ทั้งหมด hash ก่อนส่งไปยัง Meta servers
- **App Secret Proof** - ชั้นความปลอดภัยการยืนยันตัวตนเพิ่มเติมแบบเสริม
- **Business scoping** - สิทธิ์กำหนดขอบเขตตาม ad accounts และ pages เฉพาะ
- **Meta compliance** - อยู่ภายใต้ Meta Platform Terms และนโยบายโฆษณา
- **Data Processing Terms** - Meta Data Processing Terms ใช้สำหรับข้อมูล EU

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

- [Google Ads Connector](https://tajo.io/th/docs/connectors/marketing/google-ads)
- [Klaviyo Connector](https://tajo.io/th/docs/connectors/marketing/klaviyo)
- [Brevo Connector](https://tajo.io/th/docs/connectors/marketing/brevo)
- [Customer Sync Skill](https://tajo.io/th/docs/skills/data-sync/customer-sync)
