API プロダクトの料金プランを管理する

このページの内容は ApigeeApigee ハイブリッドに該当します。

Apigee Edge のドキュメントを表示する。

料金プランを使用すると、API プロダクト オーナーは、以下を構成して API プロダクトから収益を得られます。

  • 請求先アカウント モデル
  • 請求に使用される通貨
  • お客様への請求頻度(月単位のみ)
  • API プロダクトの使用に関する初期セットアップの料金
  • API プロダクトの使用に対する使用量ベースの料金
  • API プロダクトへのアクセスに対する月額料金など、使用量に基づかない定期料金
  • API プロダクトで料金プランが有効な期間(料金プランの有効化の日と有効期限との間隔)
  • デベロッパー パートナーとの収益分配

以下のセクションでは、API プロダクトの料金プランを管理する方法を説明します。

料金プランの表示

以下のセクションに示す手順に沿って、組織の料金プランを表示します。

Cloud コンソールの Apigee

以下のセクションでは、Cloud コンソールの Apigee UI を使用して料金プランを確認する方法について説明します。

組織用に定義された料金プランを表示する

[料金プラン] ページで、組織で定義された料金プランを確認します。

[料金プラン] ページにアクセスするには:

  1. Cloud コンソールの Apigee UI にログインします。
  2. サイド ナビゲーション バーで、[配信] > [収益化] を選択します。

[料金プラン] ページが開き、現在の料金プランが一覧表示されます。

料金プランのリストに、料金プラン名、API プロダクト、各プランの有効化日時と有効期限、料金プランの管理に使用できるメニューが表示されている

[料金プラン] ページでは、次の操作を行うことができます。

API プロダクトに関連付けられた料金プランの表示

API プロダクトの管理時には、関連付けられた料金プランを確認して管理できます。[料金プラン] までスクロールして、料金プランを確認します。

従来の Apigee UI

以下のセクションでは、UI を使用して料金プランを確認する方法について説明します。

組織用に定義された料金プランを表示する

[料金プラン] ページで、組織で定義された料金プランを確認します。

[料金プラン] ページにアクセスするには:

  1. 従来の Apigee UI にログインします。
  2. サイド ナビゲーション バーで、[Publish] > [Monetization] > [Rate Plans] を選択します。

[Rate Plans] ページに現在の料金プランが一覧表示されます。

料金プランのリストに、料金プラン名、API プロダクト、各プランの有効化日時と有効期限、料金プランの管理に使用できるプルダウンが表示されている

[Rate Plans] ページでは、次の操作を行うことができます。

API プロダクトに関連付けられた料金プランの表示

API プロダクトを管理するときには、関連付けられた料金プランを確認して管理できます。API プロダクトを編集し、[Rate plans] セクションまでスクロールします。

Apigee API

以下のセクションでは、API を使用して組織の料金プランを表示する方法について説明します。

API を使用して API プロダクトの料金プランを一覧表示する

組織の料金プランを一覧表示するには、次の API に GET リクエストを発行します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans

curl を使ってこれを行う例を次に示します。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans?expand=true" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンスの出力例を次に示します。これには、API プロダクト HelloworldProduct に関連付けられた 2 つの料金プラン myrateplan1myrateplan2 が含まれます。

{
    "ratePlans": [
        {
            "name": "6b51b501-ac15-41b7-bb3e-621edb849e13",
            "apiproduct": "HelloworldProduct",
            "displayName": "myrateplan2",
            "billingPeriod": "MONTHLY",
            "currencyCode": "USD",
            "setupFee": {
                "currencyCode": "USD",
                "units": "20"
            },
            "fixedRecurringFee": {
                "currencyCode": "USD",
                "units": "25"
            },
            "fixedFeeFrequency": 1,
            "consumptionPricingType": "FIXED_PER_UNIT",
            "consumptionPricingRates": [
                {
                    "fee": {
                        "currencyCode": "USD",
                        "nanos": 500000000
                    }
                }
            ],
            "revenueShareType": "FIXED",
            "revenueShareRates": [
                {
                    "sharePercentage": 2
                }
            ],
            "state": "DRAFT"
        },
        {
            "name": "8c0b527c-ba2f-45f1-ac1c-b9e891546fc2",
            "apiproduct": "HelloworldProduct",
            "displayName": "myrateplan1",
            "billingPeriod": "MONTHLY",
            "currencyCode": "USD",
            "consumptionPricingType": "FIXED_PER_UNIT",
            "consumptionPricingRates": [
                {
                    "fee": {
                        "currencyCode": "USD",
                        "units": "3"
                    }
                }
            ],
            "state": "PUBLISHED",
            "startTime": "1617302588000"
        }
    ]
}

