YouTube API
Monitor YouTube channels and run async download, subtitle, and comment jobs.
Quick start
Create channel monitors for updates, then create asynchronous media jobs for videos that need download, subtitles, or comments.
curl -X POST "$SPIDER_API_BASE/v1/youtube/monitors" \
-H "Authorization: Bearer $SPIDER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"channel_id": "UC123",
"channel_url": "https://www.youtube.com/@example/videos",
"strategy": "auto",
"check_interval_seconds": 900,
"slow_check_interval_seconds": 43200,
"quiet_first_check": true
}'
curl -X POST "$SPIDER_API_BASE/v1/youtube/videos/abc123/subtitles" \
-H "Authorization: Bearer $SPIDER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"languages": ["en"],
"include_auto": true,
"format": "vtt"
}'
curl -X GET "$SPIDER_API_BASE/v1/youtube/media-jobs/ytjob_01j" \
-H "Authorization: Bearer $SPIDER_API_KEY"Authentication
Create and manage product API keys in Product Console settings. The docs page itself is public.
Response shape
The durable YouTube monitor, its target, settings, and per-strategy check state.
RSS and yt-dlp polling are peer monitoring strategies; auto runs both independently.
New video, updated video, reschedule, and monitor error events for downstream workflows.
The latest observed video records with first_seen_at and last_seen_at timestamps.
Download, subtitle, and ordinary comment extraction return 202 Accepted with queued media jobs instead of blocking public requests.
Completed media jobs expose server-owned artifact URLs plus paged subtitle and comment records under /v1/youtube.
Endpoint reference
OpenAPI-backed details for YouTube monitors, checks, events, videos, async media jobs, artifacts, subtitles, comments, and errors.
Interactive schemas, request bodies, response objects, and public error contracts load here.
