NFL API

Realtime Sports API serves NFL games through the same REST endpoints and JSON schema as every other league, using sport=football and league=nfl. You get the current scoreboard, live scores, game detail, play-by-play, teams, rosters and news, plus current odds and line history from a single source book and the injury report. Data is aggregated from public sources and is typically 20-30 seconds behind live play (about 1 second after our source). There is no SLA.

Slugs
sport=football
league=nfl
Teams
32
Season (from data)
2026 Regular Season
In the scoreboard now
16 games, 1 live

Upcoming and live NFL games

NFL games from the API
DateAwayHomeTime / ResultTVVenue
Sun, Oct 4Detroit LionsCarolina Panthers16 - 16 11:20 - 3rd QuarterBank of America Stadium · Charlotte, NC
Mon, Oct 5Atlanta FalconsNew Orleans Saints8:15 PM ETCaesars Superdome · New Orleans, LA

From the /events endpoint for this league, refreshed every few minutes. Times are US Eastern. Full NFL schedule

Live example

Request

curl -H "Authorization: Bearer $RSA_API_KEY" \
  "https://www.realtimesportsapi.com/api/v1/sports/football/leagues/nfl/events?limit=1"

Response captured from live data at 2026-10-05 02:13 UTC (refreshed every few minutes). Long arrays are trimmed; meta.rateLimit values are illustrative for a Free key.

Response

{
  "success": true,
  "data": [
    {
      "id": "401872978",
      "uid": "s:20~l:28~e:401872978",
      "name": "Detroit Lions at Carolina Panthers",
      "shortName": "DET @ CAR",
      "date": "2026-10-05T00:20Z",
      "status": {
        "state": "in",
        "completed": false,
        "period": 3,
        "clock": "11:20",
        "detail": "11:20 - 3rd Quarter",
        "halftime": false,
        "firstHalfEnded": true
      },
      "homeTeam": {
        "id": "29",
        "name": "Carolina Panthers",
        "abbreviation": "CAR",
        "logo": "https://realtimesportsapi.com/api/images/proxy?id=GgcVSgNPTUMITUgaFFQVVVQXBVwOHV5LRQBZD1lbBllDXR0HVl9AUlxGAEwbSkoYVg",
        "color": "0085ca",
        "alternateColor": "000000",
        "winner": false,
        "score": 16
      },
      "awayTeam": {
        "id": "8",
        "name": "Detroit Lions",
        "abbreviation": "DET",
        "logo": "https://realtimesportsapi.com/api/images/proxy?id=GgcVSgNPTUMITUgaFFQVVVQXBVwOHV5LRQBZD1lbBllDXR0HVl9AUlxGB0gdSkoYVg",
        "color": "0076b6",
        "alternateColor": "bbbbbb",
        "winner": false,
        "score": 16
      },
      "competition": {
        "attendance": 0,
        "neutralSite": false,
        "conferenceCompetition": false,
        "divisionCompetition": false,
        "playByPlayAvailable": true,
        "highlightsAvailable": true
      },
      "venue": {
        "id": "3628",
        "name": "Bank of America Stadium",
        "city": "Charlotte",
        "state": "NC",
        "indoor": false,
        "grass": false
      },
      "notes": [],
      "season": {
        "year": 2026,
        "displayName": "2026",
        "type": {
          "id": "2",
          "name": "Regular Season",
          "abbreviation": "reg"
        },
        "week": {
          "number": 4,
          "startDate": "2026-09-30T07:00Z",
          "endDate": "2026-10-07T06:59Z",
          "text": "Week 4"
        }
      },
      "broadcasts": [
        {
          "network": {
            "id": "1",
            "type": "National"
          },
          "type": "TV"
        }
      ],
      "officials": [
        {
          "id": "17690",
          "fullName": "Greg Wilson",
          "displayName": "Greg Wilson",
          "order": 1,
          "position": "Back Judge"
        },
        {
          "id": "3055005",
          "fullName": "Clay Martin",
          "displayName": "Clay Martin",
          "order": 2,
          "position": "Referee"
        },
        {
          "id": "3055221",
          "fullName": "Eugene Hall",
          "displayName": "Eugene Hall",
          "order": 3,
          "position": "Side Judge"
        },
        "... 4 more"
      ]
    }
  ],
  "meta": {
    "rateLimit": {
      "limit": 125,
      "remaining": 124,
      "reset": 1793491200000
    }
  }
}

NFL endpoints

Checked against live data on 2026-10-04. Paths are relative to /api/v1/sports/football/leagues/nfl.

