Live and prematch odds for tennis, soccer, cricket, basketball and the rest of the traditional book — every selection carrying a no-vig probability next to the price.
$ curl -H "x-api-key: $KEY" "https://oddsradarwire.com/v1/fixtures?tier=1&limit=1"
{ "market": "Total games", "canonical": "main_total", "tier": 1,
"structure": "exclusive", "status": "OPEN",
"selections": [
{ "side": "under", "line": 45.5, "price": 3.7, "probability": 0.2350778601 },
{ "side": "over", "line": 45.5, "price": 1.25, "probability": 0.7649221399 }
] }
What the feed does that a raw odds dump does not.
Every selection carries the provider's own no-vig number beside the priced odds. We pass it through unmodified — no recomputation, no smoothing, no house method to reverse-engineer. The priced odds carry a median 8.4% overround; the probabilities do not.
The feed carries 3,708 distinct market names for the same handful of bets. Every market gets a stable canonical key and a tier, so "the moneyline on every live event" is one query instead of a name-matching problem.
Upstream ships both sides of a total under the same name. We recover line, line_type and side — measured against 840 monotonic ladders, not read off a spec sheet. Handicap sides we cannot map are null, never guessed.
Closed, suspended and settled markets are hidden by default. On a live board that is most of them, and a settled market priced like a live one is indistinguishable from the real thing. Ask for them explicitly and they arrive with status intact.
A market we cannot fully identify is not served — it might be a slice of a bigger market or twenty lines under one id. The number withheld is reported per fixture and on /v1/health, so the gap is never silent.
Poll /v1/fixtures, or hold /v1/stream open and take one event per price push. The stream withholds exactly what REST withholds.
Trial plan, no card. 20 requests a minute, 100 a day, the full board.
We send the key to your inbox and never show it here — that is what ties it to you rather than to whoever typed your address.
Rate limits per plan are below. Pricing is not published yet — the API is in private beta.
20 requests/minute · 100/day
10 requests/second
10 requests/second
30 requests/second
Rate limits are per key. /v1/health and /v1/me never count against them.
See the docs for the 429 contract.
Numbers on this page come from measured snapshots of the live board. They are not guarantees, and the ones that move are published on /v1/health so you can read the current value rather than trust this page.
null rather than guessed.