Sportsbook API · Schema

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
View JSON Schema on GitHub

JSON Schema

sportsbook-api-arbitrage-schema.json Raw ↑
{
  "$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"
    }
  }
}