Trình Kết Nối ActiveCampaign
Kết nối tài khoản ActiveCampaign của bạn với Brevo qua Tajo để migration contacts toàn diện, đồng bộ deal pipeline, ánh xạ automations và hợp nhất dữ liệu marketing trên cả hai nền tảng.
Tổng Quan
| Thuộc Tính | Giá Trị |
|---|---|
| Nền Tảng | ActiveCampaign |
| Danh Mục | Marketing |
| Độ Phức Tạp Thiết Lập | Trung Bình |
| Tích Hợp Chính Thức | Có |
| Dữ Liệu Đồng Bộ | Contacts, Deals, Automations, Sự Kiện |
| URL API Cơ Sở | https://{account}.api-us1.com/api/3 |
Tính Năng
- Migration contacts - Migrate contacts với custom fields, tags và list memberships
- Đồng bộ deal pipeline - Đồng bộ deal stages, values và owners để theo dõi doanh thu
- Ánh xạ automations - Ánh xạ ActiveCampaign automations sang workflow triggers Brevo
- Theo dõi sự kiện - Đồng bộ site tracking và custom events để phân đoạn hành vi
- Đồng bộ list và tag - Sao chép cấu trúc list và tag-based segments trong Brevo
- Tích hợp E-commerce - Đồng bộ Deep Data (orders, customers, carts) sang Brevo
- Đồng bộ custom objects - Ánh xạ custom objects ActiveCampaign sang thuộc tính Brevo
- Đồng bộ score - Chuyển lead và contact scores sang thuộc tính Brevo
Yêu Cầu
Trước khi bắt đầu, hãy đảm bảo bạn có:
- Tài khoản ActiveCampaign (Lite, Plus, Professional, hoặc Enterprise)
- API URL và API key từ Settings > Developer
- Tài khoản Brevo với quyền truy cập API
- Tài khoản Tajo
Xác Thực
Xác Thực API Key
ActiveCampaign sử dụng API key được truyền qua header hoặc query parameter.
curl "https://{account}.api-us1.com/api/3/contacts" \ -H "Api-Token: YOUR_API_KEY" \ -H "Content-Type: application/json"Tìm API URL và key trong ActiveCampaign Settings > Developer.
API URL
API URL của bạn là duy nhất cho tài khoản (ví dụ: https://yourcompany.api-us1.com). Luôn sử dụng URL này, không phải URL dashboard.
Cấu Hình
Thiết Lập Cơ Bản
connectors: activecampaign: enabled: true api_url: "https://yourcompany.api-us1.com" api_key: "${AC_API_KEY}"
# Tùy chọn đồng bộ dữ liệu sync: contacts: true deals: true automations: true events: true ecommerce: true
# Ánh xạ list sang Brevo list_mapping: "Main List": 50 "Newsletter": 51 "Customers": 52Ánh Xạ Trường
Ánh xạ trường ActiveCampaign sang thuộc tính liên hệ Brevo:
Ánh Xạ Mặc Định
| Parameter | Type | Description |
|---|---|---|
email required | string | Email liên hệ (định danh duy nhất) |
firstName optional | string | Ánh xạ sang thuộc tính FIRSTNAME |
lastName optional | string | Ánh xạ sang thuộc tính LASTNAME |
phone optional | string | Ánh xạ sang thuộc tính SMS |
tags optional | array | Tags liên hệ để phân đoạn |
score optional | integer | Điểm tương tác của liên hệ |
deals optional | array | Bản ghi deal liên quan |
fieldValues optional | array | Giá trị custom field |
Ánh Xạ Custom Field
field_mapping: # Trường tiêu chuẩn email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS
# Trường tương tác score: LEAD_SCORE rating: ENGAGEMENT_RATING
# Trường deal deals.value: DEAL_VALUE deals.stage: DEAL_STAGE deals.owner: DEAL_OWNER
# Trường tùy chỉnh fieldValues.company: COMPANY_NAME fieldValues.industry: INDUSTRY fieldValues.plan_tier: PLAN_TIERAPI Endpoints
Contacts
| Phương Thức | Endpoint | Mô Tả |
|---|---|---|
GET | /api/3/contacts | Liệt kê tất cả contacts |
POST | /api/3/contacts | Tạo contact |
PUT | /api/3/contacts/{id} | Cập nhật contact |
GET | /api/3/contacts/{id} | Lấy contact |
POST | /api/3/contact/sync | Sync contact (tạo hoặc cập nhật) |
POST | /api/3/import/bulk_import | Import contacts theo lô |
Deals
| Phương Thức | Endpoint | Mô Tả |
|---|---|---|
GET | /api/3/deals | Liệt kê tất cả deals |
POST | /api/3/deals | Tạo deal |
PUT | /api/3/deals/{id} | Cập nhật deal |
GET | /api/3/dealStages | Liệt kê tất cả deal stages |
GET | /api/3/dealPipelines | Liệt kê tất cả pipelines |
Automations
| Phương Thức | Endpoint | Mô Tả |
|---|---|---|
GET | /api/3/automations | Liệt kê automations |
GET | /api/3/automations/{id} | Lấy automation |
POST | /api/3/contactAutomations | Thêm contact vào automation |
E-commerce (Deep Data)
| Phương Thức | Endpoint | Mô Tả |
|---|---|---|
POST | /api/3/ecomOrders | Tạo order |
GET | /api/3/ecomOrders | Liệt kê orders |
POST | /api/3/ecomCustomers | Tạo customer |
GET | /api/3/ecomCustomers | Liệt kê customers |
Theo Dõi Sự Kiện
| Phương Thức | Endpoint | Mô Tả |
|---|---|---|
POST | /api/3/tracking/event | Theo dõi custom event |
GET | /api/3/eventTrackingEvents | Liệt kê tên sự kiện |
POST | /api/3/eventTrackingEvents | Tạo tên sự kiện |
Sự Kiện
Sự Kiện Liên Hệ
| Sự Kiện | Kích Hoạt | Trường Hợp Sử Dụng |
|---|---|---|
contact_add | Liên hệ mới được tạo | Luồng chào mừng |
contact_update | Dữ liệu liên hệ thay đổi | Đồng bộ thuộc tính |
contact_tag_added | Tag được gán | Cập nhật segment |
contact_tag_removed | Tag bị gỡ | Dọn dẹp segment |
Sự Kiện Deal
| Sự Kiện | Kích Hoạt | Trường Hợp Sử Dụng |
|---|---|---|
deal_add | Deal mới được tạo | Thông báo bán hàng |
deal_update | Deal stage thay đổi | Automation pipeline |
deal_tasktype_add | Task được thêm vào deal | Theo dõi hoạt động |
Sự Kiện Automation
| Sự Kiện | Kích Hoạt | Trường Hợp Sử Dụng |
|---|---|---|
automation_contact_add | Contact vào automation | Theo dõi luồng |
automation_contact_complete | Contact hoàn thành automation | Kích hoạt bước tiếp theo |
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});
// Kết nối ActiveCampaignawait tajo.connectors.connect('activecampaign', { apiUrl: process.env.AC_API_URL, apiKey: process.env.AC_API_KEY});Migrate Contacts Sang Brevo
// Migration contacts đầy đủ với custom fields và tagsawait tajo.connectors.sync('activecampaign', { type: 'full', resources: ['contacts', 'deals', 'events'], options: { includeTags: true, includeCustomFields: true, includeScores: true, includeListMemberships: true }});
// Kiểm tra trạng thái đồng bộconst status = await tajo.connectors.status('activecampaign');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsMigrated: 28000,// dealsSynced: 4500,// eventsSynced: 120000// }Theo Dõi Custom Events
// Forward ActiveCampaign events sang Brevoawait tajo.activecampaign.trackEvent({ event: 'product_demo_requested', eventData: { product: 'Enterprise Plan', source: 'website' }});Giới Hạn Tốc Độ
Giới hạn tốc độ API ActiveCampaign:
| Gói | Giới Hạn Tốc Độ | Chi Tiết |
|---|---|---|
| Lite | 5 yêu cầu/giây | Mỗi tài khoản |
| Plus | 10 yêu cầu/giây | Mỗi tài khoản |
| Professional | 10 yêu cầu/giây | Mỗi tài khoản |
| Enterprise | 20 yêu cầu/giây | Mỗi tài khoản |
Giới hạn bổ sung:
- Bulk import: 250 contacts mỗi batch
- Tần suất bulk import: 1 lần import cùng lúc
- Event tracking: 2 yêu cầu/giây
- Giới hạn hàng ngày: Không có giới hạn hàng ngày rõ ràng (chỉ dựa trên tốc độ)
Xử Lý Giới Hạn Tốc Độ
ActiveCampaign trả về 429 Too Many Requests khi vượt giới hạn. Triển khai retry logic với giá trị header Retry-After.
Khắc Phục Sự Cố
Sự Cố Phổ Biến
| Sự Cố | Nguyên Nhân | Giải Pháp |
|---|---|---|
| 403 Forbidden | API key hoặc URL không hợp lệ | Xác minh API URL và key trong AC Settings > Developer |
| Contact không đồng bộ | Xử lý email trùng lặp | Sử dụng endpoint /contact/sync để upsert |
| Custom field trống | Field ID không khớp | Ánh xạ fields theo ID, không phải label (labels có thể thay đổi) |
| Webhook không nhận | Webhook chưa cấu hình | Thiết lập webhooks trong AC Settings > Developer > Webhooks |
| Deal không tạo được | Thiếu trường bắt buộc | Đảm bảo pipeline, stage và contact được cung cấp |
Chế Độ Debug
Bật verbose logging:
connectors: activecampaign: debug: true log_level: verbose log_webhooks: trueKiểm Tra Kết Nối
tajo connectors test activecampaign# ✓ API connection successful# ✓ Contacts readable# ✓ Deals readable# ✓ Automations accessible# ✓ Event tracking enabledThực Hành Tốt Nhất
- Dùng contact sync endpoint - Sử dụng
/contact/synccho upsert thay vì create/update riêng - Ánh xạ fields theo ID - Custom field IDs ổn định; labels có thể thay đổi
- Bảo toàn list memberships - Migrate list assignments cùng với contact data
- Đồng bộ deal pipelines - Ánh xạ pipeline stages để báo cáo CRM nhất quán
- Triển khai event tracking - Sử dụng site tracking để lấy dữ liệu hành vi trong Brevo
- Batch imports - Sử dụng bulk import cho datasets lớn hơn 1.000 contacts
Bảo Mật
- Xác thực API Key - Truy cập dựa trên token qua header
Api-Token - Xác minh Webhook - Xác thực nguồn gốc webhook qua IP allowlisting
- Mã hóa TLS - Tất cả giao tiếp API được mã hóa qua HTTPS
- Truy cập cấp tài khoản - API key cấp quyền truy cập toàn tài khoản; sử dụng cẩn thận
- Giới hạn IP - Có sẵn cho gói Enterprise