Skip to main content

Match Info

GET /api/v1/match/{matchId}
GET /api/v1/match/{matchId}/info
Comprehensive match payload — both routes return the same data.
{
  "generatedAt": "2026-04-05 00:00:00",
  "matchId": 9791299,
  "homeTeam": "Chicago Fire",
  "homeTeamId": 12345,
  "awayTeam": "Nashville FC",
  "awayTeamId": 12346,
  "matchDate": "2026-04-05 20:00:00",
  "status": "prematch",
  "homeScore": null,
  "awayScore": null,
  "sportId": 1,
  "leagueId": 25,
  "leagueName": "MLS",
  "categoryName": "USA",
  "venue": "Soldier Field",
  "referee": null,
  "standings": { },
  "form": { },
  "h2h": { },
  "raw": { }
}
FieldDescription
standingsLeague position context for both teams
formRecent form (W/D/L) for both teams
h2hHead-to-head history
rawFull unprocessed upstream snapshot for advanced use
The numeric matchStatus codes mirror those returned by /api/v1/team/{id}/matches: values < 8 are upcoming / in-play, >= 8 are finished.
Cache TTL: 1 minute.

Match Odds

GET /api/v1/match/{matchId}/odds
GET /api/v1/match/{matchId}/odds?oddGroupId=3
Full odds comparison across all bookmakers, split into prematch and inplay.
ParamTypeDescription
oddGroupIdnumberFilter by market group (1 = 1X2, 3 = Handicap, 5 = Over/Under, …)
{
  "generatedAt": "2026-04-05 00:00:00",
  "matchId": 9791299,
  "prematch": [
    {
      "og": 1,
      "og_name": "1X2",
      "periods": [
        {
          "name": "Full Time",
          "odds": [
            {
              "bookie_name": "bet365",
              "bookie_slug": "bet365",
              "bid": 126,
              "o1": 2.10,
              "oX": 3.40,
              "o2": 3.50,
              "link": "https://...",
              "primary_color": "#126d50"
            }
          ]
        }
      ]
    }
  ],
  "inplay": []
}
FieldDescription
ogOdds group ID
o1, oX, o2Home / Draw / Away prices
bidBookmaker ID (matches /api/v1/bookmakers)
Cache TTL: 1 minute.

Match Odds Movements

GET /api/v1/match/{matchId}/odds-movements
GET /api/v1/match/{matchId}/odds-movements?offerType=201&inplay=0
ParamTypeDefaultDescription
offerTypenumber201Offer type ID
inplaystring"0""1" for live movements
{
  "generatedAt": "2026-04-05 00:00:00",
  "matchId": 9791299,
  "movements": {
    "1": {
      "average": {
        "lowest":  { "y": 1.85, "x": "2026-04-01" },
        "highest": { "y": 2.20, "x": "2026-03-28" },
        "open":    { "y": 2.05, "x": "2026-03-25" }
      },
      "bookmakers": { }
    }
  }
}
Cache TTL: 2 minutes.

Available Markets

GET /api/v1/match/{matchId}/markets
Lists every betting market available for the match. Use this to decide which oddGroupId filters to expose in your UI.
{
  "matchId": 9791299,
  "markets": [
    { "id": 1, "name": "1X2" },
    { "id": 3, "name": "Handicap" },
    { "id": 5, "name": "Over/Under" }
  ]
}
Cache TTL: 5 minutes.

Community Prediction

GET /api/v1/match/{matchId}/prediction
{
  "matchId": 9791299,
  "prediction": {
    "home_percent": 45,
    "draw_percent": 25,
    "away_percent": 30,
    "total_predictions": 1500
  }
}
Cache TTL: 5 minutes.

Example

curl -H "x-api-key: YOUR_API_KEY" \
  "https://v4.football.sportsapipro.com/api/v1/match/9798283/odds"
Last modified on June 11, 2026