Webhook の作成

This ArcGIS 11.0 documentation has been archived and is no longer updated. Content and links may be outdated. See the latest documentation.

組織の管理者は、特定のイベントが発生したときに通知を受けるように ArcGIS Enterprise デプロイメントの Webhook を構成できます。 以下の各セクションでは、Organization Webhook とサービス Webhook を構成する方法について説明します。

Webhook を作成するための前提条件

Webhook を作成する前に、以下を考慮してください。

  • Organization Webhook を使用するには、組織が 10.7 以降のバージョンの ArcGIS Enterprise を使用している必要があります。 サービス Webhook を使用するには、組織が 11.0 以降のバージョンの ArcGIS Enterprise を使用している必要があります。
  • Organization Webhook を作成および管理するには、管理者であるか、デフォルト管理者ロールが割り当てられている必要があります。
  • サービス Webhook を作成および管理するには、セキュリティおよびインフラストラクチャ、更新、削除の管理者権限が割り当てられているか、デフォルト管理者ロールまたは公開者ロールが割り当てられている必要があります。
  • HTTPS を介して通信するように Webhook レシーバーが構成されている必要があります。 サードパーティ Web サービス レシーバー (Microsoft Power AutomateZapier、および IFFT) やカスタム Web サービスなどのレシーバーでサポートされているいくつかのオプションがあります。 カスタム Web サービスの作成方法の例、およびサードパーティ レシーバーの基本操作については、Webhook リポジトリをご参照ください。
  • フィーチャ サービスの Webhook を構成するには、そのサービスに編集機能が含まれていて、同期なしの変更追跡が有効になっている必要があります。
  • ジオプロセシング サービスの Webhook を構成するには、そのサービスが非同期でなければなりません。
注意:

このリリースでは、サービス Webhook はベータ機能です。 ベータ版では、これらの機能は完全ではない可能性があるため、場合によってはパフォーマンスまたは品質に関する既知の問題があり、Esri テクニカル サポートによるサポートはありません。 サービス Webhook のベータ版 API ドキュメントについては、 サービス Webhook 管理者 API ガイド (PDF) をご参照ください。 ArcGIS Enterprise のベータ機能の詳細については、「ベータ機能」をご参照ください。

Organization Webhook の作成

Organization Webhook を使用することで、ArcGIS Enterprise ポータル アイテム、グループ、およびユーザーに関連付けられたイベントのトリガーに登録できます。

注意:

ユーザー、グループ、およびアイテム関連のイベントについての Webhook を作成する POST リクエストの例については、REST API ドキュメントの「Create Webhook」をご参照ください。

Organization Webhook を作成するには、次の手順に従います。

  1. ArcGIS Portal Directory を参照し、管理者ロールを持つメンバーとしてサイン インします。

    Webhook を作成および管理できるのは、デフォルト管理者ロールが割り当てられているメンバーまたは管理者だけです。

    https://organization.domain.com/context/sharing/rest
    

    サイン インすると、自分のアカウントの [User] リソース ページが表示されます。

  2. [Org ID] ハイパーリンクをクリックするか、以下のフォームのリクエストを行い、[Portal] → [Self] リソース ページにアクセスします。
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. [Self] リソース ページの下部にスクロールし、[Webhook] > [Create Webhook] の順にクリックして [Create Webhook] 操作にアクセスします。
  4. [Create Webhook] エンドポイントで、次の情報を入力します。
    1. [Name] テキスト ボックスに Webhook の一意の名前を入力します。
    2. [Payload URL] テキスト ボックスに Webhook レシーバーのペイロード URL を入力します。レシーバーと ArcGIS Enterprise ポータル間の正常な接続が可能であるかを確認するため、Webhook の作成中にこの URL がクエリされます。

      ペイロード URL の例を以下に示します。

      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    3. 必要に応じて、レシーバーで Webhook メッセージを認証するときに使用可能な Webhook のシークレットを設定します。 [Secret (Optional)] テキスト ボックスに、ユーザー定義の英数字文字列を入力します。
    4. 必要に応じて、[Configuration Properties] テキスト ボックスで、Webhook の非アクティブ化情報を指定します。

      デフォルトでは、5 日間で 5 回エラーが発生すると Webhook は非アクティブ化します。

    5. [Which events would you like to trigger this webhook] で、[Let me define manually] または [Send me everything] を選択します。
      • [Let me define manually] を選択した場合、[Send me changes for these comma separated events] テキスト ボックスで、この Webhook に使用するトリガー イベントをリストします。 たとえば、組織内の特定のグループに関連するすべてのイベントに登録する場合、以下に示すようなトリガー イベントを入力します。ここで、[groupID] は、そのグループに関連付けられている一意の ID を表します。
        /groups/[groupID]/update
        
        Organization Webhook でサポートされているすべてのイベント トリガーについては、「イベント トリガー」のトピックをご参照ください。
      • [Send me everything] を選択した場合、サポートされているすべてのトリガー イベントに登録することになります。 各イベントが発生すると通知を受けます。
  5. 上記のパラメーターを構成したら、[Create Webhook] をクリックしてリクエストを送信します。

    操作が完了すると、新しい Webhook が組織に追加されます。

