{"openapi":"3.1.0","info":{"title":"RacingHub API - Formula 1 Historical Data & Statistics","description":"Open-source REST API providing comprehensive Formula 1 historical data and statistics. Access driver profiles, constructor information, race results, qualifying sessions, sprint races, pit stop data, fastest laps, championship standings, and season calendars. Powered by the F1DB open-source project. Perfect for motorsport analytics, data visualization, fantasy racing apps, and historical research. Data spans from 1950 to present.  Note: This is an independent project and is not affiliated with or endorsed by Formula 1®. Official endpoint: racinghub.net/api/v1","contact":{"name":"RacingHub","url":"https://github.com/rodas96/f1-api"},"license":{"name":"MIT License","identifier":"MIT"},"version":"1.1.1"},"paths":{"/drivers":{"get":{"tags":["Drivers"],"summary":"Get All Drivers","description":"Retrieve a paginated list of all Formula 1 drivers.Supports sorting by name, number, or code. Returns driver profiles including nationality, date of birth, and career information. Historical data from 1950 onwards.","operationId":"getDrivers","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":100,"title":"Limit"},"description":"Number of items per page"},{"name":"order_by","in":"query","required":false,"schema":{"$ref":"#/components/schemas/DriverOrderField","description":"Field to order by if not specified, defaults to name","default":"name"},"description":"Field to order by if not specified, defaults to name"},{"name":"sort_by","in":"query","required":false,"schema":{"$ref":"#/components/schemas/SortOrder","description":"Order direction if not specified, defaults to ascending","default":"asc"},"description":"Order direction if not specified, defaults to ascending"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}],"description":"Search drivers by name (e.g. 'ham', 'lewis ham')","title":"Q"},"description":"Search drivers by name (e.g. 'ham', 'lewis ham')"}],"responses":{"200":{"description":"Successfully retrieved paginated driver list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedResponse_DriverResponse_"}}}},"422":{"description":"Invalid query parameters"}}}},"/drivers/{driver_id}":{"get":{"tags":["Drivers"],"summary":"Get Driver by ID","description":"Retrieve detailed information about a specific Formula 1 driver. Returns complete driver profile including full name, nationality, birth date, permanent number, and biographical data. Use driver reference ID (e.g., 'hamilton', 'verstappen').","operationId":"getDriver","parameters":[{"name":"driver_id","in":"path","required":true,"schema":{"type":"string","title":"Driver Id"}}],"responses":{"200":{"description":"Successfully retrieved driver information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DriverResponse"}}}},"404":{"description":"Driver not found"},"422":{"description":"Invalid driver ID format"}}}},"/drivers/{driver_id}/results":{"get":{"tags":["Drivers"],"summary":"Get Driver Race Results","description":"Retrieve complete race history for a specific driver. Returns paginated results including finishing position, points scored, grid position, status, fastest lap times, and race details. Covers all Grand Prix entries throughout the driver's career.","operationId":"getDriverRacesResults","parameters":[{"name":"driver_id","in":"path","required":true,"schema":{"type":"string","title":"Driver Id"}},{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":100,"title":"Limit"},"description":"Number of items per page"}],"responses":{"200":{"description":"Successfully retrieved driver race results","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedResponse_DriverRaceResultResponse_"}}}},"404":{"description":"Driver not found"},"422":{"description":"Invalid parameters"}}}},"/drivers/{driver_id}/seasons":{"get":{"tags":["Drivers"],"summary":"Get Driver Season History","description":"Retrieve all seasons a driver competed in. Returns year-by-year participation including constructor teams, championship standings, total points, wins, podiums, and pole positions for each season. Useful for career progression analysis.","operationId":"getDriverSeasons","parameters":[{"name":"driver_id","in":"path","required":true,"schema":{"type":"string","title":"Driver Id"}}],"responses":{"200":{"description":"Successfully retrieved driver season history","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DriverSeasonResponse"},"title":"Response Getdriverseasons"}}}},"404":{"description":"Driver not found or no season data available"},"422":{"description":"Invalid driver ID format"}}}},"/seasons":{"get":{"tags":["Seasons"],"summary":"Get Seasons","description":"Retrieve a paginated list of all Formula 1 seasons. Includes season year, number of races, and champion information. Supports pagination with page and limit parameters.","operationId":"getSeasons","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":1,"title":"Limit"},"description":"Number of items per page"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedResponse_SeasonResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/seasons/{year}":{"get":{"tags":["Seasons"],"summary":"Get Season by Year","description":"Retrieve detailed information for a specific Formula 1 season by year. Includes season overview, total races, driver and constructor champions, and key events during the season.","operationId":"getSeasonByYear","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SeasonResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/seasons/{year}/drivers":{"get":{"tags":["Seasons"],"summary":"Get Season Drivers","description":"Retrieve a list of all drivers who participated in a specific Formula 1 season. Includes driver names, teams, nationalities, and championship points.","operationId":"getSeasonDrivers","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SeasonDriverResponse"},"title":"Response Getseasondrivers"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/seasons/{year}/constructors":{"get":{"tags":["Seasons"],"summary":"Get Season Constructors","description":"Retrieve a list of all constructors that competed in a specific Formula 1 season. Includes constructor names, countries, team information, and championship points.","operationId":"getSeasonConstructors","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SeasonConstructorResponse"},"title":"Response Getseasonconstructors"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/seasons/{year}/races":{"get":{"tags":["Seasons"],"summary":"Get Season Races","description":"Retrieve a list of all races in a specific Formula 1 season. Includes race names, dates, circuits, locations, and round numbers.","operationId":"getSeasonRaces","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/SeasonRaceResponse"},"title":"Response Getseasonraces"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races":{"get":{"tags":["Races"],"summary":"Get Races","description":"Retrieve a paginated list of all Formula 1 races, including race name, date, season, circuit, and round. Supports pagination with page and limit parameters.","operationId":"getRaces","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":1,"title":"Limit"},"description":"Number of items per page"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedResponse_RaceResponse_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}":{"get":{"tags":["Races"],"summary":"Get Race","description":"Retrieve detailed information about a specific Formula 1 race by its unique ID. Includes date, circuit, country, season round, and race type.","operationId":"getRace","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RaceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/results":{"get":{"tags":["Races"],"summary":"Get Race Results","description":"Retrieve the official results of a specific Formula 1 race. Includes finishing positions, driver names, team results, points, and race status.","operationId":"getRaceResults","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceResultResponse"},"title":"Response Getraceresults"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/starting-grid":{"get":{"tags":["Races"],"summary":"Get Race Starting Grid","description":"Retrieve the starting grid for a specific Formula 1 race. Includes driver positions, teams, and qualifying times.","operationId":"getRaceStartingGrid","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceGridResponse"},"title":"Response Getracestartinggrid"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/qualifying-results":{"get":{"tags":["Races"],"summary":"Get Race Qualifying Results","description":"Retrieve qualifying session results for a specific Formula 1 race. Includes driver positions, lap times, and team performance.","operationId":"getRaceQualifyingResults","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceQualifyingResponse"},"title":"Response Getracequalifyingresults"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/sprint-results":{"get":{"tags":["Races"],"summary":"Get Sprint Race Results","description":"Retrieve the official results of a Formula 1 sprint race, including driver positions, teams, and points scored.","operationId":"getSprintRaceResults","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceResultResponse"},"title":"Response Getsprintraceresults"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/sprint-starting-grid":{"get":{"tags":["Races"],"summary":"Get Sprint Race Starting Grid","description":"Retrieve the starting grid for a Formula 1 sprint race. Includes driver positions, teams, and qualifying performance.","operationId":"getSprintRaceStartingGrid","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceGridResponse"},"title":"Response Getsprintracestartinggrid"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/fastest-lap":{"get":{"tags":["Races"],"summary":"Get Race Fastest Lap","description":"Retrieve details of the fastest lap in a specific Formula 1 race. Includes driver, lap time, team, and lap number.","operationId":"getRaceFastestLap","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RaceFastestLapResponse"},"title":"Response Getracefastestlap"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/races/{race_id}/pit-stops":{"get":{"tags":["Races"],"summary":"Get Race Pit Stops","description":"Retrieve all pit stop information for a specific Formula 1 race. Includes driver, lap, duration, and team data.","operationId":"getRacePitStops","parameters":[{"name":"race_id","in":"path","required":true,"schema":{"type":"integer","title":"Race Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/RacePitStopResponse"},"title":"Response Getracepitstops"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/constructors":{"get":{"tags":["Constructors"],"summary":"Get All Constructors","description":"Retrieve a paginated list of all Formula 1 constructor teams.Returns team information including official name, nationality, and historical data. Covers all teams from the championship's inception in 1950 to present.","operationId":"getConstructors","parameters":[{"name":"page","in":"query","required":false,"schema":{"type":"integer","minimum":1,"description":"Page number","default":1,"title":"Page"},"description":"Page number"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"description":"Number of items per page","default":100,"title":"Limit"},"description":"Number of items per page"}],"responses":{"200":{"description":"Successfully retrieved paginated constructor list","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PagedResponse_ConstructorResponse_"}}}},"422":{"description":"Invalid query parameters"}}}},"/constructors/{constructor_id}":{"get":{"tags":["Constructors"],"summary":"Get Constructor by ID","description":"Retrieve detailed information about a specific Formula 1 constructor team. Returns complete team profile including full name, nationality, and reference ID. Use constructor reference ID (e.g., 'ferrari', 'mclaren', 'red_bull', 'mercedes').","operationId":"getConstructor","parameters":[{"name":"constructor_id","in":"path","required":true,"schema":{"type":"string","title":"Constructor Id"}}],"responses":{"200":{"description":"Successfully retrieved constructor information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConstructorResponse"}}}},"404":{"description":"Constructor not found"},"422":{"description":"Invalid constructor ID format"}}}},"/constructors/{constructor_id}/seasons":{"get":{"tags":["Constructors"],"summary":"Get Constructor Season History","description":"Retrieve all seasons a constructor team competed in. Returns year-by-year participation including championship standings, total points, wins, podium finishes, pole positions, and fastest laps for each season. Essential for analyzing team performance evolution and historical success across different eras of Formula 1.","operationId":"getConstructorSeasons","parameters":[{"name":"constructor_id","in":"path","required":true,"schema":{"type":"string","title":"Constructor Id"}}],"responses":{"200":{"description":"Successfully retrieved constructor season history","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ConstructorSeasonResponse"},"title":"Response Getconstructorseasons"}}}},"404":{"description":"Constructor not found or no season data available"},"422":{"description":"Invalid constructor ID format"}}}},"/standings/{year}/drivers":{"get":{"tags":["Standings"],"summary":"Get Driver Standings","description":"Retrieve the final driver championship standings for a specific Formula 1 season. Includes driver names, teams, points, wins, podiums, and overall ranking.","operationId":"get_driver_standings_standings__year__drivers_get","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/DriverStandingResponse"},"title":"Response Get Driver Standings Standings  Year  Drivers Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/standings/{year}/constructors":{"get":{"tags":["Standings"],"summary":"Get Constructor Standings","description":"Retrieve the final constructor championship standings for a specific Formula 1 season. Includes constructor names, total points, wins, podiums, and overall team ranking.","operationId":"get_constructor_standings_standings__year__constructors_get","parameters":[{"name":"year","in":"path","required":true,"schema":{"type":"integer","title":"Year"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ConstructorStandingResponse"},"title":"Response Get Constructor Standings Standings  Year  Constructors Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/health":{"get":{"tags":["Health"],"summary":"Get Health Status","operationId":"getHealthStatus","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthResponse"}}}}}}}},"components":{"schemas":{"ConstructorChampionResponse":{"properties":{"constructor_id":{"type":"string","title":"Constructor Id"},"constructor_name":{"type":"string","title":"Constructor Name"},"points":{"type":"number","title":"Points"},"race_wins":{"type":"integer","title":"Race Wins"},"pole_positions":{"type":"integer","title":"Pole Positions"}},"type":"object","required":["constructor_id","constructor_name","points","race_wins","pole_positions"],"title":"ConstructorChampionResponse"},"ConstructorResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"full_name":{"type":"string","title":"Full Name"},"country_id":{"type":"string","title":"Country Id"},"total_championship_wins":{"type":"integer","title":"Total Championship Wins"},"total_race_entries":{"type":"integer","title":"Total Race Entries"},"total_race_starts":{"type":"integer","title":"Total Race Starts"},"total_race_wins":{"type":"integer","title":"Total Race Wins"},"total_1_and_2_finishes":{"type":"integer","title":"Total 1 And 2 Finishes"},"total_race_laps":{"type":"integer","title":"Total Race Laps"},"total_podiums":{"type":"integer","title":"Total Podiums"},"total_podium_races":{"type":"integer","title":"Total Podium Races"},"total_points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Points"},"total_championship_points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Championship Points"},"total_pole_positions":{"type":"integer","title":"Total Pole Positions"},"total_fastest_laps":{"type":"integer","title":"Total Fastest Laps"},"total_sprint_race_starts":{"type":"integer","title":"Total Sprint Race Starts"},"total_sprint_race_wins":{"type":"integer","title":"Total Sprint Race Wins"},"best_championship_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Championship Position"},"best_starting_grid_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Starting Grid Position"},"best_race_result":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Race Result"},"best_sprint_race_result":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Sprint Race Result"}},"type":"object","required":["id","name","full_name","country_id","total_championship_wins","total_race_entries","total_race_starts","total_race_wins","total_1_and_2_finishes","total_race_laps","total_podiums","total_podium_races","total_points","total_championship_points","total_pole_positions","total_fastest_laps","total_sprint_race_starts","total_sprint_race_wins"],"title":"ConstructorResponse","description":"Full constructor profile with career statistics."},"ConstructorSeasonResponse":{"properties":{"year":{"type":"integer","title":"Year"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points"},"race_wins":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Race Wins"},"pole_positions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pole Positions"}},"type":"object","required":["year"],"title":"ConstructorSeasonResponse","description":"Constructor's performance in a specific season."},"ConstructorStandingResponse":{"properties":{"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"position_text":{"type":"string","title":"Position Text"},"constructor_id":{"type":"string","title":"Constructor Id"},"constructor_name":{"type":"string","title":"Constructor Name"},"country_code":{"type":"string","title":"Country Code"},"engine_manufacturer_id":{"type":"string","title":"Engine Manufacturer Id"},"engine_manufacturer":{"type":"string","title":"Engine Manufacturer"},"points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Points"},"race_wins":{"type":"integer","title":"Race Wins"},"pole_positions":{"type":"integer","title":"Pole Positions"},"championship_won":{"type":"boolean","title":"Championship Won"}},"type":"object","required":["position_text","constructor_id","constructor_name","country_code","engine_manufacturer_id","engine_manufacturer","points","race_wins","pole_positions","championship_won"],"title":"ConstructorStandingResponse","description":"Constructor championship standing."},"DriverChampionResponse":{"properties":{"driver_id":{"type":"string","title":"Driver Id"},"driver_name":{"type":"string","title":"Driver Name"},"points":{"type":"number","title":"Points"},"race_wins":{"type":"integer","title":"Race Wins"},"pole_positions":{"type":"integer","title":"Pole Positions"}},"type":"object","required":["driver_id","driver_name","points","race_wins","pole_positions"],"title":"DriverChampionResponse"},"DriverOrderField":{"type":"string","enum":["name","date_of_birth","total_championship_wins","total_championship_points","total_race_wins","total_podiums","total_points","total_pole_positions","total_fastest_laps"],"title":"DriverOrderField"},"DriverRaceResultResponse":{"properties":{"race_id":{"type":"integer","title":"Race Id"},"race_year":{"type":"integer","title":"Race Year"},"race_round":{"type":"integer","title":"Race Round"},"race_date":{"type":"string","format":"date","title":"Race Date"},"race_name":{"type":"string","title":"Race Name","description":"Official race name"},"grand_prix_name":{"type":"string","title":"Grand Prix Name","description":"Grand Prix name (e.g., 'Australian Grand Prix')"},"circuit_name":{"type":"string","title":"Circuit Name","description":"Circuit name"},"circuit_location":{"anyOf":[{"type":"string"},{"type":"boolean"}],"title":"Circuit Location","description":"City/Country"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position","description":"Final classification position (null if DNF/DSQ)"},"driver_number":{"type":"string","title":"Driver Number"},"constructor_name":{"type":"string","title":"Constructor Name","description":"Team name"},"laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Laps","description":"Laps completed"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time","description":"Race time (winner) or gap"},"time_millis":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Time Millis","description":"Race time in milliseconds"},"gap":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gap","description":"Gap to leader"},"gap_millis":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Gap Millis","description":"Gap in milliseconds"},"gap_laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Gap Laps","description":"Laps behind leader"},"interval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Interval","description":"Interval to car ahead"},"interval_millis":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Interval Millis","description":"Interval in milliseconds"},"time_penalty":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time Penalty","description":"Time penalty applied"},"time_penalty_millis":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Time Penalty Millis","description":"Penalty in milliseconds"},"reason_retired":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason Retired","description":"DNF reason if applicable"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points","description":"Championship points earned"},"pole_position":{"type":"boolean","title":"Pole Position","description":"Started from pole","default":false},"fastest_lap":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fastest Lap","description":"Set fastest lap","default":false},"driver_of_the_day":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Driver Of The Day","description":"Won driver of the day","default":false},"grand_slam":{"type":"boolean","title":"Grand Slam","description":"Pole + Win + Fastest Lap + Led every lap","default":false},"qualification_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Qualification Position","description":"Qualifying position"},"grid_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Grid Position","description":"Starting grid position"},"positions_gained":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Positions Gained","description":"Positions gained/lost from grid"},"pit_stops":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pit Stops","description":"Number of pit stops"},"tyre_manufacturer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tyre Manufacturer","description":"Tyre supplier"},"engine_manufacturer":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Engine Manufacturer","description":"Engine supplier"}},"type":"object","required":["race_id","race_year","race_round","race_date","race_name","grand_prix_name","circuit_name","circuit_location","driver_number","constructor_name"],"title":"DriverRaceResultResponse","description":"Complete race result for a driver including race context."},"DriverResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"first_name":{"type":"string","title":"First Name"},"last_name":{"type":"string","title":"Last Name"},"full_name":{"type":"string","title":"Full Name"},"abbreviation":{"type":"string","title":"Abbreviation"},"gender":{"type":"string","title":"Gender"},"date_of_birth":{"type":"string","format":"date","title":"Date Of Birth"},"place_of_birth":{"type":"string","title":"Place Of Birth"},"nationality_country_id":{"type":"string","title":"Nationality Country Id"},"country_of_birth_country_id":{"type":"string","title":"Country Of Birth Country Id"},"second_nationality_country_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Second Nationality Country Id"},"permanent_number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Permanent Number"},"date_of_death":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Date Of Death"},"total_championship_wins":{"type":"integer","title":"Total Championship Wins"},"total_race_entries":{"type":"integer","title":"Total Race Entries"},"total_race_starts":{"type":"integer","title":"Total Race Starts"},"total_race_wins":{"type":"integer","title":"Total Race Wins"},"total_race_laps":{"type":"integer","title":"Total Race Laps"},"total_podiums":{"type":"integer","title":"Total Podiums"},"total_points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Points"},"total_championship_points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Total Championship Points"},"total_pole_positions":{"type":"integer","title":"Total Pole Positions"},"total_fastest_laps":{"type":"integer","title":"Total Fastest Laps"},"total_driver_of_the_day":{"type":"integer","title":"Total Driver Of The Day"},"total_grand_slams":{"type":"integer","title":"Total Grand Slams"},"best_championship_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Championship Position"},"best_starting_grid_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Starting Grid Position"},"best_race_result":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Best Race Result"}},"type":"object","required":["id","name","first_name","last_name","full_name","abbreviation","gender","date_of_birth","place_of_birth","nationality_country_id","country_of_birth_country_id","total_championship_wins","total_race_entries","total_race_starts","total_race_wins","total_race_laps","total_podiums","total_points","total_championship_points","total_pole_positions","total_fastest_laps","total_driver_of_the_day","total_grand_slams"],"title":"DriverResponse"},"DriverSeasonResponse":{"properties":{"year":{"type":"integer","title":"Year"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points"},"race_wins":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Race Wins"},"pole_positions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pole Positions"},"constructors_name":{"items":{"type":"string"},"type":"array","title":"Constructors Name"}},"type":"object","required":["year","position","points","race_wins","pole_positions","constructors_name"],"title":"DriverSeasonResponse"},"DriverStandingResponse":{"properties":{"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"position_text":{"type":"string","title":"Position Text"},"driver_id":{"type":"string","title":"Driver Id"},"driver_name":{"type":"string","title":"Driver Name"},"driver_abbr":{"type":"string","title":"Driver Abbr"},"driver_number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Driver Number"},"points":{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","title":"Points"},"race_wins":{"type":"integer","title":"Race Wins"},"pole_positions":{"type":"integer","title":"Pole Positions"},"championship_won":{"type":"boolean","title":"Championship Won"}},"type":"object","required":["position_text","driver_id","driver_name","driver_abbr","points","race_wins","pole_positions","championship_won"],"title":"DriverStandingResponse","description":"Driver championship standing."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HealthResponse":{"properties":{"status":{"type":"string","title":"Status"},"timestamp":{"type":"string","format":"date-time","title":"Timestamp"},"database":{"type":"string","title":"Database"},"cache":{"type":"string","title":"Cache"}},"type":"object","required":["status","timestamp","database","cache"],"title":"HealthResponse"},"PagedResponse_ConstructorResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/ConstructorResponse"},"type":"array","title":"Data"},"page":{"type":"integer","title":"Page"},"limit":{"type":"integer","title":"Limit"},"total":{"type":"integer","title":"Total"},"total_pages":{"type":"integer","title":"Total Pages"},"has_next":{"type":"boolean","title":"Has Next","description":"Whether there's a next page"},"has_previous":{"type":"boolean","title":"Has Previous","description":"Whether there's a previous page"}},"type":"object","required":["data","page","limit","total","total_pages","has_next","has_previous"],"title":"PagedResponse[ConstructorResponse]"},"PagedResponse_DriverRaceResultResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/DriverRaceResultResponse"},"type":"array","title":"Data"},"page":{"type":"integer","title":"Page"},"limit":{"type":"integer","title":"Limit"},"total":{"type":"integer","title":"Total"},"total_pages":{"type":"integer","title":"Total Pages"},"has_next":{"type":"boolean","title":"Has Next","description":"Whether there's a next page"},"has_previous":{"type":"boolean","title":"Has Previous","description":"Whether there's a previous page"}},"type":"object","required":["data","page","limit","total","total_pages","has_next","has_previous"],"title":"PagedResponse[DriverRaceResultResponse]"},"PagedResponse_DriverResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/DriverResponse"},"type":"array","title":"Data"},"page":{"type":"integer","title":"Page"},"limit":{"type":"integer","title":"Limit"},"total":{"type":"integer","title":"Total"},"total_pages":{"type":"integer","title":"Total Pages"},"has_next":{"type":"boolean","title":"Has Next","description":"Whether there's a next page"},"has_previous":{"type":"boolean","title":"Has Previous","description":"Whether there's a previous page"}},"type":"object","required":["data","page","limit","total","total_pages","has_next","has_previous"],"title":"PagedResponse[DriverResponse]"},"PagedResponse_RaceResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/RaceResponse"},"type":"array","title":"Data"},"page":{"type":"integer","title":"Page"},"limit":{"type":"integer","title":"Limit"},"total":{"type":"integer","title":"Total"},"total_pages":{"type":"integer","title":"Total Pages"},"has_next":{"type":"boolean","title":"Has Next","description":"Whether there's a next page"},"has_previous":{"type":"boolean","title":"Has Previous","description":"Whether there's a previous page"}},"type":"object","required":["data","page","limit","total","total_pages","has_next","has_previous"],"title":"PagedResponse[RaceResponse]"},"PagedResponse_SeasonResponse_":{"properties":{"data":{"items":{"$ref":"#/components/schemas/SeasonResponse"},"type":"array","title":"Data"},"page":{"type":"integer","title":"Page"},"limit":{"type":"integer","title":"Limit"},"total":{"type":"integer","title":"Total"},"total_pages":{"type":"integer","title":"Total Pages"},"has_next":{"type":"boolean","title":"Has Next","description":"Whether there's a next page"},"has_previous":{"type":"boolean","title":"Has Previous","description":"Whether there's a previous page"}},"type":"object","required":["data","page","limit","total","total_pages","has_next","has_previous"],"title":"PagedResponse[SeasonResponse]"},"RaceFastestLapResponse":{"properties":{"position_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position Number"},"driver_number":{"type":"string","title":"Driver Number"},"driver_id":{"type":"string","title":"Driver Id"},"constructor_id":{"type":"string","title":"Constructor Id"},"lap":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Lap"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"},"gap":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gap"},"interval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Interval"}},"type":"object","required":["driver_number","driver_id","constructor_id"],"title":"RaceFastestLapResponse"},"RaceGridResponse":{"properties":{"position_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position Number"},"position_text":{"type":"string","title":"Position Text"},"driver_number":{"type":"string","title":"Driver Number"},"driver_id":{"type":"string","title":"Driver Id"},"constructor_id":{"type":"string","title":"Constructor Id"},"qualification_position_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Qualification Position Number"},"qualification_position_text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Qualification Position Text"},"grid_penalty":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Grid Penalty"},"grid_penalty_positions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Grid Penalty Positions"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"}},"type":"object","required":["position_text","driver_number","driver_id","constructor_id"],"title":"RaceGridResponse"},"RacePitStopResponse":{"properties":{"driver_number":{"type":"string","title":"Driver Number"},"driver_id":{"type":"string","title":"Driver Id"},"constructor_id":{"type":"string","title":"Constructor Id"},"stop":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Stop"},"lap":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Lap"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"}},"type":"object","required":["driver_number","driver_id","constructor_id"],"title":"RacePitStopResponse"},"RaceQualifyingResponse":{"properties":{"position_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position Number"},"position_text":{"type":"string","title":"Position Text"},"driver_number":{"type":"string","title":"Driver Number"},"driver_id":{"type":"string","title":"Driver Id"},"constructor_id":{"type":"string","title":"Constructor Id"},"q1":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q1"},"q2":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q2"},"q3":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q3"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"},"gap":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gap"},"interval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Interval"},"laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Laps"}},"type":"object","required":["position_text","driver_number","driver_id","constructor_id"],"title":"RaceQualifyingResponse"},"RaceResponse":{"properties":{"id":{"type":"integer","title":"Id"},"year":{"type":"integer","title":"Year"},"round":{"type":"integer","title":"Round"},"date":{"type":"string","format":"date","title":"Date"},"official_name":{"type":"string","title":"Official Name"},"grand_prix_id":{"type":"string","title":"Grand Prix Id"},"circuit_id":{"type":"string","title":"Circuit Id"},"circuit_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Circuit Type"},"direction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Direction"},"course_length":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Course Length"},"turns":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Turns"},"laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Laps"},"distance":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Distance"},"scheduled_laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Scheduled Laps"},"scheduled_distance":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Scheduled Distance"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"},"qualifying_format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Qualifying Format"},"sprint_qualifying_format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sprint Qualifying Format"},"drivers_championship_decider":{"type":"boolean","title":"Drivers Championship Decider","default":false},"constructors_championship_decider":{"type":"boolean","title":"Constructors Championship Decider","default":false},"pre_qualifying":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"free_practice_1":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"free_practice_2":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"free_practice_3":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"free_practice_4":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"qualifying_1":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"qualifying_2":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"qualifying":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"sprint_qualifying":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"sprint_race":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]},"warming_up":{"anyOf":[{"$ref":"#/components/schemas/SessionResponse"},{"type":"null"}]}},"type":"object","required":["id","year","round","date","official_name","grand_prix_id","circuit_id"],"title":"RaceResponse"},"RaceResultResponse":{"properties":{"position_number":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position Number"},"position_text":{"type":"string","title":"Position Text"},"driver_number":{"type":"string","title":"Driver Number"},"driver_id":{"type":"string","title":"Driver Id"},"constructor_id":{"type":"string","title":"Constructor Id"},"laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Laps"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"},"gap":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gap"},"interval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Interval"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points"},"pit_stops":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pit Stops"},"grid_position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Grid Position"},"positions_gained":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Positions Gained"},"fastest_lap":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Fastest Lap"},"pole_position":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Pole Position"},"driver_of_the_day":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Driver Of The Day"},"grand_slam":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Grand Slam"},"reason_retired":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason Retired"}},"type":"object","required":["position_text","driver_number","driver_id","constructor_id"],"title":"RaceResultResponse"},"SeasonConstructorResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"country_code":{"type":"string","title":"Country Code"},"engine_manufacturer_id":{"type":"string","title":"Engine Manufacturer Id"},"engine_manufacturer":{"type":"string","title":"Engine Manufacturer"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points"},"race_wins":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Race Wins"},"pole_positions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pole Positions"}},"type":"object","required":["id","name","country_code","engine_manufacturer_id","engine_manufacturer"],"title":"SeasonConstructorResponse","description":"Constructor standings for a specific season."},"SeasonDriverResponse":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"abbr":{"type":"string","title":"Abbr"},"number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Number"},"position":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Position"},"points":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Points"},"race_wins":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Race Wins"},"pole_positions":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pole Positions"}},"type":"object","required":["id","name","abbr"],"title":"SeasonDriverResponse","description":"Driver standings for a specific season."},"SeasonRaceResponse":{"properties":{"id":{"type":"integer","title":"Id"},"round":{"type":"integer","title":"Round"},"date":{"type":"string","format":"date","title":"Date"},"name":{"type":"string","title":"Name"},"circuit":{"type":"string","title":"Circuit"},"country_code":{"type":"string","title":"Country Code"},"laps":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Laps"},"distance":{"anyOf":[{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"},{"type":"null"}],"title":"Distance"}},"type":"object","required":["id","round","date","name","circuit","country_code"],"title":"SeasonRaceResponse","description":"Race in a season calendar."},"SeasonResponse":{"properties":{"year":{"type":"integer","title":"Year"},"total_races":{"type":"integer","title":"Total Races"},"total_drivers":{"type":"integer","title":"Total Drivers"},"total_constructors":{"type":"integer","title":"Total Constructors"},"champion":{"$ref":"#/components/schemas/DriverChampionResponse"},"constructor_champion":{"$ref":"#/components/schemas/ConstructorChampionResponse"}},"type":"object","required":["year","total_races","total_drivers","total_constructors","champion","constructor_champion"],"title":"SeasonResponse"},"SessionResponse":{"properties":{"date":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Date"},"time":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Time"}},"type":"object","title":"SessionResponse"},"SortOrder":{"type":"string","enum":["asc","desc"],"title":"SortOrder"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"tags":[{"name":"Drivers","description":"Driver data, career statistics, race results, and season history"},{"name":"Constructors","description":"Team information, constructor history, and championship participation"},{"name":"Races","description":"Race results, qualifying, sprint races, starting grids, pit stops, and fastest laps"},{"name":"Seasons","description":"Season calendars, participating drivers, constructors, and race schedules"},{"name":"Standings","description":"Final championship standings for drivers and constructors by season"},{"name":"Health","description":"API health check and status monitoring"}],"servers":[{"url":"/api/v1"}]}