組織の管理者は、特定のイベントが発生したときに通知を受けるように ArcGIS Enterprise デプロイメントの Webhook を構成できます。 以下の各セクションでは、Organization Webhook とサービス Webhook を構成する方法について説明します。
Webhook を作成するための前提条件
Webhook を作成する前に、以下を考慮してください。
- 組織 Webhook を使用するには、組織が ArcGIS Enterprise 10.7 以降を使用している必要があります。 サービス Webhook を使用するには、組織が ArcGIS Enterprise 11.0 以降を使用している必要があります。
- 組織 Webhook を作成および管理するには、組織 Webhooks 権限またはデフォルトの管理者ロールが割り当てられている必要があります。
- ジオプロセシング サービス Webhook を作成および管理するには、ジオプロセシング権限またはデフォルトの管理者ロールが割り当てられている必要があります。
注意:
ジオプロセシング権限を割り当てられたユーザーは、カスタム ロールにサーバーベース レイヤーを公開する権限も追加する必要があります。
- フィーチャ サービス Webhook を作成および管理するには、フィーチャ レイヤー権限またはデフォルトの管理者ロールが割り当てられている必要があります。
- 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 を構成するには、そのサービスが参照しているエンタープライズ ジオデータベース データが変更追跡の要件を満たし、次のパターンのいずれかに従っている必要があります。
- 履歴管理が有効で、Global ID を持つバージョン非対応のフィーチャ サービスであること。
- バージョン管理機能が有効ではなく、編集内容がデフォルト バージョンのフィーチャに直接適用されるブランチ バージョン対応フィーチャ サービスであること。
- バージョン管理機能が有効なブランチ バージョン対応フィーチャ サービスであること。 バージョン管理機能が有効な場合、サービスは FeaturesPosted イベント トリガーを持つ Webhook を作成します。このイベント トリガーにより、そのサービスでポスト操作が実行されると必ずその Webhook が呼び出されます。
注意:
ブランチ バージョン対応フィーチャ サービスのサポートは、ArcGIS Enterprise 11.3 で追加されました。
- ジオプロセシング サービスの Webhook を構成するには、そのサービスが非同期でなければなりません。
組織の Webhook の構成
Organization Webhook を使用することで、ArcGIS Enterprise ポータル アイテム、グループ、およびユーザーに関連付けられたイベントのトリガーに登録できます。
Organization Webhook の作成
ArcGIS Enterprise ポータル Web サイトから組織 Webhook を作成するには、次の手順を実行します。
- デフォルト管理者または組織 Webhook 権限が付与されたカスタム ロールのメンバーとしてサイン インしていることを確認します。
- [組織] > [設定] > [Webhook] の順に参照します。
- [組織の Webhook] で [Webhook の作成] をクリックします。
- [Webhook の作成] ウィンドウで、次の手順を実行します。
- [Name] テキスト ボックスに Webhook の一意の名前を入力します。
- [タイプ] ドロップダウン メニューから、Webhook タイプを選択します。
- [すべて] を選択すると、サポートされているすべてのイベント トリガーに登録されます。 各イベントが発生すると通知を受けます。
- [アイテム]、[ユーザー]、[グループ]、または [ロール] を選択すると、登録するイベント トリガーを手動で定義することができます。
- [すべて] 以外の Webhook タイプを選択すると、選択した Webhook タイプに関連する追加のドロップダウン メニューが表示されます。 たとえば、Webhook タイプに [アイテム] を選択すると [アイテム] ドロップダウン メニューが表示され、Webhook が監視する特定のアイテムを選択できます。
- [イベント] ドロップダウン メニューから、イベント トリガーを選択します。 たとえば、特定のアイテムが公開された時点で Webhook を呼び出す場合は、「/items/<アイテム ID>/publish」を選択します。
- 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 に使用するノートブック アイテムを所有している必要があります。
- [Webhook URL] を選択した場合、Webhook レシーバーのペイロード URL を入力します。 ペイロード URL の例を以下に示します。
- 必要に応じて、[シークレット (オプション)] テキスト ボックスに Webhook のシークレット値を設定します。 シークレット値は Webhook ペイロード ヘッダーに含まれる署名を生成するために使用されます。 Webhook レシーバーはこの署名を使用し、メッセージを信頼できるかどうかを判断します。
- [Webhook の作成] をクリックします。
Organization Webhook の詳細パラメーターの構成
組織で利用する Webhook に適用される詳細設定で、配信の試行回数、通知時刻、配信試行間の時間などを指定することによって、Webhook の動作をさらにカスタマイズすることができます。
ArcGIS Enterprise ポータル Web サイトから詳細プロパティを設定するには、次の手順を実行します。
- デフォルト管理者または組織 Webhook 権限が付与されたカスタム ロールのメンバーとして、組織にサイン インします。
- [組織] > [設定] > [Webhook] の順に参照します。
- [組織の Webhook] で [高度な Webhook 設定] をクリックします。
- [高度な Webhook 設定] ウィンドウで、次の手順を実行します。
- [配信の試行回数] の値を設定します。
この値は、Webhook ペイロードを配信する試行回数を指定します。 デフォルトでは、ArcGIS Enterprise ポータルはペイロードの配信を 3 回試行します。 試行回数の値は 0 ~ 5 の整数である必要があります。
- [通知タイムアウト] の値を設定します。
この値は、ArcGIS Enterprise ポータルがレシーバーからのレスポンスの受信を待機する時間の長さ (秒) を指定します。 デフォルトでは、ArcGIS Enterprise ポータルは 10 秒待機します。 ArcGIS Enterprise ポータルが待機する秒数の値は 0 ~ 60 の整数である必要があります。
- [通知の経過時間] の値を設定します。
この値は、各ペイロード配信試行間の時間 (秒) を指定します。 デフォルトで、ArcGIS Enterprise ポータルは、[配信の試行回数] で指定された試行回数に到達するまで、前回の試行に失敗してから 5 秒後に別のペイロードの配信を試行します。
- [配信の試行回数] の値を設定します。
- 上記の設定を構成したら、[保存] をクリックします。
更新されたプロパティが、構成されているすべての組織 Webhook に適用されます。
サービス Webhook の構成
サービス Webhook を使用すると、組織のフィーチャ サービスに関連付けられているイベントや、ジオプロセシング サービス ジョブが完了したときのトリガーに登録できます。
サービス Webhook の作成
ジオプロセシング サービスまたはフィーチャ サービスの Webhook を作成するには、次の手順に従います。
- デフォルトの管理者か、サービス Webhook を作成および管理する管理権限を持つカスタム ロールのメンバーとして組織にサイン インします。
注意:
公開者のロールが割り当てられたメンバーは、ArcGIS Enterprise ポータル サイトからサービス Webhook を作成または管理できないので、管理 API を使用してワークフローを実行します。 - [組織] > [設定] > [Webhook] の順に参照します。
- [サービス Webhooks] で [Webhook の作成] をクリックします。
- [Webhook の作成] ウィンドウで、次の手順を実行します。
- [Name] テキスト ボックスに Webhook の一意の名前を入力します。
- [サービス] ドロップダウン メニューからサービスを選択します。
注意:
ジオプロセシング サービスを選択すると、イベントが [サービス完了] として設定されます。 フィーチャ サービスを選択すると [イベント] ドロップダウン メニューが有効になります。
- フィーチャ サービス Webhook を選択する場合、[イベント] ドロップダウン メニューからイベント トリガーを選択します。 たとえば、編集に新しいアタッチメントが含まれる場合に Webhook を呼び出すには、[AttachmentsCreated] を選択します。
- [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 ペイロード ヘッダーに含まれる署名を生成するために使用されます。 Webhook レシーバーはこの署名を使用し、メッセージを信頼できるかどうかを判断します。
- [Webhook の作成] をクリックします。
サービス Webhook の詳細パラメーターの構成
サービス Webhook に適用される詳細設定で、配信の試行回数、通知時刻、配信試行間の時間などを指定することによって、Webhook の動作をさらにカスタマイズすることができます。
ArcGIS Enterprise ポータル Web サイトから詳細プロパティを設定するには、次の手順を実行します。
- デフォルトの管理者か、サービス Webhook を作成および管理する管理権限を持つカスタム ロールのメンバーとして組織にサイン インします。
注意:
公開者のロールが割り当てられたメンバーは、ArcGIS Enterprise ポータル サイトからサービス Webhook を作成または管理できないので、管理 API を使用してワークフローを実行します。 - [組織] > [設定] > [Webhook] の順に参照します。
- [サービス Webhook] で [高度な Webhook 設定] をクリックします。
- [高度な Webhook 設定] ウィンドウで、次の手順を実行します。
- [配信の試行回数] の値を設定します。
この値は、Webhook ペイロードを配信する試行回数を指定します。 デフォルトでは、システムはペイロードの配信を 3 回試行します。 試行回数の値は 0 ~ 5 の整数である必要があります。
- [通知タイムアウト] の値を設定します。
この値は、システムがレシーバーからのレスポンスの受信を待機する時間の長さ (秒) を指定します。 デフォルトでは、システムは 10 秒待機します。 値は 0 ~ 60 秒の整数である必要があります。
- [通知の経過時間] の値を設定します。
この値は、各ペイロード配信試行間の時間 (秒) を指定します。 デフォルトで、システムは、[配信の試行回数] で指定された試行回数に到達するまで、前回の試行に失敗してから 5 秒後に別のペイロードの配信を試行します。
- [過去の日数] の値を設定します。
この値は、Webhook が無効になる前に、指定数のエラーが発生しても容認できる日数を指定します。 デフォルトでは、システムは、5 日間にわたって指定数のエラー ([エラーの最大数] で指定される) を容認します。 値は 1 ~ 30 の整数である必要があります。
- [エラーの最大数] の値を設定します。
この値は、Webhook が無効になる前に、所定の日数にわたって発生しても容認されるエラー数を指定します。 デフォルトでは、システムは、Webhook が無効になる前に、所定の日数 ([過去の日数] で指定される) にわたって 5 回のエラーを容認します。 値は 1 ~ 30 の整数である必要があります。
- [配信の試行回数] の値を設定します。
- 上記の設定を構成したら、[保存] をクリックします。
更新されたプロパティが、構成されているすべてのサービス Webhook に適用されます。