Get full video info
getVideoInfo(id, query?, options?): Video
GET
https://api.ytapi.dev/v1/videos/{id}/video-info
1 Credit
Complete video metadata lookup. Returns everything in basic-info, plus description, view/like counts, publish date, thumbnails, keywords, timestamped chapters, engagement heatmap (most-replayed segments), and richer channel metrics. 1 credit per successful response.
Credits
Successful video-info responses deduct 1 credit. Failed lookups are not billed.
Security
API Key
All requests require a valid API key from the developer dashboard.
Headers: Authorization: Bearer YOUR_API_KEYorX-API-Key: YOUR_API_KEY
See Authentication for headers and rate limits.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
idpath | string | Yes | 11-character YouTube video ID or video URL. |
Response (HTTP 200)
{
"video_id": string, // Echoed YouTube video ID
"title": string, // Video title
"description": string, // Full video description
"length_seconds": number, // Duration in seconds
"view_count": number, // Current view count
"like_count": number, // Current like count
"published": number, // Unix timestamp (seconds) of publish date
"keywords": string[], // Video tags / keywords
"channel": { // Channel metadata
"id": string, // Canonical channel ID
"title": string, // Channel display name
"url": string, // Channel URL
"subscribers": string, // Subscriber count text (e.g. "1.69M subscribers")
"avatar_url": string // Channel avatar image URL
},
"thumbnails": [ // Thumbnail variants
{
"url": string,
"width": number,
"height": number
}
],
"available_languages": [ // Available caption tracks
{
"code": string, // ISO language code (e.g. "en")
"name": string, // Display name
"kind": string // "asr" or "manual"
}
],
"chapters": [ // Timestamped chapters (omitted if none)
{
"title": string, // Chapter title
"start_time_seconds": number, // Start offset in seconds
"time_description": string // Formatted time string (e.g. "0:00")
}
]
}