Webhookは、「Webhook」ページからZendesk管理センターで作成され、管理されます。
Webhookを管理するには、管理者であるか、またはトリガの管理権限のあるカスタムロールのエージェントである必要があります。
Webhookを編集および管理する
多くの場合、管理者はWebhookの編集、複製、非アクティブ化、削除を行うことができます。ただし、アプリの要件によって作成されたWebhookは、編集は可能ですが、複製や削除はできません。アプリの要件によって作成されたWebhookは、アプリの開発者が変更することが可能で、アカウント管理者による変更よりも優先させることができます。Webhookが作成された後で、接続方法を変更することはできません。
Webhookを編集するには
- 管理センターで、サイドバーにある「 アプリおよびインテグレーション」をクリックし、「アクションおよびWebhook」>「Webhook」を選択します。
- リストでWebhookを見つけ、Webhookの行にあるオプションメニューアイコン()をクリックして、「編集」をクリックします。
- 必要に応じて、Webhookに変更を加えます。
すべてのフィールドは編集可能です。ただし、認証を使用する場合、Webhookを作成または更新した後は、キー、トークン、またはパスワードを見ることはできなくなります。カスタムヘッダーを削除するには、削除アイコン()をクリックします。
- (オプション)Webhookに加えた変更をテストします。
- 「保存」をクリックします。
Webhookを複製するには
- 管理センターで、サイドバーにある「 アプリおよびインテグレーション」をクリックし、「アクションおよびWebhook」>「Webhook」を選択します。
- リストでWebhookを見つけ、Webhookの行にあるオプションメニューアイコン()をクリックして、「複製」をクリックします。
- Webhookの名前を編集し、必要に応じてWebhookを変更します。
- 「更新」をクリックします。
ブランドを非アクティブにするには
- 管理センターで、サイドバーにある「 アプリおよびインテグレーション」をクリックし、「アクションおよびWebhook」>「Webhook」を選択します。
- リストでWebhookを見つけ、Webhookの行にあるオプションメニューアイコン()をクリックして、「非アクティブにする」をクリックします。
- 確認ダイアログで、「非アクティブにする」をクリックします。
Webhookを削除するには
- 管理センターで、サイドバーにある「 アプリおよびインテグレーション」をクリックし、「アクションおよびWebhook」>「Webhook」を選択します。
- リストでWebhookを見つけ、Webhookの行にあるオプションメニューアイコン()をクリックして、「削除」をクリックします。
- 「削除」をクリックします。
Webhookのアクティビティを表示する
各Webhookにはアクティビティ記録があり、呼び出しの詳細な記録に加えて、過去7日間のリクエスト数を確認することができます。
エンドポイントが特定のHTTPレスポンスコードを返した場合、Webhook呼び出しは最大3回まで自動的に再試行されます。再試行シナリオの詳細と例については、開発者向けドキュメントの「Webhook retry logic」を参照してください。
Zendeskは、Webhookへのアクションの配信が一度で済むよう、最大限の努力を払っています。ただし、保証の限りではありません。Webhookが同じアクションによって複数回呼び出される可能性があります。また、webhook circuit breakerがトリガされるなどの特定の状況下では、アクションがまったく配信されない可能性もあります。重複した呼び出しを検出するには、Webhook署名を使用することができます。ワークフローに問題がある場合は、Webhookから生じるアクションが冪等であることを確認してください。
- 管理センターで、サイドバーにある「 アプリおよびインテグレーション」をクリックし、「アクションおよびWebhook」>「Webhook」を選択します。
- リストでWebhookを見つけ、Webhookの行にあるオプションメニューアイコン()をクリックして、「詳細を表示」をクリックします。
- 「アクティビティ」タブをクリックします。
- 「フィルター」をクリックして、アクティビティ記録を開始日、開始時間、終了日、終了時間、またはステータスでフィルターした後、「フィルターを適用」をクリックします。
Webhookをデバッグする
Webhookが正常に動作していない場合、失敗した呼び出しはWebhookのアクティビティ記録に表示されます。アクティビティ記録は、「Failed」というステータスや特定のエラータイプでフィルターできます。「アクティビティ」タブでは、「呼び出しID」をクリックして、特定のWebhook呼び出しのリクエストとレスポンスを表示することもできます。
レスポンスはほとんどの場合、Zendesk自身からではなく、Webhookのリクエストを受けたサードパーティーのサービスから送信されます。通常、エラーを修正するためにはこのサードパーティのサービスとの連携が必要です。
レスポンスステータスに含まれる数値コードを使用して、問題を診断することができます。これらのレスポンスステータスコードは、HTTPリクエスト全体で標準です。標準のHTTPレスポンスステータスコードの一覧とその意味については、MDN web docsのHTTPレスポンスステータスコードを参照してください。
Webhookのリクエストには10秒のタイムアウトがあります。レスポンスステータス「Failed: 504 Gateway Timeout」は、サービスがこのタイムアウト時間内にWebhookのリクエストに応答しなかったことを示します。タイムアウト時間は調整できません。