Organization Webhook の詳細パラメーターの構成

組織で利用する Webhook に適用される詳細設定で、配信の試行回数、通知時刻、配信試行間の時間などを指定することによって、Webhook の動作をさらにカスタマイズすることができます。

注意:

これらの詳細プロパティを構成する POST リクエストの例については、REST API ドキュメントの「Update Webhook Settings」をご参照ください。

これらの詳細プロパティを設定するには、次の手順を実行します。

  1. ArcGIS Portal Directory を参照し、管理者ロールを持つメンバーとしてサイン インします。 Webhook を作成および管理できるのは、デフォルト管理者ロールが割り当てられているメンバーまたは管理者だけです。
    https://organization.domain.com/context/sharing/rest
    

    サイン インすると、自分のアカウントの [User] リソース ページが表示されます。

  2. [Org ID] ハイパーリンクをクリックするか、以下のフォームのリクエストを行い、[Portal] → [Self] リソース ページにアクセスします。
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. [Self] リソース ページの下部にスクロールし、[Webhook] > [Settings] > [Update] の順にクリックして [Update Webhook Settings] 操作にアクセスします。
  4. [Update Webhook Settings] エンドポイントで、次の情報を入力します。
    1. [Number of Notification Attempts] の値を設定します。

      この値は、Webhook ペイロードを配信する試行回数を指定します。 デフォルトでは、ArcGIS Enterprise ポータルはペイロードの配信を 3 回試行します。 試行回数の値は 0 ~ 5 の整数である必要があります。

    2. [Notification Time Out in Seconds] の値を設定します。

      この値は、ArcGIS Enterprise ポータルがレシーバーからのレスポンスの受信を待機する時間の長さ (秒) を指定します。 デフォルトでは、ArcGIS Enterprise ポータルは 10 秒待機します。 ArcGIS Enterprise ポータルが待機する秒数の値は 0 ~ 60 の整数である必要があります。

    3. [Notification Elapsed Time in Seconds] の値を設定します。

      この値は、各ペイロード配信試行間の時間 (秒) を指定します。 デフォルトでは、ArcGIS Enterprise ポータルは、前の試行が失敗した場合は 5 秒後に別のペイロードの配信を試み、[Number of Notification Attempts] で指定した回数までこの処理を繰り返します。

  5. 上記のパラメーターを構成したら、[Update Webhook Settings] をクリックしてリクエストを送信します。

    操作が完了すると、更新されたプロパティが、構成されているすべての Organization Webhook に適用されます。

ジオプロセシング サービス Webhook の作成

ジオプロセシング サービス Webhook を使用することで、ジオプロセシング サービスに関連付けられているイベント トリガーに登録できます。

注意:

ジオプロセシング サービスの Webhook を作成する POST リクエストの例については、Webhook REST API ベータ版のドキュメント、 サービス Webhook 管理者 API ガイド (PDF) をご参照ください。

ジオプロセシング サービス Webhook を作成するには、次の手順に従います。

  1. ArcGIS Enterprise Administrator Site Directory を参照し、適切な管理者権限が割り当てられているメンバーとしてサイン インします。

    Webhook を作成および管理できるのは、セキュリティおよびインフラストラクチャ、更新、削除の管理者権限が割り当てられているかデフォルト管理者ロールまたは公開者ロールが割り当てられている管理者だけです。

    https://organization.domain.com/context/admin
    
  2. サイン インしたら、[Services] > [[ServiceName]] > [Webhooks] > [Create] の順にクリックして、ジオプロセシング サービスの [Webhooks] リソースを参照します。ここで、[ServiceName] は、Webhook が作成されるサービスを表します。 特定のフォルダーに格納されているサービスの場合、[Services] > [[FolderName]] > [[ServiceName]] > [Webhooks] > [Create] の順にクリックします。ここで、[FolderName] は、そのサービスが格納されているフォルダーを表します。
    注意:

    ジオプロセシング サービスの Webhook を構成するには、そのジオプロセシング サービスが非同期でなければなりません。

  3. [Create Webhook] エンドポイントで、次の情報を入力します。
    1. [Name] テキスト ボックスに Webhook の一意の名前を入力します。 特殊文字を使用するとエラー レスポンスが発生するため、入力する名前には英数字の値のみ含めることができます。
    2. 必要に応じて、レシーバーで Webhook メッセージを認証するときに使用可能な Webhook のシークレットを設定します。 [Signature Key] テキスト ボックスに、ユーザー定義の英数字文字列を入力します。
    3. [Hook URL] テキスト ボックスに Webhook レシーバーのペイロード URL を入力します。レシーバーとデプロイメントの ArcGIS Server 間の正常な接続が可能であるかを確認するため、Webhook の作成中にこの URL がクエリされます。 ペイロードの例を以下に示します。
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    4. 必要に応じて、メディア タイプを指定します。 [Content Type] ドロップダウン メニューで、次のいずれかを選択します。
      • application/json (デフォルト)
      • application/x-www-form-urlencoded
    5. 必要に応じて、ペイロードの形式を定義します。 [Payload Format] ドロップダウン メニューで、次のいずれかを選択します。
      • JSON (デフォルト)
      • PJSON
    6. 必要に応じて、[Active] パラメーターを使用して、Webhook がトリガーされたときのコールバックを無効または有効にします。 有効にするには、[True] を選択します。 無効にするには、[False] を選択します。

      デフォルトでは、コールバックが有効になっています。

  4. 上記のパラメーターを構成したら、[Create] をクリックしてリクエストを送信します。

    操作が完了すると、新しい Webhook がそのジオプロセシング サービスに適用されます。

