Skip to main content

Webhook の作成

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

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

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

  • 組織 Webhook を使用するには、組織が ArcGIS Enterprise 10.7 以降を使用している必要があります。 サービス Webhook を使用するには、組織が ArcGIS Enterprise 11.0 以降を使用している必要があります。

  • 組織 Webhook を作成および管理するには、組織 Webhooks 権限またはデフォルトの管理者ロールが割り当てられている必要があります。

  • ジオプロセシング サービス Webhook を作成および管理するには、ジオプロセシング権限またはデフォルトの管理者ロールが割り当てられている必要があります。

    注意:

    ジオプロセシング権限を割り当てられたユーザーは、カスタム ロールにサーバーベースのレイヤーを公開する権限も追加する必要があります。

  • フィーチャ サービス Webhook を作成および管理するには、フィーチャ レイヤー権限またはデフォルトの管理者ロールが割り当てられている必要があります。

  • {data-pivot='os-linux'} HTTPS を介して通信するように Webhook レシーバーが構成されている必要があります。 サードパーティー Web サービス レシーバー (Microsoft Power Automate、Zapier、および IFFT)、カスタム Web サービス、ArcGIS Notebook Server、ArcGIS Workflow Manager などのレシーバーでサポートされているいくつかのオプションがあります。 カスタム Web サービスの作成方法の例、およびサードパーティー レシーバーの基本操作については、Webhook リポジトリーをご参照ください。 Notebook Server Webhook と Workflow Manager Webhook の作成の詳細については、それぞれ「ArcGIS Notebooks でのワークフローの自動化」および「Webhook を使用したジョブの作成」をご参照ください。

  • {data-pivot='os-windows'} HTTPS を介して通信するように Webhook レシーバーが構成されている必要があります。 サードパーティー Web サービス レシーバー (Microsoft Power Automate、Zapier、および IFFT)、カスタム Web サービス、ArcGIS Notebook Server、ArcGIS Workflow Manager などのレシーバーでサポートされているいくつかのオプションがあります。 カスタム Web サービスの作成方法の例、およびサードパーティー レシーバーの基本操作については、Webhook リポジトリーをご参照ください。 Notebook Server Webhook と Workflow Manager Webhook の作成の詳細については、それぞれ「ArcGIS Notebooks でのワークフローの自動化」および「Webhook を使用したジョブの作成」をご参照ください。

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

  • ホストされていないフィーチャ サービスの Webhook を構成するには、そのサービスが参照しているエンタープライズ ジオデータベース データが変更追跡の要件を満たし、次のパターンのいずれかに従っている必要があります。

    • 履歴管理が有効で、グローバル ID を持つバージョン非対応のフィーチャ サービスであること。

    • バージョン管理機能が有効ではなく、編集内容がデフォルト バージョンのフィーチャに直接適用されるブランチ バージョン対応フィーチャ サービスであること。

    • バージョン管理機能が有効なブランチ バージョン対応フィーチャ サービスであること。 バージョン管理機能が有効な場合、サービスは FeaturesPosted イベント トリガーを持つ Webhook を作成します。このイベント トリガーにより、そのサービスでポスト操作が実行されると、常にその Webhook が呼び出されます。

    注意:

    ブランチ バージョン対応フィーチャ サービスのサポートは、ArcGIS Enterprise 11.3 で追加されました。

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

組織の Webhook の構成

組織の Webhook を使用して、アイテム、グループ、およびユーザーに関連付けられたイベントのトリガーに登録できます。

Organization Webhook の作成

