Data
Data and API
Everything the site shows comes from these endpoints, and they're open: no key, no sign-up. Responses are compressed JSON (or CSV and iCalendar files below), read-only, and refreshed as the model updates through the day.
JSON
Plain GET requests. Leagues are nfl, nba, mlb and nhl; ids are ESPN's, the same ones in the site's addresses.
/api/predictions/api/predictions?league=nbaEvery game on the board: the forecast, the pick, fair odds, the posted line, the rating model on its own, the projected score, and the live score and clock for games on now.
Parameters: league: nfl, nba, mlb or nhl (leave it out for all four)
/api/rankings/api/rankings?league=nhlPower rankings: each team’s Elo rating and rank, its market-implied rating and rank, its record and its change this season.
Parameters: league, as above
/api/record/api/record?league=nflThe track record: accuracy, Brier score and log loss overall, by season, by confidence band and against the market, plus the logged forward record and the player props record.
Parameters: league, as above
/api/live/api/liveGames on now (with live win chances), starting soon and just finished.
/api/teams/api/teamsEvery team in the four leagues: id, name, short name, abbreviation and logo.
/api/players/api/playersEvery player with a page (NBA, NHL, NFL): id, name, team and how much he plays, busiest first.
/api/players/next/api/players/next?ids=nba:3112335Players’ next games and their main prop lines with the site’s chance of each over.
Parameters: ids: up to 40 "league:playerId" keys, comma-separated; lines=all for every market
Games by id, as the site’s cards show them (finished ones too).
Parameters: ids: "league:gameId" keys, comma-separated
Spreadsheets and calendars
Files you can open as they are.
/api/graded/api/graded?league=nbaEvery graded game as a spreadsheet: the forecast it was graded on, the pick, the result and whether it was right. Reconciles exactly with the track record.
Parameters: league, as above
/api/graded-props/api/graded-props?league=nhlEvery logged prop pick (the model’s 10+ point disagreements, logged before the game) with the line, price and result.
Parameters: league: nba, nhl or nfl
A calendar feed (iCalendar) of followed teams’ games with the forecast in each event, for any calendar app.
Parameters: teams: "league:teamId" keys, comma-separated
The rules
- Up to 120 requests a minute from one address, and 40 a minute for the calls marked so (they reach the live feeds). Past that you get a
429with aRetry-Afterheader; every response carriesRateLimit-LimitandRateLimit-Remaining. - For scripts, servers and spreadsheets: browsers on other sites can't call it directly (no cross-origin access), so fetch it from your own code and cache what you need. Forecasts change at most every few minutes.
- Schedules, scores, injuries and lines come from ESPN's public feeds; the forecasts and everything derived from them are ours. For insight and fun, not betting advice. How each number is made is on the track record page.