API とそのレスポンス ペイロードの詳細については、料金プラン API の一覧表示をご覧ください。

API を使用して料金プランの詳細を表示する

料金プランの詳細を表示するには、次の API に GET リクエストを発行します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

リソースパスに渡す料金プランの名前を判断するには、組織内の料金プランの一覧表示をご覧ください。

curl を使ってこれを行う例を次に示します。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

次の例では、名前が 6b51b501-ac15-41b7-bb3e-621edb849e13 で表示名が myrateplan2 の料金プランのレスポンス出力を示します。

{
    "name": "6b51b501-ac15-41b7-bb3e-621edb849e13",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan2",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "setupFee": {
        "currencyCode": "USD",
        "units": "20"
    },
    "fixedRecurringFee": {
        "currencyCode": "USD",
        "units": "25"
    },
    "fixedFeeFrequency": 1,
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "nanos": 500000000
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 2
        }
    ],
    "state": "DRAFT"
}

API とそのレスポンス ペイロードの詳細については、料金プランを取得する API をご覧ください。

料金プランを作成する

以下のセクションの手順に示すように、料金プランを作成します。

Cloud コンソールの Apigee

Cloud コンソールの Apigee UI を使用して料金プランを作成するには:

  1. 次のいずれかのタスクを行います。
    • サイド ナビゲーション バーで [配信] > [収益化] を選択し、料金プランのリストで [作成] をクリックします。
    • API プロダクトを編集して、[料金プラン] セクションの [Add rate plan] をクリックします。
  2. 次のように、料金プランの詳細をします。
    フィールド 説明
    料金プラン名 料金プランの名前を入力します。
    API プロダクト プルダウンから、料金プランを関連付ける API プロダクトを選択します。
  3. [次へ] をクリックします。
  4. お支払いの詳細を次のように入力します。
    フィールド 説明 デフォルト
    支払い通貨 請求に使用する通貨をプルダウンから選択します。 米ドル
    請求対象期間 顧客への請求頻度をプルダウンから選択します。 毎月
    Initialization fee

    料金プランの開始日(つまり、デベロッパーが API プロダクトを購入した日)に各デベロッパーに請求される 1 回限りの料金。

    設定費用を請求する場合は、[Charge initialization fee] を選択し、請求する金額を [Initialization fee] フィールドに入力します。

    無効
  5. [次へ] をクリックします。
  6. 料金の詳細を次のように入力します。
    フィールド 説明 デフォルト
    Fixed recurring fee 単位ごとに定額で繰り返し発生する料金を有効にします。
    1. [Charge fixed recurring fee] を選択します。
    2. [Fixed recurring fee] と [Fixed recurring fee] の金額を構成します。

    最初の請求対象期間については、料金が日割りで計算されます。

    有効にすると、料金プランの事前確認で説明されているように、定額で繰り返し発生する料金が項目別の料金と料金の合計に与える影響を事前に確認できます。

    料金を無効にするには、[Charge fixed recurring fee] の選択を解除します。

    無効
    Consumption based fees 使用量ベースの料金を有効にします。
    1. [Charge consumption-based fee] を選択します。
    2. 次のいずれかを選択します。
      • Fixed fee per unit(使用した単位あたりの固定料金)
      • Banded(使用範囲によって決定される、使用する単位あたりの変動料金)
    • Fixed fee per unit: 収益化されているトランザクションごとに固定料金が請求されます。[Fixed fee per unit] フィールドに、トランザクションごとに請求される値を入力します。

    • Banded: 収益化されているトランザクションごとに変動料金が請求されます。トランザクションのバンドと使用量により、トランザクションの料金が決まります。バンドは API の使用範囲を表し、バンドごとに料金が異なります。Ranges of unit consumption セクションで、バンドの範囲と、バンドに対応する料金を指定できます。[+ バンド] をクリックすることで、いくつでも帯域を指定できます。

      例: 最初の 1,000 回の API 呼び出しでは 1 回の呼び出しあたり 2 米ドル、それ以降のすべての API 呼び出しは 1 米ドルで課金するとします。これを構成するには、Ranges of unit consumption セクションで次の 2 つのバンドを指定します。

      • 最初の行に次の値を入力します。
        • 開始: 0
        • 終了: 1000
        • 料金: 2
      • 2 行目に次の値を入力します。
        • 開始: 1001
        • 終了: unlimited units
        • 料金: 1

      この例では、デベロッパーが 1,500 回 API を使用すると、合計料金は 2,500 ((1000 * 2) + (500 * 1)) 米ドルになります。

    使用量に基づく料金を有効にした場合は、料金プランのプレビューで説明しているように、選択した料金タイプの総収益への影響をプレビューできます。

    この料金を無効にするには、[Charge consumption-based pricing model] の選択を解除します。

    DataCapture ポリシーで perUnitPriceMultiplier 収益化変数を構成している場合、使用量ベースの料金([Fixed fee per unit] または [Banded] のタイプ)が指定されたトランザクションあたりの費用には、perUnitPriceMultiplier の値が乗算されます。

    無効
  7. [次へ] をクリックします。
  8. 収益分配の詳細を次のように入力します。
    フィールド 説明 デフォルト
    収益分配 収益の特定の割合をデベロッパー パートナーに分配するには、収益分配を有効にします。
    1. [収益分配を有効にする] を選択します。
    2. [Percentage (%) of revenue to share with developer] フィールドに、収益の割合を入力します。

    DataCapture ポリシーで収益化変数 revShareGrossPrice を構成することで、収益化されたトランザクションごとに収益分配を受け取れます。詳細については、収益化変数をご覧ください。

    収益分配を有効にすると、料金プランのプレビューで説明されているように、入力した割合(%)の値が料金明細と合計額に与える影響を事前に確認できます。

    料金を無効にするには、[収益分配を有効にする] の選択を解除します。

    無効
  9. [次へ] をクリックします。
  10. 次のいずれかをクリックします。
    • 料金プランを保存して公開するには、[保存して公開] をクリックします。有効化日時を指定するよう求められます。詳細については、料金プランの有効化日時の設定をご覧ください。
    • 料金プランの下書きを保存するには、[保存] をクリックします。
    • キャンセルするには、[キャンセル] をクリックします。

