YouTube Scraper logo

YouTube Scraper API

Extract YouTube search results, channel videos, channel shorts, watch-page metadata, and top-level comments as structured JSON.

Use Cases

Search Landscape Research

Collect normalized YouTube search results for a keyword and capture videos, channels, and playlists from the default results page.

Creator & Competitor Monitoring

Pull a channel's videos tab or shorts tab by channel URL, handle, or channel ID to track what creators are publishing.

Audience Feedback Analysis

Fetch top-level comments, like counts, reply counts, and author metadata to review how viewers are responding to specific videos.

Content Inventory Pipelines

Ingest structured YouTube metadata, links, thumbnails, view counts, and pagination into internal datasets and reporting workflows.

API Endpoints

Available endpoints for the YouTube Scraper API

POST /v1/youtube/channel/shorts

YouTube channel shorts

Fetch shorts from a YouTube channel shorts tab using the public web client sort chips and continuations.

Parameters

channel_id string YouTube channel ID (for example UCX6OQ3DkcsbYNE6H8uQQuVA).
channel_url string YouTube channel URL or tab URL. Handles like https://www.youtube.com/@MrBeast and channel IDs are normalized to the requested tab.
handle string YouTube channel handle, with or without the leading @.
pages number Number of pages to fetch (1-20).
sort string Shorts ordering: latest, popular, or oldest.
POST /v1/youtube/channel/videos

YouTube channel videos

Fetch videos from a YouTube channel videos tab using public web continuations.

Parameters

channel_id string YouTube channel ID (for example UCX6OQ3DkcsbYNE6H8uQQuVA).
channel_url string YouTube channel URL or tab URL. Handles like https://www.youtube.com/@MrBeast and channel IDs are normalized to the requested tab.
handle string YouTube channel handle, with or without the leading @.
pages number Number of pages to fetch (1-20).
POST /v1/youtube/livestreams

YouTube Livestreams API

Scrape public YouTube live video search results.

Parameters

limit integer Maximum number of results to return.
query string required Search query.
POST /v1/youtube/search

YouTube search

Search YouTube and return normalized mixed results from the default results page.

Parameters

pages number Number of search result pages to fetch (1-20).
query string required Search query string.
POST /v1/youtube/transcript

YouTube Transcript API

Fetch public YouTube caption transcript segments for a video.

Parameters

url string YouTube video URL.
video_id string YouTube video id.
POST /v1/youtube/video

YouTube video

Fetch a YouTube video page with normalized metadata and top-level comments.

Parameters

pages number Number of comment pages to fetch (1-20).
video_id string YouTube video ID.
video_url string YouTube video URL, short URL, or shorts URL.
POST /v1/youtube/video/comments

YouTube video comments

Fetch top-level comments for a YouTube video using the public watch page and comments continuations.

Parameters

pages number Number of comment pages to fetch (1-20).
video_id string YouTube video ID.
video_url string YouTube video URL, short URL, or shorts URL.

Frequently Asked Questions

Common questions about the YouTube Scraper API

Can I scrape channel videos and shorts separately?

Yes. The API has separate endpoints for a channel's videos tab and shorts tab. The shorts endpoint also supports `latest`, `popular`, and `oldest` sorting.

What does the search endpoint return?

It returns normalized mixed results from the default YouTube search page. Supported result types are `video`, `channel`, and `playlist`.

Do the comment endpoints return replies?

No. The current YouTube comment endpoints return top-level comments only. When available, each comment can include `reply_count`, but reply threads themselves are not expanded.

What identifiers can I use for channels and videos?

For channel endpoints you can provide a channel URL, handle, or channel ID. For video endpoints you can provide a video URL or a video ID.

What is the difference between `/youtube/video` and `/youtube/video/comments`?

`/youtube/video` returns normalized watch-page metadata plus top-level comments. `/youtube/video/comments` returns the comments-only payload when you do not need the video metadata.

Start scraping YouTube

Get your free API key