調整可能な通知プランを構成する

現在、Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントをご確認ください
情報

はじめに

調整可能な通知プランでは、API プロバイダがアプリ デベロッパーごとに目標トランザクション数を調整できます。ターゲット数値の割合(90%、100%、150% など)に達したタイミングに基づいて、通知を送信するかどうかを構成できます。ターゲット数に達した後に、追加のトランザクションがブロックされることはありません。

UI を使用して調整可能な通知プランを構成する

以下で説明するように、調整可能な通知プランを構成します。

エッジ

Edge UI を使用して調整可能な通知プランを構成するには、料金プランを追加または編集するときに料金プランのタイプ [Adjustable Notification] を選択し、[Adjustable Notification] セクションで次の情報を構成します。

項目 説明 デフォルト
計算の頻度 トランザクション量(またはカスタム属性関連のボリューム)を計算する期間。月数(1 ~ 24 か月)を選択します。 1 か月

API プロダクトのカスタム属性を定義した場合、カスタム評価パラメータを構成して、カスタム属性に基づいてトランザクション カウンタを定義できます。

たとえば、次のようなことが必要になる場合があります。

  • API 呼び出しのメッセージで提供された値に基づいて、デベロッパーに変動する金額を請求します。
    たとえば、API リクエストで送信されたバイト数に基づいてアプリ デベロッパーに課金できます。
  • 複数の API 呼び出しを 1 つのトランザクションにバンドルします。
    この場合は、[カスタム評価パラメータを使用する] を選択し、プルダウン リストからカスタム属性を選択します。

詳細については、カスタム属性を使用して料金プランを構成するをご覧ください。

従来の Edge(Private Cloud)

Classic Edge UI を使用して調整可能な通知プランを構成するには:

  1. [料金プランの詳細] タブの [料金プランタイプ] フィールドで、[調整可能な通知] を選択します。

    料金プランウィンドウへのアクセスについては、UI を使用した料金プランの作成をご覧ください。

  2. [Renewal Term] フィールドに、プランが自動更新される月数を設定します(デベロッパーがその日より前に契約を終了した場合を除く)。この値を 0 に設定した場合、デベロッパーが終了を選択するまで、プランは有効です。
  3. [汎用料金プラン] で [詳細] をクリックします。
  4. [集計ベース] を、トランザクションの量を集計する期間に設定します。1 ~ 24 か月の数値を選択してください。この値はデフォルトで 1 か月に設定されます。
  5. [Apply and Close] をクリックします。
  6. [下書きを保存] をクリックします。
  7. プランは、最終的な決定が最終的なものである場合にのみ公開してください。公開日の設定とプランの公開について詳しくは、料金プランを公開するをご覧ください。

    料金プランの公開後は、終了日のみ変更できます。料金プランを公開後に削除することはできませんが、公開料金プランを期限切れにするで説明されているように、料金プランを期限切れにして将来の料金プランに置き換えることはできます。

API を使用して調整可能な通知プランを構成する

/organizations/{org_name}/monetization-packages/{package_id}/rate-plans に対する POST リクエストでは、リクエスト本文の ratePlanDetails プロパティで、調整可能な通知プランの詳細を指定します。

調整可能な通知プランを指定するには、リクエスト本文の ratePlanDetails で次の値を指定します。

プロパティ
type USAGE_TARGET に設定します。
meteringType DEV_SPECIFIC に設定します。
duration durationType とともに集計基準の期間を設定します。調整可能な通知料金プランの場合は、1 ~ 24 の整数値に設定します。
durationType

durationType とともに集計基準の期間を設定します。調整可能な通知料金プランの場合、この値を MONTH に設定します。

調整可能な通知プランの詳細を指定するときに設定できる構成プロパティの詳細については、料金プランの詳細の構成設定をご覧ください。

