breaking-bet.com APIbreaking-bet.com ↗
Access real-time surebet opportunities from breaking-bet.com via 3 endpoints. Get profit %, ROI, odds, and event details across 60+ bookmakers and 15+ sports.
curl -X GET 'https://api.parse.bot/scraper/3f3570e2-d2bd-4749-97da-5e0ecab8ac39/get_surebets' \ -H 'X-API-Key: $PARSE_API_KEY'
Get current arbitrage (surebet) opportunities. Returns a list of arbs sorted by profit percentage or other criteria. Each arb includes the profit percentage, ROI, event details, and odds from different bookmakers. Note: in guest/free mode, team names and leagues are masked but profit data and bookmaker information are fully available.
| Param | Type | Description |
|---|---|---|
| sort | string | Sort order for results. Accepts exactly one of: value, roi, created. |
| market | string | Market type. Accepts exactly one of: prematch, live. |
| sport_ids | string | Comma-separated list of sport IDs to filter by (e.g. 1,6,5). Use get_bookmakers endpoint to see all sport IDs. When omitted, all sports are included. |
| max_profit | number | Maximum profit percentage filter. |
| min_profit | number | Minimum profit percentage filter (e.g. 5 for 5% minimum). |
{
"type": "object",
"fields": {
"masked": "boolean indicating if team names are masked in guest mode",
"surebets": "array of arbitrage opportunity objects",
"timestamp": "integer Unix timestamp of the response",
"total_filtered": "integer total count of matching arbs"
},
"sample": {
"masked": true,
"surebets": [
{
"id": "7935484397684790294:807:;22275:0.25::7935483284529585355;22278:::7935483282516857388;22272:::7935483284449214075;",
"roi": 2177166.6,
"odds": [
{
"prev": 0,
"index": "",
"sport": "Football",
"start": "2026-06-07 19:00",
"value": 0,
"team_1": "xxxx xxxxxx xxxxx xxxxxx",
"team_2": "xxxxxx xxxxx xx",
"updated": "2026-06-07 11:29:48",
"initiator": true,
"original_id": "42989195",
"bookmaker_id": 56,
"sub_event_id": "7935483284529585355"
}
],
"start": "2026-06-07 19:00",
"league": "xxxxxxxx",
"team_1": "xxxx xxxxxx xxxxx xxxxxx",
"team_2": "xxxxxx xxxxx xx",
"created": "2026-06-07 13:32:57",
"is_live": false,
"event_id": "7935484397684790294",
"sport_id": 1,
"profit_percent": 3479.49
}
],
"timestamp": 1780843622,
"total_filtered": 151651
}
}About the breaking-bet.com API
The Breaking-Bet API provides 3 endpoints for retrieving live and prematch sports arbitrage (surebet) opportunities across 60+ bookmakers and 15+ sports. The core get_surebets endpoint returns an array of arb objects with profit percentages, ROI figures, and per-bookmaker odds, filterable by market type, sport, and profit range. Companion endpoints cover bookmaker/sport reference data and aggregate market statistics.
What the API Returns
The get_surebets endpoint returns a list of current arbitrage opportunities. Each entry in the surebets array carries the profit percentage, ROI, event details, and the odds available at different bookmakers. You can sort results by value, roi, or created, and filter by market (prematch or live), a comma-separated list of sport_ids, and min_profit / max_profit thresholds. The response also includes total_filtered (total matching arb count) and a masked boolean that indicates whether team names and league labels are hidden in the current access tier — in guest mode, event identity fields are obscured.
Reference and Statistics Endpoints
get_bookmakers returns three dictionaries: sports (sport ID → name), bookmakers (bookmaker ID → name), and odds_types (odds type ID → object with title_short, title_full, and lay flag). Because get_surebets returns numeric IDs for bookmakers, sports, and odds types, calling get_bookmakers first lets you resolve those IDs into readable labels. get_stats returns a counters object with integer counts of currently available surebets, middles, and valuebets across all markets and profit thresholds — useful for monitoring overall market activity without fetching the full arb list.
Coverage and Filtering Notes
The API covers both prematch and live markets. Sport IDs for the sport_ids filter can be discovered via get_bookmakers rather than being hardcoded. The min_profit parameter accepts a number such as 5 to mean 5% minimum — this lets you exclude noise from thin arbs. Response timestamps are Unix integers, making it straightforward to track data freshness. No pagination parameters are documented; the response returns the full filtered set in one call.
- Monitor live surebet opportunities filtered to a specific set of bookmakers you hold accounts with
- Build a profit dashboard using the
min_profitfilter to surface only arbs above a chosen threshold - Resolve bookmaker IDs returned by
get_surebetsinto names using theget_bookmakersdictionary endpoint - Track aggregate surebet, middle, and valuebet counts over time using
get_statscounters - Compare prematch vs. live arb availability by toggling the
marketparameter inget_surebets - Filter arb results to a single sport using
sport_idsto focus on markets you specialise in - Alert on new opportunities by polling
get_statsand triggering a fullget_surebetsfetch when counts change
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does breaking-bet.com have an official developer API?+
What does the `masked` field in `get_surebets` mean?+
masked is true, team names and league identifiers within the surebets array are obscured. This applies in guest or free-tier access. Profit percentages, ROI, bookmaker IDs, and odds figures are still returned; only the event identity fields are hidden.Does the API expose individual bet stake calculations or kelly criterion sizing?+
Can I filter surebets to a specific bookmaker rather than a sport?+
get_surebets endpoint filters by sport_ids and market but does not currently accept a bookmaker ID filter — each arb result includes the bookmakers involved, so post-fetch filtering is needed. You can fork this API on Parse and revise it to add a bookmaker-side filter parameter.How do I find the valid sport IDs to use with the `sport_ids` parameter?+
get_bookmakers first. Its sports response object maps each sport ID string to a human-readable name. Pass one or more of those IDs as a comma-separated string to the sport_ids parameter in get_surebets — for example, 1,6,5.