Discover/MileSplit API
live

MileSplit APImilesplit.com

Retrieve top-20 high school boys outdoor track and field rankings by state, event, and year from MileSplit. Covers relay teams and individual athletes.

Endpoint health
monitored
get_rankings
0/1 passing latest checkself-healing
Endpoints
1
Updated
26d ago

What is the MileSplit API?

The MileSplit API exposes one endpoint, get_rankings, that returns up to 20 ranked entries for high school boys outdoor track and field events filtered by US state, event name, and year. Each response includes rank, team, and meet data; individual events additionally return athlete name, wind reading, and grade level. Coverage spans relay events like the 4x400m and individual sprints and distance races across all 50 states.

Try it
Year for rankings (e.g. 2022, 2023, 2024).
Event name as it appears in MileSplit URLs.
Two-letter US state code (e.g. OH, CA, TX). Used as the MileSplit state subdomain.
api.parse.bot/scraper/56c1c198-91ee-47af-88fa-30620f68ee68/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/56c1c198-91ee-47af-88fa-30620f68ee68/get_rankings?year=2024&event=100m&state=CA' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace milesplit-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""MileSplit Rankings: fetch high school track & field rankings by state, event, year."""
from parse_apis.milesplit_rankings_api import MileSplit, Event, StateNotFound

client = MileSplit()

# List top rankings for California 100m in 2024, capped at 5 items
for ranking in client.rankings.list(state="CA", event=Event.M_100, year="2024", limit=5):
    print(ranking.rank, ranking.team, ranking.athlete, ranking.meet)

# Relay event — athletes are absent; grab first result
relay = client.rankings.list(state="OH", event=Event.R_4X400, year="2023", limit=1).first()
if relay:
    print(relay.rank, relay.team, relay.meet)

# Distance event with typed error handling
try:
    for r in client.rankings.list(state="ZZ", event=Event.M_1600, year="2024", limit=3):
        print(r.rank, r.team, r.grade)
except StateNotFound as exc:
    print(f"State not found: {exc.state}")

print("exercised: rankings.list (individual / relay / error)")
All endpoints · 1 totalmissing one? ·

Get the top 20 rankings for a specific high school boys outdoor track and field event in a given state and year. For relay events (e.g. 4x400m), returns team-level rankings with rank, team, and meet. For individual events (e.g. 100m, 1600m), returns athlete-level rankings including team, wind, and graduation year where available. Paginates as a single page of up to 20 entries.

Input
ParamTypeDescription
yearstringYear for rankings (e.g. 2022, 2023, 2024).
eventstringEvent name as it appears in MileSplit URLs.
statestringTwo-letter US state code (e.g. OH, CA, TX). Used as the MileSplit state subdomain.
Response
{
  "type": "object",
  "fields": {
    "rankings": "array of Ranking entries, each containing rank, team, meet, and optionally athlete, wind, and grade for individual events"
  },
  "sample": {
    "data": {
      "rankings": [
        {
          "meet": "CIF Southern Section Division 3 Prelims",
          "rank": "1",
          "team": "Notre Dame - Sherman Oaks (SS)",
          "wind": "0.79",
          "grade": "2025",
          "athlete": "Dijon Stanley"
        },
        {
          "meet": "CIF State Track And Field Championships",
          "rank": "4",
          "team": "Mt. Miguel (SD)",
          "wind": "2.3",
          "grade": "2026",
          "athlete": "Jaylen Thompson"
        },
        {
          "meet": "CIF State Track And Field Championships",
          "rank": "5",
          "team": "Bakersfield (CS)",
          "wind": "3.2",
          "grade": "2026",
          "athlete": "Marcus Lee"
        }
      ]
    },
    "status": "success"
  }
}

About the MileSplit API

What the API Returns

The get_rankings endpoint returns a ranked list of up to 20 entries for a specific high school boys outdoor track and field event. You specify three parameters: state (two-letter US state code, e.g. OH, CA, TX), event (the event name as it appears in MileSplit URLs, e.g. 100m, 1600m, 4x400m), and year (e.g. 2022, 2023, 2024). All three parameters are optional, allowing flexible queries.

Response Fields by Event Type