たとえば、次の例では、集計単位を 1 か月に設定した調整可能な通知プランを定義しています。

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "AdjustableNotification",
     "displayName": "Adjustable notification plan",
     "description": "Adjustable notification plan",
     "published": "true",  
     "organization": {
      "id": "myorg"
     },
     "startDate": "2016-04-15 00:00:00",
     "type": "STANDARD",
     "monetizationPackage": {
        "id": "p1",
        "name": "test"
     },
     "currency": {
        "id" : "usd",
        "name" : "USD"
     },
     "ratePlanDetails": [
        {
           "type": "USAGE_TARGET",
           "meteringType": "DEV_SPECIFIC",
           "duration": 1,
           "durationType": "MONTH",
           "ratingParameter": "VOLUME",
           "organization": {
             "id": "myorg"
           },
           "currency": {
             "id": "usd",
             "name": "USD"
           }
        }
     ]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/p1/rate-plans"  \
-u email:password

API を使用して、各アプリ デベロッパーの目標トランザクション数を設定する

調整可能な通知料金プランに同意したアプリ デベロッパーごとに、トランザクションの目標数を設定する必要があります。ターゲット数値の割合(90%、100%、150% など)に達したタイミングに基づいて、通知を送信するかどうかを構成できます。ターゲット数に達した後に、追加のトランザクションがブロックされることはありません。

デベロッパーが料金プランに同意する際に、アプリ デベロッパーに対するトランザクションの目標数を設定できます。この値は後で更新できます。

料金プランを受け入れる際のトランザクションの目標数を設定する

料金プランを受け入れる際に、トランザクションの目標数を設定するには、/organizations/{org_name}/developers/{developer_id}/developer-rateplans リソースに対する POST リクエストのリクエストの本文で quotaTarget プロパティを指定します。quotaTarget を正の整数または 0 に設定してアプリ デベロッパーへの通知を無効にします。指定しない場合、quotaTarget はデフォルトで 0 になります。

たとえば、次のリクエストでは、アプリ デベロッパーが調整可能な通知プランを受け入れた場合、トランザクションの目標数を 4, 000 に設定します。

$ curl -H "Content-Type:application/json" -X POST -d \
'{ 
   "developer":{
     "id":"dev@mycompany.org"
   },
   "ratePlan":{
     "id":"p1_adjustable-notification-plan"
   },
   "startDate": "2016-03-24 00:00:00",
   "quotaTarget": 4000,
   "suppressWarning": false
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans" \
-u email:password

承認された料金プランを更新するときのトランザクションの目標数を設定する

トランザクションの目標数を設定するには、受け入れられる料金プランを更新し、/organizations/{org_name}/developers/{developer_id}/developer-rateplans/{developer_rateplan_id} リソースに対する PUT リクエストのリクエストの本文で quotaTarget プロパティを指定します。quotaTarget を正の整数または 0 に設定してアプリ デベロッパーへの通知を無効にします。指定しない場合、quotaTarget はデフォルトで 0 になります。

公開料金プランを承認すると、レスポンスで {developer_rateplan_id} が返されます。

例:

{
  "created": "2016-03-31 18:59:54",
  "developer": {
    ...
  },
  "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
  "quotaTarget": 3000,
  "ratePlan": {
    ...
  },
  "startDate": "2016-03-31 00:00:00",
  "updated": "2016-03-31 18:59:54",
  "waiveTerminationCharge": false
}

または、GET リクエストを /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans に発行して、デベロッパー料金プランの {developer-rateplan-id} を取得することもできます。ここで、{developer_id} はデベロッパーのメールアドレスです。詳細については、デベロッパーが承認したすべての料金プランを表示するをご覧ください。

例:

{
  "developerRatePlan": [
    {
      "created": "2016-03-31 14:52:30",
      "developer": {
        ...
      },
      "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
      "quotaTarget": 3000,
      "ratePlan": { 
        ... 
      }, 
      "startDate": "2016-03-31 00:00:00", 
      "updated": "2016-03-31 18:59:54" 
    } 
  ], 
  "totalRecords": 1 
}
        

次のリクエストでは、トランザクションの目標数を 4,000 に更新します。

$ 1.18email:password