1. Experience Edge管理API

管理者Webhook API

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Admin Webhooks APIを使用して、外部サービスでWebhookを実行します。

Webhook実行モード

Webhookは、静的サイト ジェネレーター (SSG) のサイト ビルドの再構築や開始など、Webアプリケーションに要求を行うために配信サービスによって提供される方法です。

コンテンツ配信機能には、Webhookを実行する方法とタイミングを決定するさまざまな実行モードが実装されています。

オンエンド

OnEndはデフォルトの実行モードです。このモードでは、Webhookは、キャッシュがパージされた後、公開ジョブの終了時に実行されます。Webhook定義に本文が含まれている場合は、Webhook要求の本文として逐語的に送信されます。Webhook定義にカスタム ヘッダーを設定して、本文がプレーン テキスト (JSONやXMLなど) 以外の場合は、要求のコンテンツ タイプを変更できます。

Webhookエンドポイントへのリクエストはデバウンスされ、エンドポイントへのリクエストの数を減らし、いくつかの小さな変更をスムーズにします。

更新時

OnUpdateOnEndと同じように機能しますが、Webhookリクエストの本文には、Webhookの実行の原因となったエンティティの変更が含まれます。このモードでは、Webhook定義にカスタム本文を含めることはできません。

大きなリクエストが送信されないように、エンティティの変更は複数のWebhookリクエスト間でバッチで送信されます。各バッチは重複排除されるため、1つの要求で繰り返しイベントが送信されることはありません。送信される本文はJSON形式です。Webhook定義のbodyIncludeフィールドに入力することで、JSONデータを本文に含めることができます。

失敗したWebhookの自動非アクティブ化

自動非アクティブ化機能は、Webhookの実行ステータスを監視し、10回連続して失敗したWebhookを無効にします。

メモ

Webhookは、応答に30秒以上かかる場合に失敗したと見なされます。

Webhookが実行されると、結果はlastRunsプロパティに記録されます。実行が失敗した場合:

  1. システムは前の実行結果を取得し、前の9回の実行も失敗したかどうかを確認します。

  2. この場合、Disabledプロパティはtrueに設定され、Webhookは自動的に無効になります。

  3. 次のmessagelastRunsプロパティに追加され、Webhookが無効になっていることを示します。 The webhook has failed the past 10 consecutive executions and is now disabled.

Webhookを再アクティブ化する

必要に応じて、失敗した理由に対処した後で、Webhookを手動で再アクティブ化できます。

これを行うには、/webhooks/<identifier>エンドポイント(/webhooks/97261f96-2b43-4e25-a925-5bc56194f1b1など)にPUTリクエストを送信し、次の例に示すようにDisabledプロパティをfalseに設定します。

 { 
    "tenantId": "kgo-tenant", 
    "label": "kgo webhook", 
    "uri": "https://www.sitecore.com/", 
    "method": "GET", 
    "headers": { 
        "x-header": "foo" 
    }, 
  "disabled": false
} 

エンドポイント

次のルートはすべて 、管理エンドポイントの基本ルートを基準にしています。

方式

関連URL

形容

GET

/webhooks

すべてのWebhookを一覧表示します。

GET

/webhooks/<identifier>

特定の識別子を持つWebhookを表示します。

POST

/webhooks/<identifier>

Webhookを作成します。

手記

HTTPではなく、HTTPS URIを使用する必要があります。

PUT

/webhooks/<identifier>

特定の識別子でWebhookを更新します。

DELETE

/webhooks/<identifier>

特定の識別子を持つWebhookを削除します。

この記事を改善するための提案がある場合は、 お知らせください!