Download Video
After videos are streamed they are stored for later use. This set of APIS gives you access to these files.
Videos are either available as a HLS playlist or as a single MP4. Not all videos are available in all formats.
Some MP4 files may have a status of BUILDABLE, which means while they are not available currently they can be built. This operation will take a number of minutes.
While the HLS manifest files are available, this is purely to enable you to download the required content. They are not meant for public distribution. The links provided may expire.
List available video files for a match
List the video files for a match that are available for downloaded.
You can create a JSON Web Token (JWT) using the token API call. Each token is given a set of scopes/permissions. Each endpoint has a scope/permission that it requires to run. If your token does not possess the correct scope then you will be unable to make the API call.
- : Authenticate based on a specific OrganizationId
- : Read data over multiple organizations using and *orggroup* code
- : Write/Update any data from below the organization
- : Read any data from the organization down
- : Perform administration API calls
- : Ability to manage organizations
- : Perform system configuration API calls
The unique identifier of the fixture
009e9276-5c80-11e8-9c2d-fa7ae01bbebcThe unique identifier of the organization
b1a23Record was added after this date/time. In UTC.
2018-08-16T02:10:48Content of the stream
CLEANOutput signal is the same as the input signalPROGRAMScore overlays and other enhancements have been added to the stream
CLEANPossible values: A comma separated list of fields that will instead be interpreted as an externalId. See External Ids for more information.
entityId,personIdType of video input
ADDITIONAL_ANGLEAdditional angleLOW_LATENCYLow LatencyPRIMARYPrimary
PRIMARYPossible values: A comma separated list of fields to display. The response will only display these fields. See Partial Response section for more information.
dob,firstName,organization(id),organizations[name], teams[name,details/metrics/*,tags(id)]The format of the video file
HLSA HLS play listMP4One MP4 file
HLSPossible values: Don't display data fields with null values or empty structures
trueA comma separated list of resource types to include. See Resource Inclusion for more information.
organizations,fixtures,entitiesThe maximum number of records to return. See Pagination for more information.
10Example: 10The locale of the video
fr_FRThe offset of the records. See Pagination for more information.
10The origin of the video file
STREAMStreamedUPLOADUploadedVENUERecorded in venue
STREAMPossible values: The unique code for the video provider
Test ProviderUnique identifier for the video source
1What is the status of the file?
AVAILABLEAvailable for accessBUILDABLENot currently available - but can be built on requestPENDINGBeing added - some parts may be available
AVAILABLEPossible values: Where the video file is stored?
5STREAM5streamAV_SPORTRADARAV SportradarKEEMOTIONKeemotionSYNERGYSynergy
KEEMOTIONPossible values: Record was modified after this date/time. In UTC.
2018-08-16T02:11:48Successful operation
Error
GET /v1/football/o/{organizationId}/fixtures/{fixtureId}/video/files HTTP/1.1
Host: api.dc.connect.sportradar.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"meta": {
"version": 1,
"codeVersion": "d6cd1e2bd19e03a81132a23b2025920577f84e37",
"code": 200,
"time": "2018-06-05 23:43:41.227584+00:00",
"fromCache": false,
"count": 7,
"limit": 10,
"offset": 10,
"generationTime": 0.011604
},
"links": {
"self": "https://example.com",
"next": "https://example.com",
"previous": "https://example.com"
},
"included": {
"resources": {
"ANY_ADDITIONAL_PROPERTY": "league"
}
},
"data": [
{
"videoId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"organizationId": "9",
"organization": {
"resourceType": "organizations",
"id": "9"
},
"provider": "Test Provider",
"locale": "fr-FR",
"sourceNumber": 1,
"fixtureId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"fixture": {
"resourceType": "fixtures",
"id": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc"
},
"resolution": "720",
"name": "text",
"feedType": "PRIMARY",
"content": "CLEAN",
"fps": 25,
"origin": "STREAM",
"format": "HLS",
"storageProvider": "KEEMOTION",
"size": 1024.2,
"length": 123.4,
"encoding": "H.264/AAC",
"status": "AVAILABLE",
"startTime": "2025-11-19T06:04:43.713Z",
"expiry": "2025-11-19T06:04:43.713Z",
"updated": "2025-11-19T06:04:43.713Z",
"added": "2025-11-19T06:04:43.713Z"
}
]
}Add a new video file
You can create a JSON Web Token (JWT) using the token API call. Each token is given a set of scopes/permissions. Each endpoint has a scope/permission that it requires to run. If your token does not possess the correct scope then you will be unable to make the API call.
- : Authenticate based on a specific OrganizationId
- : Read data over multiple organizations using and *orggroup* code
- : Write/Update any data from below the organization
- : Read any data from the organization down
- : Perform administration API calls
- : Ability to manage organizations
- : Perform system configuration API calls
The unique identifier of the fixture
009e9276-5c80-11e8-9c2d-fa7ae01bbebcThe unique identifier of the organization
b1a23A comma separated list of fields that will instead be interpreted as an externalId. See External Ids for more information.
entityId,personIdA comma separated list of fields to display. The response will only display these fields. See Partial Response section for more information.
dob,firstName,organization(id),organizations[name], teams[name,details/metrics/*,tags(id)]Don't display data fields with null values or empty structures
trueA comma separated list of resource types to include. See Resource Inclusion for more information.
organizations,fixtures,entitiesThe unique identifier of the video
009e9276-5c80-11e8-9c2d-fa7ae01bbebcThe code for the provider of the file
Test ProviderThe locale of the video
fr-FRPattern: ^[a-z]{2,2}-[A-Z]{2,2}$Unique identifier for the video source. This is unique for the provider/fixtureId/locale combination. Unless the provider is supplying multiple sources per fixture/locale then this is normally 1.
1Example: 1The unique identifier of the match
009e9276-5c80-11e8-9c2d-fa7ae01bbebcThe resolution of the video input
10801920 x 1080288512 x 2887201280 x 720
720Possible values: The name/description of the video file
Type of video input
ADDITIONAL_ANGLEAdditional angleLOW_LATENCYLow LatencyPRIMARYPrimary
PRIMARYPossible values: Content of the stream
CLEANOutput signal is the same as the input signalPROGRAMScore overlays and other enhancements have been added to the stream
CLEANPossible values: fps for the video stream
25Example: 25The origin of the video file
- None None
STREAMStreamedUPLOADUploadedVENUERecorded in venue
STREAMPossible values: The format of the video file
HLSA HLS play listMP4One MP4 file
HLSPossible values: Where the video file is stored?
- None None
5STREAM5streamAV_SPORTRADARAV SportradarKEEMOTIONKeemotionSYNERGYSynergy
KEEMOTIONPossible values: Size (Mb) of the video (only given if a single file)
1024.2Lenth (mins) of the video
123.4How is the video/audio encoded. codecs etc.
H.264/AACThe URL where the file can be found
https://hls.host.com/video/index.m3u8What is the status of the file?
- None None
AVAILABLEAvailable for accessBUILDABLENot currently available - but can be built on requestPENDINGBeing added - some parts may be available
AVAILABLEPossible values: The time this recording started (UTC)
When does this file expire? (UTC)
Successful operation
Error
POST /v1/football/o/{organizationId}/fixtures/{fixtureId}/video/files HTTP/1.1
Host: api.dc.connect.sportradar.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 500
{
"videoId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"provider": "Test Provider",
"locale": "fr-FR",
"sourceNumber": 1,
"fixtureId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"resolution": "720",
"name": "text",
"feedType": "PRIMARY",
"content": "CLEAN",
"fps": 25,
"origin": "STREAM",
"format": "HLS",
"storageProvider": "KEEMOTION",
"size": 1024.2,
"length": 123.4,
"encoding": "H.264/AAC",
"url": "https://hls.host.com/video/index.m3u8",
"status": "AVAILABLE",
"startTime": "2025-11-19T06:04:43.713Z",
"expiry": "2025-11-19T06:04:43.713Z"
}{
"meta": {
"version": 1,
"codeVersion": "d6cd1e2bd19e03a81132a23b2025920577f84e37",
"code": 200,
"time": "2018-06-05 23:43:41.227584+00:00",
"fromCache": false,
"count": 7,
"limit": 10,
"offset": 10,
"generationTime": 0.011604
},
"links": {
"self": "https://example.com",
"next": "https://example.com",
"previous": "https://example.com"
},
"included": {
"resources": {
"ANY_ADDITIONAL_PROPERTY": "league"
}
},
"data": [
{
"videoId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"organizationId": "9",
"organization": {
"resourceType": "organizations",
"id": "9"
},
"provider": "Test Provider",
"locale": "fr-FR",
"sourceNumber": 1,
"fixtureId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"fixture": {
"resourceType": "fixtures",
"id": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc"
},
"resolution": "720",
"name": "text",
"feedType": "PRIMARY",
"content": "CLEAN",
"fps": 25,
"origin": "STREAM",
"format": "HLS",
"storageProvider": "KEEMOTION",
"size": 1024.2,
"length": 123.4,
"encoding": "H.264/AAC",
"status": "AVAILABLE",
"startTime": "2025-11-19T06:04:43.713Z",
"expiry": "2025-11-19T06:04:43.713Z",
"updated": "2025-11-19T06:04:43.713Z",
"added": "2025-11-19T06:04:43.713Z"
}
]
}Generate a url to download a video file for a match. This link is only valid for 30 minutes.
You can create a JSON Web Token (JWT) using the token API call. Each token is given a set of scopes/permissions. Each endpoint has a scope/permission that it requires to run. If your token does not possess the correct scope then you will be unable to make the API call.
- : Authenticate based on a specific OrganizationId
- : Read data over multiple organizations using and *orggroup* code
- : Write/Update any data from below the organization
- : Read any data from the organization down
- : Perform administration API calls
- : Ability to manage organizations
- : Perform system configuration API calls
The unique identifier of the organization
b1a23The unique identifier of the video file
009e9276-5c80-11e8-9c2d-fa7ae01bbebcA comma separated list of fields that will instead be interpreted as an externalId. See External Ids for more information.
entityId,personIdA comma separated list of fields to display. The response will only display these fields. See Partial Response section for more information.
dob,firstName,organization(id),organizations[name], teams[name,details/metrics/*,tags(id)]Don't display data fields with null values or empty structures
trueA comma separated list of resource types to include. See Resource Inclusion for more information.
organizations,fixtures,entitiesThe maximum number of records to return. See Pagination for more information.
10Example: 10The offset of the records. See Pagination for more information.
10Successful operation
Error
GET /v1/football/o/{organizationId}/video/files/{videoId}/url HTTP/1.1
Host: api.dc.connect.sportradar.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"meta": {
"version": 1,
"codeVersion": "d6cd1e2bd19e03a81132a23b2025920577f84e37",
"code": 200,
"time": "2018-06-05 23:43:41.227584+00:00",
"fromCache": false,
"count": 7,
"limit": 10,
"offset": 10,
"generationTime": 0.011604
},
"links": {
"self": "https://example.com",
"next": "https://example.com",
"previous": "https://example.com"
},
"included": {
"resources": {
"ANY_ADDITIONAL_PROPERTY": "league"
}
},
"data": [
{
"videoId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"url": "https://hls.host.com/video/index.m3u8"
}
]
}Delete a video file
You can create a JSON Web Token (JWT) using the token API call. Each token is given a set of scopes/permissions. Each endpoint has a scope/permission that it requires to run. If your token does not possess the correct scope then you will be unable to make the API call.
- : Authenticate based on a specific OrganizationId
- : Read data over multiple organizations using and *orggroup* code
- : Write/Update any data from below the organization
- : Read any data from the organization down
- : Perform administration API calls
- : Ability to manage organizations
- : Perform system configuration API calls
The unique identifier of the organization
b1a23The unique identifier of the video file
009e9276-5c80-11e8-9c2d-fa7ae01bbebcA comma separated list of fields that will instead be interpreted as an externalId. See External Ids for more information.
entityId,personIdA comma separated list of fields to display. The response will only display these fields. See Partial Response section for more information.
dob,firstName,organization(id),organizations[name], teams[name,details/metrics/*,tags(id)]Force a delete command to run and delete child records as well if there are existing records depending on the record.
trueDon't display data fields with null values or empty structures
trueA comma separated list of resource types to include. See Resource Inclusion for more information.
organizations,fixtures,entitiesSuccessful operation
Error
DELETE /v1/football/o/{organizationId}/video/files/{videoId} HTTP/1.1
Host: api.dc.connect.sportradar.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
"meta": {
"version": 1,
"codeVersion": "d6cd1e2bd19e03a81132a23b2025920577f84e37",
"code": 200,
"time": "2018-06-05 23:43:41.227584+00:00",
"fromCache": false,
"count": 7,
"limit": 10,
"offset": 10,
"generationTime": 0.011604
},
"links": {
"self": "https://example.com",
"next": "https://example.com",
"previous": "https://example.com"
},
"included": {
"resources": {
"ANY_ADDITIONAL_PROPERTY": "league"
}
},
"data": [
{
"videoId": "009e9276-5c80-11e8-9c2d-fa7ae01bbebc",
"url": "https://hls.host.com/video/index.m3u8"
}
]
}Last updated
Was this helpful?