Cloud Commerce Consumer Procurement API を使用してコミットメントの特典を購入する

特典は、Cloud Marketplace での購入を行うための API である Cloud Commerce Consumer Procurement API を使用して購入できます。

現在、一部プロダクトの費用ベースのコミットメントのみを API で購入できます。この手順では、費用ベースのコミットメントの購入方法について説明します。

始める前に

  • Google Cloud プロジェクトで Cloud Commerce Consumer Procurement API を有効にします。

  • コミットメントの購入に使用する Cloud 請求先アカウントに、次のいずれかの Identity and Access Management(IAM) ロールが付与されていることを確認します。

    • 対象の Cloud 請求先アカウント、または請求先アカウントが存在する Google Cloud 組織の課金管理者roles/billing.admin)。

    • 対象の Cloud 請求先アカウント、または請求先アカウントが存在する Google Cloud 組織のConsumer Procurement Order 管理者roles/consumerprocurement.orderAdmin)。

購入する特典を特定する

費用ベースのコミットメントを購入するには、購入するプロダクトと割引期間を示す特典名を使用します。

以下の特典を購入できます。

プロダクト 用語 特典名
Compute Engine のフレキシブル コミットメント 1 年 services/compute.googleapis.com/standardOffers/ffe0f6a3-2f98-437e-8d49-fc443a05d3c2
Compute Engine のフレキシブル コミットメント 3 年 services/compute.googleapis.com/standardOffers/062a285d-8989-4ce7-8f9a-bed8d183236f
AlloyDB for PostgreSQL 1 年 services/alloydb.googleapis.com/standardOffers/adbca020-a973-48c9-b9b6-f5d70527790c
AlloyDB for PostgreSQL 3 年 services/alloydb.googleapis.com/standardOffers/56e5948f-f1ed-45ce-84d6-a8408092e7d5
Cloud Bigtable 1 年 services/bigtable.googleapis.com/standardOffers/5a0a5567-1552-445e-9f1b-f1ac69fb0f39
Cloud Bigtable 3 年 services/bigtable.googleapis.com/standardOffers/26e8485e-acef-4e73-9a13-f0b2109befff
Cloud Run 1 年 services/run.googleapis.com/standardOffers/55435965-baf5-485f-baea-3fde53566e5e
Cloud Run 3 年 services/run.googleapis.com/standardOffers/a8b22b6c-2992-48d3-9b73-98fc7a47d61c
Cloud Spanner 1 年 services/spanner.googleapis.com/standardOffers/29829e5f-681c-4810-a471-8e4611a8042b
Cloud Spanner 3 年 services/spanner.googleapis.com/standardOffers/709f6c69-8a49-4032-97f7-ce21fe340603
Cloud SQL 1 年 services/cloudsql.googleapis.com/standardOffers/266e6a8c-2a0d-4b92-af9c-5795760f1fc9
Cloud SQL 3 年 services/cloudsql.googleapis.com/standardOffers/4998bf0a-51dd-4ce0-8405-aa529dd86d33
Kubernetes Engine 1 年 services/container.googleapis.com/standardOffers/ae2672e6-47a8-41dc-9448-6956d7f4fbc1
Kubernetes Engine 3 年 services/container.googleapis.com/standardOffers/fcf378c1-fbe0-4aaa-b05e-9597f8b45578
Memorystore 1 年 services/redis.googleapis.com/standardOffers/fe93270a-f338-4a76-b303-c323608a9d37
Memorystore 3 年 services/redis.googleapis.com/standardOffers/8f20579e-7630-4592-8fa6-0d7d3b749354

特典のパラメータを特定する

コミットメントには、以下の 2 つのパラメータがあります。

  • コミットメント額hourly_commit): このコミットメントを購入した後、1 時間ごとに Cloud 請求先アカウントに適用されるクレジット。
  • リージョンregion): このコミットメントのクレジットが適用されるリージョン。

コミットメントを購入する際は、両方のパラメータを指定する必要があります。

特典を購入する

特典を購入するには、billingAccounts.orders.place を呼び出し、次のパラメータを指定します。

  • コミットメントのドル値を示す hourly_commit

  • コミットメントを購入する region

注文するには、次のコマンドを実行します。

curl 'https://cloudcommerceconsumerprocurement.googleapis.com/v1alpha1/billingAccounts/BILLING_ACCOUNT_ID/orders:place' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer ACCESS_TOKEN' \
    --header 'X-Goog-User-Project: CONSUMER_PROJECT_ID' \
    -d '@-' <<EOF
    {
    "displayName": "DISPLAY_NAME",
    "lineItemInfo": [{
        "parameters": [{
        "name": "hourly_commit",
        "value": {
            "doubleValue": HOURLY_COMMIT
        }
        }, {
        "name": "region",
        "value": {
            "stringValue": "REGION"
        }
        }],
        "offer": "OFFER_NAME"
    }]
    }
EOF

これにより、長時間実行オペレーションの名前が返されます。

{
    "name": "OPERATION_NAME"
}

返された長時間実行オペレーションが正常に完了したことを確認するには、次のコマンドを実行します。

curl 'https://cloudcommerceconsumerprocurement.googleapis.com/v1alpha1/OPERATION_NAME' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer ACCESS_TOKEN' \
    --header 'X-Goog-User-Project: CONSUMER_PROJECT_ID'

長時間実行オペレーションは 1 秒以内に完了する必要があります。

ご注文の確認

コミットメントの現在の状態は、Google Cloud コンソールで直接確認できます。また、billingAccounts.orders.get を呼び出して確認することもできます。作成した注文の name フィールドには、注文名を指定します。

cURL

注文を表示するには、次のコマンドを実行します。

curl 'https://cloudcommerceconsumerprocurement.googleapis.com/v1alpha1/ORDER_NAME' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer ACCESS_TOKEN' \
    --header 'X-Goog-User-Project: CONSUMER_PROJECT_ID'

Console

  1. https://console.cloud.google.com/billing に移動します。
  2. Cloud 請求先アカウントを選択します。
  3. サイドバーで [コミットメント] を選択します。
  4. 購入したコミットメントは、表示された表中に記載されます。