Zapier は、他の連携と同じ REST API、OAuth クライアント、webhook で Quire に接続します。どちら側にも Quire 専用コードはないため、API リファレンス で提供される機能はすべて Zap から利用できます。
Quire のイベントを受けて Zap を開始
- Zapier でトリガーに Webhooks by Zapier を選び、イベントを Catch Raw Hook にします。署名は Quire が送信した正確なバイト列から計算されるため Raw を使います。Zapier が表示するアドレスをコピーします。
- Quire で
/admin/webhooksを開き、Add subscription を選んでアドレスを貼り付け、course_completion.changedなどのイベントを選びます。最初に Quire がテストイベントを送ります。Zapier が受信するとサブスクリプションが開始されます。 - サブスクリプションのシークレットを使って署名を検証する Code by Zapier のステップを追加します。方法は開発者ガイドを参照してください。検証に失敗したら Zap を停止します。
- 本文を解析し、必要なステップを続けます。
Zap から Quire を操作
アプリのステップで Webhooks by Zapier の Custom Request または API Request を使います。
- URL:
https://acme.quirelms.com/api/v1/...。例:/api/v1/enrolmentsは利用者を登録します。 - Headers:
Authorization: Bearer qk_live_...はこの Zap 専用に/admin/integrations/api-keysで作成したキーです と、トリガーの ID から作るIdempotency-Key。Zapier が Zap を再生しても同じ人を二重登録しません。 - Data: API リファレンスに従った JSON。
組織としてではなく個人として操作するには、Zapier のリダイレクトアドレスを指定して /admin/integrations/oauth-clients に OAuth クライアントを登録し、非公開の Zapier 連携で使います。
例: 商談成立時に顧客を登録
- トリガー: CRM の「商談成立」。
PUT /api/v1/users/ext:{customer id}に氏名とメールアドレスを渡すカスタムリクエスト。ユーザーを作成するか、すでに存在する場合は更新します。- ユーザーとコースを指定して
POST /api/v1/enrolmentsを実行し、Idempotency-Key: deal-{deal id}を付けます。