FanDuel publishes no public developer API — no portal, no docs, no price list. FanLine Wire fills the gap: a real-time feed of FanDuel Sportsbook prices, refreshed continuously and readable at one URL without a key.
| FanLine Wire | Waiting on FanDuel | |
|---|---|---|
| Public developer API | Yes — one JSON URL, no key | None published |
| Price list | Free, Basic $29/mo, Full $149/mo | No price list to read |
Search for a FanDuel odds API, a FanDuel sportsbook API, a FanDuel data API or a FanDuel betting API and you meet the same wall: none of them is official. FanDuel publishes no developer documentation, no self-serve endpoint and no price list, so nothing you can call today is a real FanDuel sportsbook API. What does rank falls into a few buckets:
| What you found | What it really is |
|---|---|
| "Official FanDuel developer API" | Does not exist — no public API, no price list. |
| A FanDuel data API from an aggregator | Odds collected elsewhere, resold under another brand. |
| A FanDuel odds scraper | A bot reading FanDuel's own pages: yours to host — see FanDuel odds scraper. |
| FanLine Wire | A feed that subscribes to FanDuel's own market feed and republishes it as JSON. |
The long version is on the FanDuel API explained page. The short one: nothing official exists, so the choice is scraping it yourself or reading a feed that already does.
One document, no key, no signup:
curl https://fanlinewire.com/odds.json
A single JSON document refreshed continuously from a WebSocket subscription to FanDuel's own market feed, shaped for reading a board rather than replaying history:
| Field | What it gives you |
|---|---|
generated_at | ISO 8601 UTC timestamp for the document. |
sequence | Monotonic counter that climbs with every collector tick — proof the feed is moving. |
fixtures[] | Recent-tick tape, newest first, capped at 20 rows: sport, fixture, market, status, inplay, updated_at, plus prices[] (selection_id, american). |
live.* / prematch.* | total counts across every subscribed market, and by_sport split under FanDuel's own sport names. |
drops[] | Price moves against the bettor, newest first, capped at 12: fixture, market, outcome, pct, from, to, updated_at. |
X-Server-Ms | Response header reporting server-side request time. |
Politeness floor: one fetch per 10 seconds — a shared-endpoint courtesy, not a plan quota. Per-key REST limits are listed under FanDuel API pricing.
On 2026-09-15 the snapshot carried 6 live markets and 1,258 pre-match markets. Moneyline, spread and totals were the core markets in the mix; the book's futures and outright markets appeared alongside them — Run Line, Spread, Total Runs, 1st Round Leader, World Series 2026 Winner, and National League 2026 — Winning Division among them. Treat that as a sample, not a contract: no fixed closed market list is promised.
Two rules save you a class of bugs. Prices are American odds as a signed integer and null when a selection is unpriced — skip unpriced selections rather than rendering them. Only status OPEN is tradeable; a suspended market still appears in the tape. In drops[], pct is a move in implied-probability terms, not odds points.
Want every move as it happens rather than a sampled board? The same feed runs over a push socket — FanDuel live odds covers in-play changes, and the FanDuel WebSocket API page covers the transport.
The snapshot needs no key. Raising the rate or subscribing to the push stream does — and Free costs nothing and takes no card:
| Plan | Limits | Transport |
|---|---|---|
| Free | 100 req/day — no card required | REST |
| Basic — $29/mo | 1,000 req/day | REST |
| Full — $149/mo | 30 req/sec | REST + the push WebSocket |
The push stream is an AWS AppSync GraphQL WebSocket: subscribe in chunks of roughly 30 markets — 90 across three subscriptions acks cleanly — and the richer runner payload (marketStatus, selectionId, handicap, runnerStatus, decimalDisplayOdds) exists there, not in the snapshot. Median gap inside a burst: 0.35 s. Push is Full-plan only; Free and Basic keys are REST-only — see FanDuel API pricing.
Same house, other feeds: pinnwire.com for Pinnacle, oddiwire.com for ODDIN.GG esports, and oddsradarwire.com for Betradar.
No. FanDuel publishes no public developer API and no price list — nothing self-serve to call, no enterprise price to quote. FanLine Wire fills the gap: it republishes FanDuel Sportsbook prices as JSON. Not a bookmaker; not affiliated with FanDuel.
Yes. GET https://fanlinewire.com/odds.json returns a snapshot with no key: live and pre-match counts, a recent-tick tape of up to 20 fixtures with American prices, and up to 12 price drops. One fetch every 10 seconds — a politeness floor, not a plan quota.
American odds as a signed integer, and null when a selection is unpriced — skip unpriced selections rather than rendering them. Only status OPEN carries a tradeable price. The push stream adds decimal odds; the snapshot does not.
Refreshed continuously from a WebSocket subscription to FanDuel's own market feed. Each document carries generated_at (ISO 8601 UTC) and a monotonic sequence counter, and each response reports server time in the X-Server-Ms header.
It is a data feed, not a wagering API: FanLine Wire does not accept bets, hold funds or place wagers. It publishes prices for analysis and display, and it is 18+ only.