---
title: "Zapier コネクタ"
description: "Zap、Webhook、Zapier Platform CLI を使用して Tajo を介して何千ものアプリを Brevo に接続するための完全な Zapier 統合ガイド。"
url: https://tajo.io/jp/docs/connectors/custom/zapier/
markdown: https://tajo.io/jp/docs/connectors/custom/zapier.md
lang: ja-JP
robots: noindex
---

先行利用を申し込む

お名前と会社のメールアドレスを入力してください。Tajoへのアクセス申請を確認するためのリンクをメールでお送りします。

# Zapier コネクタ

コネクターのステータス: 予定 まだ構築されていません。Tajo は現在このコネクターを実行していません。

| 送信元フィールド | 送信先フィールド | サンプル値 |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Tajo を介して Zapier を Brevo に接続し、何千ものサードパーティアプリケーションをマーケティング自動化ワークフローにつなぎ、ノーコードのデータフローと技術スタック全体にわたるイベント駆動型トリガーを実現します。

## 概要

| プロパティ | 値 |
| --- | --- |
| **プラットフォーム** | Zapier |
| **カテゴリ** | 自動化(カスタム) |
| **セットアップの複雑さ** | 簡単 |
| **公式統合** | いいえ |
| **同期データ** | イベント、連絡先、ワークフロー、トリガー |
| **認証方式** | API Key / OAuth 2.0 |

## 機能

- **マルチアプリオーケストレーション** - Zap ワークフロー経由で 6,000 以上のアプリを Brevo に接続
- **Webhook トリガー** - Zapier に接続された任意のアプリからリアルタイムイベントを受信
- **連絡先同期** - Zapier に接続されたプラットフォームと Brevo 間で連絡先をプッシュおよびプル
- **イベント転送** - Tajo を介してアプリケーションイベントを Brevo 自動化にルーティング
- **マルチステップ Zap** - フィルタ、フォーマッタ、遅延を使用した複雑なワークフローを構築
- **カスタム Zapier アプリ** - Zapier Platform CLI を使用してカスタマイズされた統合を構築

## 前提条件

開始する前に、以下を準備してください。

1. Zapier アカウント(無料ティア以上)
2. API アクセス可能な Brevo アカウント
3. コネクタ権限を持つ Tajo アカウント
4. Node.js 18 以上がインストール済み(CLI ベースの統合開発用)

## 認証

### API キー認証

```bash
# Zapier Platform の資格情報を設定
export ZAPIER_DEPLOY_KEY=your_deploy_key
export TAJO_API_KEY=your_tajo_api_key
export BREVO_API_KEY=your_brevo_api_key
```

### OAuth 2.0

Zapier は Zap 内でサードパーティサービスを接続するために OAuth 2.0 をサポートしています。

```javascript
const authentication = {
  type: 'oauth2',
  oauth2Config: {
    authorizeUrl: {
      url: 'https://your-app.com/oauth/authorize',
      params: {
        client_id: '{{process.env.CLIENT_ID}}',
        state: '{{bundle.inputData.state}}',
        redirect_uri: '{{bundle.inputData.redirect_uri}}',
        response_type: 'code'
      }
    },
    getAccessToken: {
      url: 'https://your-app.com/oauth/token',
      method: 'POST',
      body: {
        code: '{{bundle.inputData.code}}',
        client_id: '{{process.env.CLIENT_ID}}',
        client_secret: '{{process.env.CLIENT_SECRET}}',
        grant_type: 'authorization_code',
        redirect_uri: '{{bundle.inputData.redirect_uri}}'
      }
    },
    refreshAccessToken: {
      url: 'https://your-app.com/oauth/token',
      method: 'POST',
      body: {
        refresh_token: '{{bundle.authData.refresh_token}}',
        client_id: '{{process.env.CLIENT_ID}}',
        client_secret: '{{process.env.CLIENT_SECRET}}',
        grant_type: 'refresh_token'
      }
    }
  }
};
```

## 設定

### 基本セットアップ

```yaml
connectors:
  zapier:
    enabled: true
    webhook_url: "https://hooks.zapier.com/hooks/catch/YOUR_HOOK_ID"

    sync:
      contacts: true
      events: true
      workflows: true

    triggers:
      - contact_created
      - order_placed
      - form_submitted

    mapping:
      email: email
      first_name: FIRSTNAME
      last_name: LASTNAME
```

### Webhook 設定

Tajo を設定して Zapier Webhook にイベントを送信します。

```yaml
webhooks:
  zapier:
    url: "https://hooks.zapier.com/hooks/catch/YOUR_HOOK_ID"
    events:
      - contact.created
      - contact.updated
      - order.completed
      - cart.abandoned
    retry:
      max_attempts: 3
      backoff: exponential
```

## API エンドポイント

| エンドポイント | メソッド | 説明 |
| --- | --- | --- |
| `https://hooks.zapier.com/hooks/catch/{id}` | POST | Webhook キャッチフック |
| `https://nla.zapier.com/api/v1/dynamic/exposed/` | GET | 公開アクションを一覧取得 |
| `https://nla.zapier.com/api/v1/dynamic/exposed/{action_id}/execute/` | POST | アクションを実行 |
| `https://zapier.com/api/platform/cli/apps` | GET | 登録済みアプリを一覧取得 |
| `https://zapier.com/api/platform/cli/push` | POST | 統合をデプロイ |

