ここに表示されているのは Apigee Edge のドキュメントです。
Go to the
Apigee X のドキュメントに移動します。 info
はじめに
調整可能な通知プランでは、API プロバイダはアプリ デベロッパーごとにトランザクションの目標数 を調整できます。目標数の 90%、100%、150% などに達したときに通知を送信するかどうか、またいつ送信するかを構成できます。 目標数に達しても、追加の トランザクションはブロックされません。
UI を使用して調整可能な通知プランを構成する
以下のように、調整可能な通知プランを構成します。
エッジ
Edge UI を使用して調整可能な通知プランを構成するには、料金プランを追加または編集するときに、[調整可能な通知] 料金プラン タイプを選択し、[調整可能な通知] セクションで次の情報を構成します。
| フィールド | 説明 | デフォルト |
|---|---|---|
| 計算頻度 | トランザクションの量(またはカスタム属性関連の量)が計算される期間。月数(1 ~ 24 か月)を選択します。 | 1 か月 |
API プロダクトにカスタム属性を定義した場合は、カスタム評価パラメータを構成して、カスタム属性に基づいてトランザクション カウンタを定義できます。
たとえば、次のようなことが必要になる場合があります。
- API 呼び出しのメッセージで提供される値に基づいて、デベロッパーに変動額を請求する。
たとえば、API リクエストで送信されたバイト数に基づいてアプリ デベロッパーに課金できます。 - 複数の API 呼び出しを 1 つのトランザクションにバンドルする。
この場合は、[カスタム評価パラメータを使用] を選択し、プルダウン リストからカスタム属性を選択します。
詳細については、カスタム属性を使用して料金プランを構成するをご覧ください。
Classic Edge(Private Cloud)
Classic Edge UI を使用して調整可能な通知プランを構成するには:
- [料金プラン] ウィンドウの [プランの詳細] タブの [**料金プラン タイプ**] フィールドで [**調整可能な通知**] を選択します。
- [更新期間] フィールドに、プランが自動的に更新される月数を設定します(デベロッパーがその日より前に契約を終了しない限り)。この値を 0 に設定すると、デベロッパーが終了するまでプランは有効になります。
- [汎用料金プラン] の下にある [詳細] をクリックします。
- [**集計基準**] を、トランザクションの量が集計される期間に設定します。1 ~ 24 か月の数値を選択します。この値のデフォルトは 1 か月です。
- [Apply and Close] をクリックします。
- [下書きを保存] をクリックします。
- プランが最終版であることを確認したら、プランを公開します。公開日を設定してプランを公開する方法については、料金プランを公開するをご覧ください。
料金プランを公開した後は、終了日のみを変更できます。公開後に料金 プランを削除することはできませんが、公開済みの料金プランを期限切れにして、将来の料金 プランに置き換えることができます。詳しくは、公開済みの料金 プランを期限切れにするをご覧ください。
API を使用して調整可能な通知プランを構成する
調整可能な通知プランの詳細を指定するには、ratePlanDetails プロパティを POST リクエストのリクエスト本文で /organizations/{org_name}/monetization-packages/{package_id}/rate-plans に指定します。
調整可能な通知プランを指定するには、リクエスト本文の ratePlanDetails に次の値を指定します。
| プロパティ | 値 |
|---|---|
type |
USAGE_TARGET に設定します。 |
meteringType |
DEV_SPECIFIC に設定します。 |
duration |
`
durationType` とともに、集計基準の期間に設定します。調整可能な通知料金プランの場合は、1 ~ 24 の整数値
に設定します。 |
durationType |
`durationType` とともに、集計基準の期間に設定します。
|
調整可能な通知プランの詳細を指定するときに設定できる構成プロパティの詳細については、料金プランの詳細 構成設定をご覧ください。
たとえば、次の例では、集計基準 が 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 を使用してアプリ デベロッパーごとにトランザクションの目標数 を設定する
アプリ デベロッパーが料金プランに同意したときに、デベロッパーのトランザクションの目標数を設定できます。また、後で値を更新することもできます。
料金プランに同意するときにトランザクションの目標数を設定する
料金プランに同意するときにトランザクションの目標数を設定するには、
quotaTarget プロパティを
/organizations/{org_name}/developers/{developer_id}/developer-rateplans リソースへの POST リクエストのリクエスト本文で指定します。
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
同意した料金プランを更新するときにトランザクションの目標数を設定する
トランザクションの目標数を設定するには、同意した料金プランを更新し、
quotaTarget プロパティを
/organizations/{org_name}/developers/{developer_id}/developer-rateplans/{developer_rateplan_id}
リソースへの PUT リクエストのリクエスト本文で指定します。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
}
または、/organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans に GET リクエストを発行して、デベロッパーの料金プランの {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 に更新します。
$ curl -H "Content-Type:application/json" -X PUT -d \
'{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2016-04-15 00:00:00",
"quotaTarget": 4000,
"suppressWarning":false
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-u email:password