|
|
||
|---|---|---|
| payloads | ||
| results | ||
| .gitignore | ||
| README.md | ||
| analysis.py | ||
| innerbrute.py | ||
README.md
YouTube-Internal-Clients
A script that discovers hidden internal clients of the YouTube (Innertube) API using bruteforce methods. The script tries clientNames with a sequential ID enumeration and crosses them with known clientVersions.
The goal was to find a client that has no age restrictions implemented. With success.
Results
The script has found the following working clients tested on this video:
| ID | Client Name | Client Version | Quality Formats | Features/Attributes |
|---|---|---|---|---|
| 1 | WEB | 2.20220325 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• annotations• storyboards• microformat• cards• attestation• endscreen• frameworkUpdatesResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (4)│ ├─ mainAppWebResponseContext│ ├─ webResponseContextExtensionData├─ playabilityStatus│ ├─ miniplayer│ │ ├─ miniplayerRenderer├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ streamSelectionConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ ├─ webPlayerConfig│ │ ├─ webPlayerActionsPorting│ │ │ ├─ getSharePanelCommand│ │ │ │ ├─ commandMetadata│ │ │ │ │ ├─ webCommandMetadata│ │ │ │ ├─ webPlayerShareEntityServiceEndpoint│ │ │ ├─ subscribeCommand│ │ │ │ ├─ commandMetadata│ │ │ │ │ ├─ webCommandMetadata│ │ │ │ ├─ subscribeEndpoint│ │ │ │ │ ├─ [channelIds] (1)│ │ │ ├─ unsubscribeCommand│ │ │ │ ├─ commandMetadata│ │ │ │ │ ├─ webCommandMetadata│ │ │ │ ├─ unsubscribeEndpoint│ │ │ │ │ ├─ [channelIds] (1)│ │ │ ├─ addToWatchLaterCommand│ │ │ │ ├─ commandMetadata│ │ │ │ │ ├─ webCommandMetadata│ │ │ │ ├─ playlistEditEndpoint│ │ │ │ │ ├─ [actions] (1)│ │ │ ├─ removeFromWatchLaterCommand│ │ │ │ ├─ commandMetadata│ │ │ │ │ ├─ webCommandMetadata│ │ │ │ ├─ playlistEditEndpoint│ │ │ │ │ ├─ [actions] (1)├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ microformat│ ├─ playerMicroformatRenderer│ │ ├─ thumbnail│ │ │ ├─ [thumbnails] (1)│ │ ├─ embed│ │ ├─ title│ │ ├─ description│ │ ├─ [availableCountries] (249)├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ frameworkUpdates│ ├─ entityBatchUpdate│ │ ├─ [mutations] (1)│ │ ├─ timestamp |
| 2 | MWEB | 2.20220325 | 144p - 4320pvideo/3gpp video/mp4 video/webm audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (31)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 597 - 144p - video/mp4 598 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm 599 - None - audio/mp4 600 - None - audio/webm |
• storyboards• microformat• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (3)│ ├─ webResponseContextExtensionData├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (31)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig│ ├─ streamSelectionConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ microformat│ ├─ playerMicroformatRenderer│ │ ├─ thumbnail│ │ │ ├─ [thumbnails] (1)│ │ ├─ embed│ │ ├─ title│ │ │ ├─ [runs] (1)│ │ ├─ description│ │ │ ├─ [runs] (1)│ │ ├─ [availableCountries] (249)├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl |
| 3 | ANDROID | 16.20 | 144p - 4320pvideo/3gpp video/mp4 video/webm audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (28)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• MPEG-DASH Support • annotations• storyboards• attestation• endscreen• playerSettingsMenuDataResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (6)├─ playabilityStatus│ ├─ offlineability│ │ ├─ buttonRenderer│ │ │ ├─ serviceEndpoint│ │ │ │ ├─ ypcGetOfflineUpsellEndpoint│ ├─ miniplayer│ │ ├─ miniplayerRenderer├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (28)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ engageUrl│ │ ├─ [headers] (2)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ playbackStartConfig│ ├─ adRequestConfig│ ├─ networkProtocolConfig│ ├─ androidNetworkStackConfig│ │ ├─ androidCronetResponsePriority│ │ ├─ androidMetadataNetworkConfig│ ├─ lidarSdkConfig│ ├─ androidMedialibConfig│ │ ├─ [initialBandwidthEstimates] (2)│ ├─ playerControlsConfig│ ├─ variableSpeedConfig│ │ ├─ [availablePlaybackSpeeds] (8)│ ├─ decodeQualityConfig│ ├─ vrConfig│ ├─ qoeStatsClientConfig│ ├─ androidPlayerStatsConfig│ ├─ stickyQualitySelectionConfig│ ├─ adSurveyRequestConfig│ ├─ retryConfig│ │ ├─ [retryEligibleErrors] (5)│ ├─ cmsPathProbeConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ predictedReadaheadConfig│ │ ├─ mediaFetchRetryConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy│ ├─ playerGestureConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ playerSettingsMenuData│ ├─ loggingDirectives│ │ ├─ visibility |
| 5 | IOS | 16.20 | 144p - 1080pvideo/mp4 audio/mp4 Adaptive Formats (8)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• HLS Support • annotations• storyboards• attestation• endscreen• onResponseReceivedEndpoints• overlayResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (4)├─ playabilityStatus│ ├─ offlineability│ │ ├─ buttonRenderer│ │ │ ├─ navigationEndpoint│ │ │ │ ├─ ypcGetOfflineUpsellEndpoint│ ├─ miniplayer│ │ ├─ miniplayerRenderer├─ streamingData│ ├─ [adaptiveFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (2)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (2)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (2)│ ├─ ptrackingUrl│ │ ├─ [headers] (2)│ ├─ qoeUrl│ │ ├─ [headers] (2)│ ├─ atrUrl│ │ ├─ [headers] (2)│ ├─ engageUrl│ │ ├─ [headers] (2)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ [annotations] (1)├─ playerConfig│ ├─ hlsProxyConfig│ ├─ audioConfig│ ├─ backgroundPlaybackConfig│ ├─ adRequestConfig│ ├─ lidarSdkConfig│ ├─ iosAvPlayerConfig│ ├─ vrConfig│ ├─ iosPlayerConfig│ ├─ iosBandwidthEstimatorConfig│ ├─ qoeStatsClientConfig│ ├─ adSurveyRequestConfig│ ├─ hamplayerConfig│ │ ├─ videoTrackRenderer│ │ │ ├─ hamplayerPixelBufferVideoTrackRendererConfig│ │ ├─ audioTrackRenderer│ │ │ ├─ hamplayerAudioEngineTrackRendererConfig│ │ ├─ stallPredictor│ │ │ ├─ hamplayerDefaultStallPredictorConfig│ │ ├─ live│ │ ├─ networkStatsSamplerConfig│ │ ├─ resyncPolicyConfig│ │ ├─ audioAbrConfig│ │ ├─ videoAbrConfig│ │ ├─ chunkLoaderConfig│ │ ├─ loadRetryConfig│ │ ├─ serverAbrConfig│ ├─ daiConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy│ ├─ playerGestureConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ [onResponseReceivedEndpoints] (1)├─ overlay│ ├─ playerControlsOverlayRenderer│ │ ├─ overflow│ │ │ ├─ playerOverflowRenderer│ │ │ │ ├─ endpoint│ │ │ │ │ ├─ menuEndpoint│ │ │ │ │ │ ├─ menu│ │ │ │ │ │ │ ├─ menuRenderer│ │ │ │ │ │ │ │ ├─ [items] (4)│ │ │ │ │ │ │ │ ├─ loggingDirectives│ │ │ │ │ │ │ │ │ ├─ visibility |
| 7 | TVHTML5 | 7.20220325 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestation• endscreenResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ thumbnail│ │ ├─ [thumbnails] (6)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ [adPlacements] (9) |
| 8 | TVLITE | 2 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• storyboardsResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer |
| 10 | TVANDROID | 1.0 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 13 | XBOXONEGUIDE | 1.0 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• storyboardsResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer |
| 14 | ANDROID_CREATOR | 21.24.100 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (7)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 140 - None - audio/mp4 |
Response Structure├─responseContext│ ├─ [serviceTrackingParams] (2)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (7)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig |
| 15 | IOS_CREATOR | 21.24.100 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• HLS SupportResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (2)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ playerConfig |
| 16 | TVAPPLE | 1.0 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• HLS Support • annotationsResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [hlsFormats] (8)├─ [playerAds] (1)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ [annotations] (1)├─ playerConfig |
| 23 | ANDROID_TV | 2.13 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (7)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 140 - None - audio/mp4 |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (7)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig |
| 27 | MWEB_TIER_2 | 9.20220325 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• microformatResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig├─ microformat│ ├─ microformatDataRenderer│ │ ├─ thumbnail│ │ │ ├─ [thumbnails] (1)│ │ ├─ [tags] (29)│ │ ├─ [availableCountries] (249)│ │ ├─ pageOwnerDetails│ │ ├─ videoDetails│ │ ├─ embedDetails│ │ ├─ [linkAlternates] (5) |
| 28 | ANDROID_VR | 0.1 | 144p - 2160pvideo/3gpp video/mp4 video/webm audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (19)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 139 - None - audio/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboardsResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (19)├─ [playerAds] (1)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ decodeQualityConfig│ ├─ androidPlayerStatsConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer |
| 29 | ANDROID_UNPLUGGED | 5.26.1 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (11)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• MPEG-DASH Support • storyboards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (3)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (11)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ adRequestConfig│ ├─ networkProtocolConfig│ ├─ androidNetworkStackConfig│ │ ├─ androidMetadataNetworkConfig│ ├─ lidarSdkConfig│ ├─ androidMedialibConfig│ ├─ variableSpeedConfig│ ├─ decodeQualityConfig│ ├─ androidPlayerStatsConfig│ ├─ retryConfig│ │ ├─ [retryEligibleErrors] (5)│ ├─ cmsPathProbeConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ predictedReadaheadConfig│ │ ├─ mediaFetchRetryConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 30 | ANDROID_TESTSUITE | 1.9 | 144p - 4320pvideo/3gpp video/mp4 video/webm audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (28)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (28)├─ [playerAds] (1)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (2)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (2)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (2)│ ├─ ptrackingUrl│ │ ├─ [headers] (2)│ ├─ qoeUrl│ │ ├─ [headers] (2)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8) |
| 31 | WEB_MUSIC_ANALYTICS | 0.2 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 33 | IOS_UNPLUGGED | 5.26.1 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (8)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• HLS Support • storyboards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (3)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (8)│ ├─ [hlsFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ playerConfig│ ├─ hlsProxyConfig│ ├─ audioConfig│ ├─ audioPairingConfig│ │ ├─ [pairs] (6)│ ├─ backgroundPlaybackConfig│ ├─ lidarSdkConfig│ ├─ iosAvPlayerConfig│ ├─ iosPlayerConfig│ ├─ iosBandwidthEstimatorConfig│ ├─ qoeStatsClientConfig│ ├─ daiConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 38 | ANDROID_LITE | 3.26.1 | 144p - 720pvideo/3gpp video/mp4 audio/mp4 Formats (2)17 - 144p - video/3gpp18 - 360p - video/mp4 Adaptive Formats (7)136 - 720p - video/mp4135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• MPEG-DASH Support • storyboards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus│ ├─ offlineability│ │ ├─ offlineabilityRenderer├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (7)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (2)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ adRequestConfig│ ├─ networkProtocolConfig│ ├─ androidNetworkStackConfig│ │ ├─ androidCronetResponsePriority│ │ ├─ androidMetadataNetworkConfig│ ├─ androidMedialibConfig│ ├─ variableSpeedConfig│ │ ├─ [availablePlaybackSpeeds] (8)│ ├─ decodeQualityConfig│ ├─ androidPlayerStatsConfig│ ├─ retryConfig│ │ ├─ [retryEligibleErrors] (5)│ ├─ cmsPathProbeConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ predictedReadaheadConfig│ │ ├─ mediaFetchRetryConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy│ │ ├─ scriptedPlayerConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 39 | IOS_EMBEDDED_PLAYER | 2.0 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (8)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• HLS Support • annotations• cards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (5)├─ playabilityStatus│ ├─ backgroundability│ │ ├─ backgroundabilityRenderer├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (8)│ ├─ [hlsFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (2)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (2)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (2)│ ├─ ptrackingUrl│ │ ├─ [headers] (2)│ ├─ qoeUrl│ │ ├─ [headers] (2)│ ├─ atrUrl│ │ ├─ [headers] (2)│ ├─ engageUrl│ │ ├─ [headers] (2)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ [annotations] (1)├─ playerConfig│ ├─ hlsProxyConfig│ ├─ audioConfig│ ├─ audioPairingConfig│ │ ├─ [pairs] (6)│ ├─ backgroundPlaybackConfig│ ├─ adRequestConfig│ ├─ lidarSdkConfig│ ├─ iosAvPlayerConfig│ ├─ iosPlayerConfig│ ├─ iosBandwidthEstimatorConfig├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ │ ├─ [runs] (1)├─ attestation│ ├─ playerAttestationRenderer |
| 41 | WEB_UNPLUGGED | 1.20220325 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• annotations• storyboards• cards• attestation• endscreenResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ ├─ webPlayerConfig│ │ ├─ webPlayerActionsPorting├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ │ ├─ [runs] (1)│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ [adPlacements] (9) |
| 42 | WEB_EXPERIMENTS | 1 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
Response Structure├─responseContext│ ├─ webResponseContextExtensionData├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 43 | TVHTML5_CAST | 1.1 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestation• endscreenResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus│ ├─ homeGroupPlayability│ │ ├─ [unplayableHomeGroupTypes] (2)├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ [playerAds] (1)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (6)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ [adPlacements] (8) |
| 55 | ANDROID_EMBEDDED_PLAYER | 16.20 | 144p - 1080pvideo/3gpp video/mp4 audio/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (8)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• MPEG-DASH Support • annotations• cards• attestation• endscreenResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (5)├─ playabilityStatus│ ├─ backgroundability│ │ ├─ backgroundabilityRenderer├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ engageUrl│ │ ├─ [headers] (2)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ adRequestConfig│ ├─ networkProtocolConfig│ ├─ androidNetworkStackConfig│ │ ├─ androidCronetResponsePriority│ │ ├─ androidMetadataNetworkConfig│ ├─ lidarSdkConfig│ ├─ androidMedialibConfig│ ├─ playerControlsConfig│ ├─ variableSpeedConfig│ ├─ decodeQualityConfig│ ├─ vrConfig│ ├─ qoeStatsClientConfig│ ├─ androidPlayerStatsConfig│ ├─ adSurveyRequestConfig│ ├─ retryConfig│ │ ├─ [retryEligibleErrors] (5)│ ├─ cmsPathProbeConfig│ ├─ mediaCommonConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ predictedReadaheadConfig│ │ ├─ mediaFetchRetryConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ │ ├─ [runs] (1)│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2) |
| 56 | WEB_EMBEDDED_PLAYER | 9.20220325 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• annotations• storyboards• cards• attestation• endscreenResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (5)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ [playerAds] (1)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (10)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ streamSelectionConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ ├─ webPlayerConfig│ │ ├─ webPlayerActionsPorting│ │ │ ├─ getSharePanelCommand│ │ │ │ ├─ webPlayerShareEntityServiceEndpoint│ │ │ ├─ subscribeCommand│ │ │ │ ├─ subscribeEndpoint│ │ │ │ │ ├─ [channelIds] (1)│ │ │ ├─ unsubscribeCommand│ │ │ │ ├─ unsubscribeEndpoint│ │ │ │ │ ├─ [channelIds] (1)│ │ │ ├─ addToWatchLaterCommand│ │ │ │ ├─ playlistEditEndpoint│ │ │ │ │ ├─ [actions] (1)│ │ │ ├─ removeFromWatchLaterCommand│ │ │ │ ├─ playlistEditEndpoint│ │ │ │ │ ├─ [actions] (1)├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ │ ├─ [runs] (1)│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ [adPlacements] (9) |
| 58 | TV_UNPLUGGED_CAST | 0.1 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (3)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ atrUrl│ │ ├─ [headers] (3)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 60 | WEB_HEROES | 0.1 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 62 | WEB_CREATOR | 1.20220325 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• annotations• storyboards• cards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (4)│ ├─ webResponseContextExtensionData├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ streamSelectionConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ ├─ webPlayerConfig│ │ ├─ webPlayerActionsPorting├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl |
| 63 | TV_UNPLUGGED_ANDROID | 0.1 | 144p - 2160pvideo/3gpp video/mp4 video/webm audio/mp4 audio/webm Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 Adaptive Formats (19)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 139 - None - audio/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• MPEG-DASH SupportResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (3)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [adaptiveFormats] (19)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (4)├─ playerConfig│ ├─ audioConfig│ ├─ exoPlayerConfig│ │ ├─ [lowAudioQualityConnTypes] (2)│ │ ├─ [nonHardwareMediaCodecNames] (8)│ │ ├─ [bearerMinDurationToRetainAfterDiscardMs] (8)│ ├─ adRequestConfig│ ├─ androidNetworkStackConfig│ │ ├─ androidMetadataNetworkConfig│ ├─ lidarSdkConfig│ ├─ androidMedialibConfig│ ├─ variableSpeedConfig│ ├─ decodeQualityConfig│ ├─ androidPlayerStatsConfig│ ├─ retryConfig│ │ ├─ [retryEligibleErrors] (5)│ ├─ cmsPathProbeConfig |
| 64 | IOS_LIVE_CREATION_EXTENSION | 16.20 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• HLS SupportResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ playerConfig |
| 65 | TVHTML5_UNPLUGGED | 5.26.1 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestationResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ [adPlacements] (9) |
| 66 | IOS_MESSAGES_EXTENSION | 16.20 | 144p - 1080pvideo/mp4 audio/mp4 Adaptive Formats (8)137 - 1080p - video/mp4136 - 720p - video/mp4 135 - 480p - video/mp4 134 - 360p - video/mp4 133 - 240p - video/mp4 160 - 144p - video/mp4 139 - None - audio/mp4 140 - None - audio/mp4 |
• HLS Support • annotations• storyboards• attestation• endscreen• overlayResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (6)├─ playabilityStatus├─ streamingData│ ├─ [adaptiveFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (2)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (2)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (2)│ ├─ ptrackingUrl│ │ ├─ [headers] (2)│ ├─ qoeUrl│ │ ├─ [headers] (2)│ ├─ atrUrl│ │ ├─ [headers] (2)│ ├─ engageUrl│ │ ├─ [headers] (2)│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ [annotations] (1)├─ playerConfig│ ├─ hlsProxyConfig│ ├─ audioConfig│ ├─ backgroundPlaybackConfig│ ├─ adRequestConfig│ ├─ lidarSdkConfig│ ├─ iosAvPlayerConfig│ ├─ iosPlayerConfig│ ├─ iosBandwidthEstimatorConfig│ ├─ qoeStatsClientConfig│ ├─ hamplayerConfig│ │ ├─ videoTrackRenderer│ │ │ ├─ hamplayerPixelBufferVideoTrackRendererConfig│ │ ├─ audioTrackRenderer│ │ │ ├─ hamplayerAudioEngineTrackRendererConfig│ │ ├─ stallPredictor│ │ │ ├─ hamplayerDefaultStallPredictorConfig│ │ ├─ live│ │ ├─ networkStatsSamplerConfig│ │ ├─ resyncPolicyConfig│ │ ├─ audioAbrConfig│ │ ├─ videoAbrConfig│ │ ├─ chunkLoaderConfig│ │ ├─ loadRetryConfig│ │ ├─ serverAbrConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig│ │ ├─ mediaUstreamerRequestConfig│ │ ├─ serverReadaheadConfig│ │ │ ├─ nextRequestPolicy├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer├─ endscreen│ ├─ endscreenRenderer│ │ ├─ [elements] (2)├─ overlay│ ├─ playerControlsOverlayRenderer│ │ ├─ overflow│ │ │ ├─ playerOverflowRenderer│ │ │ │ ├─ endpoint│ │ │ │ │ ├─ menuEndpoint│ │ │ │ │ │ ├─ menu│ │ │ │ │ │ │ ├─ menuRenderer│ │ │ │ │ │ │ │ ├─ [items] (4) |
| 68 | IOS_UPTIME | 1.0 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• HLS SupportResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)│ ├─ [hlsFormats] (8)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (3)├─ playerConfig│ ├─ hlsProxyConfig |
| 69 | WEB_UNPLUGGED_ONBOARDING | 0.1 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboardsResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer |
| 70 | WEB_UNPLUGGED_OPS | 0.1 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboardsResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ │ ├─ [headers] (3)│ ├─ videostatsDelayplayUrl│ │ ├─ [headers] (3)│ ├─ videostatsWatchtimeUrl│ │ ├─ [headers] (3)│ ├─ ptrackingUrl│ │ ├─ [headers] (3)│ ├─ qoeUrl│ │ ├─ [headers] (3)│ ├─ youtubeRemarketingUrl│ │ ├─ [headers] (2)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer |
| 71 | WEB_UNPLUGGED_PUBLIC | 0.1 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
Response Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig |
| 72 | TVHTML5_VR | 0.1 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestationResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 75 | TVHTML5_SIMPLY | 1.0 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestationResponse Structure├─responseContext├─ playabilityStatus│ ├─ homeGroupPlayability│ │ ├─ [unplayableHomeGroupTypes] (2)├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (6)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl├─ [adPlacements] (1) |
| 80 | TVHTML5_YONGLE | 0.1 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• storyboards• attestationResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (6)├─ playerConfig│ ├─ audioConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 84 | GOOGLE_ASSISTANT | 0.1 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 85 | TVHTML5_SIMPLY_EMBEDDED_PLAYER | 2.0 | 144p - 4320pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (27)571 - 4320p - video/mp4313 - 2160p - video/webm 401 - 2160p - video/mp4 271 - 1440p - video/webm 400 - 1440p - video/mp4 137 - 1080p - video/mp4 248 - 1080p - video/webm 399 - 1080p - video/mp4 136 - 720p - video/mp4 247 - 720p - video/webm 398 - 720p - video/mp4 135 - 480p - video/mp4 244 - 480p - video/webm 397 - 480p - video/mp4 134 - 360p - video/mp4 243 - 360p - video/webm 396 - 360p - video/mp4 133 - 240p - video/mp4 242 - 240p - video/webm 395 - 240p - video/mp4 160 - 144p - video/mp4 278 - 144p - video/webm 394 - 144p - video/mp4 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• No age-restrictions • storyboards• attestationResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (27)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer |
| 87 | WEB_INTERNAL_ANALYTICS | 0.1 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 88 | WEB_PARENT_TOOLS | 1.20220325 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
• annotations• storyboards• cards• attestationResponse Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ [annotations] (1)├─ playerConfig│ ├─ audioConfig│ ├─ streamSelectionConfig│ ├─ webPlayerConfig│ │ ├─ webPlayerActionsPorting├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ cards│ ├─ cardCollectionRenderer│ │ ├─ [cards] (1)│ │ ├─ headerText│ │ │ ├─ [runs] (1)│ │ ├─ icon│ │ │ ├─ infoCardIconRenderer│ │ ├─ closeButton│ │ │ ├─ infoCardIconRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl |
| 89 | GOOGLE_MEDIA_ACTIONS | 0.1 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 90 | WEB_PHONE_VERIFICATION | 1.0.0 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext│ ├─ [serviceTrackingParams] (4)├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 92 | IOS_PRODUCER | 0.1 | 144p - 720pvideo/3gpp video/mp4 Formats (3)17 - 144p - video/3gpp18 - 360p - video/mp4 22 - 720p - video/mp4 |
Response Structure├─responseContext├─ playabilityStatus├─ streamingData│ ├─ [formats] (3)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ youtubeRemarketingUrl├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (5)├─ playerConfig |
| 93 | TVHTML5_FOR_KIDS | 7.20220325 | 144p - 2160pvideo/mp4 video/webm audio/mp4 audio/webm Formats (2)18 - 360p - video/mp422 - 720p - video/mp4 Adaptive Formats (18)313 - 2160p - video/webm271 - 1440p - video/webm 137 - 1080p - video/mp4 248 - 1080p - video/webm 136 - 720p - video/mp4 247 - 720p - video/webm 135 - 480p - video/mp4 244 - 480p - video/webm 134 - 360p - video/mp4 243 - 360p - video/webm 133 - 240p - video/mp4 242 - 240p - video/webm 160 - 144p - video/mp4 278 - 144p - video/webm 140 - None - audio/mp4 249 - None - audio/webm 250 - None - audio/webm 251 - None - audio/webm |
• storyboards• attestationResponse Structure├─responseContext│ ├─ [serviceTrackingParams] (1)├─ playabilityStatus├─ streamingData│ ├─ [formats] (2)│ ├─ [adaptiveFormats] (18)├─ playbackTracking│ ├─ videostatsPlaybackUrl│ ├─ videostatsDelayplayUrl│ ├─ videostatsWatchtimeUrl│ ├─ ptrackingUrl│ ├─ qoeUrl│ ├─ atrUrl│ ├─ [videostatsScheduledFlushWalltimeSeconds] (3)├─ videoDetails│ ├─ [keywords] (29)│ ├─ thumbnail│ │ ├─ [thumbnails] (6)├─ playerConfig│ ├─ audioConfig│ ├─ mediaCommonConfig│ │ ├─ dynamicReadaheadConfig├─ storyboards│ ├─ playerStoryboardSpecRenderer├─ attestation│ ├─ playerAttestationRenderer│ │ ├─ botguardData│ │ │ ├─ interpreterSafeUrl |