Tenant Contract Destroy

OPTiM Store のユーザー企業様が、御社サービスを契約解除された場合に行われる、テナント契約変更処理系のAPIです。
御社サービス側に実装頂き、OPTiM Store よりAPIの呼び出しを行います。

Request

Method

  • DELETE

Resource URL

  • 任意のURL(Contract Setup APIと共通)
    • 該当URLを、OPTiM Store 登録時にご連絡ください。
  • 本章では、https://your-service.example.com/contract/api として記載致します。

Header Parameters

Content-Type: application/json

Query Parameters

  • なし

Request Parameters

key type description
contract_statement String Contract Statement AttributesのJSONを署名したJWT形式の文字列

Sample Body

{
  "contract_statement": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Im01ZThpY2lZQ2FoNkNDS3lvSzBrbHBZZnIzNmd1RWRJOHF4QTEwdEFNaG8ifQ.eyJpc3MiOiJodHRwczovL3N0b3JlLm9wdGltLmNvLmpwIiwiYXVkIjoiaHR0cHM6Ly95b3VyLXNlcnZpY2UuZXhhbXBsZS5jb20vY29udHJhY3QvYXBpIiwiY29tcGFueSI6eyJpZCI6ImY0NmY5OTcwYzkxNGFmOWEyMjQ5MTQwMmFhOWVlZGM0YTk2NDVmMmQyYTMwM2EzOTg2N2MzMDRiYTQ2MWM0N2YiLCJuYW1lIjoiIFhYWCIsIndlYnNpdGUiOiJodHRwczovL3h4eC5leGFtcGxlLmNvbSIsImNvbnRhY3QiOiJzeXNhZG1pbkB4eHguZXhhbXBsZS5jb20ifSwibGljZW5jZSI6eyJwb29sIjoxMH0sImNvbnRyYWN0X2p3ayI6eyJraWQiOiIwLUI1SFZJZEhVdThjUE1LU24zandsQTBjdG9mX2FqTlVvYmxuRWpZV3JJIiwia3R5IjoiUlNBIiwiZSI6IkFRQUIiLCJuIjoiNkpOSEZ0bDNhdG9iM3U0NVEyM2ZhdzJtRUFQNGxPWk81UE41aC04UV9OZnFSaTJBRHpIQWRBTTlCU0V6U3dxcGxBV0trcjZZOVBMcldLdnNnRjZxNk4tZjNOSGN6YWEydmZxdDVDVzRHaVdCdlB3MmhaOXkyQjJFekI3NmZJbmdUbjQza0U3MXA1dTZqSVdkZmxrbVRFbUtNVkVtZEM3S1ZSeG9NUVFrWGlHLVFVN1J3X0Zycl9PdEdPblhYaHhUcnoxdHlobTlGam1VMUltSFptMlJpYjVORVg0Z2hBQUlKWnN3Tjh6TjV0RXlKaUdnMWFKNEJmWXJTOUFYRVhRSGFZSlg5S3pidi1VcVlHSWlGSGNQMU1tSzRacVE1S3A4eF9rMElEQTVEVWMzZWNEdzBBeG1fQXJsMUJQOTRZVlBRb2IyRDFYZ3I2cVl0LTJYcDB1eHl3IiwidXNlIjoic2lnIn0sImlhdCI6MTQ2NDA1MzcwNiwiZXhwIjoxNDY0MDU0MzA2fQ.O5FiomvNB6SiSGSlW1TAG4Q_Kesg7s7FfmraAb6G4CIgIq4UHCT8R7CT-ayS8GVT_GB4b40Ruc88Te-baZ2qC0vh3ceIzlNMep8mp4vLhzsxj7MgqGNyKiTjzvaTwLtRLD7Uc_-2-OVPgCha1545BlFxLbcPKRjxaNc5QmmBA6yi0kmCsidk1lfWEKx0vGZZih77g4Wn_k9LMQ4aB4OOkLvpaO0Afi0D-nv91xy2QI-pMDTphNpSqZkZBsNvvtyuEHHbo1qhrUJ81NDdALPUoMcws8TKq7pB5j_NUEY7sfXqgR0FQ5WvBult43Xx7RHvlNqOhpxw9bUQpWBcPstcHQ"
}

Contract Statement Attributes

key type description
iss string リクエスト発行者 (issuer) の識別子です。OPTiM Store の URL となります。
aud string リクエスト受信者 (audience) の識別子です。御社サービスの Tenant Contract API Endpoint URL となります。
contract_jwk object Tenant Contract Setup リクエスト時に OPTiM Store から送信された当該テナント契約に紐づく contract_jwkkid のみが含まれます。
iat integer リクエスト生成日時 (issued_at) を示す Unix Timestamp です。
exp integer リクエストの有効期限 (expires_at) を示す Unix Timestamp です。

Contract Statement Signing Key

  • Contract Setup APIで、OPTiM Storeから御社サービスへ渡した公開鍵に紐づく秘密鍵
    • 御社サービス側では、該当の公開鍵を利用し、contract_statementのJWTの署名検証を行ってください。
    • 署名検証については、JOSE実装チュートリアル を参考にしてください。

Contract Statement Sample JSON

{
  "iss": "https://store-xyz.optim.co.jp",
  "aud": "https://your-service.example.com/contract/api",
  "contract_jwk": {
    "kid": "0-B5HVIdHUu8cPMKSn3jwlA0ctof_ajNUoblnEjYWrI"
  },
  "iat": 1470112510,
  "exp": 1470112810
}

Response

御社サービス側でリクエストを承認された場合、下記に従ったレスポンスを返却してください。

Response Code

200 OK

Response Parameters

key type description
iss string レスポンス発行者 (issuer) の識別子です。御社サービスの Tenant Contract API Endpoint URL となります。
aud string レスポンス受信者 (audience) の識別子です。OPTiM Store の URL となります。
iat integer レスポンス生成日時 (issued_at) を示す Unix Timestamp です。
exp integer レスポンスの有効期限 (expires_at) を示す Unix Timestamp です。

Sample Body

{
  "iss": "https://your-service.example.com/contract/api",
  "aud": "https://store-xyz.optim.co.jp",
  "iat": 1464053706,
  "exp": 1464054306
}

契約解除処理についての注意事項

契約解除が行われても、課金処理等のためしばらくのあいだ契約内容の保存をすることがあるかと思いますが、その場合でも課金処理等が完了したのちには適切に契約内容の破棄をお願いします。
また契約解除された場合は、当該テナント契約に基づいたライセンス付与済アカウント、及びテナントを、御社サービス仕様に合わせて削除、または無効化してください。