Cycling race content — stage results, General Classification, live standings — is served by V3.
Base URL and auth
The canonical front door https://api.sportsapipro.com/v3/cycling/... maps to the same routes.
Endpoints
These four period windows are the supported cycling endpoints. /api/v1/cycling/tournament/{id} is not served, and /api/v1/match/{eventId} (plus /standings) returns an empty shell for cycling — all the cycling payload is in the period listings.
Rolling window only — no historical or date-addressable cycling. today, live, yesterday and tomorrow are the complete set. There is no date parameter: /api/v1/cycling/2026-07-15, /api/v1/cycling/date/2026-07-15 and /api/v1/cycling/schedule/2026-07-15 all return 404. Once a race finishes it leaves the window, so a Grand Tour that is not currently running cannot be queried, and multi-season backfill for modelling is not available on any version.If your product needs archived stage results, persist the today / yesterday payloads yourself day by day while a race is live.
How to read the response
Two rules cover everything:
-
Each
leagues[] entry is a classification, not a competition.
... - Overall is the General Classification (GC).
... - Stage N is that stage’s result.
- One race therefore appears as several leagues sharing the same
tournamentId.
-
Each
events[] entry is one rider’s placing, not a match.
homeTeam.name — the rider (Wiebes L.)
homeTeam.shortName — the position ("1", "2", "3", …)
homeTeam.slug / participantId — stable rider identifiers
status / statusCode — finished, in progress, etc.
awayTeam and all score objects are unused for cycling — ignore them.
Recipe: GC table and stage result
Swap "Overall" for "Stage 2" to get that stage’s finishing order.
Coverage notes
- Men’s and women’s Grand Tours and week-long stage races appear under this structure while they are running. Once a race finishes it drops out of the
today / live windows; use yesterday immediately after a stage.
league.name is prefixed with the race family (for example TOURS:) and suffixed with the classification. Match on tournamentId when you need a stable key across days.
- Not available for cycling on any version: live GPS/telemetry, power and gradient data, per-rider in-stage splits, cycling odds, and multi-season historical backfill.