Favourites
A
GET
/v1/odds/favourites
Matches grouped by favourite strength
Matches grouped by how short the favourite was, with the record at each band.
Plan
This endpoint needs Archive.
Calling it on a lower plan returns a 403 naming the plan it needs and
a link to pricing, never a bare refusal.
Parameters
league_id
string
query
Restrict to one competition. Ids come from
/v1/leagues: 39 is the English Premier League, 62 is Ligue 2. e.g. lg_24T9Z0G
season
integer
query
Season by its starting year. A 2024/25 season is
2024. e.g. 2024
min_price
number
query
Lower bound on the kickoff price for the selection. e.g.
1.5
max_price
number
query
Upper bound on the kickoff price for the selection. e.g.
2.0
limit
integer
query
Rows per page, 1–1000. Defaults to 100. e.g.
100
Returns
data[].match_id
string
Our id for the match. Stable: what you store today still resolves later.
data[].kickoff_date
string
The kickoff date in UTC, YYYY-MM-DD.
data[].home_team_name
string
The home side's name.
data[].away_team_name
string
The away side's name.
data[].home_kickoff_price
number
The price for a home win at kickoff, as decimal odds.
data[].draw_kickoff_price
number
The price for the draw at kickoff, as decimal odds.
data[].away_kickoff_price
number
The price for an away win at kickoff, as decimal odds.
data[].full_time_result
empty in this example
home, draw or away, on the final score.
data[].home_implied
number
Home implied.
meta.data_as_of
string
When the data behind this answer was last brought up to date.
meta.request_id
string
This request's id, to quote to support.
meta.count
integer
How many items are in this answer.
Request
curl "https://api.footballsoccerapi.com/v1/odds/favourites?league_id=lg_24T9Z0G&season=2024&min_price=1.5" \ -H "X-API-Key: $FSAPI_KEY"
const res = await fetch("https://api.footballsoccerapi.com/v1/odds/favourites?league_id=lg_24T9Z0G&season=2024&min_price=1.5", { headers: { "X-API-Key": process.env.FSAPI_KEY } }); const { data, meta } = await res.json();
import os, requests r = requests.get( "https://api.footballsoccerapi.com/v1/odds/favourites?league_id=lg_24T9Z0G&season=2024&min_price=1.5", headers={"X-API-Key": os.environ["FSAPI_KEY"]}, ) data = r.json()["data"]
$ch = curl_init("https://api.footballsoccerapi.com/v1/odds/favourites?league_id=lg_24T9Z0G&season=2024&min_price=1.5"); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ["X-API-Key: {$key}"], ]); $data = json_decode(curl_exec($ch), true)["data"];
Example response
A real row from the archive, fetched when this page rendered. Run it against your own key below.
200 OK
application/json
{
"data": [
{
"match_id": "mt_2AAKB42",
"kickoff_date": "2027-01-16",
"home_team_name": "Swansea University",
"away_team_name": "Carmarthen Town",
"home_kickoff_price": 1.75,
"draw_kickoff_price": 4.15,
"away_kickoff_price": 4.333,
"full_time_result": null,
"home_implied": 57.1
},
{
"match_id": "mt_1VMTPJP",
"kickoff_date": "2026-12-12",
"home_team_name": "Cardiff Draconians",
"away_team_name": "Pontardawe Town",
"home_kickoff_price": 1.95,
"draw_kickoff_price": 3.8,
"away_kickoff_price": 3.36,
"full_time_result": null,
"home_implied": 51.3
},
{
"match_id": "mt_16EH1K8",
"kickoff_date": "2026-12-05",
"home_team_name": "Olympiakos Piraeus",
"away_team_name": "AEK Athens FC",
"home_kickoff_price": 2.2,
"draw_kickoff_price": 3.2,
"away_kickoff_price": 3.2,
"full_time_result": null,
"home_implied": 45.5
}
],
"meta": {
"data_as_of": "2026-10-29T04:32:57Z",
"request_id": "01J9QW3C7M4KX2VB",
"count": 3
}
}
Run it live
Paste your key and fire the real request. The key is kept in this browser only and never sent anywhere but the API.