Skip to content

Guides

How do I get Premier League odds from every sportsbook with the results?

A day of matches with each sportsbook's three-way moneyline, goal handicap and total, opening and closing, next to the result.

Code verified October 10, 2026. One call to get_odds, 5 credits.

The call

date is UTC. Use game_id for one match instead of a day.

import requests
import pandas as pd

API_KEY = "YOUR_API_KEY"

resp = requests.post(
    "https://mcp.strikerapi.com/v1/get_odds",
    headers={"x-api-key": API_KEY},
    json={
        "date": "2026-05-24",
    },
    timeout=60,
)
resp.raise_for_status()
data = resp.json()["data"]

rows = []
for g in data["games"]:
    for b in g["books"]:
        p = b["close_prob"]
        if not p:
            continue
        rows.append({
            "match": g["home"]["abbrev"] + " v " + g["away"]["abbrev"],
            "book": b["provider"],
            "result": g["result"],
            "p_home": p["home"], "p_draw": p["draw"], "p_away": p["away"],
            "total_close": b["total_close"],
            "goals": g["home"]["score"] + g["away"]["score"],
        })
df = pd.DataFrame(rows)
key = {"H": "p_home", "D": "p_draw", "A": "p_away"}
df["p_result"] = [r[key[r["result"]]] for _, r in df.iterrows()]
print(df[["match", "book", "result", "p_result", "total_close", "goals"]].head(10))
print(df.groupby("book")["p_result"].mean().round(3))

Replace YOUR_API_KEY with a key from your dashboard. Python needs requests and pandas (pip install requests pandas). JavaScript runs on Node 18 or newer, or in the browser.

What comes back

The data object of the response, trimmed to the first rows. Every field is real output from the run above.

{
  "games": [
    {
      "game_id": "740966",
      "date": "2026-05-24",
      "status": "final",
      "home": {
        "team_id": "331",
        "abbrev": "BHA",
        "name": "Brighton & Hove Albion",
        "score": 0
      },
      "away": {
        "team_id": "360",
        "abbrev": "MAN",
        "name": "Manchester United",
        "score": 3
      },
      "result": "A",
      "books": [
        {
          "provider": "Bet 365",
          "source": "espn",
          "home_ml_open": null,
          "home_ml_close": -118,
          "draw_ml_open": null,
          "draw_ml_close": 333,
          "away_ml_open": null,
          "away_ml_close": 250,
          "close_prob": {
            "home": 0.512,
            "draw": 0.218,
            "away": 0.27,
            "overround": 0.058
          },
          "home_handicap_open": null,
          "home_handicap_close": null,
          "handicap_home_odds": null,
          "handicap_away_odds": null,
          "total_open": null,
          "total_close": 3.25,
          "over_odds": -108,
          "under_odds": -108,
          "captured_at": "2026-10-08T03:01:25.585Z"
        },
        "...1 more"
      ],
      "outcome": {
        "result": "A",
        "median_total": 3.25,
        "median_home_handicap": -0.5,
        "over": false,
        "home_covered": false
      }
    },
    "...9 more"
  ],
  "count": 20
}

What to do next

  • get_line_movement (10 credits). Daily snapshots of a match's line before kick-off.
  • get_schedule (2 credits). Upcoming fixtures with the median three-way line.

More guides

Start with 500 free credits

No card. REST or MCP.