Console

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.

Which load-balancer sizes a region offers

GET
/regions/{region}/load-balancer-sizes

Answers which load-balancer SIZES (the contract LbFlavor) a new load balancer may be created with. A size is offered IFF it is the default size (defaultSize, which lands on the region's default Octavia flavor) OR the deployment maps it to an Octavia flavor. With no mapping only the default size is listed, and the console then shows no size choice. The load-balancer create refuses a size this read does not list with 422 VALIDATION_FAILED on flavor — never a silent fallback to the default. Pricing is one load-balancer hourly price for every size today. WHAT THIS DELIBERATELY DOES NOT RETURN: no Octavia flavor name or id, no provider identity. Validation: region must resolve to a region bound to an ENABLED provider, else 404. Async & state: Synchronous read; no state change. Errors: 401 unauthenticated; 404 region unknown, unbound, or its provider disabled (one answer for all three); 500 read-model failure. Idempotency/Concurrency: Safe. Sent Cache-Control: no-store.

Authorization

bearerToken
headerAuthorizationBearer <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.

Path Parameters

region*string

The platform region code whose load-balancer sizes are being read.

Match^[a-z][a-z0-9-]{1,39}$

Response Body

The offered load-balancer sizes for the resolved region.

application/json
  1. response

The load-balancer sizes a new load balancer may use in one region, from GET /regions/{region}/load-balancer-sizes. sizes lists only offered sizes, in contract order, and always contains defaultSize.

region*RegionId

Platform region code (a DNS-label-shaped slug, e.g. ist-1). No longer a closed enum: the set of valid region codes is operator-managed in the platform-region registry, so this carries only a shape guard. The authoritative set of activated regions is read from GET /regions; invalid-shape codes are VALIDATION_FAILED and codes absent from the registry are rejected at the resolving endpoint.

Match^[a-z][a-z0-9-]{1,39}$
defaultSize*LbFlavor

Load balancer flavor.

Value in"lb.small""lb.standard""lb.large"
sizes*array<>
curl -X GET "https://example.com/regions/string/load-balancer-sizes"
{  "region": "string",  "defaultSize": "lb.small",  "sizes": [    "lb.small"  ]}