Webhook トリガー
Webhook トリガーを使用すると、API からのデータを使ってフローを開始できます。そのため、API コールを実行できるあらゆる外部システムがフローをトリガーできます。例えば、Zapier の Run flow アクションを使用してフローをトリガーできます。あわせて DoiT Integrations も参照してください。
代表的なユースケース:
-
Zapier など のサードパーティーのオートメーションプラットフォームと連携し、イベントをフローにプッシュする。
-
構造化された JSON を送信する CI/CD パイプライン・社内ツール・スクリプトからフローを開始する。
-
外部システムがフローで処理するリクエストペイロードを送信する、承認またはリクエストのワークフローを構築する。
データ構造を検出するため、JSON のサンプルを提供する必要があります。構造が検出されると、フローは後続のアクションに必要なフィールドを自動的に作成します。これにより、データはフローの一部となり、他のデータと同様に任意のアクティビティノードで使用できます。

-
Webhook URL: このフローをトリガーするデータを送信するサービスの URL を指定します。
-
Sample JSON: データの構造を検出するための JSON サンプルを指定します。Detected structure を選択し、フィールドが正しく認識されていることを確認してください。誤っていると思われる場合は、JSON サンプルを修正して再度貼り付けてください。
-
Generate API token: トリガーノードから DoiT API token を作成することで、Cloud Intelligence の Profile を開かずに済みます。クリックのたびに、CloudFlow 管理権限にスコープされた一意の名前のトークンが生成されます。トークンは作成から 1 年後に失効します。Webhook の失敗を防ぐため、有効期限が切れる前に新しいトークンを生成してください。
他の自動トリガーと同様に、Webhook でトリガーされるフローは、フローが公開された後にのみ実行され、Run ボタンから開始することはできません。
フローにパラメータを渡す
リクエストの JSON ボディはトリガーのペイロードになります。Sample JSON に含めたすべてのフィールドは下流のノードで利用可能になり、他のノードの出力と同様に、フィルター・分岐・通知・アクションノードへの入力などで参照できます。実行にパラメータを渡すには、それらをリクエストボディ内のフィールドとして含めてください。
フローをトリガーするには、Authorization ヘッダーに DoiT API token を指定し、JSON ボディにパラメータを含めて Webhook URL に POST リクエストを送信してください。例えば、EC2 インスタンスを停止するフローは、呼び出し元からインスタンス ID と理由を受け取ることができます。
curl -X POST "<webhook-url>" \
-H "Authorization: Bearer $DOIT_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"instanceId": "i-0abcd1234efgh5678",
"region": "us-east-1",
"reason": "idle for 14 days"
}'
その後、下流のノードはトリガーの出力から instanceId、region、reason を参照できます。例えば、AWS ノードは instanceId と region を使用してインスタンスを停止し、通知ノードはメッセージ内に reason を含めます。
リクエストボディは、トリガー設定で指定した Sample JSON の構造と一致している必要があります。リクエストに新しいフィールドを追加した場合は、サンプルを更新して、そのフィールドを下流ノードで参照できるようにしてください。