Catalog API response: Videos
Videos endpoints return the fields below. For the response envelope, the shared content model, geo-targeting, and extraInfo, see Response principles.
Videos-specific fields: subtitle, duration, videoRenditions, translatedDescriptions, translatedSubtitles. Videos do not have htmlUrl, isLive, pages, or titleImageUrl.
classDiagram
class Video {
string type
string id
string title
string description
string subtitle
number version
string[] aspectRatios
string status
number duration
datetime createTime
datetime updateTime
Thumbnail[] thumbnails
GeoTargeting geoTargeting
Metadata metadata
Label[] labels
ExtraInfo extraInfo
string executionTimeType
VideoRendition[] videoRenditions
}
class Thumbnail {
string url
string aspectRatio
}
class GeoTargeting {
string[] includedGeos
string[] excludedGeos
}
class Metadata {
Competition competition
Competition[] competitions
Game game
Team team
Player player
Round round
Season season
}
class Competition {
string provider
string providerId
number wscId
}
class Game {
string provider
string providerId
number wscId
}
class Team {
string provider
string providerId
number wscId
}
class Player {
string provider
string providerId
number wscId
}
class Round {
string provider
string providerId
number wscId
}
class Season {
string provider
string providerId
number wscId
}
class Label {
string title
string identifier
}
class ExtraInfo {
string homeTeam
string awayTeam
string propertyId
string propertyName
string activeLabels
string gameId
string seasonId
string teamId
string playerId
}
class VideoRendition {
string url
string fileType
string aspectRatio
number bitRate
Resolution resolution
}
class Resolution {
string level
number height
number width
}
Video --> Thumbnail : thumbnails[]
Video --> GeoTargeting : geoTargeting
Video --> Metadata : metadata
Video --> Label : labels[]
Video --> ExtraInfo : extraInfo
Video --> VideoRendition : videoRenditions[]
VideoRendition --> Resolution : resolution
Metadata --> Competition : competition
Metadata --> Competition : competitions[]
Metadata --> Game : game
Metadata --> Team : team
Metadata --> Player : player
Metadata --> Round : round
Metadata --> Season
List of properties with dot notation
| Key (dot notation) |
|---|
| type |
| id |
| title |
| description |
| subtitle |
| version |
| aspectRatios |
| status |
| duration |
| createTime |
| updateTime |
| thumbnails.url |
| thumbnails.aspectRatio |
| geoTargeting.includedGeos |
| geoTargeting.excludedGeos |
| metadata.competition.provider |
| metadata.competition.providerId |
| metadata.competition.wscId |
| metadata.competitions.provider |
| metadata.competitions.providerId |
| metadata.competitions.wscId |
| metadata.game.provider |
| metadata.game.providerId |
| metadata.game.wscId |
| metadata.team.provider |
| metadata.team.providerId |
| metadata.team.wscId |
| metadata.player.provider |
| metadata.player.providerId |
| metadata.player.wscId |
| metadata.round.provider |
| metadata.round.providerId |
| metadata.round.wscId |
| metadata.season.provider |
| metadata.season.providerId |
| metadata.season.wscId |
| labels.title |
| labels.identifier |
| extraInfo.homeTeam |
| extraInfo.awayTeam |
| extraInfo.propertyId |
| extraInfo.propertyName |
| extraInfo.activeLabels |
| extraInfo.gameId |
| extraInfo.seasonId |
| extraInfo.teamId |
| extraInfo.playerId |
| videoRenditions.url |
| videoRenditions.fileType |
| videoRenditions.aspectRatio |
| videoRenditions.bitRate |
| videoRenditions.resolution.level |
| videoRenditions.resolution.height |
| videoRenditions.resolution.width |
| executionTimeType |
| defaultLanguage |
| translatedTitles |
| translatedDescriptions |
| translatedSubtitles |
| competitionId |
| publishMethod |
| creationSettings.creationTimePeriod |
| creationSettings.ruleName |
| creationSettings.storyType |
| game |
| rating |
Localized text
translatedTitles, translatedDescriptions, and translatedSubtitles are objects keyed by language code. defaultLanguage tells you which language the top-level title, description, and subtitle are in. An object is empty when no translations exist for that field.
Example JSON
The example doesn't contain all properties. extraInfo keys vary by sport. See Response principles. videoRenditions is returned when direct video access is enabled for your feed.
{
"totalItems": 1,
"result": [
{
"type": "Video",
"id": "7b108fe24548766f7240836c",
"title": "Match highlights",
"description": "Best plays from the game",
"subtitle": "NBA",
"version": 4,
"aspectRatios": ["Horizontal"],
"status": "Active",
"duration": 540,
"createTime": "2026-09-05T18:00:00Z",
"updateTime": "2026-09-05T18:10:00Z",
"thumbnails": [
{ "url": "https://cdn.example.invalid/videos/UUID_Horizontal.jpg", "aspectRatio": "Horizontal" }
],
"geoTargeting": { "includedGeos": ["gb"], "excludedGeos": null },
"metadata": {
"competition": { "provider": null, "providerId": null, "wscId": 2 },
"competitions": [ { "provider": null, "providerId": null, "wscId": 2 } ],
"game": { "provider": null, "providerId": "1522600076", "wscId": 104138149 },
"team": { "provider": null, "providerId": "1610612744", "wscId": 1026 },
"player": { "provider": null, "providerId": "1642954", "wscId": 9988274 },
"round": { "provider": null, "providerId": "6", "wscId": 0 },
"season": { "provider": null, "providerId": "2026", "wscId": 0 }
},
"executionTimeType": "None",
"labels": [ { "title": "Highlight", "identifier": "highlight" } ],
"extraInfo": {
"homeTeam": "Memphis Grizzlies",
"awayTeam": "Golden State Warriors",
"propertyId": "c81e728d9d4c2f636f067f89cc14862c",
"propertyName": "NBA",
"activeLabels": "[]",
"gameId": "1522600076",
"teamId": "1610612744",
"playerId": "1642954",
"roundId": "6",
"seasonId": "2026"
},
"videoRenditions": [
{
"url": "https://cdn.example.invalid/videos/clip.mp4",
"fileType": "Mp4",
"aspectRatio": "Horizontal",
"bitRate": 2500000,
"resolution": { "level": "HighRes", "height": 1080, "width": 1920 }
}
],
"defaultLanguage": "en",
"translatedTitles": {},
"translatedDescriptions": {},
"translatedSubtitles": {},
"competitionId": "2",
"publishMethod": null,
"creationSettings": { "creationTimePeriod": "None", "ruleName": null, "storyType": null },
"game": null,
"rating": null
}
]
}Updated about 1 month ago
