Tài liệu API

Một REST API cho transcript, tìm kiếm và metadata YouTube. Lấy API key từ dashboard của bạn — 100 tín dụng miễn phí, không cần thẻ.

Xác thực

Truyền API key của bạn dưới dạng bearer token, hoặc qua x-api-key:

Authorization: Bearer sk_live_...
# or
x-api-key: sk_live_...

URL Cơ sở

https://getyoutubetranscript.com/api/v1

Tín dụng & gói

GóiGiáTín dụng/thángGiá nạp thêmGiới hạn tốc độ
Miễn phí$0100 (một lần)60 req/phút
Hàng tháng$5.00/tháng1.000$2.50 / 1.000200 req/phút
Hàng năm$4.50/tháng ($54/năm)1.000$1.50 / 1.000300 req/phút

1 tín dụng = 1 request thành công. Request thất bại không bao giờ bị trừ. Tín dụng nạp thêm hết hạn sau 30 ngày kể từ khi mua hoặc vào cuối chu kỳ thanh toán hiện tại, tùy thời điểm nào đến sau, và yêu cầu gói đăng ký đang hoạt động để sử dụng.

Điểm cuối

GET/transcript1 tín dụng

Lấy transcript của một video YouTube, kèm metadata (tiêu đề, kênh, thumbnail).

Tham sốBắt buộcMô tả
vVideo ID hoặc URL YouTube đầy đủ
languageKhôngMã ngôn ngữ (mặc định: en)

Yêu cầu

curl "https://getyoutubetranscript.com/api/v1/transcript?v=jNQXAC9IVRw" \
  -H "Authorization: Bearer sk_live_..."

Phản hồi

{
  "success": true,
  "data": {
    "video_id": "jNQXAC9IVRw",
    "language_code": "en",
    "title": "Me at the zoo",
    "author_name": "jawed",
    "author_url": "https://www.youtube.com/channel/UC4Qob...",
    "thumbnail_url": "https://...",
    "transcript": "All right, so here we are...",
    "word_count": 39
  }
}
GET/search1 tín dụng / trang

Tìm kiếm video YouTube với bộ lọc và phân trang.

Tham sốBắt buộcMô tả
qTừ khóa tìm kiếm (tối thiểu 2 ký tự)
countryKhôngMã quốc gia 2 chữ cái (mặc định: us)
languageKhôngMã ngôn ngữ (mặc định: en)
page_tokenKhôngGiá trị pagination.next_page_token từ response trước, để lấy trang tiếp theo
limitKhôngSố kết quả tối đa (mặc định 20, tối đa 50)

Yêu cầu

curl "https://getyoutubetranscript.com/api/v1/search?q=lofi+beats" \
  -H "Authorization: Bearer sk_live_..."

Phản hồi

{
  "success": true,
  "data": {
    "query": "lofi beats",
    "video_results": [ { "title": "...", "videoId": "...", "channel": { "name": "..." } } ],
    "pagination": { "next_page_token": "..." }
  }
}
GET/resolveMiễn phí

Phân giải handle, URL hoặc username của một kênh thành channel ID thực. Đầu vào có cấu trúc sẵn (đã là channel ID hoặc URL chứa sẵn ID) được phân giải ngay lập tức, không cần gọi mạng; một handle trần sẽ kích hoạt một lượt tra cứu thực.

Tham sốBắt buộcMô tả
handleChannel ID, URL, hoặc @handle

Yêu cầu

curl "https://getyoutubetranscript.com/api/v1/resolve?handle=@mkbhd" \
  -H "Authorization: Bearer sk_live_..."

Phản hồi

{
  "success": true,
  "data": {
    "channel_id": "UCBJycsmduvYEL83R_U4JriQ",
    "title": "Marques Brownlee",
    "handle": "http://www.youtube.com/@mkbhd",
    "resolved_via": "scrape"
  }
}
GET/playlist1 tín dụng / trang

Lấy các video trong một playlist. Hiện chỉ trả về trang đầu tiên - has_more cho biết còn video khác không, nhưng lấy thêm trang tiếp theo chưa được hỗ trợ.

Tham sốBắt buộcMô tả
listPlaylist ID hoặc URL

Yêu cầu

curl "https://getyoutubetranscript.com/api/v1/playlist?list=PLxxx" \
  -H "Authorization: Bearer sk_live_..."

Phản hồi

{
  "success": true,
  "data": {
    "playlist_id": "PLxxx",
    "title": "...",
    "videos": [ { "position": 1, "id": "...", "title": "...", "channel": { "name": "..." } } ],
    "has_more": true
  }
}

Lỗi

Lỗi trả về một JSON body kèm trường code cố định để bạn phân nhánh xử lý, bên cạnh mã trạng thái HTTP:

Trạng tháiÝ nghĩa
400BAD_REQUESTThiếu hoặc sai tham số
401MISSING_API_KEY / INVALID_API_KEYKhông có key, hoặc key không hợp lệ/đã bị thu hồi
402PAYMENT_REQUIREDHết tín dụng - hãy nạp thêm hoặc nâng cấp gói
404VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUNDKhông tìm thấy video hoặc tài nguyên
429RATE_LIMITEDQuá nhiều request so với gói của bạn
503UPSTREAM_UNAVAILABLESự cố tạm thời từ upstream - có thể thử lại an toàn

Sắp ra mắt

Tìm kiếm trong một kênh, liệt kê toàn bộ video của một kênh, và phân trang đầy đủ cho playlist đang được phát triển. Theo dõi video mới qua RSS tạm thời không khả dụng do một sự cố không liên quan từ phía YouTube.

Dùng API này với một công cụ AI

Muốn để Claude (hoặc một công cụ AI coding khác) tự gọi API này thay vì tự viết request? Tải YouTube Transcript skill - một Claude Skill dựng sẵn, dạy nó cách lấy transcript, tìm kiếm, và nhiều hơn nữa.