Menu Close

第4章 Webhook を使用した 3scale の自動化

Webhook は自動化を容易にする機能であり、3scale で発生するイベントに基づいて他のシステムの統合にも使用されます。3scale システムで指定のイベントが発生すると、Webhook メッセージと共にアプリケーションに通知されます。たとえば、Webhook を設定することにより、新しいアカウントサインアップからのデータを使用して、デベロッパーポータルにデータを投入することができます。

4.1. Webhook の概要

Webhook は、Webhook 設定ウィンドウで利用可能なイベントから選択されたイベントによってトリガーされるカスタム HTTP コールバックです。これらのイベントのいずれかが発生すると、3scale システムは、Webhook セクションで指定した URL アドレスに対して HTTP または HTTPS リクエストを行います。Webhook を使用すると、リスナーを設定し、イベント追跡などの必要な動作を呼び出すことができます。

Webhook のフォーマットは常に同じです。以下の構造の XML ドキュメントでエンドポイントにポストします。

<?xml version="1.0" encoding="UTF-8"?>
<event>
  <type>application</type>
  <action>updated</action>
  <object>
    THE APPLICATION OBJECT AS WOULD BE RETURNED BY A GET ON THE ACCOUNT MANAGEMENT
    API
  </object>
</event>

各要素では、以下の情報を提供します。

  • <type>: applicationaccount など、イベントの主体を表します。
  • <action>: updatedcreateddeleted などの値を使用してアクションを指定します。
  • <object > : Account Management API によって返される同じ形式で XML オブジェクト自体を指定します。インタラクティブな ActiveDocs を使用して確認できます。

Webhook が 3scale によって実行されたことを保証する必要がある場合は、HTTPS Webhook URL を公開し、3scale の Webhook 宣言にカスタムパラメーターを追加します。たとえば、https://your-webhook-endpoint?someSecretParameterName=someSecretParameterValue となります。パラメーター名と値を指定します。続いて、Webhook エンドポイント内で、このパラメーター値があることを確認します。