従来の Apigee UI

UI を使用して料金プランを作成するには:

  1. 次のいずれかのタスクを行います。
    • サイド ナビゲーション バーで [Publish] > [Monetization] > [Rate Plans] を選択し、[Create rate plan] をクリックします。
    • API プロダクトを編集して、[料金プラン] セクションの [追加ボタン] をクリックします。
  2. [料金プランの詳細] を次のように入力します。
    フィールド 説明
    料金プラン名 料金プランの名前を入力します。
    API プロダクト プルダウンから、料金プランを関連付ける API プロダクトを選択します。
  3. [次へ] をクリックします。
  4. [お支払い] の詳細を次のように入力します。
    フィールド 説明 デフォルト
    支払い通貨 請求に使用する通貨をプルダウンから選択します。 米ドル
    請求対象期間 顧客への請求頻度をプルダウンから選択します。 毎月
    Initialization fee

    料金プランの開始日(つまり、デベロッパーが API プロダクトを購入した日)に各デベロッパーに請求される 1 回限りの料金。

    設定費用を請求する場合は、[Charge setup fee] を選択し、請求する金額を [Initialization fee] フィールドに入力します。

    無効
  5. [次へ] をクリックします。
  6. [料金] の詳細を次のように入力します。
    フィールド 説明 デフォルト
    Fixed recurring fee 単位ごとに定額で繰り返し発生する料金を有効にします。
    1. [Charge fixed recurring fee] を選択します。
    2. [Fixed recurring fee](金額)と [Fee frequency](頻度)を構成します。

    最初の請求対象期間については、料金が日割りで計算されます。

    有効にすると、料金プランの事前確認で説明されているように、定額で繰り返し発生する料金が項目別の料金と料金の合計に与える影響を事前に確認できます。

    料金を無効にするには、[Charge fixed recurring fee] の選択を解除します。

    無効
    Consumption based fees 使用量ベースの料金を有効にします。
    1. [Charge consumption-based fee] を選択します。
    2. 次のいずれかを選択します。
      • Fixed fee per unit(使用した単位あたりの固定料金)
      • Banded(使用範囲によって決定される、使用する単位あたりの変動料金)
    • Fixed fee per unit: 収益化されているトランザクションごとに固定料金が請求されます。[Fixed fee per unit] フィールドに、トランザクションごとに請求される値を入力します。

    • Banded: 収益化されているトランザクションごとに変動料金が請求されます。トランザクションのバンドと使用量により、トランザクションの料金が決まります。バンドは API の使用範囲を表し、バンドごとに料金が異なります。Ranges of unit consumption セクションで、バンドの範囲と、バンドに対応する料金を指定できます。[+ バンド] をクリックすることで、いくつでも帯域を指定できます。

      例: 最初の 1,000 回の API 呼び出しでは 1 回の呼び出しあたり 2 米ドル、それ以降のすべての API 呼び出しは 1 米ドルで課金するとします。これを構成するには、Ranges of unit consumption セクションで次の 2 つのバンドを指定します。

      • 最初の行に次の値を入力します。
        • 開始: 0
        • 終了: 1000
        • 料金: 2
      • 2 行目に次の値を入力します。
        • 開始: 1001
        • 終了: unlimited units
        • 料金: 1

      この例では、デベロッパーが 1,500 回 API を使用すると、合計料金は 2,500 ((1000 * 2) + (500 * 1)) 米ドルになります。

    使用量に基づく料金を有効にした場合は、料金プランのプレビューで説明しているように、選択した料金タイプの総収益への影響をプレビューできます。

    この料金を無効にするには、[Charge consumption-based pricing model] の選択を解除します。

    DataCapture ポリシーで perUnitPriceMultiplier 収益化変数を構成している場合、使用量ベースの料金([Fixed fee per unit] または [Banded] のタイプ)が指定されたトランザクションあたりの費用には、perUnitPriceMultiplier の値が乗算されます。

    無効
  7. [次へ] をクリックします。
  8. [収益分配] の詳細を次のように入力します。
    フィールド 説明 デフォルト
    収益分配 収益の特定の割合をデベロッパー パートナーに分配するには、収益分配を有効にします。
    1. [収益分配を有効にする] を選択します。
    2. [Percentage (%) of revenue to share with developer] に、収益の割合を入力します。

    DataCapture ポリシーで収益化変数 revShareGrossPrice を構成することで、収益化されたトランザクションごとに収益分配を受け取れます。詳細については、収益化変数をご覧ください。

    収益分配を有効にすると、料金プランのプレビューで説明されているように、入力した割合(%)の値が料金明細と合計額に与える影響を事前に確認できます。

    料金を無効にするには、[収益分配を有効にする] の選択を解除します。

    無効
  9. [次へ] をクリックします。
  10. 次のいずれかをクリックします。
    • 料金プランを保存して公開するには、[保存して公開] をクリックします。有効化日時を指定するよう求められます。詳細については、料金プランの有効化日時の設定をご覧ください。
    • 料金プランの下書きを保存するには、[保存] をクリックします。
    • キャンセルするには、[キャンセル] をクリックします。

