Discourse API を使用すると、外部アプリケーションでアクションが実行されたときに、フォーラムから招待メールを自動的に送信できます。多くのアプリケーションでは、コードを書かずにセットアップするために Zapier を使用できます。
一般的なユースケースは、製品の購入時、または外部サービスでのサインアップ時にユーザーをフォーラムに招待することです。このトピックの例では、Zapier WordPress インテグレーションを使用して、WordPress サイトで新しいユーザーがサインアップしたときに Discourse から招待を送信するようにトリガーします。
Zapier でトリガー ステップを設定する
Zapier ダッシュボードにアクセスし、招待メールのトリガーにしたいアプリケーションを検索します。以下のスクリーンショットでは、トリガーとして WordPress を選択しました。
これに必要な設定は、WordPress Zap を WordPress アカウントに接続し、Zap をトリガーするために新しいユーザー イベントを選択することだけです。
招待を送信するためのアクション ステップを設定する
「ステップの追加」ボタンをクリックし、ドロップダウン メニューから「アクション/検索」をクリックします。
検索メニューに「webhook」と入力し、アクション メニューから Webhooks by Zapier を選択します。Webhook アクション ステップが Zap のサイドバーに追加され、Webhook に実行させたいリクエストの種類を選択できるフォームが開きます。
フォームで POST を選択し、「続行」をクリックします。
開いたフォームでは、Discourse に対して行われる POST リクエストを設定できます。URL フィールドには、フォーラムの基本 URL の後に /invites を入力します。たとえば、私のフォーラムの基本 URL が https://demo.scossar.com の場合、招待ルートへの完全なリンクは https://demo.scossar.com/invites になります。
次に、フォームの ペイロードの種類、データ、および ヘッダー セクションを設定する必要があります。フォームの他のセクションは、デフォルト値のままにしておきます。
ペイロードの種類は、Zapier がペイロードをどの形式で送信するかを決定します。これは Json に設定する必要があります。
「データ」セクションは、招待を送信するメール アドレスを Discourse に伝え、オプションでグループ名のリストとカスタム メッセージを設定するために使用されます。グループに追加したりカスタム メッセージを含めたりせずにユーザーを招待するには、「Key」に email と入力し、次に「フィールドの挿入」アイコンをクリックしてフィールドのドロップダウン メニューを開きます。リストを下にスクロールして、トリガー アプリから渡されたユーザーのメールを含む値を見つけます。WordPress をトリガー アプリとして使用する場合、完成した「データ」セクションは次のように表示されます。
ユーザーが招待を承諾したときに自動的にグループに追加するには、「データ」セクションの
アイコンをクリックして新しいフィールドを追加します。フィールドの Key を group_names に設定します。フィールドの Value には、ユーザーを追加したいグループ名をコンマ区切りリストとして設定します。招待メールにカスタム メッセージを含めるには、Key を custom_message に設定し、Value に送信したいメッセージを設定する別のフィールドを作成します。
注: Zap のトリガー ステップの後にコード ステップを追加することで、特定のユーザーに対してグループ名とカスタム メッセージを動的に設定できるはずです。
ヘッダー セクションは、リクエストを認証するために使用されます。ヘッダー フィールドを設定するには、Discourse サイトで API キーを生成する必要があります。これを行うには、Discourse サイトの管理者 / API ページに移動し、「新しい API キー」ボタンをクリックします。キーを作成するときは、スタッフ ユーザーに割り当て、スコープを Global に設定するか、Invites > Create ボックスにチェックを入れた Granular スコープを使用します。
次に、Zap のヘッダー セクションで、次のキー/値のペアを入力します。角括弧で囲まれた値は、サイトに適した値に置き換えてください。キー名の大小文字は重要です。
Api-Username: <inviteを送信したいスタッフユーザー名>
Api-Key: <生成したAPIキー>
Content-Type: application/json
フォームは、Api-Username と Api-Key を使用した場合、下のスクリーンショットと似ているはずです。
「続行」ボタンをクリックします。
次に、「Test trigger(トリガーをテスト)」ボタンをクリックしてインテグレーションをテストできるようになります。テストは、トリガー ステップで設定したデータを使用して実行されます。すべてが正しく設定されていれば成功メッセージが表示され、トリガー ステップで設定したユーザーがまだ Discourse フォーラムに存在しない場合は、招待メールが送信され、Zapier に成功メッセージが表示されます。テスト ステップがパスしたら、「完了」ボタンをクリックして Zap をオンにします。
Zapier を使用して Discourse API に他の種類のリクエストを行う方法の詳細については、Make requests to the Discourse API with Zapier を参照してください。












