COVERAGE & METHODOLOGY
What history the API actually holds.
Each span is the oldest and newest real record retrieved for that data layer — not a source's theoretical range and not a warehouse row count. Audited 2026-10-19.
Overview
Verified span by sport and layer.
- Finished soccer matches stored
- 30,459
- Tennis matches stored
- 689,427
- UFC bouts since UFC 1
- 9,565
15 competitions, 2001 to today. Results for all; full event streams and lineups for 1,921.
Singles and doubles with 1.56M set scores. Dense from 2000 for women and 2007 for men.
Every completed bout since 12 November 1993; 94% carry round-by-round striking and grappling.
Stored archive — materialized in PropSports storageOn-demand — retrieved from the public source per request, then normalizedStored + on-demand
Methodology
How a span is verified.
Definitions used on every page of this site.
- STORED ARCHIVEMaterialized in PropSports storage and served from it. Counts are rows we hold and serve.
- ON-DEMAND SOURCERetrieved from the public league or source feed when you call the route, then normalized into the PropSports contract. It is not a PropSports-owned archive: availability follows the source, and no row count is claimed. The source’s own terms of use apply; a PropSports plan does not grant redistribution rights to on-demand data.
- VERIFIED SPANThe oldest and newest record retrieved for a layer. Open routes were requested through the production API. Key-gated routes were checked by requesting the identical source record the route calls and reviewing the route code; they apply no season floor.
- SAMPLINGSpans come from dated samples per era, not from exhaustive enumeration. A year inside a span can still have missing games; known gaps are listed per sport.
- COUNTSCounts are given only for stored archives and count completed games, bouts or matches. Scheduled future fixtures are never counted as history.
- DEPTHEach layer names its depth: results, box scores, plays, pitch tracking or rounds. A box score span is never presented as a play-by-play span.
- RE-AUDITSpans and counts are re-measured before they change on this site. The audit date is shown on every page that uses them.
MLB · 1939–2026
Complete play-by-play back to the 1950 season, box scores and standings for the same span, and year-by-year careers that reach further. The minor-league archive is stored and served directly.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Play-by-play | 1950–2026 | Every plate appearance in order: inning, outs, count, runner movement, scoring and substitutions. Pitch location and velocity from 2008. | On-demand source | /mlb/game/:pk/plays?full=true |
| Box scores | 1950–2026 | Player batting and pitching lines and team totals; the 1950 opener returns full lineups for both clubs. | On-demand source | /mlb/game/:pk/boxscore |
| Standings by season | 1950–2026 | League and division standings for any season in the span. | On-demand source | /mlb/standings?season= |
| Player careers | 1939–2026 | Year-by-year batting and pitching lines; Ted Williams returns every season from his 1939 debut. | On-demand source | /mlb/player/:id/career/mlb/player/:id/stats?season= |
| Minor-league archive | 2021–2026 | 63,387 games Triple-A to Rookie games, standings, leaders and careers tied to MLB player IDs. | Stored archive | /mlb/minors/scores/mlb/minors/games/:pk/mlb/minors/players/:id |
Koufax's perfect game, Dodgers 1–0 Cubs, 9 Sep 1965
curl -H "X-API-Key: $PROPSPORTS_KEY" \
"https://propsports.proptechusa.ai/v1/mlb/game/151570/plays?full=true"53 plays: 27 Cubs plate appearances with nobody on base, 14 strikeouts, and Lou Johnson's run on Chris Krug's throwing error.
Known gaps
- No play-by-play exists before the 1950 season; all sampled 1901–1949 games return no plays.
- Pitch-level tracking (location, velocity) starts in 2008. Statcast routes serve the current season only.
- Some older plays carry no scoring flag; count runs from runner movement rather than the flag.
NFL · 1999–2026
Weekly schedules and final scores by season from 1999, normalized into the same scoreboard shape as the live slate.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Schedules and final scores | 1999–2026 | Every game of a week with teams, status and final score; 1999 week 1 returns all 15 games. | On-demand source | /nfl/schedule?season=&week= |
Known gaps
- Seasons before 1999 return no games from this route.
- Play-by-play, drive and box-score routes serve completed games by ID; their historical depth has not been audited and is not claimed here.
NBA · 1994–2026
Box scores back to the mid-1990s and play-by-play from the 2001-02 season, on the same game routes as tonight's games.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Box scores | 1994–2026 | Player lines with computed TS% and USG%; schedules by date find the game IDs. | On-demand source | /nba/game/:id/boxscore/nba/schedule?date= |
| Play-by-play | 2002–2026 | Every play with period, clock, score and participants; a November 2002 Lakers–Cavaliers game returns 465 plays. | On-demand source | /nba/game/:id/plays |
Lakers at Cavaliers, 5 Nov 2002
curl -H "X-API-Key: $PROPSPORTS_KEY" \
"https://propsports.proptechusa.ai/v1/nba/game/221105005/plays?limit=1000"465 plays returned through the production API.
Known gaps
- Play-by-play is unavailable before the 2001-02 season; early-era plays carry no court coordinates.
- Schedules before 1994 are incomplete.
WNBA · 2002–2026
Season schedules with final results from 2002, through the same normalized schedule contract as the current season.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Schedules and results | 2002–2026 | Every game of a season with teams, status and score; 2002 returns 272 completed games. | On-demand source | /wnba/schedule?season= |
Known gaps
- 1997–2001 schedules return without final results.
- Game-detail routes serve completed games by ID; their historical depth has not been audited and is not claimed here.
NHL · 1917–2026
League leaders for every season back to the NHL's first in 1917-18, and daily schedules with final scores from the 1980s.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Leaders by season | 1917–2026 | Skater leaders by category. | On-demand source | /nhl/leaders?season= |
| Schedules and final scores | 1985–2026 | Every game on a date with status, period and final score, including overtime. | On-demand source | /nhl/schedule?date= |
Known gaps
- Game-detail routes (plays, shots, deployment) serve completed games by ID; their historical depth has not been audited and is not claimed here.
- Shot coordinates and shift charts begin around 2009-10 at the source.
Tennis · 2000–2026
A stored match archive of 689,427 singles and doubles matches with set scores, behind head-to-head, player, tournament and edition routes.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Match archive | 2000–2026 | 689,427 matches Singles and doubles with 1,558,131 set scores across ITF, WTA, ATP and Grand Slam events. | Stored archive | /tennis/h2h/:a/:b/tennis/tournaments/:slug/:year/tennis/players/:slug |
| Men's tour results | 2007–2026 | ATP tour-level matches from 2007. | Stored archive | /tennis/men/tennis/h2h/:a/:b |
Known gaps
- Most archived matches carry the tournament week rather than an exact match date.
- Men's coverage before 2007 and ATP Challenger results are not yet in the archive; point-level data covers live and recent matches only.
Soccer · 2001–2026
A stored archive of 30,459 finished matches across 15 competitions since 2001, with event streams and lineups where they have been sourced.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Match results | 2001–2026 | 30,459 finished matches Results and venues for MLS and the Premier League from 2001, Bundesliga from 2004-05, and 12 more competitions. | Stored archive | /soccer/matches/soccer/teams/:slug/history |
| Goal and match events | 2009–2026 | 6,458 matches with events 2.13M event rows. Bundesliga goal events from 2009-10; full event streams for current seasons. | Stored archive | /soccer/matches/:id |
| Lineups and player stats | 2017–2026 | 1,921 matches Lineups, substitutions and player and team match statistics. | Stored archive | /soccer/matches/:id/cast/soccer/players/:slug |
Known gaps
- About 24,000 finished matches have results and venue only, without events or lineups.
- LaLiga, Serie A, Ligue 1, the Champions League and the Europa League currently hold one season each.
Golf · 1860–2026
A stored championship archive from independently sourced records: 756 completed editions from 1860, leaderboards and round scores for 226 editions from 2000, and 16,344 hole scores, behind tournament, player and course routes.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Champions | 1860–2026 | 756 completed editions 474 men’s majors since 1860 and 219 women’s majors since 1946, plus PGA TOUR and LPGA events from 2024. | Stored archive | /golf/tournaments/golf/tournaments/:edition/winner/golf/majors |
| Leaderboards and round scores | 2000–2026 | 226 editions 88 full-field and 138 top-finisher leaderboards; 13,737 results and 39,800 round scores. | Stored archive | /golf/tournaments/:edition/leaderboard/golf/tournaments/:edition/rounds |
| Hole-by-hole scores | 2000–2026 | 16,344 hole scores Scorecards and recorded 18-hole setups where independently published. | Stored archive | /golf/tournaments/:edition/scorecards/golf/tournaments/:edition/layout |
| Players and courses | 1860–2026 | 1,692 players Observed careers, season summaries and records at 151 courses. Careers reflect observed coverage, not complete careers. | Stored archive | /golf/players/:player/results/golf/courses/:course/history |
Known gaps
- Before 2000 most editions carry the champion only, not a full leaderboard.
- Tour events scored only by a provider whose terms restrict commercial reuse carry the champion only; no official world rankings, shot-level data, strokes-gained statistics or tour season statistics.
UFC · 1993–2026
Every completed UFC card since UFC 1, plus Dana White's Contender Series and Road to UFC, stored with fighter histories and round-level statistics.
| Data layer | Verified span | Depth | Delivery | Routes |
|---|---|---|---|---|
| Events and bouts | 1993–2026 | 9,565 completed bouts 918 completed events and 3,318 fighters with results, methods and rounds. | Stored archive | /v1/ufc/events/v1/ufc/fighters/:id/history/v1/ufc/bouts/:id |
| Round statistics | 1994–2026 | 9,015 bouts Round-by-round strikes and takedowns for both corners: 99.5% of UFC-series bouts. | Stored archive | /v1/ufc/bouts/:id/stats/v1/ufc/fighters/:id/stats |
Known gaps
- UFC 1 and 20 other early bouts have no round statistics at the source.
- Contender Series and Road to UFC round statistics are partial.
Build on the archive
Historical routes are part of the standard catalog — the same key and plan as live data. Need research access beyond the standard routes? Enterprise intelligence →