NASCAR APInascar.com ↗
Access NASCAR Cup Series driver profiles, season stats, race-by-race results, and career history via the NASCAR.com API. Two endpoints, structured JSON.
What is the NASCAR API?
The NASCAR.com API provides structured access to NASCAR Cup Series data across 2 endpoints, covering every active driver's profile, current season statistics, and full race-by-race results. The list_drivers endpoint returns car numbers, team affiliations, and URL slugs for all active Cup Series drivers, while get_driver exposes per-driver biographical details, season rankings, win counts, and year-by-year career statistics across all NASCAR series.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/1ade338b-783a-4a24-a238-c60a89237e0c/list_drivers' \ -H 'X-API-Key: $PARSE_API_KEY'
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 nascar-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.
"""Walkthrough: nascar_com_api SDK — bounded, re-runnable; every call capped."""
from parse_apis.nascar_com_api import Nascar, DriverNotFound
client = Nascar()
# List Cup Series drivers, capped at 3
for driver in client.drivers.list(limit=3):
print(driver.full_name, driver.car_number, driver.team)
# Drill down to full details for the first driver
summary = client.drivers.list(limit=1).first()
try:
full = client.drivers.get(slug=summary.slug)
print(full.first_name, full.last_name, full.hometown)
print("Season:", full.season_stats.points, "pts, rank", full.season_stats.driver_rank)
for race in full.race_results[:3]:
print(" ", race.track, "P" + race.finishing_position)
for stat in full.career_stats[:2]:
print(" ", stat.year, stat.series, "rank", stat.rank, stat.wins, "wins")
except DriverNotFound as e:
print("not found:", e.slug)
print("exercised: drivers.list, drivers.get")
Returns all active NASCAR Cup Series drivers with profile information. Each driver includes name, car number, team, hometown, and a slug usable with the get operation for full details.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer count of drivers returned",
"drivers": "array of driver profile summaries"
},
"sample": {
"total": 37,
"drivers": [
{
"slug": "christopher-bell",
"team": "Joe Gibbs Racing",
"driver_id": "4153",
"full_name": "Christopher Bell",
"image_url": "https://www.nascar.com/wp-content/uploads/sites/7/2026/01/26/Christopher-Bell-Helmet_resized.png",
"last_name": "Bell",
"car_number": "20",
"crew_chief": "Adam Stevens",
"first_name": "Christopher",
"rookie_year": "2020",
"date_of_birth": "1994-12-16T00:00:00",
"hometown_city": "Norman",
"hometown_state": "Oklahoma",
"driver_page_url": "https://www.nascar.com/drivers/christopher-bell",
"hometown_country": "United States"
}
]
}
}About the NASCAR API
Driver List
The list_drivers endpoint takes no inputs and returns a total count alongside a drivers array of profile summaries. Each summary includes the driver's name, car number, team, hometown, and a slug field — for example kyle-larson or alex-bowman — which serves as the required input to the detail endpoint. This is the right starting point for building a roster, populating a selector, or iterating over all Cup Series competitors.
Driver Detail
The get_driver endpoint accepts a single required slug parameter sourced from list_drivers results. It returns a wide response covering three distinct data layers. The bio field contains a narrative biographical description. The season_stats object holds current-season aggregate data including rank, points, and win count. The race_results array provides a race-by-race breakdown for the current season, and the crew_chief field reflects the driver's current crew assignment.
Career Statistics
The career_stats field in the get_driver response is an array of year-by-year entries spanning all NASCAR series — not limited to Cup. This makes it suitable for historical comparisons across a driver's full professional arc, including seasons in Xfinity or Truck Series before a Cup promotion.
Coverage Scope
Data covers active NASCAR Cup Series drivers only. The endpoints reflect current-season race results and the active team and crew chief assignments as shown on nascar.com. Season statistics update as races are completed throughout the current season.
The NASCAR API is a managed, monitored endpoint for nascar.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when nascar.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 nascar.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a live Cup Series driver roster displaying car number, team, and hometown for each active competitor.
- Display a driver's current season rank and points total in a fantasy NASCAR scoring application.
- Populate a career statistics timeline showing a driver's progression across NASCAR series year by year.
- Track race-by-race results for the current season to power a standings or performance trend chart.
- Cross-reference crew chief assignments across multiple drivers to analyze team-level performance patterns.
- Generate driver comparison pages using season stats and career stats pulled from consistent structured fields.
- Automate alerts when a driver's win count or points rank changes after each race weekend.
| 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 | 100 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 NASCAR have an official public developer API?+
What does get_driver return beyond basic profile fields?+
first_name, last_name, team, hometown, crew_chief, bio, and slug. Beyond those it includes a season_stats object with current-season aggregates, a race_results array with entries for each race run so far this season, and a career_stats array covering year-by-year statistics across all NASCAR series the driver has competed in.Does the API cover NASCAR Xfinity Series or Truck Series driver rosters?+
get_driver may include a driver's historical Xfinity or Truck Series seasons, but there are no roster or standings endpoints for those series. You can fork this API on Parse and revise it to add endpoints targeting Xfinity or Truck Series rosters.Does the API include historical race results from prior seasons?+
race_results array in get_driver covers the current season only. Prior seasons appear only as aggregated yearly totals inside the career_stats array — individual race-level data for past seasons is not included. You can fork this API on Parse and revise it to add an endpoint targeting historical per-race records if nascar.com surfaces that data.How current is the driver and season data?+
team and crew_chief reflect the active assignments shown on nascar.com at the time of the request. Season statistics and race results update as the current Cup Series season progresses — data accuracy is tied to what nascar.com has published for the most recently completed race event.