YouTube Scraper
Scrape full channel data asynchronously and poll for results, or synchronously in one call.
Retrieve video data from a YouTube channel or single video. Returns public metadata (title, views, likes, duration, thumbnails) and optional comments. Transcript extraction is not available.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| url | string | Required | — | YouTube channel URL or video URL. Auto-detects single video vs. channel mode. |
| video_type | string | Optional | both | Type of videos to scrape: shorts, videos, or both |
| sort | string | Optional | recent | Sort order: recent or popular |
| max_videos | integer | Optional | 20 | Maximum videos to scrape (1–100) |
| include_comments | boolean | Optional | false | Include top comments for each video |
Poll for the result of a YouTube scraping job. Returns pending or processing while running, and the full video data when completed.
| Field | Type | Description |
|---|---|---|
| video_id | string | YouTube video ID |
| title | string | Video title |
| url | string | Full YouTube URL |
| thumbnail | string | Thumbnail image URL (highest resolution available) |
| view_count | integer | Total views |
| like_count | integer | Total likes |
| comment_count | integer | Total comments |
| duration_seconds | integer | Video length in seconds |
| duration_human | string | Human-readable duration (e.g. “3m 32s”) |
| publish_date | string | Publish date (ISO 8601) |
| channel | string | Channel name |
| channel_id | string | YouTube channel ID |
| comments | array|null | Top comments (only if include_comments: true) |
Synchronous YouTube channel scrape — no job queue, no polling. Returns channel metadata + videos (and optional comments) inline in ~2–5s, the same shape as the queued /api/youtube-scraper result. Transcripts are NOT supported here (use the queued endpoint for those).
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| url | string | Required | — | A YouTube channel URL (youtube.com or youtu.be). |
| video_type | string | Optional | both | shorts, videos, or both. |
| sort | string | Optional | recent | recent or popular. |
| max_videos | integer | Optional | 20 | 1–100. |
| include_comments | boolean | Optional | false | Include top comments per video. |
| max_comments | integer | Optional | 100 | 1–100, when include_comments is true. |
Bulk thumbnail download. Returns one ZIP of JPEG thumbnails (maxresdefault, or hqdefault when a video has no max-res asset), numbered in the order given. Pass either a list of videos, or a channel URL to scrape and zip in one call. Up to 100 per call. No credit cost.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| video_ids | array | string | Optional | — | Video IDs or video URLs, as a list or comma-separated string. Up to 100. |
| url | string | Optional | — | A YouTube channel URL, used when video_ids is not given. |
| video_type | string | Optional | both | With url: shorts, videos, or both. |
| sort | string | Optional | recent | With url: recent or popular. |
| max_videos | integer | Optional | 20 | With url: 1–100. |
Algrow
Shorts Channels