---
title: "ウェブフック"
slug: "webhooks"
abstract: "利用可能なウェブフックの概要。"
---
# ウェブフック

ウェブフックを追加することで、[/xmc/en/users/xm-cloud/en/sitecoreai.html](https://doc.sitecore.com/sai/en/users/sitecoreai/sitecoreai.html)で発生したイベントや[ワークフロー](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/workflow.html "Workflow")アクションのリアルタイム通知を受け取ることができます。また、ウェブフックを使ってアイテムワークフローの状態変更に対して外部検証を行うこともできます。

システムイベントやワークフローアクションを追跡するウェブフックを作成できます。トラッキングイベントが発生したりワークフローアクションが実行された場合、HTTPPOSTリクエストで指定されたエンドポイントにイベント詳細を送信します。ウェブフックリクエストペイロードはJSONまたはXMLで送信できます。

> !注ウェブフックを表示または作成するには、開発者または管理者の役割が必要です。

では、ウェブフックには3種類あります:

-   Webhookイベントハンドラ
-   ウェブフックの送信アクション
-   ウェブフック検証アクション

## Webhookイベントハンドラ

[サポートされているシステムイベント](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/webhook-event-handler-configuration-fields.html#UUID-6ca1c12a-59f3-47a2-dbf3-ef37908f5565_section-idm4582546154470433140652700487 "Supported events")に関する情報は、[Webhookイベントハンドラを作成する](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/walkthrough--creating-and-configuring-a-webhook-event-handler.html "Walkthrough: Creating and configuring a webhook event handler")ことで受け取ることができます。

例えば、Webhookイベントハンドラを設定して、webpageテンプレートのアイテムが作成された際に指定されたエンドポイントにリクエストを送信できます。

## ウェブフックの送信アクション

アイテムがワークフローの状態を変えたり、ワークフローコマンドが実行されたりした際に、[Webhookの送信アクションを追加](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/walkthrough--adding-and-configuring-a-webhook-submit-action.html "Walkthrough: Adding and configuring a webhook submit action")することで情報を受け取ることができます。

例えば、ワークフローの承認状態にウェブフックの送信アクションを挿入できます。ワークフロー中のアイテムがapproved状態に移行すると、ウェブフックは指定されたエンドポイントにHTTPリクエストを送信します。

## ウェブフック検証アクション

ウェブ [フック検証アクションを追加](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/walkthrough--adding-and-configuring-a-webhook-validation-action.html "Walkthrough: Adding and configuring a webhook validation action")することで、アイテムのワークフロー状態の変更を承認または拒否する機能をサードパーティサービスに提供できます。ウェブフック検証アクションでリクエストが送信されると、サードパーティサービスは [応答](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/webhook-validation-action-http-response.html "Webhook validation action HTTP response")を返さなければなりません。

例えば、ワークフローのコマンド項目にwebhookの検証アクションを追加し、状態をin reviewからapprovedに変えることができます。コマンドが実行されると、webhookは指定されたエンドポイントにHTTPリクエストを送信します。

その後、エンドポイントはコマンドを検証する応答を返さなければなりません。エンドポイントがコマンドを検証しなければ、アイテムの状態は変わりません。

## 認可項目

もし宛先エンドポイントが認証を必要とするなら、[認証項目を作成し](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/walkthrough--using-an-authorization-item.html "Walkthrough: Using an authorization item") 、それをウェブフックに割り当てる必要があります。

## エラー処理

リクエストを送信中にエラーが発生した場合は、ログファイルでエラー情報を確認してください。

> !noteは、宛先エンドポイントでエラーが発生した場合にリクエストを再送することをサポートしていません。

## タイムアウト

特定のリクエストですべてのウェブフックを送信するデフォルトの最大時間は10秒です。

## ウェブフックのテスト

まだエンドポイントを設定していない場合は、[Webhookのテスト](https://www.google.com/search?q=test+webhook) サイトを使ってエンドポイントを作成し、Webhookをテストすることができます。