注意:
Organization Webhook やフィーチャ サービス Webhook とは異なり、ジオプロセシング サービス Webhook にユーザー定義のイベント トリガーはありません。 ジオプロセシング サービス Webhook はジオプロセシング ジョブが完了するとペイロードを配信します。 ジオプロセシング サービスで配信されるペイロードの詳細については、「ペイロード」のトピックをご参照ください。

フィーチャ サービス Webhook の作成

フィーチャ サービス Webhook を使用することで、フィーチャ サービスに関連付けられているイベント トリガーに登録できます。

注意:

フィーチャ サービスの Webhook を作成する POST リクエストの例については、Webhook REST API ベータ版のドキュメント、 サービス Webhook 管理者 API ガイド (PDF) をご参照ください。

フィーチャ サービス Webhook を作成するには、次の手順に従います。

  1. ArcGIS Enterprise Administrator Site Directory を参照し、適切な管理者権限が割り当てられているメンバーとしてサイン インします。

    Webhook を作成および管理できるのは、セキュリティおよびインフラストラクチャ、更新、削除の管理者権限が割り当てられているかデフォルト管理者ロールまたは公開者ロールが割り当てられている管理者だけです。

    https://organization.domain.com/context/admin
    
  2. サイン インしたら、[Services] > [[ServiceName]] > [Webhooks] > [Create] の順にクリックして、フィーチャ サービスの [Webhooks] リソースを参照します。ここで、[ServiceName] は、Webhook が作成されるサービスを表します。 特定のフォルダーに格納されているサービスの場合、[Services] > [[FolderName]] > [[ServiceName]] > [Webhooks] > [Create] の順にクリックします。ここで、[FolderName] は、そのサービスが格納されているフォルダーを表します。
    注意:

    フィーチャ サービスの Webhook を構成するには、そのフィーチャ サービスに編集機能が含まれていて、同期なしの変更追跡が有効になっている必要があります。

  3. [Create Webhook] エンドポイントで、次の情報を入力します。
    1. [Name] テキスト ボックスに Webhook の一意の名前を入力します。 特殊文字を使用するとエラー レスポンスが発生するため、入力する名前には英数字の値のみ含めることができます。
    2. [Change Type] テキスト ボックスで、この Webhook に使用するイベント トリガーをリストします。 たとえば、フィーチャ サービスが作成されたときに必ず Webhook を呼び出すには、次のイベント トリガーを使用します。

      FeaturesCreated
      
      フィーチャ サービス Webhook でサポートされているすべてのイベント トリガーについては、「イベント トリガー」のトピックをご参照ください。
    3. 必要に応じて、レシーバーで Webhook メッセージを認証するときに使用可能な Webhook のシークレットを設定します。 [Signature Key] テキスト ボックスに、ユーザー定義の英数字文字列を入力します。
    4. [Hook URL] テキスト ボックスに Webhook レシーバーのペイロード URL を入力します。レシーバーとデプロイメントの ArcGIS Server 間の正常な接続が可能であるかを確認するため、Webhook の作成中にこの URL がクエリされます。 ペイロードの例を以下に示します。
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    5. 必要に応じて、メディア タイプを指定します。 [Content Type] ドロップダウン メニューで、次のいずれかを選択します。
      • application/json (デフォルト)
      • application/x-www-form-urlencoded
    6. 必要に応じて、ペイロードの形式を定義します。 [Payload Format] ドロップダウン メニューで、次のいずれかを選択します。
      • JSON (デフォルト)
      • PJSON
    7. 必要に応じて、[Active] パラメーターを使用して、Webhook がトリガーされたときのコールバックを無効または有効にします。 有効にするには、[True] を選択します。 無効にするには、[False] を選択します。

      デフォルトでは、コールバックが有効になっています。

    8. [Schedule] テキスト ボックス内の [Seconds] 情報を変更することによって、Webhook のスケジュール設定を調整します。 頻繁に編集が行われるフィーチャ サービスの場合、[Seconds] の値を小さくすることで、Webhook を受信する回数を増やしてペイロードに含まれるイベント情報を減らします。 編集が頻繁には行われないフィーチャ サービスの場合、[Seconds] プロパティの値を大きくすることで、Webhook を受信する回数を減らしてペイロードに含まれるイベント情報を増やします。

      スケジュール設定の最小 (デフォルト) 値は 20 秒です。

  4. 上記のパラメーターを構成したら、[Create] をクリックしてリクエストを送信します。

    操作が完了すると、新しい Webhook がそのフィーチャ サービスに適用されます。