YouTube Channel Videos API
Channel uploads with cursor pagination — exact publishedAt from reel_item_watch (same as channel-shorts).
Send a channel URL, @handle, or UC… id and get uploads as clean JSON with nextCursor + hasMore. Pass nextCursor as cursor for page 2+. Each row shares the channel-shorts / playlist-videos shape: exact publishedAt from reel/reel_item_watch microformat (not publishedTimeApprox), publishedTimeText from the shelf label, viewCount + viewCountIsApproximate, durationSeconds + durationFormatted, genre, badges, thumbnailUrl, and nested channel{}. commentCount* appears only on Shorts rows (channel-shorts). Optional fast=true uses YouTube RSS (exact publishedAt, thinner metadata, no cursor). Flat 2 credits on the native path.
Request
- Base URL: https://api.captapi.com
- URL: https://api.captapi.com/v1/youtube/channel-videos
- Auth: one of:
- HTTP bearer
- API key in header X-API-Key
Query parameters
YouTube channel URL, @handle, bare handle, or UC... channel ID, e.g. https://youtube.com/@handle or @mkbhd. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
Max items to return (default 20, max 200). Flat 2 credits per call.
Pagination cursor. Leave empty for the first page; then pass the nextCursor value returned in the previous response.
Set true to use YouTube RSS for faster results with less detailed metadata. Leave false when viewCount/duration quality matters.
Set true to serve from the 24h response cache (0 credits on hit). Default false — always fetch fresh.
Response
Success. The data object for this endpoint.
Changes
No recorded changes to this operation across all 3 revisions of this API.