ArcGIS Enterprise から組織の Webhook を作成するには、次の手順を実行します:

  1. デフォルト管理者または組織 Webhook 権限が付与されたカスタム ロールのメンバーとしてサイン インしていることを確認します。

  2. 組織 > 設定 > Webhooks の順に移動します。

  3. 組織の Webhook で Webhook の作成 をクリックします。

  4. Webhook の作成 ウィンドウで、次の手順を実行します。

    1. Name テキスト ボックスに Webhook の一意の名前を入力します。

    2. タイプ ドロップダウン メニューから、Webhook タイプを選択します。

      • すべて を選択すると、サポートされているすべてのイベント トリガーに登録されます。 各イベントが発生すると通知を受けます。

      • アイテム、ユーザー、グループ、または ロール を選択すると、登録するイベント トリガーを手動で定義できます。

    3. すべて 以外の Webhook タイプを選択すると、選択した Webhook タイプに関連する追加のドロップダウン メニューが表示されます。 たとえば、Webhook タイプに アイテム を選択すると アイテム ドロップダウン メニューが表示され、Webhook が監視する特定のアイテムを選択できます。

    4. イベント ドロップダウン メニューから、イベント トリガーを選択します。 たとえば、特定のアイテムが公開された時点で Webhook を呼び出す場合は、「/items/<アイテム ID>/publish」を選択します。

    5. Webhook レシーバー タイプを選択します。

      • Webhook レシーバー URL を選択した場合、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

      • ノートブック を選択した場合、Webhook がトリガーされた時点で実行されるノートブックを選択します。

        注意:

        ノートブック オプションが使用できない場合は、お使いのポータルで Notebook Server がまだ構成されていません。 オプションが使用可能であるが、選択できなくなっている場合は、Webhook の構成に適したノートブックがありません。 Webhook に使用するノートブック アイテムを所有している必要があります。

    6. 必要に応じて、シークレット (オプション) テキスト ボックスに Webhook のシークレット値を設定します。 シークレット値は Webhook ペイロード ヘッダーに含まれる署名を生成するために使用されます。 Webhook レシーバーはこの署名を使用し、メッセージを信頼できるかどうかを判断します。

  5. Webhook の作成 をクリックします。

組織の Webhook の詳細パラメーターの構成

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

ArcGIS Enterprise から詳細プロパティを設定するには、次の手順を実行します:

  1. デフォルト管理者、または組織の Webhook の権限が付与されたカスタム ロールのメンバーとして、組織にサイン インします。

  2. 組織 > 設定 > Webhooks の順に移動します。

  3. 組織の Webhook で 高度な設定 をクリックします。

  4. 高度な設定 ウィンドウで、次の手順を実行します:

    1. 配信の試行回数 の値を設定します。

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

    2. 通知タイムアウト の値を設定します。

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

    3. 通知の経過時間 の値を設定します。

      この値は、各ペイロード配信試行間の時間 (秒) を指定します。 デフォルトで、ArcGIS Enterprise は、配信の試行回数 で指定された試行回数に到達するまで、前回の試行に失敗してから 5 秒後に別のペイロードの配信を試行します。

  5. 保存 をクリックします。

    更新されたプロパティが、構成されているすべての組織 Webhook に適用されます。

サービス Webhook の構成

サービス Webhook を使用すると、組織のフィーチャ サービスに関連付けられているイベントや、ジオプロセシング サービス ジョブが完了したときのトリガーに登録できます。

