Every published GPU price index is served from one place, /v2/gpu/rental/indexes, through the same four endpoints as every other data type. What makes indices different from the other types is that a request names one index: id is required on /latest, /as-of and /history, and a response is always a single series.

Finding your indices

Start with /metadata. It lists every index your token holds — and only those — one entry per index:
  • id is what the data endpoints take. An id you do not hold returns 404, the same as an id that does not exist, so /metadata is the only way to discover what you can read.
  • index_type says what kind of index it is: its cadence and methodology family as one label.
  • row_type says which row shape its points take, and so which schema to expect — see below.
  • asset, tenor and publication are three of the five fields the id spells (see Reading an id); the other two are already here as gpu_group or gpu_family, and region_group. Filter on these rather than parsing the id.
  • interval is the exact publication interval as an ISO-8601 duration. Read it from here rather than assuming it from publication: two indices that both print intraday may do so at different intervals.
  • default_source is who computes the index when you do not pass source, and available_sources every value source accepts for it, default first. See Choosing a source.
Access is granted index by index, so two tokens in the same organisation can hold different lists. See Authentication.

Choosing a source

Some indices are computed both by us and by General Index (GX). The source parameter on /latest, /as-of and /history picks which you read: compute-index for ours, gx for the level GX publishes.
  • Accepted values for each index are in its /metadata entry as available_sources. Any other value returns 400.
  • Without source you get the index’s default_source. An index’s default can change, for example when it starts being published with an index partner, so set source if you need to keep reading the same series.
  • One source per walk. Every page comes from the same source as the first, named in meta.source.

Two row shapes

Every row has the same six fields: id, type, timestamp, value, p5 and p95. What differs is what timestamp holds, and type on the row — the same value as row_type in /metadata — tells you which you have. A daily point is deliberately not rendered as a midnight instant: a date is a date, and turning it into 00:00:00Z would read as the previous evening in half the world’s time zones. So the two shapes are separate schemas, and the OpenAPI document declares type as the discriminator between them — an SDK generated from it gives you a tagged union you can switch on.
DailyIndexRow
IntradayIndexRow
Because a request names one index, a response never mixes the two. When a new kind of index arrives with a different shape, it gets a new row_type and a new schema, and only requests for that index see it. Two things follow for the time parameters:
  • /as-of?at=… resolves against the shape. A daily index maps at to its UTC calendar date and answers with the most recent published day on or before it; an intraday index answers with the last completed interval at or before the instant. Either way a non-publication moment carries back rather than returning nothing.
  • /history windows are half-open on both shapes. Bound a daily index with dates and an intraday index with instants; a bare date for end means the end of that day on either.

Reading an id

Every id spells five fields, hyphen-separated, in this order:
A hyphen only ever separates fields, so a value never contains one — a future sub-region would be us_east. The first three fields say what is priced; the last two say where and how often it prints, so the ids for one instrument sort together and differ only at the end.

Available indices

The full catalogue. Your /metadata shows the subset your token holds. All index values are denominated in $/GPU-hr. Every index covers the combined on-demand and reserved contract pool across neocloud vendors, as contract_type and vendor_category record on its /metadata entry. rental-composite-1y-us-daily is the GPU reference price: what the average rented GPU-hour costs across the fleet, as the rentable-capacity-weighted mean of the daily per-GPU blended indices. It spans every family, so its /metadata entry has gpu_family and gpu_group null, and it is published without an envelope, so p5 and p95 are null on every row. The daily indices publish on US business days, so a weekend or a holiday adds no new value. That is not a gap you have to handle: /as-of carries back to the most recent published date rather than returning nothing — see Concepts.
The newest intraday interval is always a completed one. The rolling forward buffer is never served, so the latest timestamp is at most one interval behind now — call /latest a moment after the half-hour and you get the interval that just closed, never a partial one.

Next steps

/metadata

The indices your token holds, with each one’s row_type, interval and sources.

Full example

Discover your indices, read one, page its history, overlay daily on intraday.