Support needed? Reach out! ๐Ÿ“ง

How to Scrape Youtube Shorts Data

This tutorial shows how to use Youtube Shorts Data API to scrape and crawl structured Youtube data in real-time.
Monitor YouTube Shorts performance at scale and extract view counts, like ratios, comment activity, and trending short-form videos for any channel through our API.

Access Youtube Data in 3 Steps

Start crawling Youtube shorts analytics data. Follow these steps to extract social media data in minutes.

1

Create Your Account

Go to our registration page and make an account. It's free, no credit card, and you get credits right away to play around with.

2

Verify Your Email Address

You'll get a verification email, click the link in it. Once that's done, you can grab your API token from the dashboard.

3

Make Your First API Call

Copy the code snippet below, swap in your API key, and run it. You'll get Youtube data back as JSON within a few seconds.

Code Sample

Here's a JavaScript example to get you going. Swap out the token and you're good, works the same way in any language that can make HTTP requests. Start collecting shorts analytics data via our REST API!

javascript-logo JavaScript
Youtube Channel Shorts
1 const root = 'https://ensembledata.com/apis'
2 const endpoint = '/youtube/channel/shorts'
3 const params = {
4   "browseId""UClAa0YLrW4MaIKOWaeZR9Xg",
5   "depth"1,
6   "token""YOUR-TOKEN-HERE"
7 }
8  
9 const queryString = new URLSearchParams(params).toString();
10 const url = `${root}${endpoint}?${queryString}`;
11  
12 await fetch(url)
13   .then(response => response.json())
14   .then(data => console.log(data))
15   .catch(error => console.error(error));
16  

Parameters

browseId (string) Channel ID. REQUIRED
depth (integer) Abstraction of the API pagination. Depth 1 returns X results, depth N returns N * X results. Note that the exact number of results per depth (X) may differ per endpoint. Please refer to the specific endpoint description for more information. REQUIRED
token (string) Private token assigned to each client to access the APIs. REQUIRED

Example Response

Explore the fields returned by this endpoint. Click a row to expand nested objects and arrays, hover a value to copy it, or use "Expand all" to see everything at once.