Apigee API

料金プランを作成するには、次の API に POST リクエストを発行します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans

リソース: 料金プランで説明されているように、リクエスト本文で必須項目を渡して料金プランを設定します。

次の表は、下書き料金プランと公開する料金プランを作成する際の必須項目をまとめたものです。

下書き料金プランの必須項目 公開する料金プランの必須項目
  • apiproduct
  • displayName
  • state
  • apiproduct
  • billingPeriod
  • currencyCode
  • displayName
  • startTime
  • state

たとえば、次の API 呼び出しでは、API プロダクト HelloworldProduct に関連付けられた下書き料金プラン myrateplan5 が作成されます。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/HelloworldProduct/rateplans" \
  -X POST \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{
    "apiproduct":"HelloworldProduct",
    "billingPeriod":"MONTHLY",
    "consumptionPricingType":"FIXED_PER_UNIT",
    "consumptionPricingRates":[{
       "fee":{
          "units":"3",
          "nanos":0
        }
    }],
    "currencyCode":"USD",
    "displayName":"myrateplan5",
    "revenueShareType":"FIXED",
    "revenueShareRates":[{
       "sharePercentage":"1"
    }],
    "setupFee":{
       "units":"10",
       "nanos":0
     },
	 "state":"DRAFT"
    }'

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "4403a3a5-b366-44f0-aa4d-bd54dcfd3239",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan5",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "setupFee": {
        "currencyCode": "USD",
        "units": "10"
    },
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "3"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 1
        }
    ],
    "state": "DRAFT"
}

