Versions Compared

Key

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

サービス購入者サービスの申し込みが完了した際に発行されるWebHookについて説明します。

Note

2020年1月8日の本番リリース(予定)より、既存のWebHookの一部パラメータが変更され、新たなWebHookが追加されます。
β環境では変更が適用されている為、β環境をご利用の場合は、概要(ベータ環境)をご覧ください。

 

概要

サービス申し込みが完了するとSquareProvisioningとIDProvisioning、payments/change-billing-periodの3つのWebHookが発行されます。

SquareProvisioning WebHookには、契約された料金プランの情報と契約によって生成されたスクエアのIDが含まれます。
IDProvisioning WebHookには、契約者の情報が含まれます。
payments/change-billing-periodには、契約された料金プランが適用される期間が含まれます。
*料金プランがトライアルプランの場合は、トライアル期間が通知対象となります。

以下の順番でWebHookは発行されます。

  1. SquareProvisioning
  2. IDProvisioning
  3. payments/change-billing-period
Note現在、β環境では「バージョン1のみ送信」を選択している場合、payments/change_billing_
  1. period
は送信されません。


リクエストボディ

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

Code Block
languagejs
titlesquareprovisioning(ADD)
{
  "event":"squareprovisioning",
  "version": 1,
  "data":[{
    "plans":[{
      "id":"UUID", // プランID
      "action":"ADD" // プランへの操作タイプ
    }],
    "serviceId":1, // サービスID
    "squareId":"UUID", // スクエアID
    "action":"ADD", // スクエアへの操作タイプ
    "cause":"execute SPROV.", // 操作理由
    "userinfo":{ // スクエアオーナーのユーザー情報
      "sub":"cloudgear@cloudgear.services",
      "name":"クラウドギア",
      "email":"cloudgear@cloudgear.services",
      "given_name":"ギア",
      "family_name":"クラウド",
      "preferred_username":"cloudgear@cloudgear.services",
      "square_id":"UUID",
      "square_attrs":{
        "属性名":"属性値",
        ...
      }
    }
  }]
}


