This API only supports purchasing spend-based commitments, not resource-based commitments.
Before you begin
Enable the Cloud Commerce Consumer Procurement API for your Google Cloud project.
Ensure that you have one of the following Identity and Access Management (IAM) roles for the Cloud Billing account you want to use to purchase the commitment:
Billing Administrator (
roles/billing.admin) for the target Cloud Billing account OR the Google Cloud organization where your billing account is located.Consumer Procurement Order Administrator (
roles/consumerprocurement.orderAdmin) for the target Cloud Billing account OR the Google Cloud organization where your billing account is located.
Identify the Offer you want to purchase
To purchase a spend-based commitment, use an Offer name which indicates the product you're purchasing and the discount term, you must use the Offer name that matches your Cloud Billing account's model.
The following Offers are available for purchase, and follow the new consumption model (direct discount, no credits) :
| Product | Term | Scope | Offer name | Required parameters |
|---|---|---|---|---|
| AlloyDB for PostgreSQL | 1 year | Global | services/alloydb.googleapis.com/standardOffers/ff04ec3e-278c-4ec8-8278-12f875a8cea2 | commitment_amount (recommended)or hourly_commit |
| AlloyDB for PostgreSQL | 3 years | Global | services/alloydb.googleapis.com/standardOffers/9522b4d8-bff7-4141-81d6-b71d9113c69a | commitment_amount (recommended)or hourly_commit |
| Backup and DR (Oracle) | 1 year | Global | services/backupdr.googleapis.com/standardOffers/16e6132e-8a72-4a7f-8941-bf52246afc82 | commitment_amount (recommended)or hourly_commit |
| Backup and DR (Oracle) | 3 years | Global | services/backupdr.googleapis.com/standardOffers/1e028b05-4344-4bca-87e7-235ee3536354 | commitment_amount (recommended)or hourly_commit |
| BigQuery | 1 year | Regional | services/bigqueryreservation.googleapis.com/standardOffers/d73ae4d8-d096-4c9b-9c20-cd92c3c53724 | commitment_amount (recommended)or hourly_commit, region |
| BigQuery | 3 years | Regional | services/bigqueryreservation.googleapis.com/standardOffers/f43d480d-3e77-4079-946c-e1b2ab640a8a | commitment_amount (recommended)or hourly_commit, region |
| Bigtable | 1 year | Global | services/bigtable.googleapis.com/standardOffers/c0bf8ba5-65ee-4f7d-9e1e-3953433cf193 | commitment_amount (recommended)or hourly_commit |
| Bigtable | 3 years | Global | services/bigtable.googleapis.com/standardOffers/460fb2ef-456d-4263-a070-4f993fa37996 | commitment_amount (recommended)or hourly_commit |
| Cloud Run | 3 years | Regional | services/run.googleapis.com/standardOffers/88a5fc51-d63b-4865-bf3b-c49e05a8c5c0 | commitment_amount (recommended)or hourly_commit, region |
| Cloud Run | year | Regional | services/run.googleapis.com/standardOffers/392802d4-e57b-40d3-9684-a1e8cdca6fb5 | commitment_amount (recommended)or hourly_commit, region |
| Cloud SQL | 1 year | Regional | services/cloudsql.googleapis.com/standardOffers/d31cf078-36a2-4a8a-a2e6-b23caec0e7a3 | commitment_amount (recommended)or hourly_commit, region |
| Cloud SQL | 3 years | Regional | services/cloudsql.googleapis.com/standardOffers/48960309-1646-4fa2-9bf8-d7e72090d2b8 | commitment_amount (recommended)or hourly_commit, region |
| Compute Engine flexible commitment | 1 year | Global | services/compute.googleapis.com/standardOffers/1b2601a4-9d76-462d-bd5b-5b835d245f93 | commitment_amount (recommended)or hourly_commit |
| Compute Engine flexible commitment | 3 years | Global | services/compute.googleapis.com/standardOffers/61612674-a9a9-4687-8449-baca71fbd0d1 | commitment_amount (recommended)or hourly_commit |
| Dataflow | 1 year | Global | services/dataflow.googleapis.com/standardOffers/127d79e4-1d52-48b0-9f31-8ba02586ff95 | commitment_amount (recommended)or hourly_commit |
| Dataflow | 3 years | Global | services/dataflow.googleapis.com/standardOffers/03f4d3b1-44b8-4e88-9e75-b1d4e2d04573 | commitment_amount (recommended)or hourly_commit |
| Firestore | 1 year | Global | services/firestore.googleapis.com/standardOffers/de6aa077-3170-4250-89b6-0ccd470f9e21 | commitment_amount (recommended)or hourly_commit |
| Firestore | 3 years | Global | services/firestore.googleapis.com/standardOffers/e8f59240-c088-4a22-87c3-e58722cca300 | commitment_amount (recommended)or hourly_commit |
| Gemini Enterprise Flexible Savings Plan | 1 year | Global | services/aiplatform.googleapis.com/standardOffers/740fd2e8-ff1d-4304-9e85-61c0f8d75811 | commitment_amount |
| Gemini Enterprise Flexible Savings Plan | 3 years | Global | services/aiplatform.googleapis.com/standardOffers/4733352d-24b5-4609-b3ff-d2a694f51654 | commitment_amount |
| Google Kubernetes Engine | 1 year | Regional | services/container.googleapis.com/standardOffers/2f48e468-a86a-452d-88df-edacd94a3c44 | commitment_amount (recommended)or hourly_commit, region |
| Google Kubernetes Engine | 3 years | Regional | services/container.googleapis.com/standardOffers/89027902-6f83-40aa-8861-7c2446b11015 | commitment_amount (recommended)or hourly_commit, region |
| Managed Service for Apache Kafka | 1 year | Global | services/managedkafka.googleapis.com/standardOffers/647db981-009c-4e95-b62e-6aff19384956 | commitment_amount (recommended)or hourly_commit |
| Managed Service for Apache Kafka | 3 years | Global | services/managedkafka.googleapis.com/standardOffers/9a7ed994-d3df-4680-b4e6-7c3d932add66 | commitment_amount (recommended)or hourly_commit |
| Memorystore for Redis | 1 year | Global | services/redis.googleapis.com/standardOffers/8e0da7cb-196b-4351-bc32-6a6ba94f1456 | commitment_amount (recommended)or hourly_commit |
| Memorystore | 3 years | Global | services/redis.googleapis.com/standardOffers/2a3729ac-1e38-4a34-bc96-bd988028351f | commitment_amount (recommended)or hourly_commit |
| Spanner | 1 year | Global | services/spanner.googleapis.com/standardOffers/359db5c2-8c2c-49e3-a21d-26176c4cd403 | commitment_amount (recommended)or hourly_commit |
| Spanner | 3 years | Global | services/spanner.googleapis.com/standardOffers/a6a32e10-1d76-4df8-8485-eee10d08a1cf | commitment_amount (recommended)or hourly_commit |
The following Offers are available for purchase, and follow the legacy credit model (list price charge + credit offset) :
| Product | Term | Scope | Offer name | Required parameters |
|---|---|---|---|---|
| Backup and DR (VMWare) | 1 year | Regional | services/backupdr.googleapis.com/standardOffers/30c7e770-724f-4a7d-8369-b726a397b53a | hourly_commit, region |
| Backup and DR (VMWare) | 3 years | Regional | services/backupdr.googleapis.com/standardOffers/6748e93c-4114-4fa2-bf3e-cb4d3534bb48 | hourly_commit, region |
| NetApp Volumes | 1 year | Global | services/netapp.googleapis.com/standardOffers/90520cfa-14b6-42ae-92b9-129671bf2aca | hourly_commit |
| NetApp Volumes | 3 years | Global | services/netapp.googleapis.com/standardOffers/c852fef8-e699-4524-90f4-e7b89edeb33c | hourly_commit |
Identify the Offer parameters
Here are the parameters you should set to purchase the offer:
Commitment_amount (recommended) or Hourly_commit:
For commitments on the new spend-based CUD model:
commitment_amount(recommended) orhourly_commit. Thehourly_commitparameter will be deprecated eventually and replaced by the genericcommitment_amountparameter in the future for commitments on the new model. Some CUDs support a different recurrence (hourly, monthly, etc.), and will only support thecommitment_amountparameter, check the "Required parameters" column in the Offer tables for specific requirements.For offers that are unaffected by the new CUD model: Specify
hourly_commit. This represents the credit applied to your Cloud Billing account each hour. Legacy CUDs don't supportcommitment_amount.
Region (
region): The region for which this commitment's benefits apply.- For regional commitments: Specify the target region (for example,
us-central1). To find folders and supported regions for each product, refer to that product's documentation or the Committed use discounts overview. - For global commitments: Omit this parameter, as global commitments apply across all regions.
- For regional commitments: Specify the target region (for example,
Purchase the Offer
To purchase an Offer, call
billingAccounts.orders.place,
and supply the following parameters in the request body:
The commitment value parameter matching your CUD type:
- For commitments on the new spend-based CUD model: Supply
commitment_amount(recommended) orhourly_commit(deprecated, to be removed in the future). For new CUD offers (such as AI Platform), you must specifycommitment_amount. - For legacy CUDs: Supply
hourly_commit.
- For commitments on the new spend-based CUD model: Supply
The
region(only for regional commitments). If you are purchasing a global commitment, omit theregionparameter.
To place an order, run the following command:
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": "commitment_amount",
"value": {
"doubleValue": COMMITMENT_AMOUNT
}
}, {
"name": "region",
"value": {
"stringValue": "REGION"
}
}],
"offer": "OFFER_NAME"
}]
}
EOFThis returns the name of a long-running operation:
{
"name": "OPERATION_NAME"
}
To verify that the returned long-running operation completed successfully, run the following command:
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'The long-running operation should complete in less than one second.
View your Order
You can view the current state of a commitment directly in Google Cloud console, or
by calling
billingAccounts.orders.get.
The name field of the created Order specifies the Order name.
cURL
To view an order, run the following command:
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
In the Google Cloud console, go to your Cloud Billing account.
Select Committed use discounts (CUDs) from the sidebar.
Your purchased commitments are displayed.
Related topics
- Spend-based CUD program improvements
- Spend-based CUD data model changes
- Timelines for new CUD model migration
- Verify your discounts after migration
- Choose the correct amount of CUD to buy
- Sample queries for the new CUDs data model
- Migrated CUD SKUs, offers, and consumption model IDs
- Billing user interface improvements