Live endpoints

EndpointReturns
GET /api/indices List of all published indices with current values, methodology version, and freshness.
GET /api/indices/{slug} Full series payload for one index: metadata, latest contributing providers, and the daily series array.
GET /api/status Per-provider and per-index pipeline status, plus an overall rollup.
GET /data_export.json The complete underlying dataset — per-provider price assessments, raw collection logs, supply observations, stock observations, capacity forecasts, plus provider and GPU-model registries. ~13 MB.
GET /data/{slug}.csv Same series as /api/indices/{slug}, in CSV form. Schema documented at /data/.
GET /data/{slug}.json Same series as /api/indices/{slug}, in JSON form (identical payload).

Examples

List indices

curl https://pulsebenchmarks.com/api/indices

One series, full history

curl https://pulsebenchmarks.com/api/indices/h100-sxm-hyperscaler-od

Pipeline status

curl https://pulsebenchmarks.com/api/status

Python

import requests
    data = requests.get("https://pulsebenchmarks.com/api/indices/h100-sxm-hyperscaler-od").json()
    latest = data["series"][-1]
    print(latest["assessed_at"], latest["value"], data["unit"])

Schema

JSON payloads share the schema documented on the /data/ page (CSV columns map to JSON object fields). The top-level metadata fields are: slug, name, unit, methodology_version, methodology_url, license, generated_at, contributing_providers_latest, series.

Authentication and rate limits

No API key required. Cloudflare-level rate limits apply at very high request volumes; if you are running into them, get in touch at [email protected] and we'll raise the ceiling. There is no paid tier.

Stability commitment

Breaking schema changes ship under a new path; the old path stays live for at least 90 days with a deprecation header. Methodology revisions don't change endpoint URLs — they change methodology_version in the response payload.

License

Pulse-owned outputs returned by these endpoints are licensed under CC-BY 4.0. Provider-origin raw snapshots are not implicitly covered — see what is open and free.