Frequently asked questions for Global Ice Hockey v2
Click on the categories below or browse questions on the right panel.
Categories
.
Coverage
What leagues or tournaments do you cover for hockey?
You can find all the leagues we cover, as well as a breakdown of data offered, at our Coverage Matrix.
How do I find out the coverage for a particular match?
Find the node for coverage within the Summaries and Timeline endpoints. Coverage nodes have two types: season level and sport_event level.
The season level describes data coverage you can expect for matches involved in that given season.
The sport_event level describes the data depth of a specific match within the group and season.
Note: There are occasions when the sport_event coverage can vary from the anticipated season coverage. This node exists to highlight that instance and assist in handling any discrepancies.
Why do different groups have coverage information for a tournament?
The notion of “groups” is versatile and is used to distinguish between playoffs, and our competition structures and is therefore necessary to describe coverage at a group level for consistency. Generally, however, within a competition in Ice Hockey, there will be no difference between competition coverage between conferences.
How are “Live” endpoints handled in the API?
Sport Events appear in the feed 10 minutes before the scheduled start time and are removed 10 minutes after the Sport Event is ended. Live endpoints include: Live Summaries, Live Timelines, and Live Timelines Delta.
How will a sport event behave when it is not covered with live scores?
When a sport_event is not covered live, the status and match_status will remain as not_started until results are entered post-match.
<sport_event_status status="not_started" match_status="not_started"/>What level of coverage is offered for friendly competitions?
Friendly competitions are handled uniquely, with coverage being set on a case-by-case basis. Selected matches will be scouted and will therefore have live coverage. We would suggest checking sport_event_properties within each sport_event to understand the coverage set for a particular match.
Integration
How can I find the values for various enum data points within the API?
Many enum values are listed in the FAQ below. For the most up-to-date values, please see the Schema
section of the OpenAPI specification here: here.
What format are date fields presented in?
Date values are presented in the ISO 8601 standard format.
Timestamp fields are in UTC. These could include scheduled start times or play-by-play event timestamps. Examples: scheduled="2024-02-11T23:30:00+00:00", created_at="2024-02-11T23:43:20+00:00"
Date-only fields reflect local league convention and are not UTC-adjusted. These could include season start dates and birth dates. Examples: start_date="2024-08-16", date_of_birth="1984-09-22"
How do I locate the TTL (Time to Live)/cache on an API endpoint?
The cache (in seconds) can be accessed in the returned header information on each RESTful API call, under cache-control.
ex. cache-control: max-age=1, public, s-maxage=1 or
cache-control: public, must-revalidate, max-age=120
Sport Event Statuses
What are the valid sport event status (sport_event_status – status) values?
sport_event_status – status) values?not_started– The match is scheduled to be playedstarted– The match has begunpostponed– The match has been postponed to a future datesuspended– The match has been suspendedcancelled– The match has been cancelled and will not be playeddelayed– The match has been temporarily delayed and will be continuedlive– The match is currently in progressinterrupted- The match began, but coverage has stopped for a short time. Note that match scores may not be updated during this period, the last recorded match score will be displayed insteadended– The match is overclosed– The match results have been confirmed
What are the valid match status (sport_event_status – match_status) values?
sport_event_status – match_status) values?not_started– The match is scheduled to be played1st_period– The match is in the first period2nd_period– The match is in the second period3rd_period– The match is in the third periodstarted- The match has begunabandoned– The match has been abandonedaet– The match is after extra timeap– The match is in after penaltiesended– The match is overpostponed– The match has been postponed to a future datecancelled– The match has been cancelled and will not be playedovertime– The match is in overtimepenalties– Penalties are ongoing1st_pause– The match is in a break after period 12nd_pause– The match is in a break after period 2awaiting_extra– Waiting on referee to announce extra timeawaiting_penalties– Waiting for announcement of penaltiesinterrupted– The match has been interruptedpause– The match is pausedstart_delayed– The match has been temporarily delayed and will be continuedawaiting_extra_time– Waiting on referee to announce extra time
What are the possible values for break_name?
break_name?1st_pause2nd_pauseawaiting_extraawaiting_penalties
Event Types
What are the possible event types logged?
match_startedperiod_startedperiod_scorescore_change(goal_scorer,primary_assist,secondary_assist)suspensionbreak_startmatch_ended
Player Positions
What are the possible player positions in the feeds?
F- ForwardD- DefensemanG– GoalieF-D– Forward/DefensemanLW– Left WingRW– Right WingC- Center
What are the possible values for player type?
scorerassistsecondary_assist
Why does starter always list as true in the Lineups endpoints?
starter always list as true in the Lineups endpoints?We do not currently differentiate between starter and played in the Global Ice Hockey API.
Pagination
How can I tell if an endpoint is paginated?
To determine if a RESTful API endpoint uses pagination, visit the endpoint's page on our developer portal, its OpenAPI specification, or check the X-Result and X-Max-Results headers in the API response.
X-Result: This header indicates the number of items returned for this request.X-Max-Results: This header specifies the total number of items available for a specified request.
If both headers are present and the response data is truncated (i.e., X-Result value is less than X-Max-Results), you can infer that pagination is in use. To fetch the remaining data, make use of the limit and start query string parameters.
In the below Season Summary response, the header specifies 100 sports events are returned (x-result), but 381 sport events are available (x-max-results). Make an additional API request – such as appending &start=100 to the end of your call – to obtain additional events.
Response Header Sample
< HTTP/2 200
< content-type: application/json
< content-length: 1725369
< date: Wed, 13 Nov 2024 21:06:18 GMT
< x-amzn-requestid: c10fe405-ce81-46fb-a3db-38d153dd2a6c
< x-offset: 0
< x-amz-apigw-id: BNAvVGCUliAEKJA=
< cache-control: max-age=300, public, s-maxage=300
< x-result: 100
< etag: "341dc78002bc578c62a6878519ba0404"
< x-max-results: 381
< link: <https://schemas.sportradar.com/sportsapi/soccer/v4/schemas/season_summaries.json#>; rel="describedBy"
< x-amzn-trace-id: Root=1-673514c8-7a887f81636af0110ecce2d3
< x-amzn-remapped-date: Wed, 13 Nov 2024 21:06:17 GMT
< vary: Accept-Encoding
< x-cache: Hit from cloudfront
< via: 1.1 f2f0cb8191da3bf07a9ca31ece94ab68.cloudfront.net (CloudFront)
< x-amz-cf-pop: IAD61-P4
< x-amz-cf-id: 1cyji-XQZuBlAUsR8QoHdNLWD-jn1HvBC-ShaCMhXl5mMDiFTDRVyQ==
< age: 16Why can't I find a particular match in the Daily Summaries, Season Summaries or Sport Events Updated endpoints?
These endpoints support pagination and return a select number of results by default. To return more matches, include an additional query string parameter. Visit an endpoint page for minimum and maximum result values.
Probabilities
What is the probabilities package?
The probabilities package is an add-on set of feeds that are an extension of the Season Probabilities feed in the main package (which already provides pre-match probabilities for the sport event winner market).
The main features of the Probabilities extension are: Live Probabilities that update throughout game, Season Outright Probabilities for the Tournament Winner market, and Live Probabilities Coverage indicator for the next 24 hours.
What are markets and what are the different markets?
Markets are something you can bet on, for which we provide probabilities. Over time we intend to provide more and more markets in the API.
Currently we provide 3-way (home win, away win, or draw) and Next Goal (which team will score the next goal) markets.
What are the valid outcomes for probabilities?
home_team_winneraway_team_winnerdrawnone
Is there Live Probability coverage for every game you cover in the Global Ice Hockey API?
Live Probability coverage depends on a number of factors and we can’t guarantee that every game will be covered for any given league, however, Sportradar aims to cover close to 100% of games from the following Tier 1 league: National Hockey League (NHL) – USA
Can I utilize the Probabilities extension if I license the Sportradar NHL API?
If you have a license for our NHL API you can also integrate Live Probabilities by utilizing the ID Mapping feeds available in Global Ice Hockey v2 to connect games between the two products.
Past Season Data
How do I access past seasons results and stats?
Use the Competition Seasons endpoint to locate the season_id for the season you want to access. Use that season_id to interrogate the various seasons endpoints.
Standings / Tournaments
What are the possible standings types I can observe in the Standings endpoint?
totalhomeawayfirst_half_totalfirst_half_homefirst_half_awaysecond_half_totalsecond_half_homesecond_half_away
What are the possible values for cup_round – state in the Season Links feed?
cup_round – state in the Season Links feed?Listed below are the values and definitions for cup_round - state. These can be leveraged to determine the status of a cup round.
empty- A matchup has been created but neither the match details nor the competitors are known.unseeded_fixture- Match details are known but competitors are unknown.partial_seeded- One competitor is known.partial_seeded_fixture- Match details and one competitor are known.seeded- Both competitors are known.seeded_fixture- Match details and both competitors are known.unstarted- Match(es) have been added.on_going- The first match has started.decided- The last match has ended.winner- The winner is known.cancelled– The matchup has been cancelled.
How are group IDs delivered in the stage array with the various types?
With the type of "league" they will have a sr:league prefix.
With the type of "cup" they will have a sr:cup prefix.
Statistics
Why are the shots_on_target incorrect for Finland Liiga?
shots_on_target incorrect for Finland Liiga?At this time, the league does not provide shots on target (for Finland Liiga only). Instead, we provide this data point as a total number of shots.
More questions?Reach out to [email protected] for further assistance.
