YouTube Scraper

Scrape full channel data asynchronously and poll for results, or synchronously in one call.

llms.txt Full docs for LLMs

POST /api/youtube-scraper

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.

Request Body (JSON)
NameTypeRequiredDefaultDescription
urlstringRequiredYouTube channel URL or video URL. Auto-detects single video vs. channel mode.
video_typestringOptionalbothType of videos to scrape: shorts, videos, or both
sortstringOptionalrecentSort order: recent or popular
max_videosintegerOptional20Maximum videos to scrape (1–100)
include_commentsbooleanOptionalfalseInclude top comments for each video
Example Request
# Retrieve a channel's most popular videos with comments curl -X POST "https://api.algrow.online/api/youtube-scraper" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://www.youtube.com/@MrBeast", "video_type": "videos", "sort": "popular", "max_videos": 10, "include_comments": true }'
Response 200 200
{ "success": true, "job_id": 4521, "mode": "channel", "message": "Scraping job queued. Poll /api/youtube-scraper/{job_id} for results." }
200 Queued 400 Invalid URL 401 Auth failed 403 Pro/Ultimate required
GET /api/youtube-scraper/:job_id

Poll for the result of a YouTube scraping job. Returns pending or processing while running, and the full video data when completed.

Example Request
curl "https://api.algrow.online/api/youtube-scraper/4521" \ -H "Authorization: Bearer YOUR_API_KEY"
Completed Response 200 200
{ "success": true, "job_id": 4521, "status": "completed", "created_at": "2026-03-24T10:30:00", "completed_at": "2026-03-24T10:31:15", "result": { "total_videos": 10, "total_views": 1250000000, "total_likes": 42000000, "videos": [ { "video_id": "dQw4w9WgXcQ", "title": "Video Title Here", "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg", "view_count": 250000000, "like_count": 8500000, "comment_count": 2100000, "duration_seconds": 212, "duration_human": "3m 32s", "publish_date": "2025-10-15T14:00:00Z", "channel": "MrBeast", "channel_id": "UCX6OQ3DkcsbYNE6H8uQQuVA", "comments": [ { "author": "@user123", "text": "Great video!", "likes": 5200, "published_time": "2 months ago" } ] } ] } }
Response Fields (per video)
FieldTypeDescription
video_idstringYouTube video ID
titlestringVideo title
urlstringFull YouTube URL
thumbnailstringThumbnail image URL (highest resolution available)
view_countintegerTotal views
like_countintegerTotal likes
comment_countintegerTotal comments
duration_secondsintegerVideo length in seconds
duration_humanstringHuman-readable duration (e.g. “3m 32s”)
publish_datestringPublish date (ISO 8601)
channelstringChannel name
channel_idstringYouTube channel ID
commentsarray|nullTop comments (only if include_comments: true)
200 Success 401 Auth failed 404 Job not found
POST /api/youtube-scraper-fast

Synchronous YouTube channel scrape via the Data API v3 — 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).

Request Body (JSON)
NameTypeRequiredDefaultDescription
urlstringRequiredA YouTube channel URL (youtube.com or youtu.be).
video_typestringOptionalbothshorts, videos, or both.
sortstringOptionalrecentrecent or popular.
max_videosintegerOptional201–100.
include_commentsbooleanOptionalfalseInclude top comments per video.
max_commentsintegerOptional1001–100, when include_comments is true.
Example Request
curl -X POST "https://api.algrow.online/api/youtube-scraper-fast" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"url": "https://youtube.com/@MrBeast", "video_type": "videos", "max_videos": 20}'
Response 200 200
{ "success": true, "status": "completed", "result": { … channel + videos … } }
200 Success 400 Validation error 401 Auth failed 503 Quota exhausted
esc
×

Buy More Credits

Boost
150
credits
$4.99
Good for:
  • ~12 min caption removal
Studio
1,000
credits
$31.49
Good for:
  • ~80 min caption removal
Custom amount 600 credits · $19.96
1506,000