ncaa.com APIncaa.com ↗
Access NCAA game schedules, live scores, boxscores, play-by-play, and team stats across football and basketball divisions via a structured API.
curl -X GET 'https://api.parse.bot/scraper/ea5d6e16-f38b-4e98-a227-1314a86fe69a/search_contests?week=6&division=1&sport_code=MFB&season_year=2025&contest_date=10%2F05%2F2024' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for game contests (scores/schedule) by date, sport, and division. Returns a list of contests with scores, teams, and game state information.
| Param | Type | Description |
|---|---|---|
| week | integer | Week number, primarily used for football schedules. |
| division | integer | Division number: 1, 2, or 3. |
| sport_code | string | Sport code. Accepted values include: MBB (Men's Basketball), WBB (Women's Basketball), MFB (Football). |
| season_year | integer | Season year (e.g. 2025 for the 2024-25 season). |
| contest_daterequired | string | Date in MM/DD/YYYY format (e.g. 02/24/2026). |
{
"type": "object",
"fields": {
"data": "object containing 'contests' array with game information including teams, scores, game state, and linescores"
},
"sample": {
"data": {
"data": {
"contests": []
}
},
"status": "success"
}
}About the ncaa.com API
The NCAA.com API exposes 5 endpoints covering college sports contest data across football and basketball, from all three NCAA divisions. Use search_contests to pull scheduled and live game listings by date, sport code, and division, then drill into any contest with boxscore, play-by-play, and team statistics endpoints using the contest ID returned in the initial search.
Contest Discovery and Scheduling
The search_contests endpoint is the entry point. Pass a contest_date in MM/DD/YYYY format along with optional filters — sport_code (e.g. MBB for Men's Basketball, WBB for Women's Basketball, MFB for Football), division (1, 2, or 3), and season_year — to get a list of contests for that day. Each result includes teams, current scores, game state, and linescores. For football, a week parameter narrows results to a specific week of the season.
Game Detail and Boxscores
Once you have a contest_id from search_contests, three endpoints provide game-level depth. get_game_detail returns structured metadata: linescores, team identifiers, venue/location, and championship context. get_boxscore returns individual player statistics and team totals — pass sport as 'basketball' or 'football' to get the correct stat schema. The response includes a teamBoxscore array with both playerStats and teamStats entries. get_team_stats isolates the aggregate side: field goal percentages, rebounds, assists, turnovers, and other team-level figures, without player-level rows.
Play-by-Play
get_play_by_play returns event-level data structured by period. Each period contains a playbyplayStats array with individual play descriptions, running scores, and clock timestamps. This is useful for reconstructing game flow, identifying scoring runs, or building timeline visualizations. The same contest_id and sport parameters apply.
Coverage Notes
Sport codes currently documented are MBB, WBB, and MFB. Division filter accepts integers 1, 2, or 3. The season_year convention follows the end year of the season (e.g. 2025 for the 2024–25 season). Contest IDs are numeric strings and must be sourced from search_contests results — they are not guessable or documented externally.
- Build a live college basketball scoreboard filtered by division and date using
search_contests - Track individual player stat lines per game with
get_boxscorefor fantasy or analytics applications - Reconstruct game flow timeline using period-by-period play descriptions from
get_play_by_play - Compare team aggregate shooting and rebounding stats across games using
get_team_stats - Automate weekly college football schedule ingestion using the
weekandsport_codeparameters insearch_contests - Identify championship game metadata and venue details via
get_game_detailfor event coverage tools
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does NCAA.com have an official developer API?+
What does `search_contests` return, and how do I filter by sport?+
contests array for the given date. Each entry includes both teams, current scores, game state, and linescores. Filter by sport using the sport_code parameter — accepted values are MBB (Men's Basketball), WBB (Women's Basketball), and MFB (Football). You can combine this with division (1, 2, or 3) and season_year to narrow results further.Does the API cover sports other than basketball and football?+
sport_code values cover Men's Basketball (MBB), Women's Basketball (WBB), and Football (MFB). Other NCAA sports such as baseball, soccer, volleyball, or lacrosse are not currently included in the endpoint definitions. You can fork this API on Parse and revise it to add support for additional sport codes if the underlying data is accessible.Can I retrieve historical boxscores or play-by-play from past seasons?+
contest_id without a date constraint, so historical game data may be retrievable if you have a valid contest ID from a past game via search_contests with historical dates and season_year. There is no dedicated historical bulk-query endpoint; access is contest-by-contest. If you need a bulk historical data endpoint, you can fork the API on Parse and revise it to add that capability.Is there any pagination for `search_contests` results on busy game days?+
contests array. On dates with a large number of games across all divisions, the response may be large but is not paginated within the current API definition.