[Deprecated] UOF - Fixtures in the API
Fixtures describe static or semi-static information about matches and races. There are multiple endpoints for fixtures, all found at the fixture.xml or schedule.xml endpoints:
HTTP
Endpoint
Description
GET
sports/(lang)/fixtures/changes.xml
Lists the ids of sport-events where changes were made the last 24 hours.
GET
sports/(lang)/sport_events/(id)/fixture.xml
Lists the fixtures for a specified event (event = match, game, race, outright).
GET
sports/(lang)/schedules/(date)/schedule.xml
Lists all events for a specific day.
GET
sports/(lang)/schedules/live/schedule.xml
Lists all currently live events.
GET
sports/(lang)/scheduleds/pre/schedule.xml?start=(x)&limit=(y)
Lists almost all events we are offering prematch odds for. This endpoint can be used during early startup to obtain almost all fixtures. This endpoint is one of the few that uses pagination.
GET
sports/(lang)/fixtures/changes.xml
Lists all fixtures that have changed during the last 24 hours. This can be used to only update the sport events that were updated since the last time you checked (to avoid polling and reprocessing the complete list).
GET
sports/(lang)/tournaments/(id)/schedule.xml
Lists all events for a particular season of a league/competition.
Attributes
All relevant elements and attributes found inside the fixture.xml endpoint in the API.
Name
Description
id
Unique identifier of this event (match, game, race, outright).
start_time
When the specific match will start.
start_time_confirmed
If true, the start time is scheduled and confirmed (the event can still become delayed) otherwise, it could be a best guess.
start_time_tbd
Possible values: True or false
This is only set if the starting time or date is not confirmed. If we know the date but not the starting time, this attribute is set to "True".
next_live_time
When live odds should be offered next time (i.e. start of match, or when a match will start again after suspension). At this point you will typically receive an Odds Change message with <sport_event_status reporting="1">.
liveodds
Indicates whether this match is booked by you for livecoverage (“booked”) bookable (“bookable”), is buyable (“buyable”) or not available (“not_available”).
status
Indicates whether this match is not started yet, live, or finished ("not_started", "live", "ended", "closed", “cancelled", “postponed”, “suspended”, “interrupted”, “delayed”). When it is ended, the results may not have been fully confirmed yet. When it is closed Betradar has confirmed the results.
competitors
A listing of the competitors in the event. For team-based matches the competitors are two teams. For a singles match in Tennis it is two tennis players etc.Get additional info about the competitor in a separate request to /sports/<lang>/competitors/<id>/profile.xml
venue
Where the event is taking place. Also see /sports/<lang>/venues/<id>/summary.xml
venue.map_coordinates
The GPS coordinates of the venue (comma separated)
tv_channels
A list of TV channels.
delayed_info
Time and reason for delays to this event.
extra_info
Within this element, sport-specific key-value pairs are added to provide sport-specific details about the event.
coverage_info
Information about how much information Betradar has, or will collect, for this particular sport event.
product_info
In this element, all data that is Betradar specific is kept.
product_info.info
A set of key-value elements describing various Betradar properties (see table below).
product_info.links
Within this element Betradar has links to various pages within Betradar’s hosted solution offering for this particular event.
reference_id
Additional ids for competitors. The reference_id name can be “betradar” and the id is then the primary id used in the LCOO Feeds. If the name is BetradarCtrl the id is the id as seen in BetradarCtrl
tournament_round.betradar_id
Id used in the previously existing LCoO Feeds for this tournament. (Note that different tournament rounds could have different LCoO Feed Ids)
category.country_code
If category is a country type category there will be a country code which is the three-letter ISO country-code
scheduled
When the specific match will start (identical to start_time attribute).
XML example
<fixtures_fixture>
<fixture id="sr:match:8696826" scheduled="2016-10-31T18:00:00+00:00" start_time_tbd="false" next_live_time="2016-10-31T18:00:00+00:00" start_time="2016-10-31T18:00:00+00:00" start_time_confirmed="true">
<tournament_round betradar_id="4301" type="group" number="25"/>
<season id="sr:season:12346" name="Div 1, Sodra 2016" start_date="2016-04-16" end_date="2016-11-05" year="2016" tournament_id="sr:tournament:68"/>
<tournament id="sr:tournament:68" name="Div 1 Sodra">
<sport id="sr:sport:1" name="Soccer"/>
<category id="sr:category:9" name="Sweden" country_code="SWE"/>
</tournament>
<competitors>
<competitor id="sr:competitor:1860" name="IK Oddevold" country="Sweden" country_code="SWE" abbreviation="ODD" qualifier="home">
<reference_ids>
<reference_id name="betradar" value="1449434"/>
</reference_ids>
</competitor>
<competitor id="sr:competitor:22356" name="Tvaakers IF" country="Sweden" country_code="SWE" abbreviation="TVA" qualifier="away">
<reference_ids>
<reference_id name="betradar" value="7281378"/>
</reference_ids>
</competitor>
</competitors>
<extra_info>
<info key="neutral_ground" value="false"/>
<info key="period_length" value="45"/>
<info key="overtime_length" value="15"/>
</extra_info>
<coverage_info level="bronze" live_coverage="false">
<coverage includes="basic_score"/>
</coverage_info>
<product_info>
<is_in_hosted_statistics/>
</product_info>
<reference_ids>
<reference_id name="BetradarCtrl" value="11428313"/>
</reference_ids>
</fixture>
</fixtures_fixture>
Extra info values
Information and values found inside of the extra_info attribute in fixtures.xml in the API.
Name
Type
Description
neutral_ground
boolean
True if the match is taking place on neutral ground.
auto_traded
boolean
Set to true if the match is auto-traded. For auto-traded matches odds are solely generated by a mathematical odds model and live scoring. Any market monitoring and trader interaction is not cosidered
draw_possible
boolean
Set if a draw is possible
no_advantage_scoring
boolean
Only present and set to true if no advantage scoring is used. In this tennis rule mode, the first player to get 4 points wins the game
best_of
integer
The number of sets (or equivalent) that the match maximum will have. Typically the winner needs best_of/2+1 sets to win
set_limit
integer
Number of points in a set (max)
period_length
integer
Number of minutes in a period
overtime_length
integer
Number of minutes for each overtime period
super_tie_break
integer
Number of points required to win match deciding tiebreak
coverage_source
enumeration (venue, TV)
How are the live results obtained (directly from the ventue, TV, etc.)
surface
enumeration
Possible values:
hard_court, grass, sand, red_clay, green_clay, hardcourt_outdoor, carpet_indoor, synthetic_indoor, synthetic_outdoor, synthetic_grass, hardcourt_indoor, red clay indoor
best_of_legs
integer
Number of legs. In darts a single game is called a leg. You win a match by winning a number of legs. In some competitions a match consists of sets where each set consist of legs (in such cases both best_of and best_of_legs are typically available)
max_number_of_extra_innings
integer
Shows the maximum number of extra innings possible.
Possible values:
Positive integer or "unlimited"
XML example
<extra_info>
<info key="neutral_ground" value="false"/>
<info key="period_length" value="12"/>
<info key="overtime_length" value="5"/>
<info key="coverage_source" value="venue"/>
<info key="extended_live_markets_offered" value="false"/>
</extra_info>
Reference IDs
Displays what producer reference this fixture is using, displayed inside the reference_id attribute
Name
Description
betradar
The ID used in the Betradar LCoO Feed
betradarctrl
The ID used in BetradarCtrl
rotation_number
If the reference ID name is a rotation_number, the ID is a rotation number. See the concept section for details on rotation numbers.
aams
AAMS (Amministrazione Autonoma dei Monopoli di Stato) – Italian betting regulator.
XML example
<reference_ids> <reference_id name="BetradarCtrl" value="11428313"/></reference_ids>
Betradar product information
Additional information about the fixture found inside the product_info attribute in fixtures.xml.
Name
Description
is_in_live_score
If Betradar has Live Score for this event, this key is present and set to true.
is_in_hosted_statistics
If Betradar has hosted statistics for this event, this key is present.
is_in_live_center_soccer
If this event is a Soccer event and Betradar offers it within the Live Sports Centre Soccer, this key is present and set to true.
is_auto_traded
If this event is not covered by Live Odds operations, this key is present and set to true.
XML example
<product_info> <is_in_hosted_statistics/></product_info>
Competitors
Competitors in the fixture have an id attribute and a name attribute. Competitor IDs that are on the format sr:competitor:XXX
, can typically be looked up individually in the API (competitors/(id)/profile.xml), and may have translations to multiple languages.
Competitors with an id of type “sr:simpleteam:xxx” do not have translations, and are not unique. These are teams that Betradar have created for a one-off match that we cover, that are not part of some tournament/league Betradar normally covers. The name that is in the competitor element can preferably be used to name the team. If the same team competes in another tournament (sr:simpleteam:xxx), the team will be using a different id. Betradar tries to keep the number of competitors of this type to a minimum.
<competitors>
<sport id="sr:sport:1" name="Soccer"/>
<category id="sr:category:17" name="Tournaments"/>
<competitor id="sr:competitor:12345" name="Team1"/>
<competitor id="sr:competitor:11123" name="Team2"/>
</competitors>
For more info, please see Competitor page.
Getting pre-match fixtures at start-up
There is a special endpoint to get almost all fixtures before initiating recovery. This endpoint is designed to significantly reduce the number of API calls required during recovery. The endpoint is also special in that it is one of the few endpoints that uses pagination (i.e. you have to specify a start record and a limit for the number of records to retrieve. The maximum number of records you can retrieve in one call is 1000). The records returned are all sport_events just like the records returned in the daily schedule endpoint. This can be done using the /schedule.xml and /tournament.xml endpoints, and specifying a language ID and date. An example of a sport_event message included scheduled="2016-03-31:
<sport_event id="sr:match:9199415" scheduled="2016-03-31T09:45:00+00:00" start_time_tbd="false" status="closed" next_live_time="2016-03-31T09:45:00+00:00">
<tournament_round type="cup" name="round_of_16"/>
<season id="sr:season:12801" name="India Open (SS) 2016" start_date="2016-03-28" end_date="2016-04-04" year="2016" tournament_id="sr:tournament:1277"/>
<tournament id="sr:tournament:1277" name="India Open (SS)">
<sport id="sr:sport:31" name="Badminton"/>
<category id="sr:category:259" name="International"/>
</tournament>
<competitors>
<competitor id="sr:competitor:87528" name="Matsutomo M / Takahashi A" abbreviation="M/T" qualifier="home">
<reference_ids>
<reference_id name="betradar" value="5261571"/>
</reference_ids>
</competitor>
<competitor id="sr:competitor:101271" name="Stoeva G / Stoeva S" abbreviation="S/S" qualifier="away">
<reference_ids>
<reference_id name="betradar" value="6170039"/>
</reference_ids>
</competitor>
</competitors>
</sport_event>
Fixture change history
We provide a date and fixture change history for all matches, available in the fixtures/changes.xml endpoint in the self-service documentation HERE.
XML example
<fixture>
<scheduled_start_time_changes>
<scheduled_start_time_change old_time="2018-03-23T11:00:00+00:00" new_time="2018-09-07T10:00:00+00:00" changed_at="2018-03-14T00:07:23+00:00"/>
</scheduled_start_time_changes>
</fixture>
Last updated
Was this helpful?