## コード例

### コネクタの初期化

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

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

// Webhook 経由で Zapier を接続
await tajo.connectors.connect('zapier', {
  webhookUrl: process.env.ZAPIER_WEBHOOK_URL,
  events: ['contact.created', 'order.completed']
});
```

### Platform CLI でカスタム Zapier 統合を構築

```javascript
const { version: platformVersion } = require('zapier-platform-core');

const App = {
  version: require('./package.json').version,
  platformVersion,
  authentication,
  triggers: {
    new_contact: {
      key: 'new_contact',
      noun: 'Contact',
      display: {
        label: 'New Contact in Tajo',
        description: 'Triggers when a new contact is synced.'
      },
      operation: {
        perform: async (z, bundle) => {
          const response = await z.request({
            url: 'https://api.example.com/v1/contacts',
            params: { since: bundle.meta.lastPoll }
          });
          return response.data;
        }
      }
    }
  },
  creates: {
    sync_contact: {
      key: 'sync_contact',
      noun: 'Contact',
      display: {
        label: 'Sync Contact to Brevo',
        description: 'Syncs a contact to Brevo via Tajo.'
      },
      operation: {
        inputFields: [
          { key: 'email', required: true, type: 'string' },
          { key: 'firstName', type: 'string' },
          { key: 'lastName', type: 'string' }
        ],
        perform: async (z, bundle) => {
          const response = await z.request({
            method: 'POST',
            url: 'https://api.example.com/v1/contacts/sync',
            body: bundle.inputData
          });
          return response.data;
        }
      }
    }
  }
};

module.exports = App;
```

Caution

上記の `example.com` のアドレスは、Tajo のエンドポイントが利用可能になるまでのプレースホルダーです。

### 受信 Zapier Webhook の処理

```javascript
app.post('/webhooks/zapier', async (req, res) => {
  const { event, data } = req.body;

  await tajo.connectors.handleWebhook('zapier', {
    topic: event,
    payload: data
  });

  res.status(200).json({ status: 'received' });
});
```

## レート制限

| プラン | リクエスト | タスク/月 | ポーリング間隔 |
| --- | --- | --- | --- |
| Free | 100/日 | 100 | 15 分 |
| Starter | 1,000/日 | 750 | 15 分 |
| Professional | 5,000/日 | 2,000 | 2 分 |
| Team | 10,000/日 | 50,000 | 1 分 |

Zapier タスク制限

各 Zap ステップがタスクとしてカウントされます。マルチステップ Zap は実行ごとに複数のタスクを消費します。超過を避けるため Zapier ダッシュボードでタスク使用量を監視してください。

## トラブルシューティング

| 問題 | 原因 | 解決策 |
| --- | --- | --- |
| Webhook が発火しない | Zap がオフになっている | Zapier ダッシュボードで Zap ステータスを確認 |
| データがマッピングされない | フィールド名の不一致 | アプリ間でフィールドキーが一致するか確認 |
| 重複した連絡先 | 重複排除が未設定 | Tajo でメールベースの重複排除を有効化 |
| Zap エラー | API レート制限に達した | 遅延ステップを追加するか Zapier プランをアップグレード |
| 認証の期限切れ | トークンが更新されていない | Zapier で接続を再認証 |

### デバッグモード

```yaml
connectors:
  zapier:
    debug: true
    log_level: verbose
    log_webhooks: true
```

## ベストプラクティス

1. **ポーリングよりも Webhook を使用する** - Webhook はポーリング遅延に対してリアルタイムデータフローを提供
2. **エラー処理を追加する** - Zapier Paths を使用して成功/失敗シナリオを処理
3. **データを重複排除する** - 重複レコードを防ぐため重複排除キーを有効化
4. **タスク使用量を監視する** - タスク制限に達する前にアラートを設定
5. **フィルタを賢く使用する** - 不要なタスク消費を減らすため Zap の早い段階でフィルタ
6. **CLI 統合のバージョンを管理する** - Platform CLI アプリにセマンティックバージョニングを使用

## セキュリティ

- **HTTPS のみ** - すべての Webhook URL は HTTPS を使用する必要があります
- **API キーのローテーション** - Zapier ダッシュボードから定期的にキーをローテーション
- **OAuth 2.0** - サードパーティサービス認証に OAuth を使用
- **Webhook 検証** - 受信 Webhook 署名を検証
- **スコープ付き権限** - Zap ごとに必要最小限のアクセスを付与

## 関連リソース

- [Segment コネクタ](https://tajo.io/jp/docs/connectors/custom/segment)
- [Brevo コネクタ](https://tajo.io/jp/docs/connectors/marketing/brevo)
- [顧客同期スキル](https://tajo.io/jp/docs/skills/data-sync/customer-sync)
- [Zapier Platform CLI ドキュメント](https://platform.zapier.com/reference/cli-docs)
