メインコンテンツへスキップ

1 機能概要

Webhook は異なるシステム間でデータや情報を相互にやり取りできる仕組みです。関心のあるシステムで新しいイベントが発生すると、自動的にデータを受け取れます。Webhook アドレスは通信用のアドレスのようなもので、データを受信し情報をタイムリーに取得できます。
  • 注意:Webhook は開発者向けの高度な機能です。開発者の支援を受けて利用してください。
⚠️webhook アドレスは厳重に管理してください。外部サイトに公開しないでください。漏洩した場合、大量の有害情報が流入し、組織の開発リソースを消費して、リソース損失や安全リスクを招く恐れがあります。

2 利用シーン

Webhook を設定すると、特定のシステムやアプリの更新を「サブスクライブ」できます。例えば:
  • 内部システム間のデータ同期:ERP や CRM などの内部システムに Webhook を設定すると、システム間でデータを同期でき、手動での同期作業が不要になります。
  • ウェブサイトのコンテンツ更新通知:関心のあるウェブサイトに Webhook を設定すると、新しいコンテンツがあると自動的に通知され、何度もサイトを開いて確認する必要がなくなります。
  • 監視・アラート通知:監視システムやアラートプラットフォームに Webhook を設定すると、システムの状態をリアルタイムで監視でき、問題を素早く処理できます。

3 利用方法

3.1 トリガーキーワードを設定する

受信したデータにキーワードが含まれている場合のみ、ワークフローがトリガーされます。「キーワード追加」をクリックすると複数のキーワード(上限 10 個)を設定でき、受信データにいずれかのキーワードが含まれていればワークフローがトリガーされます。

3.2 パラメータ形式を設定する

関心のあるシステムからパラメータを受信すると、それらのパラメータは後続のステップにも引き継がれます。そのため、パラメータ形式は後続ステップでパラメータをどう解析・参照するかを決定します。

3.2.1 パラメータ形式に JSON を選択した場合

後続ステップでは JSON のルールに従ってパラメータが構造化解析されます。そのため、パラメータのサンプルを手動で入力する必要があります。これにより後続ステップで構造化されたデータを参照できます。

3.2.2 パラメータ形式に Text を選択した場合

後続ステップでは、これらのパラメータを text 形式でひとまとめに参照できます。(特に、パラメータが DingTalk ロボットがサポートするメッセージ構造に準拠していれば、「該当グループへメッセージ送信」のアクションで「メッセージソース」を「ソースデータ解析」に切り替えると、これらのパラメータを自動的にメッセージ本文として送信できます。)

3.2.3 パラメータ形式に None を選択した場合

後続ステップではこれらのパラメータを参照できません。 Webhook パラメータの詳細説明

3.3 webhook アドレスを設定する

「コピー」ボタンをクリックし、webhook アドレスを連携対象のシステムに設定します。(自動化ワークフローごとに専用の webhook アドレスが自動生成されます。webhook アドレスは厳重に管理してください。漏洩した場合、大量の有害情報が流入し、組織の開発リソースを消費する恐れがあります。

3.4 Http リクエストを送信する

リクエストを送信すると、自動化ワークフローがトリガーされます。

4 リクエストヘッダー(Header)と例

Bearer token のサンプルコードは以下のとおりです(角括弧は置き換える変数で、実際のコードには記述不要):

5 リクエストボディ

必要に応じて設定してください。形式は JSON 仕様に準拠する必要があります。

6 レスポンスボディと例

レスポンスボディの code が 0 でない場合は失敗を示します。 code が 0 でない場合、下表の「関連エラー」のエラーコードと文言を参照して問題を切り分けできます。 webhook の受信が正常な場合、レスポンスボディの例は以下のとおりです:
webhook でエラーが発生した場合、レスポンスボディの例は以下のとおりです:

7 エラーコード

webhook トリガーでエラーが発生した場合、リクエスト送信側でエラーを確認し、下表のエラーコードと文言を参照して切り分けてください。

8 活用事例

1、もしあなたが飲食企業の管理者で、社内の商品管理システムのデータを DingTalk のグループチャットへ即時同期したい場合、「パラメータサンプル」に商品管理システムから渡されるパラメータサンプル(新商品の名称、規格、ベース、原料など)を手動で入力し、「該当グループへメッセージ送信」でメッセージ内容をカスタマイズします。+ ボタンをクリックしてこれらのパラメータを参照すれば、新商品の詳細情報をグループへタイムリーに同期できます。 2、以前グループチャットで「カスタムロボット」を使ったことがあり、関心のあるシステムから渡されるパラメータが DingTalk ロボットがサポートするメッセージ構造に準拠している場合、「該当グループへメッセージ送信」のアクションで「メッセージソース」を「ソースデータ解析」に切り替え、webhook 「データ受信時」のノード出力をソースデータとして選択すれば、これらのパラメータをメッセージ本文として自動的に送信できます。