Docs
Coverage MatrixDocumentationChange LogLog InContact Us
Docs

Provides real-time event updates for all live matches.

Syntax

https://api.sportradar.com/badminton/{access_level}/stream/events/subscribe?api_key={your_api_key}

Parameters

ParameterDescription
access_levelDefines the access level of your API key

production, trial
your_api_keyYour API key

Optional Query String Parameters

By default, a Push feed will provide all data available for all in progress games. If needed, you can filter the data returned by including query strings.

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.

URL ParametersDescription
channelChannel type

Example: channel=badminton
competition_idCompetition Id

Example: competition_id=sr:competition:20316
event_idEvent type

Example: event_id=623021635
formatFormat type

json, xml

Example: format=json
season_idSeason id

Example: season_id=sr:season:72917
sport_event_idSport event id

Example: sport_event_id=sr:sport_event:19951590
sport_idSport id

Example: sport_id=sr:sport:31


Response Sample

The above commands return json like this.



Code Samples

require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/badminton/trial/stream/events/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/badminton/trial/stream/events/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/badminton/trial/stream/events/subscribe?api_key={your_api_key}'

Samples with Query String Params

require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.sportradar.com/badminton/trial/stream/events/subscribe?api_key={your_api_key}&format=json&sport_event_id=sr:sport_event:19951590")

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/badminton/trial/stream/events/subscribe",
    params = {'api_key': 'your_api_key', 'format': 'json', 'sport_event_id': 'sr:sport_event:19951590'},
    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 'https://api.sportradar.com/badminton/trial/stream/events/subscribe?api_key={your_api_key}&format=json&sport_event_id=sr:sport_event:19951590'


Data Points

Metadata:
AttributeParent ElementTypeDescription
channelmetadataStringSport of the stream connection
ex. badminton
competition_idmetadataStringUnique Id of a competition
ex. sr:competition:27016
event_idmetadataStringDescription of a push timeline event
ex. point, period_score, score_change
formatmetadataStringFormat type of the response
json, xml
season_idmetadataStringUnique Id of a season
ex. sr:season:124059
sport_event_idmetadataStringUnique Id of a sport event
ex. sr:sport_event_id:53976867
sport_idmetadataStringUnique Id of a sport
ex. sr:sport:31
fromheartbeatIntegerUnix timestamp of the beginning of a heartbeat message
ex. 1722267631
toheartbeatIntegerUnix timestamp of the end of a heartbeat message
ex. 1722267636
intervalheartbeatIntegerInterval of a heartbeat message in seconds
typeheartbeatStringType of heartbeat message
ex. events
packageheartbeatStringPackage of a heartbeat message
ex. badminton-v2
Sport Event Status:
AttributeParent ElementTypeDescription
away_scoresport_event_statusIntegerTotal score for the away competitor in a match
home_scoresport_event_statusIntegerTotal score for the home competitor in a match
match_statussport_event_statusStringStatus 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 Badminton OAS for a complete list of statuses.
scount_abandonedsport_event_statusBooleanSignifies a match was abandoned by a scout when true
statussport_event_statusStringStatus of a sport event
ex. not_started, live, ended, closed

See our FAQ for a complete list of statuses and their definitions.
winner_idsport_event_statusStringUnique ID of the match winner
ex. sr:competitor:174268
winning_reasonsport_event_statusStringWinning reason description for a match
ex. walkover
Period Scores:
AttributeParent ElementTypeDescription
away_scoresport_event_status - period_scoresIntegerAway competitor set score
home_scoresport_event_status - period_scoresIntegerHome competitor set score
numbersport_event_status - period_scoresIntegerSet number
typesport_event_status - period_scoresStringPeriod type
ex. set
Match Timeline:
AttributeParent ElementTypeDescription
away_scoreeventIntegerAway competitor point score
break_nameeventStringBrief description of a break event
ex. break
competitoreventStringDesignation of a competitor for a timeline event
home, away
home_scoreeventIntegerHome competitor point score
ideventIntegerUnique ID for a timeline event
ex. 1811218561
match_clockeventStringClock value for a timeline event, in minutes and seconds
ex. 70:17
periodeventIntegerSet number of a timeline event. Populates for each period_score event.
period_nameeventStringPeriod name of a timeline event, appearing at the beginning of a period
ex. 2nd_set
timeeventDate-timeTimestamp of a timeline event
ex. 2024-04-16T20:49:49+00:00
typeeventStringType of timeline event
ex. match_started, match_ended, period_start, break_start, score_change, period_score