Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

このセクションでは、CloudGearアプリケーションCloudGearWebHookを受け取る為の実装について説明いたします。


WebHookについて

CloudGearには、サービススクエアが作成/削除されたときや、ユーザースクエアに加入/脱退したときなどに、CloudGearアプリケーションのバックエンドサーバーにその情報を伝えるための仕組みが存在します。


WebHookの種類

WebHookは、いくつかのタイプを持ちます。

タイプ説明
idprovisioningユーザーの追加・削除などユーザーに関連した変更が発生した場合に発行されるWebHookです。
squareprovisioningスクエアに対する変更、または契約状態の変更によって発行されるWebHookです。


 

WebHookの発行タイミング

WebHookは、以下のタイミングで発行されます。

タイミング発行されるWebHook
サービスの申し込みsquareprovisioning(ADD)、idprovisioning(ADD)
サービス利用者による契約プランの更新squareprovisioning(UPDATE)
サービスの解約squareprovisioning(DELETE)、idprovisioning(DELETE)

スクエアにユーザーを招待

Note

招待されたユーザーがスクエアへの参加を承認した段階で発行されます。


idprovisioning(ADD)
スクエアからユーザーを削除idprovisioning(DELETE)


 

WebHookの実装


Child pages (Children Display)
alltrue
styleh4h3


WebHookリクエスト

以下のフォーマットの内容でCloudGearからCloudGearアプリケーションにHTTPリクエストが送信されます。

HTTPリクエストの送信先は、サービスマネージャのWebHookで設定したエンドポイントとなります。

Code Block
languagejs
titlesquareprovisioning
{
 "event": "squareprovisioning",
 "data": [{
   "serviceId": 1, //サービスID
   "plans": [{
      "id": "planId", // プランID
      "action": "ADD|DELETE|UPDATE" // プラン操作
   }],
   "squareId": "squareId", // スクエアID
   "action": "ADD|DELETE", // スクエアへの操作
   "cause": "cause" // 操作理由、なければ空
 }]
}


Code Block
languagejs
titleidprovisioning
{
  "event": "idprovisioning",
  "data": [{
    "type": "ADD", // 実行タイプ(ADD/DELETE)
    "userinfo": {
      "sub": "user1@unirita.co.jp", // UID
      "name": "ユニリタ太郎", // 名前
      "given_name": "太郎", // 名
      "family_name": "ユニリタ", // 姓
      "preferred_username": "user1@unirita.co.jp", // UID(MUST NOT Unique)
      "email": "user1@unirita.co.jp", // メールアドレス
      "square_id": "12345667890", // 実行対象になるスクエアID
      "square_attrs": { // ユーザのスクエア属性
        "属性名": "属性値",
        ...
      }
    }
  }, ...{}]
}