Code Block
languagejs
titleidprovisioning(ADD)
{
  "event":"idprovisioning",
  "versiondata": [{
1,    "data": [{
    "type":"ADD", // 操作タイプ
    "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": { // ユーザのスクエア属性
        "属性名": "属性値",
        ...
      }
    }
  }]
}


Code Block
languagejs
titleevent="payments", type="change-billing-period"
{
  "event":"payments",
  "type":"change-billing-period",
  "data": {
    "subscription_id": "sub_1234567890", // サブスクリプションID
    "service_id": 1, // サービスID
    "square_id": "service-square-id", // サービススクエアID
    "period_start": 123456789, // 料金プランの適用開始日時(秒)
    "period_end": 987654321 // 料金プランの適用終了日時(秒)
  }
}
現在β環境でのみ、WebHookの設定で「バージョン2のみ送信」または「バージョン1とバージョン2を送信」を選択すると以下の


Anchor
概要(ベータ環境)
概要(ベータ環境)
概要(ベータ環境)


サービス申し込みが完了すると契約開始とユーザーの追加、課金サイクル更新の3つのWebHookが発行されます。

SubscriptionCreate
Note

送信されるWebHookの種類はバージョンにより異なります。

  • UserProvisioning
  • payments/change-billing-period 
  • Code Block
    titleevent = "subscription", type = "create"
    { "id": "91018c24-4182-4e20-8509-501471b6304f", // UUID "event": "subscription", "type": "create", "created_at": 1576200980964, // 作成日時 "version": 2, // WebHookのバージョン "data": { "plans": [ {

    契約開始のWebHookは、以下の2種類になります。

    • SubscriptionCreate(Version2)
    • SquareProvisioning(Version1)

    ユーザー追加のWebHookは、以下の2種類になります。

    • UserProvisioning(Version2)
    • IDProvisioning(Version1)

    課金サイクル更新のWebHookは、バージョン2のみとなります。

    • payments/change_billing_period(Version2)

    契約開始のWebHookには、契約された料金プランの情報と契約によって生成されたスクエアのIDが含まれます。
    ユーザー追加のWebHookには、契約者の情報が含まれます。
    課金サイクルのWebHookには、契約された料金プランが適用される期間が含まれます。
    *料金プランがトライアルプランの場合は、トライアル期間が通知対象となります。

    以下の順番でWebHookは発行されます。

    1. SubscriptionCreate(Version2), SquareProvisioning(Version1)
    2. UserProvisioning(Version2), IDProvisioning(Version1)
    3. payments/change_billing_period(Version2)


    Code Block
    titleevent = "subscription", type = "create"
    {
      "id": "91018c24-4182-4e20-8509-501471b6304f", // UUID
      "event": "subscription",
      "type": "create",
      "created_at": 1576200980964, // 作成日時
      "version": 2, // WebHookのバージョン
      "data": {
        "plans": [
          {
            "id": "d6bbb65c-8c53-4378-b60b-a1da3bfbb93e", // プランID
            "action": "ADD" // プランへの操作タイプ
          }
        ],
        "trialing": true, // トライアルの有無
        "cause": "New subscription has been created.", // 操作理由
        "service_id": 1, // サービスID
        "square_id": "square_id", // 実行対象のスクエアID
        "subscription_id": "sub_GLkZY8VfkfCMrm", // 契約ID
        "userinfo": { // 契約者のユーザー情報
          "sub": "unirita@unirita.co.jp",
          "name": "ユニリタ123456112",
          "email": "unirita@unirita.co.jp",
          "given_name": "太郎",
          "family_name": "ユニリタ",
          "preferred_username": "unirita@unirita.co.jp",
          "domain_id": "cloudgear.co.jp",
          "image_url": {
            "100": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/100/8021deb7-b3d6-4bb1-b2da-c31335c1671c",
            "300": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/300/8021deb7-b3d6-4bb1-b2da-c31335c1671c",
            "500": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/500/8021deb7-b3d6-4bb1-b2da-c31335c1671c"
          },
          "user_attrs": [],
          "service_roles": [],
          "subscription_roles": [
            "owner"
          ]
        }
      }  
    }


    Code Block
    languagejs
    titlesquareprovisioning(ADD)
    {
      "event":"squareprovisioning",
      "version": 1,
      "data":[{
        "plans":[{
          "id":"UUID", // プランID
          "action":"ADD" // プランへの操作タイプ
        }],
        "serviceId":1, // サービスID
        "squareId":"UUID", // スクエアID
        "action":"ADD", // スクエアへの操作タイプ
        "cause":"execute SPROV.", // 操作理由
        "userinfo":{ // スクエアオーナーのユーザー情報
          "idsub": "d6bbb65c-8c53-4378-b60b-a1da3bfbb93e", // プランID
     "cloudgear@cloudgear.services",
          "actionname": "ADD" // プランへの操作タイプ
     クラウドギア",
        }  "email":"cloudgear@cloudgear.services",
      ],     "trialinggiven_name": true"ギア",
    // トライアルの有無     "causefamily_name": "New subscription has been created."クラウド",
    // 操作理由     "service_id": 1, // サービスIDpreferred_username":"cloudgear@cloudgear.services",
          "square_id": "square_idUUID",
    // 実行対象のスクエアID     "subscriptionsquare_idattrs": "sub_GLkZY8VfkfCMrm", // 契約ID{
            "userinfo属性名":"属性値",
      { // 契約者のユーザー情報    ...
      "sub": "unirita@unirita.co.jp",   }
       "name": "ユニリタ123456112", }
      }]
    }


    Code Block
    titleevent = "user", type = "provisioning"
    {
      "emailid": "unirita@unirita.co.jp",
      91018c24-4182-4e20-8509-501471b6304e" // UUID
       "given_nameevent": "太郎user",
       
      "family_nametype": "ユニリタprovisioning",
       
      "preferredcrated_usernameat": "unirita@unirita.co.jp"1576200980964, // 作成日時
        "domain_idversion": 2
      "cloudgear.co.jp",
    data": {
        "square_id": "imagesquare_urlid":, {
       // 実行対象になるスクエアID
        "100service_id": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/100/8021deb7-b3d6-4bb1-b2da-c31335c1671cservice_id", //   サービスID
        "300subscription_id": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/300/8021deb7-b3d6-4bb1-b2da-c31335c1671c",
     "subscription_id", // 契約ID
        "users": [{
          "500type": "https://cloudgear-public-test.s3-ap-northeast-1.amazonaws.com/profile-image/500/8021deb7-b3d6-4bb1-b2da-c31335c1671c"
          },ADD", // プロビジョニングタイプ
          "user_attrsuserinfo": {
    [],        "service_rolessub": [],"user1@unirita.co.jp", // UID
            "subscription_rolesname": [ "ユニリタ太郎", // 名前
            "given_name": "owner"太郎", // 名
          ]  "family_name": "ユニリタ", // }
      }   }
    Code Block
    titleevent = "user", type = "provisioning"
    {   "idpreferred_username": "91018c24-4182-4e20-8509-501471b6304e"user1@unirita.co.jp", // UUID UID
            "eventemail": "useruser1@unirita.co.jp", // メールアドレス
        "type": "provisioning",   "crateddomain_atid": 1576200980964"cloudgear.services", // 所属するドメインID
     作成日時   "version": 2   "datauser_attrs": [{ // ユーザー属性
      "square_id": "square_id", // 実行対象になるスクエアID     "service_id": "service_id", // サービスID1,
              "subscription_idname": "subscriptionattribute_idkey", // 契約ID
    属性名
       "users": [{       "typevalue": "ADDattribute_value", // 属性値
      プロビジョニングタイプ        "userinfosquare_id": {
    "1234567890" // 属性が紐づくスクエアID(スクエアに紐づいていない場合"global"と表示)
           "sub": "user1@unirita.co.jp", // UID }...{}],
             "nameservice_roles": "ユニリタ太郎", // 名前 [],
            "givensubscription_nameroles": "太郎", // 名[],
            "familyimage_nameurl": "ユニリタ",{ // プロフィール画像が設定されていない場合は空
                "preferred_username": "user1@unirita.co.jp", // UID"100":"https://cloudgear-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/100/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
              "email300": "user1@unirita.co.jp", // メールアドレス"https://cloudgear-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/300/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
              "domain_id500": "https://cloudgear.services", // 所属するドメインID-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/500/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx"
            }
    "user_attrs": [{ // ユーザー属性   }
        }]
      "id": 1,
           }
    }


    Code Block
    languagejs
    titleidprovisioning(ADD)
    {
      "nameevent": "attribute_keyidprovisioning",
    // 属性名 "version": 1,
      "data": [{
        "valuetype": "attribute_valueADD", // 属性値操作タイプ
        "userinfo": {
          "square_idsub": "1234567890user1@unirita.co.jp", // 属性が紐づくスクエアID(スクエアに紐づいていない場合"global"と表示) UID
           }...{}],
     "name": "ユニリタ太郎", // 名前
          "servicegiven_rolesname": []"太郎", // 
          "subscriptionfamily_rolesname": []"ユニリタ", // 
          "image_url": {preferred_username": "user1@unirita.co.jp", // プロフィール画像が設定されていない場合は空UID(MUST NOT   Unique)
          "100email":"https://cloudgear-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/100/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
        "user1@unirita.co.jp", // メールアドレス
          "300square_id":"https://cloudgear-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/300/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",
      "12345667890", // 実行対象になるスクエアID
          "square_attrs": { // ユーザのスクエア属性
            "500属性名":"https://cloudgear-public-prod.s3-ap-northeast-1.amazonaws.com/profile-image/500/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx" "属性値",
            }...
          }
        }]
      }]
    }


    Code Block
    languagejs
    titleevent="payments", type="change_billing_period"
    {
      "id": "91018c24-4182-4e20-8509-501471b6304d" // UUID
      "event":"payments",
      "type":"change_billing_period",
      "created_at": 1576200980964, // 作成日時
      "version": 2,
      "data": {
        "subscription_id": "sub_1234567890", // サブスクリプションID
        "service_id": 1, // サービスID
        "square_id": "service-square-id", // サービススクエアID
        "period_start": 123456789, // 料金プランの適用開始日時(秒)
        "period_end": 987654321 // 料金プランの適用終了日時(秒)
      }
    }