18+ Only  |  Gambling can be addictive — please gamble responsibly  |  Gambling Help: 1800 858 858  |  GambleAware
Australian racing & sports odds data · REST + JSON

The developer platform for Australian racing and sports odds.

Live prices from 14 Australian racing bookmakers on thoroughbred, harness and greyhound racing, and 6 on sports: next-to-go, best odds, settled results, form, a closing-line archive and price paths, plus best-price and arbitrage endpoints. Build racing apps, models and odds tools without scraping a single bookmaker yourself.

No credit card for free tier. Racing, sports, best-odds and arbitrage endpoints. Data is for informational and analytical use only.

Trusted by 354 developers754,000+ API requests served55+ paying builders & teams

I was skeptical the odds would be refreshed often enough to be useful. They were updated well within the timeframes I needed, and I'm refreshing the markets multiple times per minute.
Glenn G Business plan
I was unsure whether a relatively new API would have the coverage and consistency to build on across full Australian race cards. The breadth was better than I expected, and having acceptances, results, horse data and market data through the one API has been worth more than any single endpoint. There have been gaps, but they have been visible rather than hidden, and genuine issues have been investigated and fixed rather than brushed off.
Punters Place Standard plan
My main concern was whether the API data would reconcile reliably enough with the other racing data First4 Pro uses, because a silent mismatch could contaminate the analysis. In one validation run First4 Pro matched all 41 active runners across five races with no ambiguous matches.
Mick Standard plan
My main question was whether the data would have enough depth, granularity and stable identifiers to build a proper quantitative racing and backtesting platform around it, rather than simply being another odds and results feed. It's been much more comprehensive than I initially expected. The permanent price-path history is the standout: following price changes by bookmaker and linking them through runner_ref to results, closing lines and horse form is particularly useful for the type of quantitative research I'm building.
Chris B. Standard plan
RaceVision uses PuntersEdge data across its Australian racing platform, including automated race results and historical market data.
RaceVision Standard plan
14Racing bookmakers
20Sport keys
3Arb & value feeds
3,000Free credits
Live sandbox · no key

See real Australian odds, right now.

Live data from the public sandbox — the same shape the paid endpoints return, no signup required. Rate-limited and truncated; a free key unlocks the full feed.

Open the full interactive playground — pick endpoints & copy code →

Loading live odds…
GET /api/v1/demo/racing/next-to-go Get your free API key →
Use cases

What you can build with it.

The API is designed for practical Australian sports betting products — not generic offshore odds feeds with poor local coverage.

01

Odds comparison tools

Show best available prices across Australian bookmakers for major sports and racing markets.

02

Betting model pipelines

Feed price snapshots into models, edge calculators, CLV tracking and alerting systems.

03

Racing next-to-go apps

Power horse, greyhound and harness racing views with runners, prices and upcoming race order.

04

Arbitrage scanners

