Preview — pending review
This reference is generated from the platform API contract and is still under review. Operations, fields, and descriptions can change before publication.
The published, priced products of a region (the pricing preview)
The published + still-present + priced products of the region, recommended first, plus
every non-compute preview SKU the RATER prices -- each quoted at the price the
rater resolves, the same number usage metering bills. A SKU whose product the operator
withdrew is listed BARE (id = the SKU, name = the SKU, no description/category/series);
a SKU the rater does not price is absent (the console shows it as free).
priceHourlyMinor is in ten-thousandths of the currency unit (the rate-card precision), not hundredths.
With scopeId (the caller's project): the caller must reach it (else 404); every caller is
quoted in the currency the project's subscription is billed in, and a caller who
may read the subscription's billing (subscription-level billing READ plus, for a token,
billing:read) gets that subscription's own price (tenant rate-card override or contract
line); anyone else gets the list price, never a 403. Without scopeId the quote is the list
price.
Validation: an unknown or disabled region answers an EMPTY products list (owner
ruling 2026-09-21: a preview is not a gate), never an invented offer. kind is an exact
match filter (unvalidated; an unknown kind yields an empty list).
Async & state: Synchronous read; no state change.
Errors: 401 unauthenticated; 404 scopeId unknown or unreached; 500.
Idempotency/Concurrency: Safe. The quote is the price at request time.
bearerTokenAuthorizationBearer <token>An API token (pc_live_…) or a service-account key (sak_live_…), created in Identity & Access Management and sent as Authorization: Bearer <token>. Requests are rate limited per credential and per tenant: every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and a refused request gets 429 RATE_LIMITED with Retry-After.
region*stringThe platform region code.
kind?stringRestrict to one product kind (e.g. compute, volume, floating_ip, router, service).
scopeId?stringThe caller's project scope. When given, prices are quoted in that subscription's billing currency and, for a caller allowed to read its billing, at its own negotiated price.
The region's priced products.
application/json- response
region*stringThe requested region, echoed.
products*array<>curl -X GET "https://example.com/regions/string/products"{ "region": "string", "products": [ { "id": "string", "kind": "string", "sku": "string", "unit": "string", "name": "string", "description": "string", "categoryId": "string", "seriesId": "string", "isRecommended": true, "region": "string", "priceHourlyMinor": 0, "currency": "string", "vcpus": 0, "ramMb": 0, "diskGb": 0 } ]}