詳細については、料金プランの作成 API をご覧ください。

UI で料金プランを事前確認する

次の図に示すように、料金収益分配の構成に基づき、[料金プラン] ページの [Rate plan preview] セクションで料金明細と請求合計額を事前に確認できます。

値のサンプルを入力して、[Rate plan preview] で結果を確認する

見積もりを変更するには、[Example consumer data] セクションの [API unit consumption] フィールドを更新します。料金明細と合計額は、入力内容に基づいて更新されます。

[Example consumer data] セクションで、次のフィールドを更新します。

  • API unit consumption
    [料金] で [Charge consumption-based fee] が選択されている場合。
  • 収益
    [収益分配] で [収益分配を有効にする] が選択されている場合。

料金プランの有効化日時と有効期限を設定する

料金プランの有効化日時と有効期限を設定して、公開する料金プランが有効である(関連する API プロダクトをデベロッパーがアプリで使用できる)期間を指定します。

有効化日時と有効期限を設定する際は、次の点に注意してください。

  • API プロダクトに対して任意の時点で有効にできる料金プランは 1 つのみです
  • 有効である期間が重複しなければ、同じ API プロダクトに対して複数の料金プランを公開できます。
  • 料金プランの有効化日時は、公開する日付より前に設定する必要があります。
    有効化日時が設定されていない場合は、UI を使用して料金プランを公開する際にその設定を求められます。
  • 有効化日時は有効期限より前に設定され、有効期限は有効化日時よりも後になる必要があります。
  • 有効期限は必須ではありません。指定しない場合、有効期限はデフォルトで Never になります(料金プランが期限切れになることはありません)。
  • UI を使用して有効化日時と有効期限を設定する場合は、日付のみを指定して時刻(hh:mm:ss:mmm)は指定できません。有効化日時と有効期限となる時刻のデフォルト値は、それぞれ 12:00:00:000 AM11:59:59:999 PM です。

以下のセクションの手順に沿って、料金プランの有効化日時と有効期限を設定します。

Cloud コンソールの Apigee

Cloud コンソールの Apigee UI を使用して料金プランの有効化日時を設定するには:

  1. [料金プラン] ページにアクセスします
  2. をクリックして、有効化日時を設定する料金プランで [Set activation] をクリックします。
  3. 次のオプションのいずれかを選択します。
    • 未設定: 料金プランの有効化日時を未設定にします(下書き版料金プランにのみ使用可)。
    • 今すぐ: 料金プランを直ちに有効にします。
    • On a future date: 料金プランを有効にする日付を選択します。
  4. [Set activation] をクリックします。
  5. まだ公開していない場合は料金プランを公開して、デベロッパーがアプリで使用できるようにします。

Cloud コンソールの Apigee UI を使用して料金プランの有効期限を設定するには:

  1. [料金プラン] ページにアクセスします
  2. をクリックして、有効期限を設定する料金プランの [有効期限を設定] をクリックします。
  3. 次のオプションのいずれかを選択します。
    • 期限なし: (デフォルト)料金プランは期限切れになりません。
    • 今すぐ: 料金プランを直ちに有効にします。
    • On a future date: 料金プランを有効にする日付を選択します。
  4. [有効期限を設定] をクリックします。

従来の Apigee UI

UI を使用して料金プランの有効化日時を設定するには:

  1. [料金プラン] ページにアクセスします
  2. 有効化日時を設定する料金プランで [] > [Set activation] をクリックします。
  3. 次のいずれかを選択します。
    • 未設定: 料金プランの有効化日時を未設定にします(下書き版料金プランにのみ使用可)。
    • 今すぐ: 料金プランを直ちに有効にします。
    • On a future date: 料金プランを有効にする日付を選択します。
  4. [Set activation] をクリックします。
  5. まだ公開していない場合は料金プランを公開して、デベロッパーがアプリで使用できるようにします。

