Endpoint
league says which competition it is (a filter
and a label — access is granted per session, not per league); sport says how to parse (which
event vocabulary and state shape the feed speaks). sessionId is the {session} segment for WS /api/subscribe/{session} and
GET /api/history/{session} directly — the feed URLs carry no sport.
Query parameters
League slugs
league values are deliberately terse abbreviations. The vocabulary grows as new leagues go
live — each addition appears here, and every league always maps to exactly one sport value.
Currently:
Authentication
A valid token is required — anss_ API key or JWT, sent as a Bearer token or the ?token= query
parameter, the same credential as /subscribe. There is no anonymous access — every request
requires a valid token; a session being public waives the entitlement, not authentication.
Entitlements decide what you see (identically for both statuses):
See Authentication for token formats.
Error responses
Response
Ordering is newest-first within each status:
status=open by publishedAt (most recently
published first), status=closed by closedAt (most recently closed first). An entitled caller sees
their granted sessions first, then the remaining public sessions, each block ordered the same way.
Sessions move from status=open to status=closed when they close — a finished session stops
streaming but stays discoverable here and readable via /history.