ドキュメントトリガー
このページの内容

Webhook

HTTP リクエストからワークフローを開始し、応答の内容とタイミングを選択します。

Webhook は HTTP リクエストを実行の入口にします。Webhook のエンドポイントを公開できる環境にフローを公開してください。

リクエストを定義する

HTTP メソッドとリクエストボディのフィールドを選択します。公開編集インターフェースは config.body で名前付きフィールド定義を受け付けます。

{
  "op": "node.add", "as": "webhook", "type": "webhook", "name": "Receive a ticket",
  "config": {
    "method": "POST",
    "body": { "message": { "schema": { "type": "string" }, "nullable": false } }
  }
}

リクエストデータは、トリガーが定義する出力から取得できます。ボディのフィールドは body 出力から直接のフィールド名で選びます。任意の下流入力に自動で値がバインドされるわけではありません。

応答モードを選ぶ

  • 即時応答:options.responseBody を省略し、設定済みの即時応答を使います。
  • ワークフロー出力:kind: "workflow-outputs" を選ぶと、実行全体の成功を待って Outputs 全体または指定フィールドを返します。
  • 応答ノード:kind: "webhook-response" と到達可能なノードを選び、その最初の成功時に返答します。
POST Webhook が message を Code に渡します。Webhook Response は後続処理を待たずに受領確認を返します。

POST Webhook が message を Code に渡します。Webhook Response は後続処理を待たずに受領確認を返します。
入力
POST ボディ:{"message":"Please check my order"}
想定される結果
HTTP 202、本文 "Received: Please check my order"、ヘッダー X-Workflow: ticket-intake。
実行前の準備
外部から到達できる Webhook URL を持つ環境でフローを公開してください。
ワークフローをダウンロード

動的応答の制限

動的応答のタイムアウトは 1,000–60,000 ミリ秒、デフォルトは 30,000 ミリ秒です。キューと待機の時間も含みます。HTTP がタイムアウトしても、受け付け済みの実行は取り消されません。

ワークフロー出力モードでは、文字列はテキスト、他の JSON 値は JSON で返します。選択した出力がない場合や、実行が成功しなかった場合はエラーです。仕様上の制約に従い、ステータスとヘッダーもワークフロー出力から選べます。

モードの切り替えには明示的なフィールド解除を使います。固定の応答本文、ステータス、ヘッダーは、無効な間も設定が残る場合があります。入れ子の 1 フィールドを消しても、他の応答ポリシーまで消えるとは限りません。

CORS、ヘッダー制限、リクエスト上限、公開オリジンはデプロイ側の規則に従います。早期応答は Webhook Response を参照してください。

参照元

検索