UI を使用して料金プランの有効期限を設定するには:

  1. [料金プラン] ページにアクセスします
  2. 有効期限を設定する料金プランの > [有効期限を設定] をクリックします。
  3. 次のいずれかを選択します。
    • 期限なし: 料金プランは期限切れになりません。
    • 今すぐ: 料金プランを直ちに有効にします。
    • On a future date: 料金プランを有効にする日付を選択します。
  4. [有効期限を設定] をクリックします。

Apigee API

API を使用して料金プランの有効化日時または有効期限を設定するには:

  1. 更新する料金プランの詳細を表示します。
  2. レスポンスを使用してリクエスト本文を作成し、次のフィールドを更新します。
    • startTime: 有効化日時
    • endTime: 有効期限
  3. 新しい構成で料金プランを更新するには、次の API に PUT リクエストを発行し、変更したリクエスト本文を渡します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

次の例では、有効化日時を 2021 年 4 月 1 日(エポックタイム: 1617302588000)に設定しています。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "currencyCode":"USD",
    "billingPeriod":"MONTHLY",
    "consumptionPricingType":"FIXED_PER_UNIT",
    "consumptionPricingRates":[{
       "fee":{
          "units":"3",
          "nanos":0
        }
    }],
    "revenueShareType":"FIXED",
    "revenueShareRates":[{
       "sharePercentage":"5"
    }],
    "state":"DRAFT",
    "startTime": 1617302588000
    }'

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

リクエスト本文で指定できるフィールドの詳細については、リソース: 料金プランをご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "cb9f420e-313d-4900-aa4f-e07b2b76918d",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "3"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 5
        }
    ],
    "state": "DRAFT",
    "startTime": "1617302588000"
}

詳しくは、料金プラン API の更新をご覧ください。

料金プランを公開する

次のセクションの説明に沿って、料金プランを公開します。

Cloud コンソールの Apigee

UI を使用して料金プランを公開するには、次のいずれかの方法を使用します。

  • 料金プランを作成または更新する際、[保存して公開] をクリックして料金プランを保存して公開できます。有効化日時を設定するように求められます。
  • [料金プラン] ページにアクセスし、 をクリックして、公開する料金プランの下書きの [公開] をクリックします。

    このオプションは、下書き料金プランで有効化日時を設定した場合にのみ表示されます。

従来の Apigee UI

UI を使用して料金プランを公開するには、次のいずれかの方法を使用します。

  • 料金プランを作成または更新する際、[保存して公開] をクリックして料金プランを保存して公開できます。有効化日時を設定するように求められます。
  • [料金プラン] ページにアクセスし、 > [公開] をクリックして、公開する料金プランの下書き版を選択します。

    このオプションは、下書き版の料金プランに対して有効化日時を設定した場合にのみ表示されます。

Apigee API

API を使用して料金プランを公開するには:

  1. 公開する料金プランの詳細を表示します。
  2. レスポンスを使用してリクエスト本文を作成し、次のフィールドを更新します。
    • statePUBLISHED に設定します。
    • startTime を、エポックを基準とした有効化日時(ミリ秒単位)に設定します。
    • 必要に応じて、「endTime」をエポックからの有効期限(ミリ秒単位)または「期限なし」に設定します。省略すると、有効期限はデフォルトで Never になります。
    • 維持したい他のフィールドを設定します。
  3. 料金プランを公開するには、次の API に PUT リクエストを発行し、変更したリクエスト本文を渡します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

次の例では、rateplan1 料金プランのステータスを PUBLISHED に変更し、有効化日時を 2021 年 4 月 1 日(エポックからのミリ秒として指定)に設定しています。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "currencyCode":"USD",
    "billingPeriod":"MONTHLY",
    "consumptionPricingType":"FIXED_PER_UNIT",
    "consumptionPricingRates":[{
       "fee":{
          "units":"3",
          "nanos":0
        }
    }],
    "revenueShareType":"FIXED",
    "revenueShareRates":[{
       "sharePercentage":"5"
    }],
    "state":"PUBLISHED",
    "startTime": 1617302588000
    }'

リクエストの本文で指定できるフィールドの詳細については、リソース: 料金プランをご覧ください。

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "cb9f420e-313d-4900-aa4f-e07b2b76918d",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "3"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 5
        }
    ],
    "state": "PUBLISHED",
    "startTime": "1617302588000"
}

