Formula 1 UOF API score information

In-running statistics for Formula 1 races are provided via the summary endpoint in the Unified Odds API.

The<sport_event_status> element inlcludes the attribute period_of_leader indicating the current lap of the leading driver.

For each driver the following statistics are available:

  • position Reflecting the position of a driver (Integer).

  • time (Optional) Reflecting the time-difference to the leader in the format +mm:ss.SSS (String). Please note: For the leader the value reflects his entire race time in the format HH:mm:ss.SSS. If a driver retires, this attribute won't be exposed anymore, but the retired_in_lap attribute will be added instead.

  • finished_laps (Optional) Reflecting the number of laps which a specific driver has finished (Integer).

  • fastest_lap Reflecting the fastest lap of a specific driver in the format mm:ss.SSS (String).

  • no_pitstops Reflecting the number of pitstops made by a specific driver (Integer).

  • no_overtakings Reflecting the number of overtakings by a driver according to our sports betting rules (Integer).

  • retired_in_lap (Optional) Reflecting the lap in which a specific driver has retired (Integer).

The mentioned statistics are exposed for all competitors within multiple <result> elements (key value pairs):

<sport_event_status status="ended" period_of_leader="52">
    <results>
        <competitor id="sr:competitor:{id}">
            <result value="4" type="position"/>
            <result value="52" type="finished_laps"/>
            <result value="1" type="no_pitstops"/>
            <result value="2" type="no_overtakings"/>
            <result value="01:29.482" type="fastest_lap"/>
            <result value="+00:19.650" type="time"/>
        </competitor>
...
        <competitor id="sr:competitor:{id}">
            <result value="20" type="position"/>
            <result value="0" type="no_pitstops"/>
            <result value="0" type="no_overtakings"/>
            <result value="1" type="retired_in_lap"/>
        </competitor>
    </results>
</sport_event_status>

Additional attributes within the summary endpoint explained: <sport_event_status>

  • period_of_leader Reflecting the current lap of the leader in the race.

  • status Possible values: not_started, live, ended, unknown.

API call:

api.betradar.com/v1/sports/en/sport_events/sr:stage:{id}/summary.xml
Example Response
<race_summary generated_at="2021-02-24T09:28:24.691+00:00" xsi:schemaLocation="http://schemas.sportradar.com/sportsapi/v1/unified http://schemas.sportradar.com/bsa/unified/v1/xml/endpoints/unified/race_summary.xsd" xmlns="http://schemas.sportradar.com/sportsapi/v1/unified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <sport_event id="sr:stage:12345678" name="Race" type="child" stage_type="race" scheduled="2021-02-12T14:55:20+00:00" scheduled_end="2021-02-12T16:55:20+00:00">
    <parent id="sr:stage:550989" name="British Grand Prix 2020" type="parent" stage_type="event"/>
    <tournament id="sr:stage:547803" name="Formula 1 2020" scheduled="2020-03-13T01:00:00+00:00" scheduled_end="2021-02-15T03:23:50+00:00">
      <sport id="sr:sport:40" name="Formula 1"/>
      <category id="sr:category:36" name="Formula 1"/>
    </tournament>
    <competitors>
      <competitor id="sr:competitor:4538" name="Raikkonen, Kimi" abbreviation="RAI"/>
      <competitor id="sr:competitor:7135" name="Hamilton, Lewis" abbreviation="HAM"/>
      <competitor id="sr:competitor:7610" name="Vettel, Sebastian" abbreviation="VET"/>
      <competitor id="sr:competitor:37294" name="Grosjean, Romain" abbreviation="GRO"/>
      <competitor id="sr:competitor:39412" name="Hulkenberg, Nico" abbreviation="HUL"/>
      <competitor id="sr:competitor:41600" name="Bottas, Valtteri" abbreviation="BOT"/>
      <competitor id="sr:competitor:41603" name="Ricciardo, Daniel" abbreviation="RIC"/>
      <competitor id="sr:competitor:131762" name="Kvyat, Daniil" abbreviation="KVY"/>
      <competitor id="sr:competitor:135592" name="Magnussen, Kevin" abbreviation="MAG"/>
      <competitor id="sr:competitor:178318" name="Verstappen, Max" abbreviation="VER"/>
      <competitor id="sr:competitor:184751" name="Ocon, Esteban" abbreviation="OCO"/>
      <competitor id="sr:competitor:189029" name="Sainz Jr, Carlos" abbreviation="SAI"/>
      <competitor id="sr:competitor:222584" name="Giovinazzi, Antonio" abbreviation="GIO"/>
      <competitor id="sr:competitor:269471" name="Leclerc, Charles" abbreviation="LEC"/>
      <competitor id="sr:competitor:302866" name="Stroll, Lance" abbreviation="STR"/>
      <competitor id="sr:competitor:381362" name="Gasly, Pierre" abbreviation="GAS"/>
      <competitor id="sr:competitor:391432" name="Russell, George" abbreviation="RUS"/>
      <competitor id="sr:competitor:447677" name="Latifi, Nicholas" abbreviation="LAT"/>
      <competitor id="sr:competitor:495898" name="Norris, Lando" abbreviation="NOR"/>
      <competitor id="sr:competitor:522994" name="Albon, Alexander" abbreviation="ALB"/>
    </competitors>
  </sport_event>
  <sport_event_status status="ended" winner_id="sr:competitor:7135" period_of_leader="52">
    <results>
      <competitor id="sr:competitor:7135">
        <result value="1" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:29.238" type="fastest_lap"/>
        <result value="01:28:01.283" type="time"/>
      </competitor>
      <competitor id="sr:competitor:178318">
        <result value="2" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="2" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:27.097" type="fastest_lap"/>
        <result value="+00:05.856" type="time"/>
      </competitor>
      <competitor id="sr:competitor:269471">
        <result value="3" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:29.813" type="fastest_lap"/>
        <result value="+00:18.474" type="time"/>
      </competitor>
      <competitor id="sr:competitor:41603">
        <result value="4" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="2" type="no_overtakings"/>
        <result value="01:29.482" type="fastest_lap"/>
        <result value="+00:19.650" type="time"/>
      </competitor>
      <competitor id="sr:competitor:495898">
        <result value="5" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="2" type="no_overtakings"/>
        <result value="01:30.058" type="fastest_lap"/>
        <result value="+00:22.277" type="time"/>
      </competitor>
      <competitor id="sr:competitor:184751">
        <result value="6" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="2" type="no_overtakings"/>
        <result value="01:29.491" type="fastest_lap"/>
        <result value="+00:26.937" type="time"/>
      </competitor>
      <competitor id="sr:competitor:381362">
        <result value="7" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="3" type="no_overtakings"/>
        <result value="01:29.603" type="fastest_lap"/>
        <result value="+00:31.188" type="time"/>
      </competitor>
      <competitor id="sr:competitor:522994">
        <result value="8" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="2" type="no_pitstops"/>
        <result value="7" type="no_overtakings"/>
        <result value="01:28.689" type="fastest_lap"/>
        <result value="+00:32.670" type="time"/>
      </competitor>
      <competitor id="sr:competitor:302866">
        <result value="9" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:30.475" type="fastest_lap"/>
        <result value="+00:37.311" type="time"/>
      </competitor>
      <competitor id="sr:competitor:7610">
        <result value="10" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:30.537" type="fastest_lap"/>
        <result value="+00:41.857" type="time"/>
      </competitor>
      <competitor id="sr:competitor:41600">
        <result value="11" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="2" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:29.265" type="fastest_lap"/>
        <result value="+00:42.167" type="time"/>
      </competitor>
      <competitor id="sr:competitor:391432">
        <result value="12" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="1" type="no_overtakings"/>
        <result value="01:30.862" type="fastest_lap"/>
        <result value="+00:52.004" type="time"/>
      </competitor>
      <competitor id="sr:competitor:189029">
        <result value="13" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="2" type="no_pitstops"/>
        <result value="1" type="no_overtakings"/>
        <result value="01:29.948" type="fastest_lap"/>
        <result value="+00:53.370" type="time"/>
      </competitor>
      <competitor id="sr:competitor:222584">
        <result value="14" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="01:30.977" type="fastest_lap"/>
        <result value="+00:54.205" type="time"/>
      </competitor>
      <competitor id="sr:competitor:447677">
        <result value="15" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="1" type="no_overtakings"/>
        <result value="01:30.501" type="fastest_lap"/>
        <result value="+00:54.549" type="time"/>
      </competitor>
      <competitor id="sr:competitor:37294">
        <result value="16" type="position"/>
        <result value="52" type="finished_laps"/>
        <result value="1" type="no_pitstops"/>
        <result value="1" type="no_overtakings"/>
        <result value="01:29.782" type="fastest_lap"/>
        <result value="+00:55.050" type="time"/>
      </competitor>
      <competitor id="sr:competitor:4538">
        <result value="17" type="position"/>
        <result value="51" type="finished_laps"/>
        <result value="2" type="no_pitstops"/>
        <result value="2" type="no_overtakings"/>
        <result value="01:29.973" type="fastest_lap"/>
        <result value="+02:10.668" type="time"/>
      </competitor>
      <competitor id="sr:competitor:131762">
        <result value="18" type="position"/>
        <result value="0" type="no_pitstops"/>
        <result value="1" type="no_overtakings"/>
        <result value="01:32.443" type="fastest_lap"/>
        <result value="12" type="retired_in_lap"/>
      </competitor>
      <competitor id="sr:competitor:135592">
        <result value="19" type="position"/>
        <result value="0" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="1" type="retired_in_lap"/>
      </competitor>
      <competitor id="sr:competitor:39412">
        <result value="20" type="position"/>
        <result value="0" type="no_pitstops"/>
        <result value="0" type="no_overtakings"/>
        <result value="1" type="retired_in_lap"/>
      </competitor>
    </results>
  </sport_event_status>