サービス Webhook の作成

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

  1. デフォルトの管理者か、サービス Webhook を作成および管理する管理権限を持つカスタム ロールのメンバーとして、組織にサイン インします。

    注意:

    公開者のロールが割り当てられたメンバーは、組織からサービス Webhook を作成または管理できないので、管理 API を使用してこれらのワークフローを実行する必要があります。

  2. 組織 > 設定 > Webhooks の順に移動します。

  3. フィーチャ レイヤー Webhook とサービス Webhook で Webhook の作成 をクリックします。

  4. Webhook の作成 ウィンドウで、次の手順を実行します。

    1. Name テキスト ボックスに Webhook の一意の名前を入力します。

    2. アイテム ドロップダウン メニューからサービスを選択します。

      注意:

      ジオプロセシング サービスを選択すると、イベントが サービス完了 に設定されます。 フィーチャ サービスを選択すると、イベント ドロップダウン メニューが表示されます。

    3. フィーチャ サービス Webhook を選択する場合、イベント ドロップダウン メニューからイベント トリガーを選択します。 たとえば、編集に新しいアタッチメントが含まれる場合に Webhook を呼び出すには、AttachmentsCreated を選択します。

    4. Webhook レシーバー タイプを選択します。

      • Webhook レシーバー URL を選択した場合、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

      • ノートブック Webhook レシーバー を選択した場合、Webhook がトリガーされた時点で実行されるノートブックを選択します。

        注意:

        ノートブック オプションが使用できない場合は、お使いのポータルで Notebook Server がまだ構成されていません。 オプションが使用可能であるが、選択できなくなっている場合は、Webhook の構成に適したノートブックがありません。 Webhook に使用するノートブック アイテムを所有している必要があります。

    5. 必要に応じて、シークレット (オプション) テキスト ボックスに Webhook のシークレット値を設定します。 シークレット値は Webhook ペイロード ヘッダーに含まれる署名を生成するために使用されます。 Webhook レシーバーはこの署名を使用し、メッセージを信頼できるかどうかを判断します。

  5. Webhook の作成 をクリックします。

サービス Webhook の詳細パラメーターの構成

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

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

  1. デフォルトの管理者か、サービス Webhook を作成および管理する管理権限を持つカスタム ロールのメンバーとして、組織にサイン インします。

    注意:

    公開者のロールが割り当てられたメンバーは、組織からサービス Webhook を作成または管理できないので、管理 API を使用してこれらのワークフローを実行する必要があります。

  2. 組織 > 設定 > Webhooks の順に移動します。

  3. フィーチャ レイヤー Webhook とサービス Webhook で 高度な設定 をクリックします。

  4. 高度な設定 ウィンドウで、次の手順を実行します:

    1. 配信の試行回数 の値を設定します。

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

    2. 通知タイムアウト の値を設定します。

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

    3. 通知の経過時間 の値を設定します。

      この値は、各ペイロード配信試行間の時間 (秒) を指定します。 デフォルトで、システムは、配信の試行回数 で指定された試行回数に到達するまで、前回の試行に失敗してから 5 秒後に別のペイロードの配信を試行します。

    4. 過去の日数 の値を設定します。

      この値は、Webhook が無効になる前に、指定数のエラーが発生しても容認できる日数を指定します。 デフォルトでは、システムは、5 日間にわたって指定数のエラー (エラーの最大数 で指定される) を容認します。 値は 1 ~ 30 の整数である必要があります。

    5. エラーの最大数 の値を設定します。

      この値は、Webhook が無効になる前に、所定の日数にわたって発生しても容認されるエラー数を指定します。 デフォルトでは、システムは、Webhook が無効になる前に、所定の日数 (過去の日数 で指定される) にわたって 5 回のエラーを容認します。 1 ~ 10 の整数値にする必要があります。

  5. 保存 をクリックします。

    更新されたプロパティが、構成されているすべてのサービス Webhook に適用されます。

ノートブックを使用した Webhook と Webhook レシーバーの作成

アイテム、グループ、またはユーザーに関連付けられたイベントが発生した時点で、所有しているノートブックを自動的に実行するように Webhook を構成することができます。 ArcGIS Notebook Server は Webhook ペイロードのレシーバーとしての役割を果たします。 Webhook がトリガーされると、ArcGIS Notebook Server に対して HTTP リクエストが送信され、選択されたノートブックがユーザーの操作なしで実行されます。

ノートブックを使用して Webhook と Webhook レシーバーを作成および管理する方法の詳細については、「Webhook イベントを使用したノートブック ワークフローの自動化」をご参照ください。

ノートブックを使用して Webhook と Webhook レシーバーを作成および管理する方法の詳細については、「Webhook イベントを使用したノートブック ワークフローの自動化」をご参照ください。