Docs/YouTube Videos
Docs / API reference
POST/v1/data/youtube/videos
YouTube Videos
Get a channel's uploads with view counts, duration, publish dates, and thumbnails. Use content_type to read long-form videos, shorts, past live streams, or all merged. Accepts @handle or UC... channel ID.
Execution model
Live request
Runtime depends on endpoint, target, pagination, rendering mode, and active plan limits.
Credit weight
Live catalog
Current weights are managed from the Data API Weights admin table and shown on pricing before use.
Parameters
| Name | Type | Requirement | Description |
|---|---|---|---|
| identifier | string | Required | Channel ID (UC...), @handle, or username. 1-100 characters. |
| content_type | "videos" | "shorts" | "live" | "all" | Optional | Which tab to read: videos (long-form), shorts, live (past streams), or all (videos + shorts merged, deduped). Shorts carry no publish date, so days is ignored for shorts; each short is returned with is_short=true. |
| limit | number | Optional | Maximum videos to return (1-1000). |
| days | number | Optional | Optional deep date window (1-90 days). Ignored for content_type=shorts (no publish date). |
| cursor | string | Optional | Opaque cursor from the previous response. Not supported for content_type=all. |
| max_pages | number | Optional | Maximum provider pages to scan (1-50). |
| country | string | Optional | YouTube country/region code (maps to gl). |
| language | string | Optional | YouTube result language. |
Request and response
curl -X POST "https://api.datablue.dev/v1/data/youtube/videos" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"identifier": "@mkbhd",
"content_type": "videos",
"limit": 5,
"days": 90,
"max_pages": 10,
"country": "us",
"language": "en"
}'Example response
{
"success": true,
"time_taken": 3.15,
"channel": "MKBHD",
"channel_id": "UCBJycsmduvYEL83R_U4JriQ",
"days": 90,
"date_filter_language": "en",
"reached_days_ago": 21,
"count": 5,
"complete": false,
"stop_reason": "return_limit_reached",
"pages_fetched": 1,
"next_cursor": "dbyt1.eyJraW5kIjoidmlkZW9zIn0.signature",
"scanned_count": 20,
"matched_count": 20,
"duplicate_count": 0,
"videos": [
{
"video_id": "dQw4w9WgXcQ",
"title": "The BEST Smartphones of 2026!",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"views": 4200000,
"views_text": "4.2M views",
"views_count_status": "rounded",
"published": "2 weeks ago",
"duration": "22:14",
"duration_seconds": 1334,
"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg",
"description": "Ranking the top smartphones I've tested this year...",
"is_short": false
}
]
}