Dedicated /v1/arb/* endpoints return sports surebets and spreads/totals line arbs with stakes and locked-in margin pre-calculated. For racing, /v1/racing/best-odds returns the best price per runner across books, with the market percentage that tells you when the field beats 100.

05

Promo value board

Surface daily bookmaker promos ranked by EV per $1 via /v1/value/promos. The value you'd otherwise track by hand across every book.

06

Content and analytics

Create odds widgets, market reports, betting previews and data-led sports analysis pages.

Quickstart

Clean requests. Predictable JSON.

Simple API-key authentication with endpoints designed around racing, best odds, sports and usage.

Rather not write the HTTP layer? Four official clients, all MIT licensed and open source: Python (pip install puntersedge 0.3.2) with typed methods over every endpoint and a puntersedge-arb scanner; TypeScript & JavaScript (npm install puntersedge 1.2.1) with zero dependencies and types generated from the live OpenAPI schema, running on Node, Deno, Bun, Cloudflare Workers and in the browser; an MCP server (pip install puntersedge-mcp) that gives Claude, Cursor or Copilot read-only tools over live prices, results, form and the closing-line archive; and a Postman collection beside the OpenAPI document. Or use any HTTP client — the API is plain REST and JSON.

cURLRESTJSON
# 1. Try it right now — no key, no signup. This returns real data.
curl https://api.puntersedge.online/v1/demo/racing/next-to-go

# 2. Get a free key at puntersedge.online/api#signup (3,000 credits/mo, no card).

# 3. The same call, keyed. Returns a JSON ARRAY of races — not an object.
curl "https://api.puntersedge.online/v1/racing/next-to-go?num_races=5&categories=horse&country=AU" \
  -H "X-API-Key: YOUR_API_KEY"

# NRL head-to-head odds
curl "https://api.puntersedge.online/v1/sports/nrl/odds?markets=h2h" \
  -H "X-API-Key: YOUR_API_KEY"

# Best price per runner across the Australian books
curl "https://api.puntersedge.online/v1/racing/best-odds?categories=horse" \
  -H "X-API-Key: YOUR_API_KEY"

Prefer a GUI? In Postman choose Import → Link and paste https://api.puntersedge.online/postman.json — baseUrl already filled in and a Sandbox folder that needs no key. The Postman collection covers 76 of 80 published paths (measured 2026-10-01). Not covered: /v1/ingest/sports/{bookmaker_key}, /v1/ingest/{bookmaker_key}, /v1/keys and /v1/signup.

Endpoints

Sports, odds & racing.

Every endpoint explained in plain English — what it returns, what it costs, which plan has it.

All responses are JSON. Authenticate with the X-API-Key header. Credit cost is shown per call.

Sports & odds

GET
/v1/sports
List active sports and their keys, titles and groups.
1 credit
GET
/v1/sports/{sport_key}/odds
Odds for a sport. Filter by markets (h2h, spreads, totals), bookmakers and oddsFormat.
1 credit / market
GET
/v1/best-odds/{sport_key}
Best available price per selection across all books, with arb_exists / arb_profit_pct flags.
3 credits
GET
/v1/sports/{sport_key}/odds/history
Historical odds snapshots over a date range. Standard+
5 credits
GET
/v1/sports/{sport_key}/odds/movements
Detected price movements from historical snapshots. Standard+
5 credits

Racing

GET
/v1/racing/next-to-go
Next races to jump with runners and prices, plus jockey, trainer, barrier, weight, form, scratchings and track condition on Australian and New Zealand meetings. Opening price and flucs are carried inline for BetRight; for every book’s opening line and drift use /v1/racing/movers. Enrichment fields are null on international races. On Plus and above each Unibet, TAB, Ladbrokes and Neds price also carries a runner-level betslip deep link that opens the book’s slip with the runner selected.
2 credits or 3 credits or 4 credits
GET
/v1/racing/best-odds
Best win, place and tote price per runner across every book, with the bookmaker offering it, a deep link, and the market percentage — under 100 means the best prices beat the field.
3 credits
GET
/v1/racing/movers
Steamers and drifters: runners whose consensus price has moved since the market opened, with the per-book moves behind it. move_pct is negative for a firming runner.
3 credits
GET
/v1/racing/results
Settled results: finishing order with one bookmaker’s settled win and place prices (BetRight), plus scratchings and their deductions. deduction values are a fraction of the payout withheld — 0.34 means 34c in the dollar.
2 credits
GET
/v1/racing/price-history
Every price move for a race, per runner per book — with a real opening line and a true closing line for CLV. History starts 4 August 2026 and is retained for 45 days, so the window is still filling and grows by a day each day until it reaches the full 45.
5 credits
GET
/v1/racing/events
Upcoming race list within an hours_ahead window, optionally filtered by category.
1 credit
GET
/v1/racing/closing-lines
The permanent closing-line and result archive: the last price each book showed before the jump, kept beyond the rolling snapshot window — the denominator for CLV. Standard+ (a 90-day window on Standard, permanent from Plus). Plan-gated to Standard, Plus, Business, Platform, Scale and Enterprise; on Standard the window is clamped to 90 days.
5 credits or 20 credits
GET
/v1/racing/closing-lines/coverage
What the archive actually holds — per day and per book — so you can check the window covers your backtest before you spend credits on it. Standard+ Same plan gate as the archive itself.
1 credit
GET
/v1/racing/price-paths
Bulk export of the permanent price-movement archive — every change-only price path per runner per book, as JSON pages or one CSV or Parquet file. Plus+
5 credits or 20 credits
POST
/v1/racing/clv
Score up to 200 bets against the closing line: the named book’s close or the market’s best or median, CLV %, beat-the-close, result and flat-stake P&L, with aggregates across the list. Plus+
5 credits
GET
/v1/racing/markets
Every market on one race in one call: win, place and Same Race Multi Top 2, Top 3 and Top 4 per bookmaker, each book’s market percentage, and the best price per runner in each market — plus, once the race has been run, the settled exotic dividends (quinella, exacta, trifecta, first four). Top 2/3/4 are quoted by Sportsbet, Ladbrokes, Neds and PointsBet and by no other book in the feed. A race that has already jumped is answered from our own minute-by-minute capture of the last price each book showed before the off, which is the only place that record exists. Plus+
2 credits
GET
/v1/bulk/datasets
The bulk catalogue: every dataset published as pre-built files — closing lines, price paths, results, acceptances, track conditions, race markets, exotic dividends — with the daily files and monthly bundles that exist, rows, bytes and digests. Free. Business+
Free
GET
/v1/bulk/{dataset}/{period}
One whole Sydney day (Business+) or calendar month (Platform+) of a dataset as a single Parquet or gzip CSV file: no paging, no database work, a free 304 when nothing changed. Business+ · months Platform+
POST/GET/PATCH/DELETE
/v1/widgets
White-label odds widget: an embeddable live-odds frame in your colours, with your own bookmaker links and no PuntersEdge credit — the redistribution licence in practice. Managing them is free; a metered fill costs 2 credits (racing) or 1 (a sports market), at most one a minute per parameter set. Platform
POST/GET/DELETE
/v1/keys/team
Team keys: mint, list and revoke extra keys on one account that share its credit pool — each with its own rate limit, IP whitelist and usage line. 3 keys on Business, 5 on Platform, 10 on Scale, primary included. Free. Business+

Account & operations

GET
/v1/usage
Credits used and remaining this month for your key.
Free
GET
/v1/usage/analytics
Usage broken down by endpoint over the last N days.
Free
GET
/v1/data-quality/summary
Connector freshness, canonical mappings and recent audit status.
1 credit
POST
/v1/keys/rotate
Rotate your API key. The old key keeps working for a 24-hour grace window so you can cut over without an outage — the response returns previous_key_valid_until. Rotating a leaked key? Pass ?immediate=true to revoke it now.
Free
GET
/v1/health · /v1/uptime
Connector health and public uptime stats for monitoring.
Free
POST/GET
/v1/webhooks
Register webhooks for events, list deliveries and send a test payload. Plus+
Free
Arbitrage & value

Arb and value, pre-computed.

These endpoints do the cross-book maths for you: surebet detection, optimal stake splits, cross-book price edges, and EV-ranked promo value.

GET
/v1/arb/sports
Scans upcoming sports markets for true arbitrage and best-odds overlays. Returns arb_pct, optimal stakes and per-selection price comparison. Filter with sport_key, min_profit_pct.
3 credits
GET
/v1/arb/lines
Line-matched arbitrage on spreads/totals: back both sides at complementary lines. Filter with sport_key, min_profit_pct.
3 credits
GET
/v1/arb/best-prices
Best price per selection plus full book comparison: worst price, average, spread and overlay %.
2 credits
GET
/v1/value/promos
Daily promo value board ranked by EV per $1 (gubbing-penalised). Filter with book, type, min_ev.
GET /v1/arb/sports200 · JSON
[
  {
    "sport_key": "nrl",
    "home_team": "Melbourne Storm",
    "away_team": "Penrith Panthers",
    "commence_time": "2026-06-21T09:50:00Z",
    "is_arb": true,
    "arb_pct": 2.84,
    "max_overlay_pct": 3.1,
    "optimal_stakes": [
      {"name": "Melbourne Storm", "stake": 52.7, "bookmaker": "sportsbet", "profit_if_wins": 5.41},
      {"name": "Penrith Panthers", "stake": 47.3, "bookmaker": "neds", "profit_if_wins": 5.39}
    ],
    "selections": [
      {"name": "Melbourne Storm", "best_price": 1.96, "best_bookmaker": "sportsbet",
       "avg_price": 1.88, "overlay_pct": 3.1,
       "all_prices": [{"bookmaker": "sportsbet", "price": 1.96}, {"bookmaker": "tab", "price": 1.90}]}
    ]
  }
]

Arb and value signals are computed from cached bookmaker and exchange prices. Prices move; verify each leg before staking. Not financial advice — see the responsible gambling page.

Coverage

Australia and New Zealand.

Two countries with a real bookmaker panel. Australia: thoroughbred, harness and greyhound, 1,535 races served in the last 7 days, a median of 14 books quoting each race. New Zealand: thoroughbred and harness, 104 races in the same window, a median of 12 books a race — there are no New Zealand greyhounds in the feed. Sports are Australian. Measured 1 October 2026; live figures at the coverage report; the weekly market report adds best-price share and closing book percentage by bookmaker.

Bookmakers

BetRightBetDeluxeBetGoldBoostBetTABBetrPointsBetTABtouchSportsbetPalmerbetUnibetNextBet (formerly PlayUp)LadbrokesNeds

Sports and racing

Rugby UnionNBANRLAFLTennis ATPNFLTennis WTACollege FootballWNBAAFLWMLBNRLWSuper LeagueSoccer (Other Competitions)Basketball (Other Competitions)NHLEPLCricket (Other Competitions)MMA/UFCTest CricketHorse racingGreyhoundsHarness
Why PuntersEdge

Built Australian-first, not bolted on.

Most global odds APIs treat Australian markets as an afterthought — partial bookmaker coverage, no local racing, and no arbitrage maths. PuntersEdge is built around the books, racing and markets Australian developers actually need.

PuntersEdge Typical global odds API
14 Australian racing bookmakers (BetRight, BetDeluxe, BetGold, BoostBet, TAB…)FullPartial / none
Horse, greyhound & harness racingYesRarely
Arbitrage & best-price comparison, pre-computedYesNo
Free tier, no credit cardYes — 3,000 credits/moVaries
Australian timezone & market focusYesGlobal-generic

Side-by-side comparisons: vs The Odds API · OddsJam alternative · Sportradar alternative

Pricing

Start free. Scale when needed.

Free
$0
3,000 credits/mo
12.5 h of once-a-minute next-to-go polling
  • Your own betting, research, models and projects.
  • No credit card
  • 30 requests/minute
  • Verify by email, then the key works
Start free
Hobby
$9/mo
7,500 credits/mo
62.5 h of once-a-minute next-to-go polling
  • Your own betting, research, models and projects.
  • Past the free cap
  • 60 requests/minute
  • Sports + racing endpoints
Choose Hobby
Standard
$29/mo
75,000 credits/mo
The full 11-hour AU card, polled once a minute, every day of the month
  • Your own betting, research, models and projects.
  • Every Australian racing bookmaker the API serves — all 14 of them
  • Thoroughbred, harness & greyhound
  • Sports endpoints included too
  • 200 requests/minute
  • Historical odds & a 90-day closing-line archive
Choose Standard
Business
$99/mo
300,000 credits/mo
Round-the-clock polling — one call every 17.3 s, 24/7
  • Use the data anywhere in your business — internal systems, client work, products you sell.
  • Everything in Plus
  • Daily bulk dataset files
  • 3 API keys on one credit pool
  • Overage at A$0.60 per 1,000 credits, up to 50% over
  • IP whitelisting & support within one business day
  • 750 requests/minute
Choose Business
Platform
$199/mo
1.5M credits/mo
Round-the-clock polling — one call every 3.5 s, 24/7
  • Pass our data on inside your product, as a feed, an export or an API.
  • Everything in Business
  • Monthly dataset bundles
  • 5 API keys on one credit pool
  • Overage at A$0.30 per 1,000 credits, up to 50% over
  • Support within four business hours, direct channel
  • 1,000 requests/minute
Choose Platform
Scale
$249/mo
5M credits/mo
Round-the-clock polling — one call every 1.0 s, 24/7
  • Use the data anywhere in your business — internal systems, client work, products you sell.
  • Everything in Business
  • Monthly dataset bundles
  • 10 API keys on one credit pool
  • 2,000 requests/minute
Choose Scale

Credits are billed per call and reset on the 1st of the month. Full pricing, per-endpoint credit costs and what happens at your cap →

Resources

Explore API use cases.

Browse guides and use-case pages to find the right fit, then get a free key when you're ready.

Questions

API FAQ

Is there a free API key?
Yes. The free tier does not require a credit card and includes 3,000 monthly credits. Grab one from the signup form above.
Does it cover Australian bookmakers?
Yes. The API focuses on Australian-facing bookmaker coverage including Sportsbet, TAB, Neds, Ladbrokes, Unibet, PointsBet and more.
Can I use it for racing?
Yes. Racing covers Australia and New Zealand. Australia carries thoroughbred, harness and greyhound racing; New Zealand carries thoroughbred and harness. Next-to-go, best odds, price history and settled results are served on both.
Do you cover New Zealand racing?
Yes — NZ thoroughbred and harness, on the same endpoints, filtered with country=NZ. Measured over the seven days to 2026-09-02: a median of 10 quoting bookmakers on an NZ race against 13 on an AU race, and results a median 7.3 minutes after the jump against 4.9. There are no New Zealand greyhounds in the feed.
How do I authenticate requests?
Pass your key in the X-API-Key header on every request. There are no OAuth flows or signing steps — see the developer docs.
What are the rate limits and credits?
The free tier includes 3,000 credits per month. Paid tiers raise both the monthly credit allowance and per-minute rate limits. Each endpoint lists its credit cost, and /v1/usage reports what you have left.
What sports and racing are covered?
23 sport keys — AFL, NRL, NBA, NFL, MLB, NHL, the English Premier League, tennis, cricket, rugby union, MMA and more — with head-to-head on every code and spreads and totals where the books post lines. The English Premier League is soccer_epl; other soccer competitions sit under soccer_other. Plus racing: Australian thoroughbred, harness and greyhound, and New Zealand thoroughbred and harness. Per-sport depth is shallower than racing and follows the season — see the full coverage list.
Can I use it commercially?
What you may do with the data follows your plan: personal use on Free, Hobby and Standard; display with attribution on Plus; commercial use on Business and Scale; redistribution on Platform. Keys created on or before 15 September 2026 keep the earlier licence, which carried commercial use on any plan. Full wording in section 8 of the terms.
How fresh is the odds data?
Racing books are re-read fast, but not at the same rate as each other. Racing polling is per book and it is not uniform. Measured over the trailing 7 days to 2026-10-01 through the 10:00–21:00 AEST card, the median age of a connector's last successful read is 8–17s for fourteen of the fourteen served books. There is no single racing poll interval to quote: the slowest served book is 2x the fastest, so any blanket figure is wrong for a named book. Every quote carries its own age_seconds — that is the number to gate on. Poll age is not price age: capture is change-only, so a price can be older than the read that confirmed it — the median price age over the same 24 hours was 115–598 seconds per book — see the live coverage report for the current per-book figures. Rather than trust one median, read the age each response carries: age_seconds on every quote and data_age_seconds for the oldest book on a race. A-League (1 books, 11 fixtures) is ingested and quoted by a served bookmaker but is not reachable: the API 404s the key. It is measured here and excluded from the coverage table rather than counted as coverage. Connector freshness and audit status are at /v1/data-quality/summary; note it reports only the connectors your key can actually read — the Betfair Exchange and Pinnacle reference feeds are withheld there too, so the count you see is the served set, not every feed we ingest.
Build with Australian odds

Get your API key and start testing.

Free tier available now. Paid tiers unlock higher monthly credit limits through Stripe checkout.

Data for informational and analytical use only. Do not use for illegal gambling services or unlicensed betting operations.

This site contains wagering-related analysis and is intended for Australian users aged 18+. Gambling involves risk. Please gamble responsibly.