The PuntersEdge API: 15 racing bookmakers, 92 endpoints, one key.
For punters who model their own bets, tipping and form sites that show prices to their subscribers, and businesses that need the market in their own systems.
Live prices, results, form and the closing-line archive for Australian and New Zealand racing (and racing in Britain, Ireland and South Africa on smaller panels), with AFL, NRL and other Australian sports on the same key, as REST and JSON with Python and Node clients and an MCP server. Below: what each endpoint returns, what it costs in credits, and which plan unlocks it. Don’t take our coverage on trust: 15 of 15 Australian books quoting now, a median of 14 seconds since each was last read, and 88% of this week’s results with every runner placed where a full-field source exists. Verify every figure.
Free tier, no credit card. Paid plans from A$9/month. Data is for informational and analytical use only.
Trusted by 593 developers1,690,000+ API requests served100+ paying builders & teams
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 →
In their own words.
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.
Accuracy and speed are king for us, and it has ticked all our boxes. The place prices have been a nice addition, as our previous source only carried win prices.
If you're past thoroughbreds and need greyhound form or harness results without gluing three sources together, this is the piece that fills the gap.
The data is clean and consistent, and it held up from testing into live without changes on my side. The live prices power the price column on every race, and best odds and next-to-go give me what I need in two calls per poll.
The big issue for me with price providers is bookie availability and then stale prices. The data I download through the day is available, up to date and accurate, and being able to use webhooks at a reasonable price has enabled functionality I didn't have before. I've used all of the others and PuntersEdge really has hit a sweet spot.
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.
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.
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.
RaceVision uses PuntersEdge data across its Australian racing platform, including automated race results and historical market data.
Start from what the data is for.
The plan follows the use, not only the volume: what you may do with the data is set by the licence each plan carries (Terms, section 8.1).
Your own betting and research
Free, Hobby or Standard · $0 to $29/mo
Personal use: your own betting, research, models and projects.
Betting models, edge and CLV tracking, backtests and arbitrage scanners — or start from the free MIT-licensed Python scanner, pip install puntersedge, which filters candidates, sizes stakes and never places a bet.
Prices your own users see
Plus · $49/mo
Display with attribution: show our odds to your own users, paying subscribers included, with a visible credit.
Odds comparison pages, next-to-go apps, tipping and form sites, and the price column in a product your subscribers pay for, with the Prices by PuntersEdge credit on each surface.
See PlusThe market inside your business
Business $99/mo · Platform $199/mo
Commercial use: use the data anywhere in your business — internal systems, client work, products you sell. Redistribution (Platform): pass our data on inside your product, as a feed, an export or an API.
Trading and pricing systems, client work, market reports and data-led content, daily bulk files and team keys; on Platform, feeds to your own users and the white-label widget.
Compare Business and PlatformClean 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.4.0) with typed methods for the core racing and sports odds endpoints and a puntersedge-arb scanner; TypeScript & JavaScript (npm install puntersedge 1.3.0), which also covers results, price history, form, the closing-line archive, webhooks and bulk files, with zero dependencies and types generated from the live OpenAPI schema, running on Node, Deno, Bun and Cloudflare Workers (it also runs in a browser, but a key must not: route browser traffic through your own server or use the widget); 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.
# 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 87 of 92 published paths (measured 2026-10-25). Not covered: /v1/account/insights, /v1/account/onboarding, /v1/account/samples/{kind}, /v1/keys and /v1/signup.
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. Also listed on RapidAPI ↗.
Sports & odds
markets (h2h, spreads, totals), bookmakers and oddsFormat.arb_exists / arb_profit_pct flags.Racing
/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.move_pct is negative for a firming runner.deduction values are a fraction of the payout withheld — 0.34 means 34c in the dollar.CLV. Every race from 2026-08-04: the last 45 days from the live store, older races from the permanent archive, in the same shape. Every plan reads upcoming races and the last 24 hours; races that started earlier are Standard+hours_ahead window, optionally filtered by category.Account & operations
previous_key_valid_until. Rotating a leaked key? Pass ?immediate=true to revoke it now.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.
arb_pct, optimal stakes and per-selection price comparison. Filter with sport_key, min_profit_pct.sport_key, min_profit_pct.book, type, min_ev.[
{
"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.
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 | |
|---|---|---|
| 15 Australian racing bookmakers (Sportsbet, BetGold, PointsBet, BetRight, BoostBet…) | Full | Partial / none |
| Horse, greyhound & harness racing | Yes | Rarely |
| Arbitrage & best-price comparison, pre-computed | Yes | No |
| Free tier, no credit card | Yes — 3,000 credits/mo | Varies |
| Australian timezone & market focus | Yes | Global-generic |
Side-by-side comparisons: vs The Odds API · vs Krok Odds · racing data APIs · every API compared
Start free. Scale when needed.
- Your own betting, research, models and projects.
- No credit card
- 30 requests/minute
- Verify by email, then the key works
- Your own betting, research, models and projects.
- Past the free cap
- 60 requests/minute
- Sports + racing endpoints
- Your own betting, research, models and projects.
- Every Australian racing bookmaker the API serves — all 15 of them
- Thoroughbred, harness & greyhound
- Sports endpoints included too
- 200 requests/minute
- Price history on past races, historical sports odds & a 90-day closing-line archive
- Show our odds to your own users, paying subscribers included, with a visible credit.
- Everything in Standard, plus the permanent archive
- Bulk price-path exports & CLV scoring
- Race markets: place & Top 2/3/4 per book, with exotic dividends
- Form backfill & webhooks
- 500 requests/minute
- 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
- 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
- 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
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 →
API FAQ
Is there a free API key?
How do I authenticate requests?
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?
/v1/usage reports what you have left.What sports and racing are covered?
soccer_epl; other soccer competitions sit under soccer_other. Plus racing: Australian thoroughbred, harness and greyhound, and New Zealand thoroughbred and harness. Racing in Britain, Ireland and South Africa runs on smaller panels through the same endpoints: a median of 4 books a race in Britain and Ireland and 5 in South Africa, against 15 on an Australian race (measured 2026-10-25 over 7 days); results there give the finishing order without dividends. See the UK & Irish and South African sections. Per-sport depth is shallower than racing and follows the season — see the full coverage list.Can I use it commercially?
How fresh is the odds data?
age_seconds on every quote and data_age_seconds for the oldest book on a race. Big Bash (1 books, 3 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.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.