tfrrs.org APItfrrs.org ↗
Access college track and field and cross country data from TFRRS: athlete performances, personal bests, meet results, event standings, and team rosters.
curl -X GET 'https://api.parse.bot/scraper/1b66c7cb-769a-4301-82ff-8d308afee7ad/search_athlete?query=Emma+Coburn' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for college athletes by name on TFRRS. Returns matching athletes from the NCAA/NAIA/NJCAA database. Only athletes registered in TFRRS (current or recent college athletes) will return results; professional or post-collegiate athletes not in the system will return an empty array.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Athlete name to search for (e.g., 'Emma Coburn') |
{
"type": "object",
"fields": {
"athletes": "array of athlete objects with athlete_id, name, and url"
},
"sample": {
"data": {
"athletes": [
{
"url": "https://tfrrs.org/athletes/7919013/Harvard/Graham_Blanks.html",
"name": "Blanks, Graham",
"athlete_id": "7919013"
}
]
},
"status": "success"
}
}About the tfrrs.org API
The TFRRS API exposes college track and field and cross country data across 5 endpoints, covering athlete search, performance history, meet results, per-event standings, and team rosters. The get_athlete_results endpoint returns every indexed competition result for a given athlete alongside personal bests, while get_event_results gives place-by-place standings with marks and team affiliations for any indexed meet event.
Athlete Search and Performance History
The search_athlete endpoint accepts a name string and returns an array of matching athlete objects, each with an athlete_id, name, and url. That athlete_id feeds directly into get_athlete_results, which returns the athlete's full name, current team, eligibility year (e.g., SR-4), a performances array, and a personal_bests array. Each performance object carries meet_name, meet_date, event, mark, mark_seconds (numeric, useful for sorting), place, and boolean flags is_xc and is_track_field to distinguish cross country from track and field results. Coverage is limited to NCAA, NAIA, and NJCAA athletes currently or recently indexed in TFRRS; post-collegiate athletes will not appear.
Meet and Event Results
get_meet_results takes a numeric meet_id and returns the meet's official name, an events array with name and URL for each result page, and an athletes_found array capped at 50 entries. To get full standings for a specific event, pass the url from that events array to get_event_results, which returns a results array where each object includes place, athlete_name, athlete_id, team, and mark. Only college-level meets indexed by TFRRS will have a populated events list; high school or non-indexed meets may return incomplete data.
Team Rosters
get_team_roster accepts a team page path following the pattern /teams/tf/{STATE}_college_{m|f}_{School}.html. It returns the team_name and a roster array of athlete objects with athlete_id and name. Those IDs can then be passed to get_athlete_results to pull performance history for every athlete on a squad. The endpoint covers both men's and women's rosters depending on the path supplied.
- Track a college athlete's season progression by sorting their
performancesarray bymeet_dateandmark_seconds. - Build a conference rankings table by pulling
get_event_resultsfor each event across multiple meets and aggregating marks by team. - Compare personal bests across all athletes on a roster using
get_team_rosterIDs piped intoget_athlete_results. - Identify top performers at a specific meet by iterating
get_meet_resultsevents and collecting first-place finishers fromget_event_results. - Filter an athlete's history to cross country only using the
is_xcboolean on each performance object. - Automate recruiting research by querying
search_athletefor prospects and retrieving their full mark history and personal bests.
| 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 TFRRS have an official public developer API?+
What does `get_athlete_results` return beyond just times and distances?+
meet_name, meet_date, place, and a numeric mark_seconds field in addition to the formatted mark. Boolean fields is_xc and is_track_field let you filter results to a single discipline without string parsing. The personal_bests array is a separate condensed view with one best mark per event.Does the API cover high school athletes or post-collegiate professionals?+
Is historical meet data available, or only current-season results?+
get_athlete_results endpoint returns all indexed historical performances for an athlete, not just the current season. For meets, get_meet_results works with any numeric meet_id that TFRRS has indexed, regardless of season. Meets that were never indexed by TFRRS — including many high school invitationals — will return incomplete or empty event lists.Can I retrieve full team-level season statistics, like scoring summaries or dual-meet records?+
get_team_roster and individual performance history via get_athlete_results, but does not expose aggregated team scoring, season win-loss records, or dual-meet summaries. You can fork it on Parse and revise it to add an endpoint targeting TFRRS team season summary pages.