JSON
Youtube Channel Shorts
dataobject2 fields
userobject23 fields
urlCanonicalstring"https://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg"
titlestring"mmmjoemele"
descriptionstring"Thank you for being here :) Going to start posting more so stay tuned!"
thumbnailobject1 field
thumbnailsarray1 item ยท schema from #0 1 item
urlstring"https://yt3.googleusercontent.com/2nwECW77iRSkoJM1TPMIKvM-9GBiHEk0XMD2โ€ฆ"
widthnumber200
heightnumber200
siteNamestring"YouTube"
appNamestring"YouTube"
androidPackagestring"com.google.android.youtube"
iosAppStoreIdstring"544007664"
iosAppArgumentsstring"https://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg"
ogTypestring"yt-fb-app:channel"
urlApplinksWebstring"https://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg?feature=appliโ€ฆ"
urlApplinksIosstring"vnd.youtube://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg?featureโ€ฆ"
urlApplinksAndroidstring"vnd.youtube://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg?featureโ€ฆ"
urlTwitterIosstring"vnd.youtube://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg?featureโ€ฆ"
urlTwitterAndroidstring"vnd.youtube://www.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg?featureโ€ฆ"
twitterCardTypestring"summary"
twitterSiteHandlestring"@YouTube"
schemaDotOrgTypestring"http://schema.org/http://schema.org/YoutubeChannelV2"
noindexbooleanfalse
unlistedbooleanfalse
familySafebooleantrue
availableCountriesarray249 items ยท schema from #0 249 items
0string"S"
1string"B"
linkAlternatesarray3 items ยท schema from #0 3 items
hrefUrlstring"https://m.youtube.com/channel/UClAa0YLrW4MaIKOWaeZR9Xg"
shortsarray1 item ยท schema from #0 1 item
richItemRendererobject2 fields
contentobject1 field
reelItemRendererobject11 fields
videoIdstring"QnbR2fWyz3s"
headlineobject1 field
simpleTextstring"Please wait for it๐Ÿ˜‚ #Shorts"
thumbnailobject2 fields
thumbnailsarray1 item ยท schema from #0 1 item
urlstring"https://i.ytimg.com/vi/QnbR2fWyz3s/hq720_2.jpg?sqp=-oaymwEdCJUDENAFSFXโ€ฆ"
widthnumber405
heightnumber720
isOriginalAspectRatiobooleantrue
viewCountTextobject2 fields
accessibilityobject1 field
accessibilityDataobject1 field
labelstring"103K views"
simpleTextstring"103K views"
navigationEndpointobject3 fields
clickTrackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"
commandMetadataobject1 field
webCommandMetadataobject3 fields
urlstring"/shorts/QnbR2fWyz3s"
webPageTypestring"WEB_PAGE_TYPE_SHORTS"
rootVenumber37414
reelWatchEndpointobject7 fields
videoIdstring"QnbR2fWyz3s"
playerParamsstring"8AEByAMkuAQ0"
thumbnailobject2 fields
thumbnailsarray1 item ยท schema from #0 1 item
urlstring"https://i.ytimg.com/vi/QnbR2fWyz3s/frame0.jpg"
widthnumber576
heightnumber1024
isOriginalAspectRatiobooleantrue
overlayobject1 field
reelPlayerOverlayRendererobject5 fields
reelPlayerHeaderSupportedRenderersobject1 field
reelPlayerHeaderRendererobject7 fields
reelTitleTextobject1 field
runsarray2 items ยท schema from #0 2 items
textstring"Please wait for it๐Ÿ˜‚ "
timestampTextobject1 field
simpleTextstring"1 day ago"
channelNavigationEndpointobject3 fields
clickTrackingParamsstring"COoCEKunAiITCPHcxNzU8fwCFUawxAodH38M1Q=="
commandMetadataobject1 field
webCommandMetadataobject4 fields
urlstring"/@mmmjoemele"
webPageTypestring"WEB_PAGE_TYPE_CHANNEL"
rootVenumber3611
apiUrlstring"/youtubei/v1/browse"
browseEndpointobject3 fields
browseIdstring"UClAa0YLrW4MaIKOWaeZR9Xg"
paramsstring"8gYKCgiaAQCiAQIIAQ%3D%3D"
canonicalBaseUrlstring"/@mmmjoemele"
channelTitleTextobject1 field
runsarray1 item ยท schema from #0 1 item
textstring"mmmjoemele"
navigationEndpointobject3 fields
clickTrackingParamsstring"COoCEKunAiITCPHcxNzU8fwCFUawxAodH38M1Q=="
commandMetadataobject1 field
webCommandMetadataobject4 fields
urlstring"/@mmmjoemele"
webPageTypestring"WEB_PAGE_TYPE_CHANNEL"
rootVenumber3611
apiUrlstring"/youtubei/v1/browse"
browseEndpointobject3 fields
browseIdstring"UClAa0YLrW4MaIKOWaeZR9Xg"
paramsstring"8gYKCgiaAQCiAQIIAQ%3D%3D"
canonicalBaseUrlstring"/@mmmjoemele"
channelThumbnailobject1 field
thumbnailsarray3 items ยท schema from #0 3 items
urlstring"https://yt3.googleusercontent.com/2nwECW77iRSkoJM1TPMIKvM-9GBiHEk0XMD2โ€ฆ"
widthnumber48
heightnumber48
trackingParamsstring"COoCEKunAiITCPHcxNzU8fwCFUawxAodH38M1Q=="
accessibilityobject1 field
accessibilityDataobject1 field
labelstring"Please wait for it๐Ÿ˜‚ #Shorts mmmjoemele 1 day ago"
nextItemButtonobject1 field
buttonRendererobject1 field
trackingParamsstring"COkCEKikAiITCPHcxNzU8fwCFUawxAodH38M1Q=="
prevItemButtonobject1 field
buttonRendererobject1 field
trackingParamsstring"COgCEKmkAiITCPHcxNzU8fwCFUawxAodH38M1Q=="
stylestring"REEL_PLAYER_OVERLAY_STYLE_SHORTS"
trackingParamsstring"COcCELC1BCITCPHcxNzU8fwCFUawxAodH38M1Q=="
paramsstring"CDMwAg%3D%3D"
sequenceProviderstring"REEL_WATCH_SEQUENCE_PROVIDER_RPC"
sequenceParamsstring"GlMgAUJPCAAQARonogYkChhVQ2xBYTBZTHJXNE1hSUtPV2FlWlI5WGcQARoCCAAiAggAIhโ€ฆ"
menuobject1 field
menuRendererobject3 fields
itemsarray1 item ยท schema from #0 1 item
menuNavigationItemRendererobject5 fields
textobject1 field
runsarray1 item ยท schema from #0 1 item
textstring"Send feedback"
iconobject1 field
iconTypestring"FEEDBACK"
navigationEndpointobject3 fields
clickTrackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"
commandMetadataobject1 field
webCommandMetadataobject1 field
ignoreNavigationbooleantrue
userFeedbackEndpointobject1 field
additionalDatasarray2 items ยท schema from #0 2 items
userFeedbackEndpointProductSpecificValueDataobject2 fields
keystring"video_id"
valuestring"QnbR2fWyz3s"
trackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"
accessibilityobject1 field
accessibilityDataobject1 field
labelstring"Send feedback"
trackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"
accessibilityobject1 field
accessibilityDataobject1 field
labelstring"More actions"
trackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzVQPuey62fu7S7Qg=="
accessibilityobject1 field
accessibilityDataobject1 field
labelstring"Please wait for it๐Ÿ˜‚ #Shorts - 49 seconds - play video"
stylestring"REEL_ITEM_STYLE_AVATAR_CIRCLE"
videoTypestring"REEL_VIDEO_TYPE_VIDEO"
loggingDirectivesobject3 fields
trackingParamsstring"COYCEIf2BBgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"
visibilityobject1 field
typesstring"12"
enableDisplayloggerExperimentbooleantrue
trackingParamsstring"COUCEJmNBRgAIhMI8dzE3NTx_AIVRrDECh0ffwzV"

Response Codes

Status codes this endpoint can return, so you can handle errors before they surprise you in production.

200SuccessSuccessful Response
422Client ErrorValidation Error
491Client ErrorToken not found
492Client ErrorEmail not verified
493Client ErrorSubscription expired
495Client ErrorAll daily units used
500Server ErrorSomething went wrong

API Pricing

#returned_shorts / 10 units Cost per successful call to this endpoint.
Example Cases
1
Depth 1 Result: 53 shorts
6 units
2
Depth 5 but channel only has 20 shorts Result: 20 shorts
2 units
3
Depth 10 Result: 500 videos
50 units
4
Depth 50 Result: 2500 videos
250 units

Fetch Youtube Data at Scale

Monitor Shorts performance across multiple channels and identify what is gaining traction before it shows up on everyone else's radar.

deco-icon

Shorts Metrics

Get view counts and engagement data for every Short published.

deco-icon

Viral Tracking

Spot which Shorts are gaining traction before they peak.

deco-icon

Channel Filter

Isolate Shorts data separate from long-form channel videos.