ウェブフックフィールドの設定: メソッド、リソース、およびペイロード
webhookを設定する主な利点は、アラートやイベントからのNexthinkデータを、宛先に応じてさまざまなサードパーティツールにプッシュできることです。
webhook設定ページでは、宛先のサードパーティツールでアクションを実行するために重要な3つのフィールドがあります:
メソッド
リソース
ペイロード
以下のセクションでは、サードパーティツールでアクションを実行するための属性の設定方法を説明します。
メソッドの選択
webhookの設定ページから、資格情報を選択した後に:
メソッドのドロップダウンから、POST、PUT、またはPATCHのいずれかのオプションを選択します。 以下の表を参照してください。
オプションとして、各メソッドの意味を明確に把握するために、適切なサードパーティソフトウェアのドキュメントを確認してください。
すべてのベンダーやサードパーティツールのプロバイダーが同様に使用しているわけではないと仮定しないでください。
REST標準はHTTPを介して使用され、統一インターフェースの制約の主要部分を構成し、webhookに利用可能なリクエストメソッドを提供します。
POST
作成
POSTは新しいリソースを作成するために最も頻繁に使用されます。
PUT
更新/置換
PUTは、その更新機能のために最も頻繁に使用されます。 既知のリソースURIにPUTし、新しい更新されたオリジナルリソースの表現をリクエストボディに含めることができます。
PATCH
更新/修正
PATCHはその修正機能のために使用されます。 PATCHリクエストはリソース全体ではなく、リソースの変更点のみを含める必要があります。
*_CRUD_は作成、読み取り、更新、削除の頭字語です。
リソースフィールドの入力
リソースの特別な考慮事項:
リソースはエンドポイントを介してアクセス可能なデータセットで、APIで使用できます。
リソースは他のリソースと関連し、それらに対して実行できる操作によって制限されます。
リソースは関連データに基づいたエンドポイントグループとして表示されるか、またはそれらが操作できるオブジェクトに基づいて表示されます。
リソースは簡単な名前で表示され、ユーザーが正しいエンドポイントを見つけやすくなっています。 しかし、これは重要な機能を見落とす可能性があります。
webhook設定ページからのリソース値の追加:
第三者のREST APIで指定されたアクションであるリソース値を貼り付けてください。
URIは、webhookの資格情報で定義されたインスタンスURLに連結されるため、追加しないでください。
リソース値には、第三者ツールが必要とするパラメーター(key=value)を含めることができます。
必要に応じて、リソースにプレースホルダー
{{variable_name}}
を追加してください。 このページのペイロードにおけるデータモデル変数のプレースホルダーとしての使用セクションを参照してください。
有効なリソース値の例
https://webhook.atlassian.net/rest/servicedeskapi/request
rest/servicedeskapi/request
https://api.4me.com/v1/requests
v1/requests
https://fra1.qualtrics.com/API/v3/users
API/v3/users
https://ven01063.service-now.com/api/now/v1/table/incident
api/now/v1/table/incident
https://api.4me.com/v1/requests?api\_\=
v1/requests?api_<token>=
ペイロードの作成
ペイロードはHTTPのPOST/PUT/PATCHメソッドで送信されるデータパックです。
webhook設定ページからペイロードの値を書くには:
ペイロードに、APIをリクエストする際にサーバーに送信する重要な情報を含めてください。
オプションとして、webhookで使用されるツールに依存するため、適切なサードパーティフィールドと値を確認してください。
必要に応じて、Nexthinkのデータモデル変数をプレースホルダーとして使用する
{{variable_name}}
をペイロード内で使います。webhookのNQL条件を入力した後、システムはNexthink webインターフェースにおいて、便宜のために許可されたプレースホルダーをリストします。
このページに含まれる複数のプロバイダーからのメソッド、リソース、ペイロードの例をリファレンスとして使用します。
ペイロードフィールドはJSON形式のみを受け入れます。
データモデル変数をペイロード内のプレースホルダーとして使用する
Nexthinkからサードパーティツールへのデータをプッシュする最大の利点の一つは、発生したイベントに関する情報を伝達できることです。
ペイロード内でNexthinkのデータモデル変数をプレースホルダーとして使用するには:
ペイロードで報告された任意のフィールド内で、
{{variable_name}}
プレースホルダーを使用してNexthink変数を参照します。webhook NQL条件を入力した後、webhook設定ページはNexthink webインターフェースでの便宜のために許可されたプレースホルダーをリストします。
ペイロード内のプレースホルダーは、Nexthink変数を増加させるwebhook NQL条件と一致する必要があります。
生成されたサードパーティツール内で出力が読みやすくユーザーフレンドリーであることを保証するために、プレースホルダーに
as(format = text)
を追加してください。 例えば、{{remote_action.execution.outputs.as(format = text)}}
。必要に応じて、NQLデータモデルに厳密に定義されていない特別なプレースホルダーを使用し、このページに含まれ、Nexthinkウェブインターフェースの許可されたプレースホルダーにも参照されます:
下の画像は、Nexthinkのデータモデル変数を参照するプレースホルダーを含むペイロードの例です。 このケースに対してシステムが許可されたプレースホルダーをどのようにリストしているかに注意してください。
システムは空の値または無効な値についてプレースホルダーを置換できません。 このような場合、{{variable_name}}
はそれ自体を表示します。
アラートデータモデル変数の特別なプレースホルダー
この表には、NQLデータプロパティで厳密に定義されていないアラートのための特別なプレースホルダーが含まれています。
alert.monitor.thresholds
各配列アイテムにはalias
(メトリック名)と対応するvalue
があります:
{{alert.monitor.thresholds[n].alias}}
{{alert.monitor.thresholds[n].values}}
• [0]
値は常に利用可能です。
• [1]
またはそれ以上の値はオプションです。
alert.trigger_values
各配列アイテムにはalias
(メトリック名)と対応するvalue
があります:
{{alert.alert.trigger_values[n].alias}}
{{alert.alert.trigger_values[n].value}}
整数で[n]
値を置き換えます: [0]
, [1]
, など。
alert.trigger_reference_value
{{alert.alert.trigger_reference_value}}
alert.context
{{alert.alert.context}}
{{alert.alert.context.<property name>}}
{{alert.alert.context.<property name>.label}}
{{alert.alert.context.<property name>.data_path}}
{{alert.alert.context.<property name>.data_type}}
以下の例を参照してください*:
{{alert.alert.context.binary.name}}
{{alert.alert.context.binary.name.label}}
{{alert.alert.context.binary.name.data_path}}
{{alert.alert.context.binary.name.data_type}}
したがって、context
フィールドには、アラートに関連付けられたバイナリ、デバイス、またはユーザーの名前が含まれる可能性があります。
alert.alert.issue_view_link
alert.alert.device_view_link
alert.alerts.links
これらのプロパティは現在NQLデータモデルにリストされていません。
リモートアクションデータモデル変数の特別なプレースホルダー
この表には、NQLデータプロパティで厳密に定義されていないリモートアクションのための特別なプレースホルダーが含まれています。
remote_action.execution.outputs
{{remote_action.execution.outputs.<property name>}}
たとえば:
{{remote_action.execution.outputs.MeteredConnection}}
remote_action.execution.inputs
{{remote_action.execution.inputs.<property name>}}
たとえば:
{{remote_action.execution.inputs.InputPath}}
remote_action.execution.account_name
このプロパティは現在NQLデータモデルにリストされていません。
{{remote_action.execution.account_name}}
このプレースホルダーは、リモートアクションを実行したされるユーザー/従業員を提供します。
複数のプロバイダーおよびツールからのメソッド、リソース、ペイロードの例
webhookのユースケースセットアップドキュメントを参照し、いくつかのサードパーティツールの完全なwebhook設定を確認してください。
ITSMツール
ServiceNowでインシデントを作成する
メソッド: POST
リソース: api/now/v1/table/incident
ペイロード:
このガイドラインに従って、アラートとイベントを検出し、ServiceNowにインシデントを作成するために伝達するwebhookを設定してください。
AmplifyからのServiceNowインシデントチケットの更新
メソッド: PATCH
リソース: api/now/v1/table/incident/{{remote_action.execution.external_reference}}
ペイロード (メッセージ):
"work_notes"に as(format = text)
機能を含め、リモートアクションの出力を読みやすい形式で表示します。
このガイドラインに従ってください AmplifyからServiceNowの実行アクションログを更新するためにwebhookを設定する方法。
ServiceNowの問題を作成する
方法: POST
リソース: api/now/v1/table/problem
ペイロード:
BMCのインシデントを作成する
方法: POST
リソース: api/arsys/v1/entry/HPD:IncidentInterface_Create?fields=values(Incident Number , Request ID, First_Name)
ペイロード:
4meのインシデントを作成する
方法: POST
リソース: v1/requests
ペイロード:
Jira Service Deskのサービスリクエストを作成する
方法: POST
リソース: rest/servicedeskapi/request
ペイロード:
アラートツール
Pager Dutyのインシデントを作成する
方法: POST
リソース: incidents
ペイロード:
メッセージングツール
MS Teamsチャンネルにメッセージを投稿する
方法: POST
リソース: /workflows/XXXXXXXXXXXXXXXXXXX/triggers/manual/paths/invoke?api-version=?????&sp=/triggers/manual/run&sv=1.0&sig=XXXXXXXXXXXXXXX
ペイロード:
このガイドラインに従ってください MS Teamsを設定してリクエストを受信します。
Slackの特定のチャンネルにメッセージを投稿する
方法: POST
リソース: services/T01S01V0HB3/B02GY9BKZ7G/DIDFWXuCAeFfqkgNntQqJV7e
ペイロード:
このガイドラインに従ってください Slackを設定してリクエストを受信します。
Zoomにメッセージを投稿する
方法: POST
リソース: chat/webhooks/incomingwebhook/dSUcla-dQaGYgqGuBk3BsQ
.
上記のURLリソースは説明用であり、Zoomで直接設定するエンドポイントURLに依存します。
ペイロード: Zoomに送信したいメッセージを追加します。 以下の例を参照してください。
このガイドラインに従ってください Zoomを設定してリクエストを受信します。
生産性ツール
Jiraの特定のプロジェクトにバグを作成する
方法: POST
リソース: services/T01S01V0HB3/B02GY9BKZ7G/DIDFWXuCAeFfqkgNntQqJV7e
ペイロード:
データプラットフォーム
Splunkのイベントコレクターにイベントを送信する
方法: POST
リソース: services/collector?index=_main
ペイロード:
Last updated