All endpoints
YouTube Video Details

YouTube Video Details API

Get detailed information about a YouTube video by URL or video ID. Returns title, full description, channel name and ID, publish date, duration, view count, category, keywords, and thumbnail.

Price: $0.005 per request
Free tier: 50 requests/month
Endpoint
GET /v1/youtube/video

Parameters

url *
YouTube video URL (watch?v=, youtu.be/, /shorts/, /embed/ or /live/ forms) or 11-character video ID

Response fields

video
Video data object
video_id
YouTube video ID
url
Link to the video
title
Video title
description
Full video description
author
Channel name
channel_id
YouTube channel ID
date
Date and time the video was published (UTC)
duration
Video length in seconds
views
Number of views
category
YouTube category (e.g. Music)
type
Video type as reported by YouTube (e.g. NORMAL)
is_live
Whether the video is a live stream
keywords
The video's tags
thumbnail
URL to the highest resolution thumbnail

Example Request

curl "https://apidirect.io/v1/youtube/video?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ" \
  -H "X-API-Key: YOUR_API_KEY"

Example Response

{
  "video": {
    "video_id": "dQw4w9WgXcQ",
    "url": "https://youtube.com/watch?v=dQw4w9WgXcQ",
    "title": "Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
    "description": "The official video for “Never Gonna Give You Up” by Rick Astley...",
    "author": "Rick Astley",
    "channel_id": "UCuAXFkgsw1L7xaCfnd5JJOw",
    "date": "2009-10-25 06:57:33",
    "duration": 213,
    "views": 1788679598,
    "category": "Music",
    "type": "NORMAL",
    "is_live": false,
    "keywords": ["rick astley", "Never Gonna Give You Up", "rick roll"],
    "thumbnail": "https://i.ytimg.com/vi_webp/dQw4w9WgXcQ/maxresdefault.webp"
  }
}

Frequently asked questions

How do I specify which video to look up?

Pass url with either a full video URL (watch?v=, youtu.be/, /shorts/, /embed/ and /live/ forms all work) or the bare 11-character video ID.

Does it work for Shorts and live streams?

Yes. Shorts return their details like any other video. For live streams, is_live is true and duration reflects the elapsed stream time so far.

What happens if the video doesn't exist?

The endpoint returns a 404 with code video_not_found. Requests that fail this way are not billed.

Where do I get video IDs?

Search videos by keyword with /v1/youtube/posts — each result includes video_id — or take the ID from any YouTube URL.

How does pricing work?

You only pay for successful requests. The YouTube Video Details API costs $0.005 per request. There are no monthly fees or commitments. You get 50 free requests per endpoint every month.

Do I need a credit card to start?

No. You can sign up and use the free tier (50 requests/endpoint/month) without adding a payment method. You only need to add a card when you want to exceed the free tier.

Are there rate limits?

Yes, there's a concurrency limit of 3 simultaneous requests per endpoint per user. If you need more, just get in touch.

Start using the YouTube Video Details API

Get your API key and start making requests in minutes. 50 requests/month free every month.

Get API Key