メインコンテンツまでスキップ

通知設定

外部通知

外部通知は、サードパーティのアプリに通知を届けることを実現しています。設計した通知の仕様とイベントに基づき、Webhook、SlackやJenkinsに通知を送信できます。

利用シーン

管理のプロジェクトに何か変更がある場合、その変更の通知をリアルタイムに指定のサードパーティーアプリに通知メッセージを届けます。

設定の説明

プロジェクトの管理者のみが設定できます。

通知のトリガーイベントを設定

サードパーティのアプリケーションの通知設定が異なるため、通知イベントの設定項目も異なります。

Slack

Slackの指定したチャネルへの通知イベントの送信をサポートします。指定のチェンネルでSlack apps - Incoming WebHooksを経由して、Incoming WebHookのWebhook URLを設定することで、Slack チャネルにイベントメッセージを送信できます。

フィールドの設定説明:

フィールド必須説明
通知名いいえ通知の名前、常に通知を説明します。
トリガーイベントはい以下のイベントをサポート:API変更、Schema変更、ドキュメント変更、データのインポート、自動テスト。以上のいずれかの動作が発生する場合、通知メッセージが送信されます。
サービスURLはいSlackのWebhook URLです。

Slackにバインドしてチャンネルを指定

プロジェクト管理者は、サードパーティ統合機能を使用して、 Slack - チェンネルで追加されたIncoming WebHooksをApidog のプロジェクト通知イベントに関連付け、関連するAPIの変更、ドキュメントの変更、自動テストの完了などの知らせを指定された Slack チャネルにプッシュできます。

  1. 指定のチャンネルで Integrations - Apps のなかでIncoming WebHooksをインストールして追加します。

インストールが完了されると、Incoming WebHooks の右側にあるViewボタンをクリックします。

ここで Incoming WebHooks の説明ページに移動されます。Configurationをクリックして設定します。

Add to Slackをクリックします。

Apidogの通知イベントをプッシュしたいチャンネルを選択して、Add Incoming WebHooks integrationをクリックします。

Webhook URLを取得してコピーします。

  1. 新しい通知イベントの作成

`設定>外部通知で「新規」ボタンをクリックします。

  1. 通知名を記入します。

  2. トリガーイベントを選択します。

  3. 通知チャンネルで Slack を選択します。

  4. Incoming WebHooksの設定で取得されたWebhook URLをサービスURLに貼り付けます。

保存をクリックすることでバインディングが完了されます。選択のイベントがトリガーされる度に、対応のSlackチャンネルで通知メッセージが受信できます。

Webhook

HTTPサーバへの通知イベントの送信をサポートします。POSTメソッドを受信するURLアドレスを指定することで、イベントメッセージをHTTPサーバに送信することができます。

フィールドの設定説明:

フィールド必須説明
通知名いいえ通知の名前、常に通知を説明します。
トリガーイベントはい以下のイベントをサポート:API変更、Schema変更、ドキュメント変更、データのインポート、自動テスト
以上のいずれかの動作が発生する場合、通知メッセージが送信されます。
サービスURLはい通知を受け取るHTTPサーバーのURLアドレスです。
署名キーいいえ送信されたコンテンツが HMAC SHA1 によって暗号化される場合、Tokenを利用して、認証を行うことが必要です。

セルフホストのHTTPサーバーとの連携

プロジェクト管理者は、そのHTTPサーバ内の関連するAPI変更、文書変更、および自動化テストの完了に関する通知を受信するために、サードパーティー連携機能を使用して、ホストからのHTTPサーバをApidog内のプロジェクト通知イベントに関連付けることができます。

新しい通知イベントの作成

`設定>サードパーティー連携で「新規」ボタンをクリックします。

  1. 通知名を記入します。
  2. トリガーイベントを選択します。
  3. 通知チャンネルで Webhook を選択します。
  4. サービスURLでセルフホストのHTTPサーバーのURLを記入します。
  5. 認証が必要となる場合、キーを署名キーに記入する必要があります。

保存をクリックすることで、連携が完了します。今後、トリガーイベントが発生する場合、HTTPサーバーで通知メッセージが受け取ります。

Jenkins

Jenkinsサービスに通知イベントを送信することをサポートします。Jenkins Webhook URLを設定すると、イベントメッセージがJenkinsに送信されます。

フィールドの設定説明:

フィールド必須説明
通知名いいえ通知の名前、常に通知を説明します。
トリガーイベントはい以下のイベントをサポート:API変更、Schema変更、ドキュメント変更、データのインポート、自動テスト
以上のいずれかの動作が発生する場合、通知メッセージが送信されます。
サービスURLはいURLは Generic Webhook Trigger プラグインによって設定されます。
署名キーいいえ認証Bearer Headerを通じてGeneric Webhook Trigger プラグインに送信できます。

Jenkinsサービスとの連携

プロジェクトの管理者は、サードパーティー連携機能を使って、JenkinsのGeneric Webhook Trigger プラグインで設定されたWebhook URLに通知イベントを送信できます。API変更、文書変更、および自動化テストの完了などのイベントが発生する場合、通知メッセージが自動的に送信されます。

  1. Jenkins Generic Webhook Trigger プラグインで設定されたWebhook URL

    Jenkins Dashboardで新しいビューを作成します。

apidog

作成したviewで Configure>Build Triggersの順にクリックして、 Generic Webhook Triggerを選択します。Webhook URLは "http://"+"your service address"+"/generic-webhook-trigger/invoke"のようなものです。

apidog

カスタムtokenにも対応可能:

apidog

  1. 通知イベントを作成

設定>サードパーティー連携で、「新規」をクリックします。

  1. Explain

    1. 通知名を記入します。
    2. トリガーイベントを選択します。
    3. チャンネルで「Jenkins」を指定します。
    4. Generic Webhook Trigger プラグインで設定されたWebhook URLを サービスURLフィールドに記入します。
    5. カスタムtokenが利用される場合、Token署名キーにコピー&ペーストします。

保存をクリックすることで、連携が完了します。今後、トリガーイベントが発生する場合、HTTPサーバーで通知メッセージが受け取ります。

img