詳しくは、料金プラン API の更新をご覧ください。

公開されている料金プランを下書きのステータスに移行する

以下のセクションで説明するように、公開料金プランを下書きのステータスに移行します。

Cloud コンソールの Apigee

Cloud コンソールの Apigee UI を使用して、公開されている料金プランを下書きのステータスに移行するには:

  1. [料金プラン] ページにアクセスします
  2. []、[Move to draft] の順に選択します。

料金プランが更新され、Status フィールドが「下書き」に変更されます。

従来の Apigee UI

UI を使用して、公開されている料金プランを下書きのステータスに移行するには:

  1. [料金プラン] ページにアクセスします
  2. [] > [Move to draft] を選択します。

料金プランが更新され、Status フィールドが [下書き] に変更されます。

Apigee API

API を使用して、公開されている料金プランを下書きステータスに変更するには:

  1. 下書きステータスに変更する公開済み料金プランの詳細を表示します。
  2. レスポンスを使用してリクエスト本文を作成し、次のフィールドを更新します。
    • state」を「下書き」に設定します。
    • 維持したい他のフィールドを設定します。
  3. 公開されている料金プランを下書きのステータスに変更するには、次の API に PUT リクエストを送信します(リクエストには修正したリクエスト本文を渡します)。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

次の例では、料金プラン rateplan1 のステータスが DRAFT に変更されます。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "currencyCode":"USD",
    "billingPeriod":"MONTHLY",
    "consumptionPricingType":"FIXED_PER_UNIT",
    "consumptionPricingRates":[{
       "fee":{
          "units":"3",
          "nanos":0
        }
    }],
    "revenueShareType":"FIXED",
    "revenueShareRates":[{
       "sharePercentage":"5"
    }],
    "state":"DRAFT",
    "startTime": 1617302588000
    }'

リクエストの本文で指定できるフィールドの詳細については、リソース: 料金プランをご覧ください。

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "cb9f420e-313d-4900-aa4f-e07b2b76918d",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "3"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 5
        }
    ],
    "state": "DRAFT",
    "startTime": "1617302588000"
}

詳しくは、料金プラン API の更新をご覧ください。

料金プランを更新する

以下のセクションの手順に示すように、料金プランを更新します。次のセクションもご覧ください。

次のセクションの説明に沿って、料金プランを更新します。

Cloud コンソールの Apigee

UI を使用して料金プランを更新するには:

  1. [料金プラン] ページにアクセスします
  2. リストで、更新する料金プランの名前をクリックします。
  3. 必要に応じて料金プランを更新します。
  4. 次のいずれかをクリックします。
    • 料金プランを保存して公開するには、[保存して公開] をクリックします。有効化日時を指定するよう求められます。詳細については、料金プランの有効化日時の設定をご覧ください。
    • 料金プランの下書きを保存するには、[保存] をクリックします。
    • 更新をキャンセルするには、[キャンセル] をクリックします。

従来の Apigee UI

UI を使用して料金プランを更新するには:

  1. [料金プラン] ページにアクセスします
  2. リストで、更新する料金プランの名前をクリックします。
  3. 必要に応じて料金プランを更新します。
  4. 次のいずれかをクリックします。
    • 料金プランを保存して公開するには、[保存して公開] をクリックします。有効化日時を指定するよう求められます。詳細については、料金プランの有効化日時の設定をご覧ください。
    • 料金プランの下書きを保存するには、[保存] をクリックします。
    • 更新をキャンセルするには、[キャンセル] をクリックします。

Apigee API

API を使用して料金プランを更新するには:

  1. 更新する料金プランの詳細を表示します。
  2. レスポンスを使用してリクエスト本文を作成します。また、他の構成設定を必要に応じて更新します。
  3. 料金プランを更新するには、次の API に PUT リクエストを発行し、変更したリクエスト本文を渡します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

次の例では、使用量ベースの料金を 5 に変更し、収益分配の割合を 6.5% 変更します。他のすべての構成設定は、維持されるように指定されています。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X PUT \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-type: application/json" \
  -d '{
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "currencyCode":"USD",
    "billingPeriod":"MONTHLY",
    "consumptionPricingType":"FIXED_PER_UNIT",
    "consumptionPricingRates":[{
       "fee":{
          "units":"5",
          "nanos":0
        }
    }],
    "revenueShareType":"FIXED",
    "revenueShareRates":[{
       "sharePercentage":"6.5"
    }],
    "state":"DRAFT",
    "startTime": 1617302588000
    }'

