Latest News

  • Limit parameter restriction

    Due to a large increase in traffic using the maximum permitted value of the limit parameter the maximum value is now capped at 100 rather than 1000. Apologies for any inconvenience but the server has been unable to cope with the load.

  • Another Rogue App!

    Apologies for the recent instability of the API but someone has released and app which creates a high load at specific times around race weekends. Unfortunately, they are using a random user agent string which makes it hard to block. Please may I ask people not to poll the API but only make requests in […]

  • Unintentional DDOS

    The API was down for several hours on 7th April because someone has created an app which polls the API regularly when the results are due. Please do not use this strategy, or any loops which break the Terms of Service. The app is now blocked.

  • Drivers and Constructors for 2023

    I’ve added a provisional schedule for 2023 and some ‘zero point’ standings which will yield lists of drivers and constructors using the following URLs: http://ergast.com/api/f1/2023/driverStandings http://ergast.com/api/f1/2023/constructorStandings Unfortunately, there isn’t an easy way to associate drivers with constructors until after the first race due to the structure of the database (the driver/constructor relationships are established by […]

  • Updated Entity Relationship Diagram

    The Ergast database Entity Relationship Diagram and the Database User Guide have been updated to include the new sprint results table and the additional session schedule information in the races table. Feedback welcome.

  • Enhanced Schedule Data

    This year the race schedule will include information about all the race sessions e.g. FP 1-3, qualifying and sprint races. In general, dates will be provided for all sessions but session times may be missing until they have been confirmed. Keeping the schedule up to date can be challenging, so if you see changes reported […]

  • Sprint Qualifying Results

    Sprint qualifying results will be properly supported during the 2022 season and data for the sprint races in 2021 has been added retrospectively. For details of the new API method and response format see the documentation page. Feedback between now and the beginning of the season would be very welcome. Note that the sprint qualifying […]

  • Provisional Schedule for 2022

    I’ve added a provisional schedule for 2022 and some ‘zero point’ standings which will yield provisional lists of drivers and constructors using the following URLs: http://ergast.com/api/f1/2022/driverStandings http://ergast.com/api/f1/2022/constructorStandings Unfortunately, there isn’t an easy way to associate drivers with constructors until after the first race due to the structure of the database (the driver/constructor relationships are established […]

  • Temporary blocking for rate violations

    FYI I’ve had to introduce an automatic process for blocking users who violate the rate limits specified in the Terms & Conditions. This is because of a rogue app in circulation which is spamming the API. Unfortunately, this might catch developers working on app development – when the real concern is apps published and distributed […]

  • Python requests has now been unblocked

    Python requests has now been unblocked as the rogue Python app has been identified and an alternative approach has been found to protect the API server. Apologies for anyone adversely affected by the temporary block.

  • Python requests is currently blocked!

    Due to a Python app breaking the Terms and Conditions by sending a deluge of requests I have blocked requests with the user agent strings: “python-requests/2.26.0” “python-requests/2.25.1” Apologies if you’re affected. You can circumvent the block by setting a custom user agent string but please check first that your app is not calling the API […]

  • Python App Issue

    If you’ve published a Python app or wrapper recently would you please check that you are conforming to the rules stated in the Terms and Conditions – specifically the rules concerning calling the API in a loop. The site is currently experiencing very heavy traffic from a Python app where each instance is repeatedly making […]

  • Database User Guide

    As an increasing number of users are working with the database dumps rather than with the API I’ve added a Database User Guide to the information on the Database Images page. Feedback would be very welcome.

  • Entity Relationship Diagram

    Following a user request I’ve created a Entity Relationship Diagram describing the internal structure of the Ergast database. I’ve also added a file providing the MySQL table definitions in case people need them. These are both available from the Database Images page.

  • Provisional 2021 Drivers and Constructors

    Using a similar approach to last year, ‘zero point’ standings have been added which will yield provisional lists of drivers and constructors: http://ergast.com/api/f1/2021/driverStandings http://ergast.com/api/f1/2021/constructorStandings Unfortunately, there isn’t an easy way to associate drivers with constructors until after the first race due to the structure of the database.

  • Lost emails

    Apologies to anyone who sent an email in late November / early December and didn’t get a reply. The site was moved to a new server and a chunk of email went missing. I’m a bit clueless about email servers :-/

  • Provisional 2020 Drivers and Constructors

    Using a similar approach to last year, ‘zero point’ standings have been added which will yield provisional lists of drivers and constructors: http://ergast.com/api/f1/2020/driverStandings http://ergast.com/api/f1/2020/constructorStandings Unfortunately, there isn’t an easy way to associate drivers with constructors until after the first race due to the structure of the database.

  • Column Headers in CSV Files

    Following requests from several users, the CSV files published after each race now include the column headers on the first line of each file. These headers match the field names in the database tables.

  • Provisional 2019 Drivers and Constructors

    In previous years, driver and constructor listings have not been available until after the results for the first race become available. This year, ‘zero point’ standings have been added which will yield provisional lists of drivers and constructors: http://ergast.com/api/f1/2019/driverStandings http://ergast.com/api/f1/2019/constructorStandings

  • PostgreSQL and CSV Support

    Following a number of requests, the database image is now available in a PostgreSQL compatible data dump and as set of CSV files. These are updated after each race and following any corrections. See the Database Images page for details.

  • Ergast runtime using Docker

    By: tonyh Building on the release of the open source runtime, which provides the code required to run a version of the API on your own server using an Ergast database image, the runtime code repository has been updated to include a configuration script that can be used to launch the runtime and a database server […]

  • HTTPS support

    After requests from several users I’ve added support for HTTPS across the API. Let me know if you encounter any problems using it.

  • Open source runtime

    Following several requests, the API runtime has been released on GitHub, under the Apache 2.0 open-source license. https://github.com/jcnewell/ergast-f1-api This allows people to deploy their own servers using an Ergast database image. Hopefully, contributors may also improve the code and develop additional features!

  • Lap time data for 1996 onwards

    A kind contributor has provided additional lap time data from 1996 up to the end of the 2010 season, where the data previously started. This provides a total of 20 years worth of lap time data for you to analyse! The missing lap times for the Brazilian Grand Prix in 2014 have also been added. […]

  • Formula E series support

    Ergast is pleased to announce support for the new FIA Formula E Championship on an experimental basis throughout the first season of the new series. URLs are identical to those required for Formula One except that the series identifier changes to "fe" e.g. http://ergast.com/api/fe/current/last/results Currently there is no data for fastest laps, lap times or […]

  • Regular database image updates

    Following a number of requests, an updated Ergast MySQL database image is now available after each race, rather than at the end of the season. Check the date on the download page if you want the most recent version.

  • 2014 Season

    This is a post to confirm that the API will continue throughout 2014 and will track the results as they become available. The only significant change this year is the addition of the permanent driver numbers. Note that the “current” shortcut refers to 2013 until after the first race of the new season. Standings and […]

  • Revised database image

    The database image issued at the end of the 2013 season has been revised as the source of some character encoding problems has been identified. If you have used the earlier version you may need to re-import data using the new image. The character encoding should now always be set to “utf8”.

  • Permanent Driver Numbers

    Drivers participating in the 2014 season onwards now have a permanent driver number. For these drivers there is a new PermanentNumber field in the Driver element. However, the value may sometimes differ from the value of the existing position attribute in the Result and QualifyingResult elements. This will occur in earlier seasons or where the […]

  • Updated Database Images

    The 2013 end of season MySQL database dump has been updated to take account of some recent corrections. There is also now an ANSI compatible version, which may be helpful for converting to other SQL formats such as SQLite. Both of these are available here: http://ergast.com/mrd/db

Got any book recommendations?