EndpointPathNFLNotes
Live scores/events/liveAvailable
Events (scoreboard)/eventsAvailable
Event detail/events/{eventId}Available
Play-by-play/events/{eventId}/playsAvailable
Box score/events/{eventId}/boxscoreAvailable
Odds/events/{eventId}/oddsAvailable
Win probability/events/{eventId}/winprobabilityAvailable
Teams/teamsAvailable
Rosters/teams/{teamId}/rosterAvailable
Athletes/athletes/searchAvailable
Injuries/injuriesAvailable
News/newsAvailable
Schedule / weeks/seasons/{season}/scheduleAvailable
NCAA tournament/seasons/{season}/tournamentNot available
Webhooks/webhooksAvailable
WebSocket/websocket/authAvailable
  • Week-based season: list weeks with /seasons/{season}/weeks and fetch one week with /seasons/{season}/schedule?week=N (NFL and the other football league only).

Event object fields

Every NFL game in the events, live and schedule endpoints uses the same Event object as other leagues.

FieldTypeNotes
idstringEvent id; use it with the detail, plays, box score and odds endpoints.
uidstring
namestringFull matchup name.
shortNamestringAbbreviated matchup, e.g. "AWAY @ HOME".
datestringStart time, ISO-8601 UTC.
statusEventStatusstate (pre, in, post), completed, period, clock and display detail.
homeTeamEventTeamid, name, abbreviation, colors, logo (proxied), record, score, winner.
awayTeamEventTeamSame shape as homeTeam.
competitionobjectattendance, neutralSite, conference/division flags, playByPlayAvailable.
venueobjectVenue id, name, city, state, indoor, grass (null when unknown).
notesstring[]Headline notes, e.g. round or rivalry names.
seasonobjectyear, type (preseason/regular/postseason) and week where the league uses weeks.
broadcastsobject[]TV/stream networks for the game.
officialsobject[]Game officials when published.
oddsOddsOnly with includeOdds=true and when the game has odds.

Code samples

curl

curl -H "Authorization: Bearer $RSA_API_KEY" \
  "https://www.realtimesportsapi.com/api/v1/sports/football/leagues/nfl/events?limit=5"

JavaScript (fetch)

const res = await fetch("https://www.realtimesportsapi.com/api/v1/sports/football/leagues/nfl/events?limit=5", {
  headers: { Authorization: `Bearer ${process.env.RSA_API_KEY}` }
});
const { success, data, meta } = await res.json();
console.log(data, meta.rateLimit);

Python (requests)

import os, requests

res = requests.get(
    "https://www.realtimesportsapi.com/api/v1/sports/football/leagues/nfl/events?limit=5",
    headers={"Authorization": f"Bearer {os.environ['RSA_API_KEY']}"},
    timeout=10,
)
body = res.json()
print(body["data"])

MCP prompt (Claude, Cursor, ChatGPT)

Using the Realtime Sports MCP server (https://www.realtimesportsapi.com/api/mcp), call get_events with sport "football" and league "nfl" and list the games it returns with start times, status and scores for NFL.

Connect the hosted MCP server first: setup guide. Each tool call counts as one API call.

Rate limits and pricing

PlanPriceCallsRateWebSocketWebhooks
Free$0125/mo (1,000 first 30 days)1/s500 msgs/moNo
Starter$29/mo ($290/yr)10,000/mo5/sShares monthly poolShares monthly pool
Growth$49/mo ($490/yr)25,000/mo10/sShares monthly poolShares monthly pool
Pro$99/mo ($990/yr)50,000/mo20/s100,000 msgs/mo25,000/mo
Scale$299/mo ($2,990/yr)500,000/mo100/s500,000 msgs/mo100,000/mo

Every successful REST call counts as one call. Over the limit you get HTTP 429 with a Retry-After header. No SLA. Full pricing.

29 leagues monitored live: NFL, college football, NBA, men's college basketball, MLB, NHL and 23 soccer competitions.

FAQ

Is there a free NFL API?
Yes. The Free plan is $0 with 125 calls per month (1,000 in the first 30 days) at 1 request per second, no card required. The same key works for all 29 leagues.
How fresh is the NFL data?
Data is aggregated from public sources and is typically 20-30 seconds behind live play (about 1 second after our source). There is no SLA. It is not intended for in-play betting that needs sub-second data.
Which NFL endpoints are available?
Available: live scores, events (scoreboard), event detail, play-by-play, box score, odds, win probability, teams, rosters, athletes, injuries, news, schedule / weeks. Not available or not verified: ncaa tournament (not available).
Does the NFL API include betting odds?
Yes. Upcoming NFL games returned a spread, moneyline and total when we checked, from a single source book, with line history. It is not a multi-book comparison feed and not suited to sub-second in-play betting.
Does it include NFL injuries?
Yes. The injuries endpoint returned current NFL designations grouped by team, and player-availability normalizes them to values like OUT and QUESTIONABLE. Pass team for a complete team report.
Can I get NFL score updates pushed instead of polling?
Yes. Webhooks are included on every paid plan (Starter, Growth, Pro, Scale). WebSocket is included on paid plans, and the Free plan gets a 500-message monthly preview. Both can be filtered to nfl.