For relay events (e.g. 4x400m, 4x100m), each ranking entry contains rank, team, and meet. For individual events (sprints, mid-distance, and distance), entries also include athlete (the competitor's name), wind (wind reading in m/s where applicable), and grade (the athlete's school grade). This distinction means your parsing logic should branch on whether athlete is present in the response.

Coverage and Scope

State coverage uses MileSplit's state subdomain structure, so any two-letter state code that MileSplit tracks is supported. Rankings reflect the top performances recorded for a given event, state, and season year — not real-time meet results. The data is scoped to boys outdoor track and field only; girls events and indoor seasons are not part of the current endpoint.

Reliability & maintenance

The MileSplit API is a managed, monitored endpoint for milesplit.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when milesplit.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official milesplit.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Latest check
0/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a state-by-state comparison tool showing which states produce the fastest 100m or 1600m athletes in a given year.
  • Track a specific high school team's relay ranking across multiple years using the team and meet fields.
  • Populate a recruiting database with top athletes per event, grade, and state using the athlete and grade fields.
  • Generate historical trend reports on state performance by querying the same event and state across multiple year values.
  • Display meet-level context for each ranked performance using the meet field alongside rank and time.
  • Identify which meets consistently produce top-ranked relay teams by aggregating the meet field across states.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does MileSplit offer an official developer API?+
MileSplit does not publish an official public developer API. There is no documented REST or GraphQL interface available to third-party developers on their site.
What does `get_rankings` return differently for relay events versus individual events?+
For relay events, each entry includes rank, team, and meet. For individual events, those same fields are present and the entry also includes athlete (the competitor's name), wind (wind reading in m/s), and grade (school grade). The presence of athlete in a response object is the reliable signal that an entry is individual rather than team-based.
Does the API cover girls track and field events or indoor seasons?+
Not currently. The API covers boys outdoor track and field only, returning rankings via the get_rankings endpoint scoped to that division. You can fork this API on Parse and revise it to add endpoints covering girls outdoor events or boys/girls indoor seasons.
Is pagination supported — can I retrieve more than the top 20 results?+
The get_rankings endpoint returns up to 20 entries per query. Deeper pagination beyond rank 20 is not supported in the current implementation. You can fork this API on Parse and revise it to add offset or page parameters if you need a larger result set.
How current is the rankings data — does it update in real time after meets?+
Rankings reflect the data available on MileSplit for the given state, event, and year at the time of the request. MileSplit typically updates rankings after results are submitted and verified, so there may be a lag between a meet completing and the rankings reflecting new performances. Real-time live meet scoring is not part of what this endpoint returns.
Page content last updated . Spec covers 1 endpoint from milesplit.com.
Related APIs in SportsSee all →
athletic.net API
Search and analyze cross country and track & field performance data across the US, including athlete profiles, meet results, team rosters, and rankings. Access comprehensive meet information, historical records, and state-level competition data to track athlete progress and discover top performers.
maxpreps.com API
Access high school sports data from MaxPreps. Search for schools, retrieve team rosters and schedules, look up athlete profiles, and browse national or state rankings across all sports.
results.usatf.org API
Access meet information, competition schedules, and event results from USATF track and field competitions. Look up athlete profiles, browse daily schedules, and retrieve detailed results from meets including para nationals events.
tfrrs.org API
Search athletes, view their performance history, and look up detailed results from track and field meets including event standings and team rosters. Get comprehensive information about cross country and track competitions with athlete times, placements, and meet details all in one place.
scorecatonline.com API
Access live gymnastics competition results, schedules, and meet information from across the country, with the ability to search meets, view session scores, and filter by state and season. Get detailed breakdowns of individual and team performances at specific gymnastics events.
ifsc-climbing.com API
Track world rankings, search athlete profiles, and browse competition results and schedules across the international sport climbing circuit. Stay updated with the latest news and event information from the official IFSC competition calendar.
cyclocross24.com API
Track cyclocross races and riders with access to current race calendars, detailed results, athlete profiles, and UCI rankings all in one place. Search for specific riders, monitor live standings, and stay updated on competitive rankings throughout the season.
247sports.com API
Access recruit rankings, team rankings, and college football message board discussions from 247Sports to track player evaluations and community insights. Search specific board topics and view detailed post content to stay updated on recruiting news and team analysis.