A fantasy football API for developers
Quick answer: GridIron Data is a REST API that returns fantasy football data as JSON. It covers PPR projections, weekly actuals from 2020 through the current 2026 season, snap share, injury status, player news and matchup history. You send one x-api-key header. A free key allows 100 requests a day with no credit card.
- Seasons of actuals
- 2020–2026
- Scoring
- PPR, half, std
- Auth
- x-api-key
- Free plan
- 100 req/day
What is a fantasy football API?
A fantasy football API is a web service that returns player data your code can use. You ask for a player, a week or a position. You get back JSON with projections, stats and status. You skip the work of collecting, cleaning and matching data from many sources.
GridIron Data is built for developers who write their own tools. It is not a fantasy app and it does not host leagues. It gives you the data layer so your app, bot, spreadsheet or model can make the decisions.
What data does GridIron return?
| Data | Endpoint | Coverage |
|---|---|---|
| Player profile and status | /players/{player_id} | Every fantasy-relevant player |
| Weekly PPR projections | /projections/{week} | Current season, by position |
| Game-by-game actuals | /stats/{player_id}/{season} | 2020–2026 |
| Actual vs projected | /deviations/{player_id} | Weekly deltas and averages |
| Snap share | /snaps/{player_id} | Per week, 0–100 |
| Matchup history | /matchups/{player_id}/{opponent} | Splits vs one team |
| Player news | /news/{player_id} | Impact-tagged, 90 days |
| Injury changes (Pro) | /injuries/changes?since= | Game-day refreshes |
How do I make my first call?
- Create a free account and confirm your email.
- Copy your key from the dashboard.
- Send it in the
x-api-keyheader.
curl -H "x-api-key: YOUR_KEY" \
"https://api.gridirondata.com/api/v1/players?name=Josh%20Allen&position=QB"
Player IDs use the form First Last#POS, such as Josh Allen#QB. URL-encode the space and the # when you put an ID in a path. The API reference lists every parameter.
What can I build with it?
- A start/sit helper. Pull this week's projections for your roster and rank them. See the start/sit guide.
- A draft board. Rank players by value over replacement. See the draft tool guide.
- A Discord or Slack bot. Answer "who should I start?" with live projections and news.
- A breakout finder. Use deviations and snap share to spot rising roles. See the breakouts guide.
- An AI assistant. Our MCP server lets Claude query the API in plain English. See the MCP guide.
What does it look like in Python?
This script prints the top five projected running backs for a week. It uses the requests library and one API call.
import os, requests
API = "https://api.gridirondata.com/api/v1"
headers = {"x-api-key": os.environ["GRIDIRON_KEY"]}
r = requests.get(f"{API}/projections/4", params={"position": "RB"}, headers=headers)
r.raise_for_status()
for p in r.json()["projections"][:5]:
print(p["player_name"], p["projected_points"])
Cache results for a few hours. Projections refresh once a day, so polling every minute only spends your quota.
What are the limits?
Stats land the day after games, at about 11:00 ET. GridIron has no live in-game scoring. Projections default to PPR; add ?scoring=half or ?scoring=standard for the other formats. Injury status refreshes daily and again before kickoffs on game days. If you need live play-by-play, a free option such as nflverse may suit you better.
Frequently asked questions
Is there a free fantasy football API?
Yes. GridIron Data has a free plan with 100 requests a day and no credit card. Open data projects such as nflverse are also free if you want raw play-by-play data.
What scoring format does GridIron use?
PPR (point per reception) is the default. Add ?scoring=half or ?scoring=standard to projections and stats for half-PPR or standard scoring.
Does GridIron have live in-game stats?
No. Stats land the day after games, around 11:00 ET. Injury status refreshes more often on game days.
How do I authenticate?
Send your API key in the x-api-key header on every request to https://api.gridirondata.com/api/v1.