リクエストの本文で指定できるフィールドの詳細については、リソース: 料金プランをご覧ください。

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "cb9f420e-313d-4900-aa4f-e07b2b76918d",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "5"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 6.5
        }
    ],
    "state": "DRAFT",
    "startTime": "1617302588000"
}

詳しくは、料金プラン API の更新をご覧ください。

料金プランを複製する

料金プランを複製して、既存の料金プランに基づいて重複する料金プランを作成します。

Cloud コンソールの Apigee

UI を使用して料金プランを複製するには:

  1. [料金プラン] ページにアクセスします
  2. []、[複製] の順に選択します。
  3. [料金プラン名] フィールドと [API プロダクト] フィールドを更新します。
  4. [複製] をクリックします。

料金プランの複製が料金プランのリストに追加されます。

従来の Apigee UI

UI を使用して料金プランを複製するには:

  1. [料金プラン] ページにアクセスします
  2. > [クローン] を選択します。
  3. 必要に応じて、[料金プラン名] フィールドと [API プロダクト] フィールドを更新します。
  4. [クローン] をクリックします。

料金プランのクローンが料金プランのリストに追加されます。

Apigee API

API を使用して料金プランを複製するには:

  1. 複製する料金プランの詳細を表示します。
  2. レスポンスを使用してリクエスト本文を作成し、次のフィールドを更新します。
    • [名前] フィールドを削除します。
    • 必要に応じて、その他の構成設定を更新します。
  3. 変更したリクエスト本文をリクエストに渡して、料金プランを作成します

料金プランを削除する

料金プランの削除は、元に戻せない操作です。料金プランはすぐに削除され、復元できません。

以下のセクションの手順に沿って、料金プランを削除します。

Cloud コンソールの Apigee

UI を使用して料金プランを削除するには:

  1. [料金プラン] ページにアクセスします
  2. 削除する料金プランで 、[削除] の順に選択します。
  3. 削除する料金プランが正しいことを確認して、[削除] をクリックします。

料金プランが削除され、リストから消去されます。

従来の Apigee UI

UI を使用して料金プランを削除するには:

  1. [料金プラン] ページにアクセスします
  2. 削除する料金プランで [] > [削除] を選択します。
  3. 削除を確認するメッセージが表示されたら、[削除] をクリックします。

料金プランが削除され、リストから消去されます。

Apigee API

料金プランを削除するには、次の API に DELETE リクエストを発行します。 https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME

リソースパスに渡す料金プランの名前を判断するには、組織内の料金プランの一覧表示をご覧ください。

次の例では、名前が cc6252c0-c5d0-4aaf-85f2-203ec8fa5707 で表示名が myrateplan3 である料金プランが削除されます。

curl "https://apigee.googleapis.com/v1/organizations/$ORG/apiproducts/$APIPRODUCT/rateplans/$RATEPLAN_NAME" \
  -X DELETE \
  -H "Authorization: Bearer $TOKEN

ここで、OAuth 2.0 アクセス トークンの取得で説明されているように、$TOKEN は OAuth 2.0 アクセス トークンに設定されます。この例で使用されている curl オプションの詳細については、curl の使用をご覧ください。使用される環境変数の説明については、Apigee API リクエストの環境変数の設定をご覧ください。

レスポンス出力の例を次に示します。

{
    "name": "93ca14aa-7a48-4384-ae09-c85a0e8a8df8",
    "apiproduct": "HelloworldProduct",
    "displayName": "myrateplan3",
    "billingPeriod": "MONTHLY",
    "currencyCode": "USD",
    "consumptionPricingType": "FIXED_PER_UNIT",
    "consumptionPricingRates": [
        {
            "fee": {
                "currencyCode": "USD",
                "units": "5"
            }
        }
    ],
    "revenueShareType": "FIXED",
    "revenueShareRates": [
        {
            "sharePercentage": 6.5
        }
    ],
    "state": "DRAFT",
    "startTime": "1617302588000"
}

詳しくは、料金プラン API の削除をご覧ください。