</race_summary>

An additional API endpoint (period_summary.xml) is available to fetch lap statistics such as:

  • time (Optional) Reflecting the lap time of a specific driver (String) If a driver retired, this attribute won't be exposed anymore, but the retired_in_lap attribute will be added instead. Please note: The lap time is updated after the lap is finished.

  • pitstop (Optional) Indicating if a driver was taking a pitstop in the specific lap (boolean). If a driver retired, this attribute won't be exposed anymore, but the retired_in_lap attribute will be added instead. Please note: The lap where the driver enters the pit is considered valid.

  • no_overtakings (Optional) Reflecting the number of overtakings by a driver within the specified lap according to our sports betting rules (Integer). If a driver retired, this attribute won't be exposed anymore, but the retired_in_lap attribute will be added instead.

  • retired_in_lap (Optional) Reflecting the lap in which a specific driver has retired (Integer).

<period_summary xmlns="http://schemas.sportradar.com/sportsapi/v1/unified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" generated_at="2020-12-28T11:09:20+00:00" xsi:schemaLocation="http://schemas.sportradar.com/sportsapi/v1/unified http://schemas.sportradar.com/bsa/unified/v1/xml/endpoints/unified/period_summary.xsd">
    <sport_event id="sr:stage:630553" name="Race" type="child" scheduled="2020-12-13T13:10:00+00:00" scheduled_end="2020-12-13T15:10:00+00:00" stage_type="race"/>
        <period_statuses>
            <period_status number="1" type="lap" status="completed">
                <competitor id="sr:competitor:{id}">
                    <result value="02:15.827" type="time"/>
                    <result value="false" type="pitstop"/>
                    <result value="0" type="no_overtakings"/>
                </competitor>
                  ...
                <competitor id="sr:competitor:{id}">
                    <result value="1" type="retired_in_lap"/>
                </competitor>
            </period_status>
             ...
        </period_statuses>  
</period_summary>

Additional attributes within the period_summary endpoint explained: <period_status>

  • type Possible values: lap

  • status Possible values: not_started, started, completed.

  • number Indicating the number of the specific lap.

API call and related query parameters:

api.betradar.com/v1/sports/en/sport_events/sr:stage:{id}/period_summary.xml?competitors=sr:competitor:{id}&competitors=sr:competitor:{id}&periods=2&periods=3&periods=4

Note

As query parameters you can insert multiple competitors & multiple periods reflecting the laps . If you don't provide a query parameter, the response will include all competitors and all laps of a race.

Example response for all drivers and for selectively lap 2:
<period_summary generated_at="2021-02-24T11:08:58.789+00:00" xsi:schemaLocation="http://schemas.sportradar.com/sportsapi/v1/unified http://schemas.sportradar.com/bsa/unified/v1/xml/endpoints/unified/period_summary.xsd" xmlns="http://schemas.sportradar.com/sportsapi/v1/unified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <sport_event id="sr:stage:12345678" name="Race" type="child" stage_type="race" scheduled="2021-02-12T14:55:20+00:00" scheduled_end="2021-02-12T16:55:20+00:00"/>
  <period_statuses>
    <period_status number="2" type="lap" status="completed">
      <competitor id="sr:competitor:135592">
        <result value="1" type="retired_in_lap"/>
      </competitor>
      <competitor id="sr:competitor:447677">
        <result value="02:18.757" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:495898">
        <result value="02:09.723" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:269471">
        <result value="02:07.127" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:184751">
        <result value="02:11.306" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:189029">
        <result value="02:08.406" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:7135">
        <result value="02:06.445" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:381362">
        <result value="02:12.616" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:41603">
        <result value="02:08.887" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:39412">
        <result value="1" type="retired_in_lap"/>
      </competitor>
      <competitor id="sr:competitor:7610">
        <result value="02:11.969" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:4538">
        <result value="02:17.416" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:178318">
        <result value="02:06.326" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:37294">
        <result value="02:16.618" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:522994">
        <result value="02:12.634" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:391432">
        <result value="02:17.923" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:222584">
        <result value="02:14.228" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:302866">
        <result value="02:10.286" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:41600">
        <result value="02:06.276" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
      <competitor id="sr:competitor:131762">
        <result value="02:15.827" type="time"/>
        <result value="false" type="pitstop"/>
        <result value="0" type="no_overtakings"/>
      </competitor>
    </period_status>
  </period_statuses>
</period_summary>

Last updated

Was this helpful?