Google Cloud Platform の料金に関する情報の取得

このページでは、Cloud Billing Catalog API を使用して以下のことを行う方法について説明します。

  • 各サービスに関する関連メタデータを含むすべての公開サービスのリストを取得する。
  • サービス内の次のすべての公開 SKU のリストを取得する。
    • SKU の人が読める形式の説明。
    • SKU の公的価格設定。
    • SKU を購入可能なリージョン。
    • SKU に関する分類データ。

始める前に

Cloud Billing Catalog API を呼び出すには、API キーが必要です。API キーの詳細については、API キーの使用をご覧ください。

カタログ記載の公開サービスのリスト

このステップでは、各サービスに関する関連メタデータを含むすべての公開サービスのリストを取得します。

API

次のコード スニペットは、カタログ内のすべての公開サービスをリストします。

リクエスト:

GET https://cloudbilling.googleapis.com/v1/services?key=API_KEY

レスポンス:

{
  "services": [
    {
      "name": "[SERVICE_NAME]",
      "serviceId": "[SERVICE_ID]",
      "displayName": "[DISPLAY_NAME]",
    },
    [...]
  ]
}

ここで:

  • [SERVICE_NAME] はサービスのリソース名です。
  • [SERVICE_ID] はサービスの識別子です。
  • [DISPLAY_NAME] はサービスの人が読める表示名です。

サービスの SKU のリスト取得

API

次のコード スニペットは、指定したサービスのカタログ内の SKU をリストします。

リクエスト:

GET https://cloudbilling.googleapis.com/v1/services/SERVICE_ID/skus?key=API_KEY

ここで:

  • SERVICE_ID は親サービスの識別子です。

レスポンス:

{
  "skus": [
    {
        "name": "[SKU_NAME]",
        "skuId": "[SKU_ID]",
        "description": "[SKU_DESCRIPTION]",
        "category": {
            "serviceDisplayName": "[SVC_DISPLAY_NAME]",
            "resourceFamily": "[FAMILY]",
            "resourceGroup": "[GROUP]",
            "usageType": "[USAGE]",
        },
        "serviceRegions": [
          "[REGION]"
        ],
        "pricingInfo": [
          {
              "effectiveTime": "[TIME]",
              "summary": "[SUMMARY]",
              "pricingExpression": {
                  "usageUnit": "[UNIT]",
                  "usageUnitDescription": "[UNIT_DESCRIPTION]",
                  "displayQuantity": [DISPLAY_QUANTITY],
                  "tieredRates": [
                    {
                        "startUsageAmount": [START_AMOUNT],
                        "unitPrice": {
                            "currencyCode": "[CURRENCY_CODE]",
                            "units": [UNITS],
                            "nanos": [NANOS],
                        },
                    }
                  ],
              },
              "aggregationInfo": {
                  "aggregationLevel": enum("[AGGREGATION_LEVEL]"),
                  "aggregationInterval": enum("[AGGREGATION_INTERVAL]"),
                  "aggregationCount": [AGGREGATION_COUNT],
              },
              "currencyConversionRate": [CONVERSION_RATE],
          }
        ],
        "serviceProviderName": "[SERVICE_PROVIDER]",
    }
  ]
}

ここで:

  • [SKU_NAME] は、services/{SERVICE_ID}/skus/{SKU_ID} という形式で指定する SKU のリソース名です。
  • [SKU_ID] は、SKU の一意の識別子です。
  • [SKU_DESCRIPTION] は、SKU の人が読める説明です。
  • [SVC_DISPLAY_NAME] は、SKU が属するサービスの表示名です。
  • [FAMILY] は、SKU が参照するプロダクトのタイプです。例: "Compute"、"Storage"、"Network" など。
  • [GROUP] は、関連する SKU のグループ分類です。例: "RAM"、"GPU"、"Prediction" など。
  • [USAGE] は、SKU の消費方法を表します。例: "OnDemand"、"Preemptible"、"Commit1Mo"、"Commit1Yr" など。
  • [REGION] は、SKU が提供されるサービス リージョンのリストです。例: "asia-east1"。
  • [TIME] は、この価格設定が有効となった時刻を表す 2014-10-02T15:01:23.045123456Z という形式のタイムスタンプです。
  • [SUMMARY] は、価格情報の人が読める要約です。
  • [UNIT] は、価格が設定されている使用量の単位の略語です。たとえば、usageUnit が "GiBy" に設定されている場合は、使用量が「ギビバイト」単位であることを示します。
  • [UNIT_DESCRIPTION] は、使用量の人が読める形式の単位です。例: "Gibibyte"。
  • [DISPLAY_QUANTITY] は、価格情報を表示する推奨される単位数です。価格情報の表示には、(unitPrice * displayQuantity) per displayQuantity usageUnit という形式を使用することをおすすめします。このフィールドは価格設定式には影響しません(表示専用です)。たとえば、unitPrice が "0.0001 USD"、usageUnit が "GB"、displayQuantity が "1000" である場合、価格情報の推奨される表示方法は "0.10 USD per 1000 GB" です。
  • [START_AMOUNT] は、この量を消費した後にはじめて、使用量が指定のレートで価格設定されることを示します。たとえば、startUsageAmount が 10 に設定されると、使用量は最初の 10 個の usage_units の後に、定義された価格で価格設定されます。
  • [CURRENCY_CODE] は、ISO 4217 で定義されている 3 文字の通貨コードです。
  • [UNITS] は金額の単位です。たとえば、currencyCode が "USD" である場合、1 単位は 1 米ドルです。
  • [NANOS] は、金額のナノ(10^-9)単位数です。-999,999,999〜+999,999,999 の範囲内の値を指定します。単位が正の場合、ナノは正またはゼロでなければなりません。単位がゼロの場合、ナノは正、ゼロ、または負の値です。単位が負の場合、ナノは負またはゼロでなければなりません。たとえば、$-1.75 は units=-1 および nanos=-750,000,000 と表されます。
  • [AGGREGATION_LEVEL] は、費用計算のために使用量を集計するレベルを示します。有効な値は ACCOUNT、PROJECT、AGGREGATION_LEVEL_UNSPECIFIED です。
  • [AGGREGATION_INTERVAL] は、費用計算のために使用量を集計する間隔です。有効な値は、DAILY、MONTHY、AGGREGATION_INTERVAL_UNSPECIFIED です。
  • [AGGREGATION_COUNT] は、集計する間隔の数です。たとえば、aggregationLevel が "DAILY"、aggregationCount が 14 である場合、集計は 14 日以上になります。
  • [CONVERSION_RATE] は、米ドルから指定通貨への通貨換算の換算レートです。通貨が指定されていない場合は、デフォルトの 1.0 が使用されます。
  • [SERVICE_PROVIDER] は、サービス プロバイダを識別します。Google Cloud Platform のファースト パーティ サービスの場合、これは「Google」です。
このページは役立ちましたか?評価をお願いいたします。