Football betting markets
137 market names for Football, 136 priced pre-match and 108 in-play. Pass any of them to the markets parameter to get only those odds.
- Markets
- 137
- Pre-match
- 136
- In-play
- 108
- Periods
- 3
Request Football markets
Use the names exactly as listed. This request returns three Football markets for one event.
GET https://api.odds-api.io/v3/odds?apiKey=YOUR_API_KEY&eventId=EVENT_ID&bookmakers=Bet365&markets=ML,Spread,TotalsAll 137 Football markets
Grouped by period. Each row links to its own anchor, so you can point to a single market.
Match and other periods 100
First half 23
| Market name | Shape | Pre-match | In-play |
|---|---|---|---|
| ML HT | moneyline | Yes | Yes |
| Spread HT | line | Yes | Yes |
| Totals HT | line | Yes | Yes |
| Half Time / Full Time | labelled | Yes | Yes |
| Corners Spread HT | line | Yes | Yes |
| Corners Totals HT | line | Yes | Yes |
| 1st Half Corners | line | Yes | Yes |
| Anytime Goalscorer HT | labelled | Yes | Yes |
| Bookings Spread HT | line | Yes | Yes |
| Bookings Totals Away HT | line | Yes | Yes |
| Bookings Totals HT | line | Yes | Yes |
| Bookings Totals Home HT | line | Yes | Yes |
| Both Teams To Score HT | yesno | Yes | Yes |
| Corners Totals Away HT | line | Yes | Yes |
| Corners Totals Home HT | line | Yes | Yes |
| Correct Score HT | labelled | Yes | Yes |
| Double Chance HT | outcomes | Yes | Yes |
| Draw No Bet HT | moneyline | Yes | Yes |
| European Handicap HT | line | Yes | Yes |
| Exact 1st Half Goals | labelled | Yes | Yes |
| Odd/Even HT | outcomes | Yes | Yes |
| Team Total Away HT | line | Yes | Yes |
| Team Total Home HT | line | Yes | Yes |
Second half 14
| Market name | Shape | Pre-match | In-play |
|---|---|---|---|
| 2nd Half Corners | line | No | Yes |
| Anytime Goalscorer 2H | labelled | Yes | Yes |
| Both Teams To Score 2H | yesno | Yes | Yes |
| Corners Totals 2H | line | Yes | Yes |
| Double Chance 2H | outcomes | Yes | Yes |
| Draw No Bet 2H | moneyline | Yes | Yes |
| European Handicap 2H | line | Yes | Yes |
| Exact 2nd Half Goals | labelled | Yes | No |
| ML 2H | moneyline | Yes | Yes |
| Odd/Even 2H | outcomes | Yes | Yes |
| Spread 2H | line | Yes | Yes |
| Team Total Away 2H | line | Yes | Yes |
| Team Total Home 2H | line | Yes | Yes |
| Totals 2H | line | Yes | Yes |
What the odds look like
Every market has a shape that tells you how to read its odds rows. These are example rows from the odds endpoints.
moneyline
One row with a price for each side: home and away, plus draw on three-way markets.
Football: ML, Draw No Bet, ML HT, Draw No Bet 2H
JSONMarkets in the response[ { "name": "ML", "odds": [ { "home": "2.10", "draw": "3.40", "away": "3.20" } ] }, { "name": "ML 1st Set", "odds": [ { "home": "1.62", "away": "2.25" } ] } ]line
One row per line. hdp is the handicap or the total, with home/away prices on a handicap and over/under on a total.
Football: Spread, Totals, Goals Over/Under, Spread HT
JSONMarkets in the response[ { "name": "Spread", "odds": [ { "hdp": -0.5, "home": "1.95", "away": "1.85" }, { "hdp": -1.5, "home": "3.10", "away": "1.36" } ] }, { "name": "Totals", "odds": [ { "hdp": 2.5, "over": "1.90", "under": "1.90" } ] } ]outcomes
Fixed named outcomes in one row: 1X, 12 and X2 on Double Chance, odd and even, or home, away and none when no team scores.
Football: Double Chance, First Team To Score, Odd/Even, Corners Race
JSONMarkets in the response[ { "name": "Double Chance", "odds": [ { "1X": "1.28", "12": "1.30", "X2": "1.70" } ] }, { "name": "First Team To Score", "odds": [ { "home": "3.20", "away": "2.63", "none": "2.49" } ] } ]yesno
One row with a yes price and a no price.
Football: Both Teams To Score, Away Win to Nil, Both Teams To Score 2H, Both Teams To Score HT
JSONMarkets in the response[ { "name": "Both Teams To Score", "odds": [ { "yes": "1.80", "no": "2.00" } ] } ]labelled
One row per selection. label names it, such as a correct score or a player, and odds holds the price. Player Props rows add a line with over and under.
Football: Half Time / Full Time, Anytime Goalscorer, First Goalscorer, Last Goalscorer
JSONMarkets in the response[ { "name": "Correct Score", "odds": [ { "label": "1-0", "odds": "7.50" }, { "label": "2-1", "odds": "9.00" } ] }, { "name": "Player Props", "odds": [ { "label": "Arike Ogunbowale (Assists)", "hdp": 5.5, "over": "1.87", "under": "1.95" } ] } ]
Naming notes
- Names are the same on every bookmaker and match the markets parameter without regard to case. There is no Match Winner (use ML) and no bare Over/Under or Asian Handicap.
- Corners, Alternative Corners and 1st Half Corners are three-way totals at a whole line. A row can include exactly: when the count lands on the line, over and under both lose.
- A market with No under pre-match is only priced once the event is under way.
Football markets FAQ
How many Football markets does the API have?
137 right now: 136 priced pre-match and 108 in-play. The list follows what bookmakers price, and GET /v3/markets?sport=football returns the current set without an API key.
How do I get only some Football markets?
Add markets with comma-separated names to /v3/odds, /v3/odds/multi or the WebSocket, for example markets=ML,Spread,Totals. Matching ignores case but needs the full name.
What does ML mean?
ML is the moneyline: who wins the match. Use ML for the match result, as there is no market called Match Winner.
Data and citation
The same list as JSON, no API key needed: https://api.odds-api.io/v3/markets?sport=football
Last updated 12 November 2026.
Link to this page: https://odds-api.io/markets/football
Start pulling odds
One API key covers every market on this page, pre-match and in-play, from 450+ bookmakers.