Returns detailed game stats at the doubles team or player level
Syntax
https://api.sportradar.com/tennis/{access_level}/{version}/stream/statistics/subscribe?api_key={your_api_key} |
Replace placeholders with the following query parameters:
Parameter | Description |
---|---|
access_level | Defines the access level of your API key as Production (production) or Trial (trial). |
version | Version number of the API you are accessing (Current Version: v3). |
your_api_key | Your API key. |
Optional Query String Parameters
In addition to the URL parameters listed above, you can filter the Statistics information with one or more of the following optional query string parameters.
Optional query string parameters must be added after your API key with an ampersand (&). If you are filtering for more than one result, separate the results with a comma (,) and no spaces.
Replace placeholders with the following query parameters:
Parameter | Description |
---|---|
event_id | Event id expressed as: {event_id}. Example: event_id=point |
format | Format expressed as: {format}. Example: format=json |
sport_event_id | Sport Event Id expressed as: {sport_event_id}. Example: sport_event_id=sr:sport_event:27496678 |
season_id | Season Id expressed as: {season_id}. Example: season_id=sr:season:81932 |
competition_id | Competition Id expressed as: {competition_id}. Example: competition_id=sr:competition:16126 |
Code Samples
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe?api_key={your_api_key}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body
import requests
import json
r = requests.get("https://api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe",
params = {'api_key': 'your_api_key'},
allow_redirects=False)
redirect_url = r.headers['Location']
r = requests.get(redirect_url, stream=True)
for line in r.iter_lines():
# filter out keep-alive new lines
if line:
decoded_line = line.decode('utf-8')
print(json.loads(decoded_line))
curl -L GET 'api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe?api_key={your_api_key}'
Samples with Query String Params
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe?api_key={your_api_key}&format=json&competition_id=sr:competition:16126")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body
import requests
import json
r = requests.get("https://api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe",
params = {'api_key': 'your_api_key', 'format': 'json', 'competition_id': 'sr:competition:16126'},
allow_redirects=False)
redirect_url = r.headers['Location']
r = requests.get(redirect_url, stream=True)
for line in r.iter_lines():
# filter out keep-alive new lines
if line:
decoded_line = line.decode('utf-8')
print(json.loads(decoded_line))
curl -L GET 'api.sportradar.com/tennis/trial/v3/stream/statistics/subscribe?api_key={your_api_key}&format=json&competition_id=sr:competition:16126'
Response Sample
The above commands return json like this.
Data Points
Metadata:
Attribute | Parent Element | Type | Description |
---|---|---|---|
channel | metadata | String | Sport of the stream connection ex. tennis |
competition_id | metadata | String | Unique Id of a competition ex. sr:competition:34630 |
event_id | metadata | String | Description of a push timeline event ex. point or period_score |
format | metadata | String | Format type of the responsejson , xml |
season_id | metadata | String | Unique Id of a season ex. sr:season:121215 |
sport_event_id | metadata | String | Unique Id of a sport event ex. sr:sport_event_id:51950313 |
sport_id | metadata | String | Unique Id of a sport ex. sr:sport:5 |
from | heartbeat | Integer | Unix timestamp of the beginning of a heartbeat message ex. 1722267631 |
to | heartbeat | Integer | Unix timestamp of the end of a heartbeat message ex. 1722267636 |
interval | heartbeat | Integer | Interval of a heartbeat message in seconds |
type | heartbeat | String | Type of heartbeat message ex. events , statistics |
package | heartbeat | String | Package of a heartbeat message ex. tennis-v3 |
Competitor:
Competitors can be a player, a doubles team, or a national team
Attribute | Parent Element | Type | Description |
---|---|---|---|
abbreviation | statistics - competitors | String | Abbreviation for a competitor name ex. PAU (Tommy Paul) or G/M ('Glasspool L / Middelkoop M' doubles team) |
id | statistics - competitors | String | Unique ID for a competitor ex. sr:competitor:138546 |
name | statistics - competitors | String | Name for a competitor ex. Paul, Tommy or Glasspool L / Middelkoop M (doubles team) |
qualifier | statistics - competitors | String | Designation of a competitor for a matchhome , away |
Game State:
Attribute | Parent Element | Type | Description |
---|---|---|---|
advantage | sport_event_status - game_state | String | Signifies the competitor with the advantage in the gamehome , away |
away_score | sport_event_status - game_state | Integer | Score for the away competitor in a game ex. 0 , 15 , 30 , 40 |
home_score | sport_event_status - game_state | Integer | Score for the home competitor in a game ex. 0 , 15 , 30 , 40 |
last_point_result | sport_event_status - game_state | String | Result of the last point in a gameserver_winner , receiver_winner , ace , double_fault |
point_type | sport_event_status - game_state | String | Type of point scoredgame , break , set , match |
serving | sport_event_status - game_state | String | Signifies the competitor currently servinghome , away |
tie_break | sport_event_status - game_state | Boolean | Signifies a match is in a tie break when true |
Sport Event Status:
Attribute | Parent Element | Type | Description |
---|---|---|---|
away_score | sport_event_status | Integer | Total score for the away competitor in a match |
decided_by_fed | sport_event_status | Boolean | Signifies a match result was decided by the federation when true . For example, incomplete due to crowd disruption |
home_score | sport_event_status | Integer | Total score for the home competitor in a match |
match_status | sport_event_status | String | Status within a match (sport event). Provides more detail on the state of a match when live than status ex. not_started , interrupted , 1st_set , walkover See our FAQ for a complete list of statuses and their definitions. |
scount_abandoned | sport_event_status | Boolean | Signifies a match was abandoned by a scout when true |
status | sport_event_status | String | Status of a sport event ex. not_started , live , ended , closed See our FAQ for a complete list of statuses and their definitions. |
winner_id | sport_event_status | String | Unique ID of the match winner ex. sr:competitor:138546 |
winning_reason | sport_event_status | String | Winning reason description for a match ex. walkover |
Period Scores:
Attribute | Parent Element | Type | Description |
---|---|---|---|
away_score | sport_event_status - period_scores | Integer | Away competitor set score |
away_tiebreak_score | sport_event_status - period_scores | Integer | Away competitor tiebreak set score |
home_score | sport_event_status - period_scores | Integer | Home competitor set score |
home_tiebreak_score | sport_event_status - period_scores | Integer | Home competitor tiebreak set score |
number | sport_event_status - period_scores | Integer | Set number |
type | sport_event_status - period_scores | String | Period type ex. set |
Match Stats (Competitor):
See our Statistics FAQ Section for detailed descriptions of our tennis statistics
Attribute | Parent Element | Type | Description |
---|---|---|---|
aces | competitors - statistics | Integer | Number of aces for a competitor in a match |
backhand_errors | competitors - statistics | Integer | Number of backhand errors for a competitor in a match |
backhand_unforced_errors | competitors - statistics | Integer | Number of backhand unforced errors for a competitor in a match |
backhand_winners | competitors - statistics | Integer | Number of backhand winners for a competitor in a match |
breakpoints_won | competitors - statistics | Integer | Number of breakpoints won for a competitor in a match |
double_faults | competitors - statistics | Integer | Number of double faults for a competitor in a match |
drop_shot_unforced_errors | competitors - statistics | Integer | Number of drop shot unforced errors for a competitor in a match |
drop_shot_winners | competitors - statistics | Integer | Number of drop shot winners for a competitor in a match |
first_serve_points_won | competitors - statistics | Integer | Number of first serve points won for a competitor in a match |
first_serve_successful | competitors - statistics | Integer | Number of successful first serves for a competitor in a match |
forehand_errors | competitors - statistics | Integer | Number of forehand errors for a competitor in a match |
forehand_unforced_errors | competitors - statistics | Integer | Number of forehand unforced errors for a competitor in a match |
forehand_winners | competitors - statistics | Integer | Number of forehand winners for a competitor in a match |
games_won | competitors - statistics | Integer | Number of games won for a competitor in a match |
groundstroke_errors | competitors - statistics | Integer | Number of groundstroke errors for a competitor in a match |
groundstroke_unforced_errors | competitors - statistics | Integer | Number of groundstroke unforced errors for a competitor in a match |
groundstroke_winners | competitors - statistics | Integer | Number of groundstroke winners for a competitor in a match |
lob_unforced_errors | competitors - statistics | Integer | Number of lob unforced errors for a competitor in a match |
lob_winners | competitors - statistics | Integer | Number of lob winners for a competitor in a match |
max_games_in_a_row | competitors - statistics | Integer | Longest game win streak for a competitor in a match |
max_points_in_a_row | competitors - statistics | Integer | Longest point win streak for a competitor in a match |
overhead_stroke_errors | competitors - statistics | Integer | Number of overhead errors for a competitor in a match |
overhead_stroke_unforced_errors | competitors - statistics | Integer | Number of overhead unforced errors for a competitor in a match |
overhead_stroke_winners | competitors - statistics | Integer | Number of overhead winners for a competitor in a match |
points_won | competitors - statistics | Integer | Number of points won for a competitor in a match |
points_won_from_last_10 | competitors - statistics | Integer | Number of points won in the last 10 opportunities for a competitor in a match |
return_errors | competitors - statistics | Integer | Number of return errors for a competitor in a match |
return_winners | competitors - statistics | Integer | Number of return winners for a competitor in a match |
second_serve_points_won | competitors - statistics | Integer | Number of second serve points won for a competitor in a match |
second_serve_successful | competitors - statistics | Integer | Number of successful second serves for a competitor in a match |
service_games_won | competitors - statistics | Integer | Number of service games won for a competitor in a match |
service_points_lost | competitors - statistics | Integer | Number of service points lost for a competitor in a match |
service_points_won | competitors - statistics | Integer | Number of service points won for a competitor in a match |
tiebreaks_won | competitors - statistics | Integer | Number of tiebreaks won for a competitor in a match |
total_breakpoints | competitors - statistics | Integer | Number of total breakpoints for a competitor in a match |
volley_unforced_errors | competitors - statistics | Integer | Number of volley unforced errors for a competitor in a match |
volley_winners | competitors - statistics | Integer | Number of volley winners for a competitor in a match |