ActiveCampaign コネクター
ActiveCampaign アカウントを Tajo 経由で Brevo に接続し、包括的なコンタクト移行、ディールパイプライン同期、オートメーションマッピング、および両プラットフォーム間の統合マーケティングデータを実現します。
概要
| 項目 | 値 |
|---|---|
| プラットフォーム | ActiveCampaign |
| カテゴリー | マーケティング |
| セットアップ難易度 | 中程度 |
| 公式統合 | あり |
| 同期データ | コンタクト、ディール、オートメーション、イベント |
| API ベース URL | https://{account}.api-us1.com/api/3 |
機能
- コンタクト移行 - カスタムフィールド、タグ、リストメンバーシップを含むコンタクトを移行
- ディールパイプライン同期 - 売上追跡のためディールステージ、金額、担当者を同期
- オートメーションマッピング - ActiveCampaign のオートメーションを Brevo ワークフロートリガーにマッピング
- イベントトラッキング - 行動セグメンテーションのためサイトトラッキングとカスタムイベントを同期
- リストとタグの同期 - リスト構造とタグベースセグメントを Brevo に複製
- e コマース統合 - Deep Data (注文、顧客、カート) を Brevo に同期
- カスタムオブジェクト同期 - ActiveCampaign カスタムオブジェクトを Brevo 属性にマッピング
- スコア同期 - リードスコアとコンタクトスコアを Brevo 属性に転送
前提条件
開始する前に、以下をご用意ください。
- ActiveCampaign アカウント (Lite、Plus、Professional、Enterprise のいずれか)
- Settings > Developer から取得した API URL と API キー
- API アクセス付きの Brevo アカウント
- Tajo アカウント
認証
API キー認証
ActiveCampaign はヘッダーまたはクエリパラメーターとして API キーを渡します。
curl "https://{account}.api-us1.com/api/3/contacts" \ -H "Api-Token: YOUR_API_KEY" \ -H "Content-Type: application/json"API URL と API キーは ActiveCampaign Settings > Developer で確認できます。
API URL
API URL はアカウント固有です (例: https://yourcompany.api-us1.com)。ダッシュボード URL ではなく、必ずこの URL を使用してください。
設定
基本セットアップ
connectors: activecampaign: enabled: true api_url: "https://yourcompany.api-us1.com" api_key: "${AC_API_KEY}"
# Data sync options sync: contacts: true deals: true automations: true events: true ecommerce: true
# List mapping to Brevo list_mapping: "Main List": 50 "Newsletter": 51 "Customers": 52フィールドマッピング
ActiveCampaign のフィールドを Brevo コンタクト属性にマッピングします。
既定のマッピング
| Parameter | Type | Description |
|---|---|---|
email required | string | コンタクトのメールアドレス (一意の識別子) |
firstName optional | string | FIRSTNAME 属性にマッピング |
lastName optional | string | LASTNAME 属性にマッピング |
phone optional | string | SMS 属性にマッピング |
tags optional | array | セグメンテーション用のコンタクトタグ |
score optional | integer | コンタクトエンゲージメントスコア |
deals optional | array | 関連付けられたディールレコード |
fieldValues optional | array | カスタムフィールドの値 |
カスタムフィールドマッピング
field_mapping: # Standard fields email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS
# Engagement fields score: LEAD_SCORE rating: ENGAGEMENT_RATING
# Deal fields deals.value: DEAL_VALUE deals.stage: DEAL_STAGE deals.owner: DEAL_OWNER
# Custom fields fieldValues.company: COMPANY_NAME fieldValues.industry: INDUSTRY fieldValues.plan_tier: PLAN_TIERAPI エンドポイント
コンタクト
| メソッド | エンドポイント | 説明 |
|---|---|---|
GET | /api/3/contacts | すべてのコンタクト一覧 |
POST | /api/3/contacts | コンタクトを作成 |
PUT | /api/3/contacts/{id} | コンタクトを更新 |
GET | /api/3/contacts/{id} | コンタクト詳細を取得 |
POST | /api/3/contact/sync | コンタクトを同期 (作成または更新) |
POST | /api/3/import/bulk_import | コンタクトを一括インポート |
ディール
| メソッド | エンドポイント | 説明 |
|---|---|---|
GET | /api/3/deals | すべてのディール一覧 |
POST | /api/3/deals | ディールを作成 |
PUT | /api/3/deals/{id} | ディールを更新 |
GET | /api/3/dealStages | すべてのディールステージ一覧 |
GET | /api/3/dealPipelines | すべてのパイプライン一覧 |
オートメーション
| メソッド | エンドポイント | 説明 |
|---|---|---|
GET | /api/3/automations | オートメーション一覧 |
GET | /api/3/automations/{id} | オートメーション詳細を取得 |
POST | /api/3/contactAutomations | コンタクトをオートメーションに追加 |
e コマース (Deep Data)
| メソッド | エンドポイント | 説明 |
|---|---|---|
POST | /api/3/ecomOrders | 注文を作成 |
GET | /api/3/ecomOrders | 注文一覧 |
POST | /api/3/ecomCustomers | 顧客を作成 |
GET | /api/3/ecomCustomers | 顧客一覧 |
イベントトラッキング
| メソッド | エンドポイント | 説明 |
|---|---|---|
POST | /api/3/tracking/event | カスタムイベントを追跡 |
GET | /api/3/eventTrackingEvents | すべてのイベント名一覧 |
POST | /api/3/eventTrackingEvents | イベント名を作成 |
イベント
コンタクトイベント
| イベント | トリガー | 用途 |
|---|---|---|
contact_add | 新規コンタクト作成 | ウェルカムフロー |
contact_update | コンタクトデータ変更 | 属性同期 |
contact_tag_added | タグ付与 | セグメント更新 |
contact_tag_removed | タグ削除 | セグメントクリーンアップ |
ディールイベント
| イベント | トリガー | 用途 |
|---|---|---|
deal_add | 新規ディール作成 | 営業通知 |
deal_update | ディールステージ変更 | パイプラインオートメーション |
deal_tasktype_add | ディールにタスク追加 | 活動追跡 |
オートメーションイベント
| イベント | トリガー | 用途 |
|---|---|---|
automation_contact_add | コンタクトがオートメーション開始 | フロー追跡 |
automation_contact_complete | コンタクトがオートメーション完了 | 次ステップトリガー |
コード例
コネクターの初期化
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect ActiveCampaignawait tajo.connectors.connect('activecampaign', { apiUrl: process.env.AC_API_URL, apiKey: process.env.AC_API_KEY});コンタクトを Brevo に移行
// Full contact migration with custom fields and tagsawait tajo.connectors.sync('activecampaign', { type: 'full', resources: ['contacts', 'deals', 'events'], options: { includeTags: true, includeCustomFields: true, includeScores: true, includeListMemberships: true }});
// Check sync statusconst status = await tajo.connectors.status('activecampaign');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsMigrated: 28000,// dealsSynced: 4500,// eventsSynced: 120000// }カスタムイベントの追跡
// Forward ActiveCampaign events to Brevoawait tajo.activecampaign.trackEvent({ event: 'product_demo_requested', eventData: { product: 'Enterprise Plan', source: 'website' }});レート制限
ActiveCampaign API レート制限。
| プラン | レート制限 | 詳細 |
|---|---|---|
| Lite | 5 リクエスト/秒 | アカウント単位 |
| Plus | 10 リクエスト/秒 | アカウント単位 |
| Professional | 10 リクエスト/秒 | アカウント単位 |
| Enterprise | 20 リクエスト/秒 | アカウント単位 |
追加の制限。
- 一括インポート: 1 バッチあたり 250 コンタクト
- 一括インポート頻度: 同時実行は 1 件のみ
- イベントトラッキング: 2 リクエスト/秒
- 日次制限: 明示的な日次制限なし (レートベースのみ)
レート制限のハンドリング
制限を超過すると ActiveCampaign は 429 Too Many Requests を返します。Retry-After ヘッダーの値を使ったリトライロジックを実装してください。
トラブルシューティング
よくある問題
| 問題 | 原因 | 解決策 |
|---|---|---|
| 403 Forbidden | 無効な API キーまたは URL | AC Settings > Developer で API URL と API キーを確認 |
| コンタクトが同期されない | 重複メールの処理 | アップサート動作のため /contact/sync エンドポイントを使用 |
| カスタムフィールドが空 | フィールド ID の不一致 | ラベルではなく ID でフィールドをマッピング (ラベルは変更される可能性あり) |
| ウェブフックが受信されない | ウェブフック未設定 | AC Settings > Developer > Webhooks でウェブフックを設定 |
| ディールが作成されない | 必須フィールド不足 | パイプライン、ステージ、コンタクトが指定されていることを確認 |
デバッグモード
詳細ログを有効化します。
connectors: activecampaign: debug: true log_level: verbose log_webhooks: true接続テスト
tajo connectors test activecampaign# ✓ API connection successful# ✓ Contacts readable# ✓ Deals readable# ✓ Automations accessible# ✓ Event tracking enabledベストプラクティス
- コンタクト同期エンドポイントを使用 - 個別の作成/更新ではなくアップサート操作に
/contact/syncを使用 - フィールドは ID でマッピング - カスタムフィールド ID は安定しています (ラベルは変更される可能性あり)
- リストメンバーシップを保持 - コンタクトデータと一緒にリスト所属を移行
- ディールパイプラインを同期 - 一貫した CRM レポート用にパイプラインステージをマッピング
- イベントトラッキングを実装 - Brevo での行動データ取得にサイトトラッキングを活用
- 一括インポートを活用 - 1,000 件を超えるデータセットには一括インポートを使用
セキュリティ
- API キー認証 -
Api-Tokenヘッダー経由のトークンベースアクセス - ウェブフック検証 - ウェブフック送信元 IP レンジを検証
- TLS 暗号化 - すべての API 通信を HTTPS で暗号化
- アカウントレベルのアクセス - API キーはアカウント全体へのアクセスを提供 (取り扱いに注意)
- IP 制限 - Enterprise プランで利用可能