Sportsbook API Arbitrage Opportunity
A sports betting arbitrage opportunity where a guaranteed profit is possible by betting on both sides across different sportsbooks
Sports BettingOddsSports DataGambling
Properties
| Name |
Type |
Description |
| eventId |
string |
Unique event identifier |
| homeTeam |
string |
Home team name |
| awayTeam |
string |
Away team name |
| sport |
string |
Sport name |
| league |
string |
League abbreviation |
| market |
string |
Betting market type (spread, moneyline, total) |
| period |
string |
Game period for the arbitrage |
| bookmaker1 |
string |
First sportsbook in the arbitrage pair |
| bookmaker2 |
string |
Second sportsbook in the arbitrage pair |
| homeOdds |
number |
Home team or over odds from bookmaker1 in American format |
| awayOdds |
number |
Away team or under odds from bookmaker2 in American format |
| profit |
number |
Guaranteed profit percentage (e.g., 2.5 means 2.5% guaranteed return) |
| impliedProbabilitySum |
number |
Sum of implied probabilities (must be < 1.0 for true arbitrage) |
| detectedAt |
string |
When the arbitrage opportunity was detected |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://sportsbookapi.com/schemas/arbitrage",
"title": "Sportsbook API Arbitrage Opportunity",
"description": "A sports betting arbitrage opportunity where a guaranteed profit is possible by betting on both sides across different sportsbooks",
"type": "object",
"required": ["eventId", "market", "bookmaker1", "bookmaker2", "profit"],
"properties": {
"eventId": {
"type": "string",
"description": "Unique event identifier"
},
"homeTeam": {
"type": "string",
"description": "Home team name"
},
"awayTeam": {
"type": "string",
"description": "Away team name"
},
"sport": {
"type": "string",
"description": "Sport name"
},
"league": {
"type": "string",
"description": "League abbreviation"
},
"market": {
"type": "string",
"description": "Betting market type (spread, moneyline, total)"
},
"period": {
"type": "string",
"description": "Game period for the arbitrage"
},
"bookmaker1": {
"type": "string",
"description": "First sportsbook in the arbitrage pair"
},
"bookmaker2": {
"type": "string",
"description": "Second sportsbook in the arbitrage pair"
},
"homeOdds": {
"type": "number",
"description": "Home team or over odds from bookmaker1 in American format"
},
"awayOdds": {
"type": "number",
"description": "Away team or under odds from bookmaker2 in American format"
},
"profit": {
"type": "number",
"description": "Guaranteed profit percentage (e.g., 2.5 means 2.5% guaranteed return)",
"minimum": 0
},
"impliedProbabilitySum": {
"type": "number",
"description": "Sum of implied probabilities (must be < 1.0 for true arbitrage)",
"exclusiveMaximum": 1.0
},
"detectedAt": {
"type": "string",
"format": "date-time",
"description": "When the arbitrage opportunity was detected"
}
}
}
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/sportsbook-api-arbitrage"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.