---
title: "Zapier"
description: "webhook と REST API を使って Quire を Zapier に接続します。"
image: "https://docs.quirelms.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.quirelms.com/ja/llms.txt
> Use this file to discover all available pages before exploring further.

# Zapier

<span id="zapier"></span>

Zapier は、他の連携と同じ REST API、OAuth クライアント、webhook で Quire に接続します。どちら側にも Quire 専用コードはないため、[API リファレンス](https://docs.quirelms.com/api/) で提供される機能はすべて Zap から利用できます。

## Quire のイベントを受けて Zap を開始 <!--quire:start-a-zap-when-something-happens-in-quire-->

1. Zapier でトリガーに **Webhooks by Zapier** を選び、イベントを **Catch Raw Hook** にします。署名は Quire が送信した正確なバイト列から計算されるため Raw を使います。Zapier が表示するアドレスをコピーします。
2. Quire で `/admin/webhooks` を開き、**Add subscription** を選んでアドレスを貼り付け、`course_completion.changed` などのイベントを選びます。最初に Quire がテストイベントを送ります。Zapier が受信するとサブスクリプションが開始されます。
3. サブスクリプションのシークレットを使って署名を検証する **Code by Zapier** のステップを追加します。方法は[開発者ガイド](/ja/developer/#webhooks)を参照してください。検証に失敗したら Zap を停止します。
4. 本文を解析し、必要なステップを続けます。

## Zap から Quire を操作 <!--quire:act-in-quire-from-a-zap-->

アプリのステップで **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 連携で使います。

## 例: 商談成立時に顧客を登録 <!--quire:example-enrol-a-customer-when-a-deal-closes-->

1. トリガー: CRM の「商談成立」。
2. `PUT /api/v1/users/ext:{customer id}` に氏名とメールアドレスを渡すカスタムリクエスト。ユーザーを作成するか、すでに存在する場合は更新します。
3. ユーザーとコースを指定して `POST /api/v1/enrolments` を実行し、`Idempotency-Key: deal-{deal id}` を付けます。

Source: https://docs.quirelms.com/ja/integrations/zapier/index.mdx
