Returns the profile of a YouTube channel: name, subscriber count (subscribers), avatar images, total videos and views, join date, tags, and linked socials such as Twitter and Instagram. Identify the channel by channelId, handle, or full URL. Where available it also includes country, email and links to external stores; contact fields reflect what the channel published on its public profile.
Query parameters
channelId
string
YouTube channel ID. Provide this, a handle, or a URL.
handle
string
YouTube channel handle. Provide this, a channelId, or a URL.
url
string
Full YouTube channel URL. Provide this, a channelId, or a handle.
cache_max_age
string
Accept a stored response up to this age. Inside that window the answer is free and comes back with cached: true and a cached_at time; past it, the request runs live for 1 request.
Lists a channel's uploaded videos page by page. Each video has its title, URL, publish date, thumbnail, duration, view count (views) and description. Choose latest or popular ordering and follow continuationToken to walk the full list. You can optionally request extras such as comment count, like count and description per video.
Query parameters
channelId
string
YouTube channel ID.
handle
string
YouTube channel handle.
sort
string
Ordering of results: latest or popular.
latestpopular
continuationToken
string
Token for the next page, taken from continuationToken in the previous response.
is_paid_promotions
string
Pass 'true' to query YouTube's public search surface for paid product placement, sponsorship and endorsement; results are regular videos whose creator declared a paid promotion. Not combinable with uploadDate, filter, type, sortBy, duration, or includeExtras.
includeExtras
string
Adds like count, comment count and description to each video; use /v1/youtube/video for full details.
{
"success": true,
"credits_charged": 1,
"videos": [
{
"type": "video",
"id": "5EWaxmWgQMI",
"url": "https://www.youtube.com/watch?v=5EWaxmWgQMI",
"title": "Russell Wilson Hopes To Finish Career As A Steeler, Reflects On NFL Career With Pat McAfee",
"description": "Welcome to The Pat McAfee Show LIVE from Noon-3PM EST Mon-Fri. You can also find us live on ESPN, ESPN+, & TikTok!\n\nBecome a #McAfeeMafia member! https://www.youtube.com/channel/UCxcTeAKWJca6XyJ37_...",
"thumbnail": "https://i.ytimg.com/vi/5EWaxmWgQMI/hqdefault.jpg?sqp=-oaymwEnCNACELwBSFryq4qpAxkIARUAAIhCGAHYAQHiAQoIGBACGAY4AUAB&rs=AOn4CLBZIBEJGcYDrduIZJpaSmYHcIHJ6g",
"channel": {
"title": "",
"thumbnail": null
},
"viewCountText": "110,447 views",
"viewCountInt": 110447,
"publishedTimeText": "9 days ago",
"publishedTime": "2025-01-23T22:48:53.914Z",
"lengthText": "37:25",
"lengthSeconds": 2245,
"badges": []
}
],
"continuationToken": "4qmFsgLlFhIYV...."
}
Returns the playlists shown on a channel's Playlists tab, each with playlist ID, title, video count, thumbnail, channel info and playlist URL, plus continuationToken if more results exist. Start with a handle or channelId, then send continuationToken to fetch further pages.
Query parameters
channelId
string
YouTube channel ID.
handle
string
YouTube channel handle.
continuationToken
string
Token for the next page of playlists, from continuationToken in the previous response.
Returns current and past streams from a channel's Live tab, each with title, URL, view count, thumbnail, duration and publish time, plus continuationToken if more results exist. Start with a handle or channelId, then send continuationToken to fetch further pages.
Query parameters
channelId
string
YouTube channel ID.
handle
string
YouTube channel handle.
continuationToken
string
Token for the next page of streams, from continuationToken in the previous response.
Returns posts from a channel's Posts tab, each with post ID, URL, content, images, like count, any attached video, publish time and channel info, plus continuationToken if more results exist. Start with a handle or channelId, then send continuationToken to fetch further pages.
Query parameters
channelId
string
YouTube channel ID.
handle
string
YouTube channel handle.
continuationToken
string
Token for the next page of posts, from continuationToken in the previous response.
Lists a channel's Shorts page by page in the shorts array. Each short has title, URL, likes, view count (views), comments, description and publishDate. publishDate is an ISO 8601 timestamp including the offset if YouTube reveals the precise time, and null otherwise; date-only strings are never returned. Order by newest or popular and follow continuationToken to reach the rest.
Query parameters
handle
string
YouTube channel handle. Provide this or channelId.
channelId
string
YouTube channel ID. Provide this or handle.
sort
string
Ordering of results: newest or popular.
newestpopular
continuationToken
string
Token for the next page, taken from continuationToken in the previous response.
{
"success": true,
"credits_charged": 1,
"videos": [],
"channels": [],
"playlists": [],
"shorts": [
{
"type": "short",
"id": "VREVC0wXPfs",
"url": "https://www.youtube.com/watch?v=VREVC0wXPfs",
"title": "This idea validation formula has made him $500K from iOS apps",
"thumbnail": "https://img.youtube.com/vi/VREVC0wXPfs/maxresdefault.jpg",
"viewCountText": "17,066",
"viewCountInt": 17066,
"description": "Most founders think their app isn’t selling because of market conditions.\n\nIt’s not.\n\nThis founder sold multiple apps and noticed the same pattern every time: Great products but broken deals.\n\nNot because the app was bad but because founder…",
"commentCountText": "2",
"commentCountInt": 2,
"likeCountInt": 495,
"likeCountText": "495",
"publishDate": "2026-04-22T10:44:35-07:00",
"genre": "People & Blogs",
"durationMs": 37000,
"durationFormatted": "00:00:37"
}
],
"shelves": [],
"lives": [],
"continuationToken": "4qmFsgK7DBIY....."
}
Returns full metadata for a YouTube video or a Short: title, description, thumbnail, duration, publish date, view count (views), comment count, like count (likes), keywords, genre, collaborators, chapters, and the available caption tracks. isPaidPromotion is true when YouTube flags paid promotion and false otherwise. Recommended videos appear in watchNextVideos alongside the uploader's channel info. When YouTube publishes its Most replayed graph publicly, most_replayed contains normalized buckets under markers and the spans YouTube highlights under ranges; otherwise it is null. According to YouTube the graph can be missing if the channel carries active strikes, the content might be inappropriate, the video is very new or has few views, or it is ineligible for other reasons, and YouTube publishes no fixed age or view thresholds. Because the API reads YouTube only as a logged-out visitor, age-restricted videos fail with a 403 whose message is "This video is age restricted".
Query parameters
url
stringrequired
Link to the YouTube video or short.
language
string
Two-letter language code such as 'en', 'es' or 'fr', sent as Accept-Language. YouTube localisation may ignore it.
cache_max_age
string
Accept a stored response up to this age. Inside that window the answer is free and comes back with cached: true and a cached_at time; past it, the request runs live for 1 request.
Returns the public captions or subtitles of a YouTube video or Short, both as an array of timestamped segments with start and end times and as plain text in transcript_only_text. You can request a specific language. Any video length works as long as YouTube publishes captions; there is no two-minute AI transcription fallback here. When no matching caption track exists, the transcript fields are null.
Query parameters
url
stringrequired
Link to the YouTube video or short.
language
string
Two-letter language code such as 'en', 'es' or 'fr'. The transcript is null if that language is unavailable.
cache_max_age
string
Accept a stored response up to this age. Inside that window the answer is free and comes back with cached: true and a cached_at time; past it, the request runs live for 1 request.
{
"success": true,
"credits_charged": 1,
"videoId": "bjVIDXPP7Uk",
"type": "video",
"url": "https://www.youtube.com/watch?v=bjVIDXPP7Uk",
"transcript": [
{
"text": "welcome back to the hell farm and the",
"startMs": "160",
"endMs": "1920",
"startTimeText": "0:00"
}
],
"transcript_only_text": "welcome back to the hell farm and the backyard trails we built these jumps two years ago and last year we just kind of rebuilt them and this year......",
"language": "English"
}
Detects YouTube's paid-promotion disclosure on a video and identifies the likely sponsors or promoted brands from the description, its links, promo-code text and the transcript. Each sponsor comes with a confidence score and supporting evidence.
Query parameters
url
stringrequired
Link to the YouTube video or short.
language
string
Two-letter language code such as 'en', 'es' or 'fr', used when fetching the transcript.
Runs a YouTube keyword search and returns matching videos, shorts, channels, playlists, live streams and shelves. Video results carry title, URL, thumbnail, duration, publish date, view count (views), badges and channel info. Narrow by upload date, order by relevance or popularity, and page via continuationToken. With is_paid_promotions=true, results are limited to videos that carry the paid product placement or sponsorship disclosure.
Query parameters
query
stringrequired
Search terms. For tighter title matching, apply the intitle: operator, e.g. intitle:"Foursquare Swarm"; quoted queries alone can still be widened by YouTube when few fresh exact matches exist.
uploadDate
string
Restrict results to an upload window.
todaythis_weekthis_monththis_year
sortBy
string
Result ordering: relevance or popular.
relevancepopular
type
string
Kind of result to return.
videosshortschannelsplaylists
duration
string
Video length bucket. Applies to regular videos only, not shorts.
under_3_minbetween_3_and_20_minover_20_min
region
string
Two-letter country code to localise results.
continuationToken
string
Token for the next page, taken from continuationToken in the previous response.
includeExtras
string
Adds like count, comment count and description per video, at a small speed cost. Use /v1/youtube/video for full details.
Returns the autocomplete suggestions YouTube shows as someone types in the search box. Every suggestion has its text and a flag telling you whether it is a plain query or a channel. Channel suggestions also include the channel's public ID, handle, name and thumbnail.
Finds YouTube content tagged with a given hashtag. Each video includes title, URL, duration, thumbnail, publish date, view count (views) and channel info. Choose all content types or shorts only, and page with continuationToken.
Query parameters
hashtag
stringrequired
The hashtag to look up.
continuationToken
string
Token for the next page, taken from continuationToken in the previous response.
Returns comments and replies on a YouTube video with text, author details, reply count, like count and publish date. Order by top or newest and page with continuationToken. Coverage stops at about 1,000 comments in top order, or 7,000 in newest order.
Query parameters
url
stringrequired
Link to the YouTube video.
continuationToken
string
Token for the next page, taken from continuationToken in the previous response.
{
"success": true,
"credits_charged": 1,
"comments": [
{
"id": "UgwVfRopfS2F-WB3aF14AaABAg",
"content": "I love how in the middle he said \"I've been able to work with 2 great coaches... Pete and Coach Tomlin\"... Side shade to Coach Sean Payton, love it :)",
"publishedTimeText": "9 days ago",
"publishedTime": "2025-01-23T23:14:02.948Z",
"replyLevel": 0,
"author": {
"name": "@SimonT80",
"channelId": "UC8JC3uSUmmXTCTKl-bgr1DA",
"isVerified": false,
"isCreator": false,
"avatarUrl": "https://yt3.ggpht.com/ytc/AIdro_lQ_2v9lDqwRrmdvEBfDNyFOvgQICl68X6WFkwZ5KI=s88-c-k-c0x00ffffff-no-rj",
"channelUrl": "https://youtube.com/@SimonT80"
},
"engagement": {
"likes": 110,
"replies": 5
},
"repliesContinuationToken": "Eg0SC2RRdzR3OVdnWGNRGAYy1AEK..."
}
],
"continuationToken": "Eg0SCzVFV2F4bVd...."
}
Returns the replies to one YouTube comment, each with text, like count, publish date and author details (name, avatar, channel ID, verified and creator flags). Start with the 'repliesContinuationToken' value found on a comment from the Comments endpoint, then use the continuationToken in each response to keep paging.
Query parameters
continuationToken
stringrequired
For the first page, a comment's 'repliesContinuationToken' (Comments endpoint); for later pages, 'continuationToken' from the last replies response.
Returns about 48 Shorts that are trending on YouTube right now. Each short includes title, URL, thumbnail, duration, keywords, publish date, channel info, comment count, like count (likes) and view count (views). Calling again yields a new, different batch.
Returns every video in a YouTube playlist together with the playlist title, owner info and total video count. Each video lists its title, URL, duration, thumbnail and channel. Identify the playlist by the ID in the URL's 'list' parameter.
Query parameters
playlist_id
stringrequired
Playlist ID, i.e. the value of the 'list' parameter in a YouTube URL.
Returns one YouTube community post in full: its text, like count, attached images, publish date and channel info. If the post links a video, that video is included as well.
{
"success": true,
"credits_charged": 1,
"id": "Ugkxvj2KoApYAXoqLWnKVr6zZe5JjeHrQeP8",
"channel": {
"id": "UChhw6DlKKTQ9mYSpTfXUYqA",
"title": "Starter Story",
"url": "https://www.youtube.com/@starterstory",
"handle": "starterstory"
},
"content": "How to build something meaningful\n\n1. sit down\n2. set a timer for 2 hours\n3. work\n4. do that over and over and over\n\nNOTHING meaningful was built in a day, a week, or even a month\n\nyou should launch quickly, but the work can't end there\n\nsu…",
"images": [
"https://yt3.ggpht.com/uer4ij-RqnTqudtdT5VZNvEjzVXA3PGLHwNpjMfraB7mfbX_Bm0-fSpaFXkfw3EA4uZ7BY8YPa1gU08=s640-c-fcrop64=1,20000000dfffffff-rw-nd-v1"
],
"likeCount": 759,
"publishedTimeText": "5 days ago",
"publishedTime": "2025-11-07T18:49:57.492Z",
"video": null
}