List GCP spend-based Committed Use Discounts

Returns a paginated list of spend-based CUDs for the billing account. Optionally filter by
CUD state (status); omit to return CUDs in all states.

gcp_service and region filters: gcp_service narrows results to one product
line's coverage sub-type (compute or cloud_sql); region additionally narrows to one
region scope and requires gcp_service — a request with region but no gcp_service
returns 400 with code gcp_service_required. A region that is malformed or
incompatible with gcp_service (compute is global-only, cloud_sql is regional-only)
returns 400 with code validation_failed; a well-formed, compatible region with no
matching CUDs returns 200 with an empty items array. Note the region query parameter
uses the lower_snake_case wire form (us_central1), while each item's region field
echoes the raw provider value (us-central1).

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
^[A-Z0-9]{6}-[A-Z0-9]{6}-[A-Z0-9]{6}$

GCP Billing Account ID (format XXXXXX-XXXXXX-XXXXXX; the account that owns the CUDs) that scopes the request.

Query Params
string
enum

Filter by CUD state. Omit to include all states.

Show Details
activeCUD is active and providing coverage.
expiredCUD term has ended.
creatingCUD purchase is in progress; not yet providing coverage.
pendingCUD purchase is awaiting provider confirmation; not yet providing coverage.
cancelledCUD was cancelled before or during its term.
not_yet_activeCUD has been purchased but its term has not started yet.
Allowed:
string
enum

Filter by PerfectScale for Commitments GCP product line. Omit to return all product lines. Matching is case-insensitive; the value is lowercased before validation.

Show Details
computeCompute commitment type (CUDs). Global scope only (`region=global`).
cloud_sqlCloud SQL commitment type (CUDs). Regional scope only (`region` is a concrete region, never `global`).
Allowed:
string
^(global|[a-z]+(_[a-z0-9]+)+)$

Filter by region scope, in lower_snake_case wire form (for example us_east1), or the
literal global. Requires gcp_service; a request with region but no gcp_service
returns 400 with code gcp_service_required. When both are omitted, all available
regions for all available product lines are returned.

The value is format-validated, not checked against a closed region list: compute accepts
only global, cloud_sql accepts only concrete regions (never global), and a value that
is malformed or incompatible with gcp_service returns 400 with code validation_failed.
A well-formed, service-compatible region with no data returns 200 with an empty result.
Matching is case-insensitive; the value is lowercased before validation.

string

Opaque cursor token returned by a previous list response. Omit to start from the beginning; an empty or absent token in a response means there are no more results. Do not parse it. A structurally invalid cursor returns 400 with code pagination_token_invalid; an expired cursor returns 400 with code pagination_token_expired — restart pagination from the beginning.

integer
1 to 500
Defaults to 50

Maximum number of items to return. Server may return fewer. Defaults to 50; maximum 500.

Headers
string

Customer (tenant) ID for the request. This is separate from authentication: you still pass your personal or service account API token in the Authorization header (Bearer <token>). See Get Started.

When to omit (most callers): If your personal or service account token belongs to a single customer, omit this header. The API resolves that customer from the token.

When to send: If your credential can access more than one customer, set X-Tenant-Id to the customer ID you want to act on. A service account can select an active direct or nested descendant of its home customer; the endpoint's normal permissions, entitlements, and resource-ownership checks still apply. A service-account target outside that customer subtree returns 403 Forbidden. Prefer this header over the legacy customerContext query parameter, which only applies to legacy API keys and is ignored by personal and service account tokens.

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
application/problem+json