⚠️ Deprecation Notice
This endpoint is deprecated. Use GET /api/v1/odds for listing odds with league_id or event_id
filters, larger page sizes (up to 1000), and a flat response structure. The /api/v1/odds endpoint
remains supported and is the preferred way to retrieve odds data.
Retrieve betting markets with outcomes and odds data using optimized performance structure.
Response Structure
Returns markets with full outcomes and odds data using the optimized structure:
{
"market_id": "5c4e8fe4-5bc9-49e1-aa84-aaa975900703",
"market_name": "Moneyline",
"market_status": "active",
"market_type": "moneyline",
"market_updated_at": "2024-01-15T20:30:00Z",
"outcomes": [
{
"outcome_id": "abc123",
"outcome_name": "Team A",
"outcome_selection": "Team A",
"outcome_line": null,
"outcome_status": "ACTIVE",
"odds": [
{
"odds_id": "def456",
"odds_price": -110,
"odds_price_type": "american",
"odds_sportsbook": "draftkings",
"odds_is_main": true,
"odds_aggregator": "sportradar"
}
]
}
]
}
Performance Note
By default, this endpoint returns only the latest odds per outcome/sportsbook/aggregator
combination for optimal performance. If you need historical odds for line movement tracking,
use the include_odds_history parameter.
⚠️ Memory Protection: This endpoint has a maximum page size of 250 records (instead of 1000) to prevent out-of-memory errors when loading nested outcomes and odds data. Use pagination to retrieve larger datasets.
Migration to Preferred Endpoint
Deprecated: GET /api/v1/market_odds (this endpoint)
Preferred: GET /api/v1/odds — use league_id or event_id filters and per_page up to 1000.
