How do I get NFL scores and the schedule for a week in Python?
All 16 games of NFL week 4 with final scores, kickoff day, stadium and starting quarterbacks in one call. The week averaged 47.8 points a game.
Code verified October 12, 2026. One call to get_schedule, 2 credits.
The call
week is 1 to 22 of the current season and returns every game that week, played or not. The games sit under upcoming_games even for a week that is over. Without week, days (default 7) returns only games not yet played. Add team for one club.
import requests
import pandas as pd
API_KEY = "YOUR_API_KEY"
resp = requests.post(
"https://mcp.endzoneapi.com/v1/get_schedule",
headers={"x-api-key": API_KEY},
json={
"week": 4,
},
timeout=60,
)
resp.raise_for_status()
data = resp.json()["data"]
games = pd.DataFrame(data["upcoming_games"])
games["winner"] = games.apply(lambda g: g["home_team"] if g["home_score"] > g["away_score"] else g["away_team"], axis=1)
games["margin"] = (games["home_score"] - games["away_score"]).abs()
print("season", data["season"], "week", data["week"], "-", len(games), "games")
print(games[["gameday", "away_team", "away_score", "home_team", "home_score", "winner", "margin"]].to_string(index=False))
print("points per game:", round((games["home_score"] + games["away_score"]).mean(), 1))
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.
{
"season": 2026,
"week": 4,
"days": null,
"upcoming_games": [
{
"game_id": "2026_04_PIT_CLE",
"season": 2026,
"game_type": "REG",
"week": 4,
"gameday": "2026-10-01",
"weekday": "Thursday",
"kickoff": "2026-10-02T00:15:00.000Z",
"away_team": "PIT",
"home_team": "CLE",
"away_score": 24,
"home_score": 27,
"result": 3,
"total": 51,
"overtime": 0,
"status": "FINAL",
"location": "Home",
"stadium": "Huntington Bank Field",
"roof": "outdoors",
"surface": "grass",
"temp": 77,
"wind": 11,
"div_game": true,
"away_rest": 4,
"home_rest": 4,
"spread_line": -2.5,
"total_line": 38.5,
"away_moneyline": -148,
"home_moneyline": 124,
"away_qb_name": "Aaron Rodgers",
"home_qb_name": "Deshaun Watson",
"away_qb_id": "00-0023459",
"home_qb_id": "00-0033537",
"away_coach": "Mike McCarthy",
"home_coach": "Todd Monken",
"referee": "Clete Blakeman",
"espn_id": "401872964",
"pfr_id": "202610010cle"
},
{
"game_id": "2026_04_IND_WAS",
"season": 2026,
"game_type": "REG",
"week": 4,
"gameday": "2026-10-04",
"weekday": "Sunday",
"kickoff": "2026-10-04T13:30:00.000Z",
"away_team": "IND",
"home_team": "WAS",
"away_score": 30,
"home_score": 13,
"result": -17,
"total": 43,
"overtime": 0,
"status": "FINAL",
"location": "Neutral",
"stadium": "Tottenham Hotspur Stadium",
"roof": "outdoors",
"surface": "grass",
"temp": 70,
"wind": 7,
"div_game": false,
"away_rest": 7,
"home_rest": 7,
"spread_line": -4.5,
"total_line": 46.5,
"away_moneyline": -230,
"home_moneyline": 190,
"away_qb_name": "Daniel Jones",
"home_qb_name": "Marcus Mariota",
"away_qb_id": "00-0035710",
"home_qb_id": "00-0032268",
"away_coach": "Shane Steichen",
"home_coach": "Dan Quinn",
"referee": "Alan Eck",
"espn_id": "401872965",
"pfr_id": "202610040was"
},
"...14 more"
],
"count": 16
}What to do next
- get_game_detail (10 credits). The box score for one game from the week.
- get_standings (2 credits). The table after the week's results.
More guides
Rather ask Claude? 16 free Claude skills call these endpoints for you.
Start with 500 free credits every month
No card. REST or MCP.