# NFL API

> NFL provides game scores, standings, rosters, and player stats as a workflow and API.

Get scores returns games for a date’s NFL week, optionally filtered by team and time zone. Get standings returns regular-season records by conference and division for a season. Get team roster returns players for a required team and optional unit; Get player stats returns season and career stats for a named player.

- Page: https://fous.com/tools/nfl
- Handle: `@nfl`
- Category: [Sports](https://fous.com/tools/category/sports)
- Source website: https://nfl.com
- Last verified: Sep 28, 2026

## Methods

### Get player stats

Operation `get_player_stats`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get a named NFL player’s season and career stats, with profile details. Active players are preferred when names match; only stats shown on NFL player pages are included.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `player` | string | yes | `"Josh Allen"` | Player name, for example Josh Allen. |
| `season` | integer | no | `2025` | Season starting year, for example 2025. Defaults to the latest season shown. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "player"
  ],
  "properties": {
    "player": {
      "type": "string",
      "description": "Player name, for example Josh Allen.",
      "examples": [
        "Josh Allen",
        "Myles Garrett",
        "Harrison Butker"
      ]
    },
    "season": {
      "type": "integer",
      "default": null,
      "description": "Season starting year, for example 2025. Defaults to the latest season shown.",
      "examples": [
        2025,
        2024
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "player": "Josh Allen"
    },
    {
      "player": "Myles Garrett",
      "season": 2025
    },
    {
      "player": "Harrison Butker"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `name` | string | `"Josh Allen"` |  |
| `team` | string or null | `"Buffalo Bills"` |  |
| `stats` | array |  |  |
| `stats[].group` | string | `"passing"` |  |
| `stats[].stat_name` | string | `"Completions"` |  |
| `stats[].career_value` | number | `2671` |  |
| `stats[].season_value` | number or null | `56` |  |
| `stats[].stat_abbreviation` | string | `"COMP"` |  |
| `season` | integer or null | `2026` |  |
| `position` | string or null | `"QB"` |  |
| `player_id` | string | `"josh-allen"` | NFL player profile slug. |
| `player_link` | string | `"https://www.nfl.com/players/josh-allen/"` |  |
| `jersey_number` | integer or null | `17` |  |
| `headshot_image_link` | string or null | `"https://static.www.nfl.com/image/upload/t_player_profile_landscape/t_lazy/f_auto/league/mjwbioajzldkq1vzoz2d"` |  |

**Example input**

```json
{
  "player": "Josh Allen"
}
```

**Example output**

```json
{
  "name": "Josh Allen",
  "team": "Buffalo Bills",
  "stats": [
    {
      "group": "passing",
      "stat_name": "Completions",
      "career_value": 2671,
      "season_value": 56,
      "stat_abbreviation": "COMP"
    },
    {
      "group": "passing",
      "stat_name": "Passing attempts",
      "career_value": 4174,
      "season_value": 86,
      "stat_abbreviation": "ATT"
    },
    {
      "group": "passing",
      "stat_name": "Passing yards",
      "career_value": 30888,
      "season_value": 786,
      "stat_abbreviation": "YDS"
    }
  ],
  "season": 2026,
  "position": "QB",
  "player_id": "josh-allen",
  "player_link": "https://www.nfl.com/players/josh-allen/",
  "jersey_number": 17,
  "headshot_image_link": "https://static.www.nfl.com/image/upload/t_player_profile_landscape/t_lazy/f_auto/league/mjwbioajzldkq1vzoz2d"
}
```

### Get scores

Operation `get_scores`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get NFL scores and scheduled games for the week containing a date, optionally filtered to one team. Kickoff times use US Eastern time unless another time zone is given.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `date` | string | no | `"2026-10-04"` | Date in the NFL week to view, such as 2026-09-28. Defaults to the current week. |
| `team` | string | no | `"Dallas Cowboys"` | Team name to keep, such as Dallas Cowboys or Cowboys. |
| `time_zone` | string | no | `"America/Los_Angeles"` | Time zone for kickoff times, such as US Eastern, America/Chicago or UTC. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "format": "date",
      "description": "Date in the NFL week to view, such as 2026-09-28. Defaults to the current week.",
      "examples": [
        "2026-10-04",
        "2026-09-28",
        "2026-01-11"
      ]
    },
    "team": {
      "type": "string",
      "description": "Team name to keep, such as Dallas Cowboys or Cowboys.",
      "examples": [
        "Dallas Cowboys",
        "Carolina Panthers"
      ]
    },
    "time_zone": {
      "type": "string",
      "default": "US Eastern",
      "description": "Time zone for kickoff times, such as US Eastern, America/Chicago or UTC.",
      "examples": [
        "America/Los_Angeles"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "date": "2026-10-04",
      "time_zone": "America/Los_Angeles"
    },
    {
      "date": "2026-09-28",
      "team": "Dallas Cowboys"
    },
    {
      "date": "2026-01-11",
      "team": "Carolina Panthers"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `games` | array |  |  |
| `games[].city` | string or null | `"Cleveland"` |  |
| `games[].clock` | string or null |  |  |
| `games[].status` | string | `"scheduled"` |  |
| `games[].game_id` | string | `"aa29da01-4feb-11f1-abca-2c54536568a9"` |  |
| `games[].quarter` | string or null |  |  |
| `games[].stadium` | string or null | `"Huntington Bank Field"` |  |
| `games[].away_team` | string | `"Pittsburgh Steelers"` |  |
| `games[].game_link` | string | `"https://www.nfl.com/games/steelers-at-browns-2026-reg-4"` |  |
| `games[].home_team` | string | `"Cleveland Browns"` |  |
| `games[].away_score` | integer or null | `34` |  |
| `games[].home_score` | integer or null | `31` |  |
| `games[].tv_network` | string or null | `"Prime Video"` |  |
| `games[].kickoff_time` | string or null | `"2026-10-01T17:15:00-07:00"` | Kickoff time in the requested time zone (ISO 8601 with offset). |
| `season` | integer | `2026` | NFL season year. |
| `week_label` | string or null | `"Week 4"` | Name of the NFL week, or null when no week is scheduled. |

**Example input**

```json
{
  "date": "2026-10-04",
  "time_zone": "America/Los_Angeles"
}
```

**Example output**

```json
{
  "games": [
    {
      "city": "Cleveland",
      "clock": null,
      "status": "scheduled",
      "game_id": "aa29da01-4feb-11f1-abca-2c54536568a9",
      "quarter": null,
      "stadium": "Huntington Bank Field",
      "away_team": "Pittsburgh Steelers",
      "game_link": "https://www.nfl.com/games/steelers-at-browns-2026-reg-4",
      "home_team": "Cleveland Browns",
      "away_score": null,
      "home_score": null,
      "tv_network": "Prime Video",
      "kickoff_time": "2026-10-01T17:15:00-07:00"
    },
    {
      "city": "London",
      "clock": null,
      "status": "scheduled",
      "game_id": "aa29dd21-4feb-11f1-abca-2c54536568a9",
      "quarter": null,
      "stadium": "Tottenham Hotspur Stadium",
      "away_team": "Indianapolis Colts",
      "game_link": "https://www.nfl.com/games/colts-at-commanders-2026-reg-4",
      "home_team": "Washington Commanders",
      "away_score": null,
      "home_score": null,
      "tv_network": "NFL NETWORK",
      "kickoff_time": "2026-10-04T06:30:00-07:00"
    },
    {
      "city": "Baltimore",
      "clock": null,
      "status": "scheduled",
      "game_id": "aa4b4811-4feb-11f1-abca-2c54536568a9",
      "quarter": null,
      "stadium": "M&T Bank Stadium",
      "away_team": "Tennessee Titans",
      "game_link": "https://www.nfl.com/games/titans-at-ravens-2026-reg-4",
      "home_team": "Baltimore Ravens",
      "away_score": null,
      "home_score": null,
      "tv_network": "CBS",
      "kickoff_time": "2026-10-04T10:00:00-07:00"
    }
  ],
  "season": 2026,
  "week_label": "Week 4"
}
```

### Get standings

Operation `get_standings`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get NFL regular-season standings by conference and division for a season. Clinch status is included when shown on the standings page.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `season` | integer | no | `2025` | Season starting year, such as 2025. Defaults to the current season. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "season": {
      "type": "integer",
      "description": "Season starting year, such as 2025. Defaults to the current season.",
      "examples": [
        2025,
        2024
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {},
    {
      "season": 2025
    },
    {
      "season": 2024
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `teams` | array |  | Teams sorted by conference (AFC then NFC), division and division rank. |
| `teams[].team` | string | `"Buffalo Bills"` | Team name. |
| `teams[].ties` | integer | `0` |  |
| `teams[].wins` | integer | `3` |  |
| `teams[].losses` | integer | `0` |  |
| `teams[].division` | string | `"AFC East"` | Division name, such as AFC East. |
| `teams[].page_link` | string | `"https://www.nfl.com/teams/buffalo-bills/"` | Team page on NFL.com. |
| `teams[].conference` | string | `"AFC"` | Conference name, AFC or NFC. |
| `teams[].division_rank` | integer | `1` | Rank within the division. |
| `teams[].points_scored` | integer | `101` |  |
| `teams[].current_streak` | string or null | `"Won 3"` | Current streak, such as Won 2, or null if unavailable. |
| `teams[].points_allowed` | integer | `78` |  |
| `teams[].win_percentage` | number | `1` | Win percentage as a decimal from 0 to 1. |
| `teams[].playoff_or_clinch_status` | string or null | `"Clinched Playoff; Clinched Division"` | Playoff or clinch status shown for the team, or null if none is shown. |
| `season` | integer | `2026` | Season starting year. |

**Example input**

```json
{}
```

**Example output**

```json
{
  "teams": [
    {
      "team": "Buffalo Bills",
      "ties": 0,
      "wins": 3,
      "losses": 0,
      "division": "AFC East",
      "page_link": "https://www.nfl.com/teams/buffalo-bills/",
      "conference": "AFC",
      "division_rank": 1,
      "points_scored": 101,
      "current_streak": "Won 3",
      "points_allowed": 78,
      "win_percentage": 1,
      "playoff_or_clinch_status": null
    },
    {
      "team": "New York Jets",
      "ties": 0,
      "wins": 1,
      "losses": 2,
      "division": "AFC East",
      "page_link": "https://www.nfl.com/teams/new-york-jets/",
      "conference": "AFC",
      "division_rank": 2,
      "points_scored": 64,
      "current_streak": "Lost 2",
      "points_allowed": 61,
      "win_percentage": 0.333,
      "playoff_or_clinch_status": null
    },
    {
      "team": "New England Patriots",
      "ties": 0,
      "wins": 1,
      "losses": 2,
      "division": "AFC East",
      "page_link": "https://www.nfl.com/teams/new-england-patriots/",
      "conference": "AFC",
      "division_rank": 3,
      "points_scored": 36,
      "current_streak": "Lost 1",
      "points_allowed": 51,
      "win_percentage": 0.333,
      "playoff_or_clinch_status": null
    }
  ],
  "season": 2026
}
```

### Get team roster

Operation `get_team_roster`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get a team’s current NFL.com roster by team name or city, optionally limited to a unit. Players listed as released are omitted; ages may be missing when a profile does not show them.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `team` | string | yes | `"Packers"` | Team name, nickname, or city, for example Green Bay Packers or Packers. |
| `unit` | string | no | `"offense"` | Roster unit to include, for example offense. Defaults to all. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "team"
  ],
  "properties": {
    "team": {
      "type": "string",
      "description": "Team name, nickname, or city, for example Green Bay Packers or Packers.",
      "examples": [
        "Packers",
        "Green Bay Packers",
        "Buffalo"
      ]
    },
    "unit": {
      "enum": [
        "all",
        "offense",
        "defense",
        "special_teams"
      ],
      "type": "string",
      "default": "all",
      "description": "Roster unit to include, for example offense. Defaults to all.",
      "examples": [
        "offense",
        "special_teams"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "team": "Packers",
      "unit": "offense"
    },
    {
      "team": "Green Bay Packers"
    },
    {
      "team": "Buffalo",
      "unit": "special_teams"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `team` | string | `"Green Bay Packers"` |  |
| `players` | array |  |  |
| `players[].age` | integer or null | `26` |  |
| `players[].name` | string | `"Sean Rhyan"` |  |
| `players[].height` | string or null | `"6 ft 5 in"` |  |
| `players[].status` | string or null | `"Active"` |  |
| `players[].college` | string or null | `"UCLA"` |  |
| `players[].position` | string or null | `"Center"` |  |
| `players[].player_link` | string | `"https://www.nfl.com/players/sean-rhyan/"` |  |
| `players[].jersey_number` | integer or null | `75` |  |
| `players[].position_code` | string or null | `"C"` |  |
| `players[].weight_pounds` | integer or null | `320` |  |
| `players[].years_experience` | integer or null | `5` |  |
| `team_link` | string | `"https://www.nfl.com/teams/green-bay-packers/"` |  |

**Example input**

```json
{
  "team": "Packers",
  "unit": "offense"
}
```

**Example output**

```json
{
  "team": "Green Bay Packers",
  "players": [
    {
      "age": 26,
      "name": "Sean Rhyan",
      "height": "6 ft 5 in",
      "status": "Active",
      "college": "UCLA",
      "position": "Center",
      "player_link": "https://www.nfl.com/players/sean-rhyan/",
      "jersey_number": 75,
      "position_code": "C",
      "weight_pounds": 320,
      "years_experience": 5
    },
    {
      "age": 27,
      "name": "Zach Bako-Bewele",
      "height": "6 ft 4 in",
      "status": "Reserve",
      "college": "Wake Forest",
      "position": "Guard",
      "player_link": "https://www.nfl.com/players/zach-tom/",
      "jersey_number": 50,
      "position_code": "G",
      "weight_pounds": 304,
      "years_experience": 5
    },
    {
      "age": 24,
      "name": "Jager Burton",
      "height": "6 ft 4 in",
      "status": "Active",
      "college": "Kentucky",
      "position": "Guard",
      "player_link": "https://www.nfl.com/players/jager-burton/",
      "jersey_number": 52,
      "position_code": "G",
      "weight_pounds": 312,
      "years_experience": 0
    }
  ],
  "team_link": "https://www.nfl.com/teams/green-bay-packers/"
}
```

## Quick start

Replace `YOUR_API_KEY` with a Fous API key. To create one, open Developers at the bottom of Fous Studio, turn on Developer mode, then go to API keys (https://app.fous.com/keys). Change the values in `input` to run the same tool on new data.

```bash
curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 180 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@nfl",
  "visibility": "public",
  "operation": "get_player_stats",
  "version": 1,
  "input": {
    "player": "Josh Allen"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
import json
import urllib.error
import urllib.request

api_key = "YOUR_API_KEY"

body = json.loads("{\n  \"api\": \"@nfl\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_player_stats\",\n  \"version\": 1,\n  \"input\": {\n    \"player\": \"Josh Allen\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=180) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
const apiKey = "YOUR_API_KEY";

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(180_000),
  body: JSON.stringify({
  "api": "@nfl",
  "visibility": "public",
  "operation": "get_player_stats",
  "version": 1,
  "input": {
    "player": "Josh Allen"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

## Use from an AI assistant

Connect this tool to Claude Code, Claude Desktop, Cursor, VS Code, Codex and any MCP client as its own MCP server. Each method is a typed tool whose arguments are the method’s input.

- Server URL: `https://api.fous.com/mcp/tools/nfl`
- Authorization: `Authorization: Bearer <Fous API key>`

**Tools**

- `get_player_stats`: Get player stats. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `get_scores`: Get scores. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `get_standings`: Get standings. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `get_team_roster`: Get team roster. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `fous_get_run`: the result of a run that was still going, by its `request_id`. Free.

Claude Code:

```bash
claude mcp add --scope user --transport http fous-nfl https://api.fous.com/mcp/tools/nfl --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"
```

To give the assistant every tool, connect `https://api.fous.com/mcp`: it finds one with `fous_search_tools` and runs it with `fous_run_tool`. Setup for other clients: https://fous.com/llms-full.txt.

## Use cases

- Review game scores and kickoff times for a week.
- Compare team records, points, and division ranks.
- Check a team's roster by unit.
- Track a player's season and career stats.

## FAQ

### Can I run it with my own inputs?

Yes. Change the inputs in Studio and press Run, or send new inputs from your code, or ask a connected AI assistant.

### Can I call this NFL tool as an API?

Yes. Send a POST request to /v1/query with your Fous API key and the inputs, and get JSON back.

### How much does it cost?

Each completed run costs 1 credit. Failed runs without a completed receipt are free; completed work can remain charged if delivery is interrupted. With pay as you go, a credit costs 1¢. Monthly plans cost less per credit.

### Do I need a NFL account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from nfl.com when you run it. Some results are reused for up to 24 hours, and results that use your account or key are never reused. It was last verified on Sep 28, 2026.

### What are the scores and kickoff times for a week?

Get scores returns scores and scheduled games for the NFL week containing a date, optionally filtered by team and time zone.

### Which teams lead their divisions?

Get standings returns regular-season standings by conference and division, including division rank.

### What stats does a player have for a season?

Get player stats returns season and career stats for a named player, using the requested season or the latest season shown.

## Related

- [Yahoo Sports API](https://fous.com/tools/yahoo-sports.md): Yahoo Sports returns date-based scores and schedules, seasonal standings, and player regular-season and career stats when Yahoo provides them; unavailable data may be missing.
- [NHL API](https://fous.com/tools/nhl.md): NHL provides games, schedules, and scores when published, standings by date, and player profiles with regular-season stats; dates outside a season have no teams, and unavailable stats are null.
- [ESPN API](https://fous.com/tools/espn.md): ESPN provides daily scores and schedules, team results, player statistics, matchup summaries, and latest topic-specific headlines; coverage and published details vary, especially for college and soccer.
- [MLB API](https://fous.com/tools/mlb.md): MLB provides scores, schedules and game details for one date or up to seven days, regular-season division standings defaulting to the current year, and player profiles with regular-season stats for a selected season and career.
- [NBA API](https://fous.com/tools/nba.md): NBA provides up-to-seven-day schedules and scores, seasonal standings, player bios and available regular-season averages, plus matchup box scores, with undated matchups showing the latest.
- [Premier League API](https://fous.com/tools/premier-league.md): Premier League provides current/chosen-season tables and recent form, date-range fixtures/results (up to 380), player profiles and stats, and seasonal leaders; older-season stats may be limited.
- [NCAA API](https://fous.com/tools/ncaa.md): NCAA provides college sports scores and schedules from NCAA.com, including date-based games or football weeks, plus latest NCAA.com Top 25 rankings where published.
- [Sports Reference API](https://fous.com/tools/sports-reference.md): Sports Reference provides regular-season career stats, awards and season records across basketball, football, baseball and hockey, plus season leaders using the latest published season if unspecified.
- [All Sports tools](https://fous.com/tools/category/sports)
