Dokumentasi API
REST API untuk transkrip, pencarian, dan metadata YouTube. Dapatkan API key dari dashboard Anda — 100 kredit gratis, tanpa perlu kartu.
Autentikasi
Sertakan API key Anda sebagai bearer token, atau melalui x-api-key:
Authorization: Bearer sk_live_...
# or
x-api-key: sk_live_...URL Dasar
https://getyoutubetranscript.com/api/v1Kredit & paket
| Paket | Harga | Kredit/bulan | Harga top-up | Batas laju |
|---|---|---|---|---|
| Gratis | $0 | 100 (sekali saja) | — | 60 req/menit |
| Bulanan | $5,00/bulan | 1.000 | $2,50 / 1.000 | 200 req/menit |
| Tahunan | $4,50/bulan ($54/tahun) | 1.000 | $1,50 / 1.000 | 300 req/menit |
1 kredit = 1 request yang berhasil. Request yang gagal tidak pernah dikenakan biaya. Kredit top-up kedaluwarsa 30 hari setelah pembelian atau di akhir periode penagihan Anda saat ini, mana yang lebih lambat, dan memerlukan langganan aktif untuk dapat digunakan.
Endpoint
/transcript1 kreditAmbil transkrip untuk video YouTube, lengkap dengan metadata (judul, channel, thumbnail).
| Parameter | Wajib | Deskripsi |
|---|---|---|
v | Ya | ID video atau URL YouTube lengkap |
language | Tidak | Kode bahasa (default: en) |
Permintaan
curl "https://getyoutubetranscript.com/api/v1/transcript?v=jNQXAC9IVRw" \
-H "Authorization: Bearer sk_live_..."Tanggapan
{
"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
}
}/search1 kredit / halamanCari video YouTube dengan filter dan pagination.
| Parameter | Wajib | Deskripsi |
|---|---|---|
q | Ya | Kata kunci pencarian (minimal 2 karakter) |
country | Tidak | Kode negara 2 huruf (default: us) |
language | Tidak | Kode bahasa (default: en) |
page_token | Tidak | next_page_token dari pagination response sebelumnya, untuk mengambil halaman berikutnya |
limit | Tidak | Jumlah hasil maksimal (default 20, maks 50) |
Permintaan
curl "https://getyoutubetranscript.com/api/v1/search?q=lofi+beats" \
-H "Authorization: Bearer sk_live_..."Tanggapan
{
"success": true,
"data": {
"query": "lofi beats",
"video_results": [ { "title": "...", "videoId": "...", "channel": { "name": "..." } } ],
"pagination": { "next_page_token": "..." }
}
}/resolveGratisUbah handle, URL, atau username channel menjadi ID channel sebenarnya. Input yang sudah bersifat sintaktis (sudah berupa ID channel atau URL yang mengandung ID) langsung terselesaikan tanpa panggilan jaringan; handle biasa akan memicu satu kali pencarian nyata.
| Parameter | Wajib | Deskripsi |
|---|---|---|
handle | Ya | ID channel, URL, atau @handle |
Permintaan
curl "https://getyoutubetranscript.com/api/v1/resolve?handle=@mkbhd" \
-H "Authorization: Bearer sk_live_..."Tanggapan
{
"success": true,
"data": {
"channel_id": "UCBJycsmduvYEL83R_U4JriQ",
"title": "Marques Brownlee",
"handle": "http://www.youtube.com/@mkbhd",
"resolved_via": "scrape"
}
}/playlist1 kredit / halamanAmbil video dalam sebuah playlist. Saat ini hanya mengembalikan halaman pertama - has_more menunjukkan apakah masih ada video lain, tetapi mengambil halaman tambahan belum didukung.
| Parameter | Wajib | Deskripsi |
|---|---|---|
list | Ya | ID atau URL playlist |
Permintaan
curl "https://getyoutubetranscript.com/api/v1/playlist?list=PLxxx" \
-H "Authorization: Bearer sk_live_..."Tanggapan
{
"success": true,
"data": {
"playlist_id": "PLxxx",
"title": "...",
"videos": [ { "position": 1, "id": "...", "title": "...", "channel": { "name": "..." } } ],
"has_more": true
}
}Error
Error mengembalikan body JSON dengan field code yang stabil untuk pencabangan logika, selain status HTTP-nya:
| Status | Kode | Arti |
|---|---|---|
| 400 | BAD_REQUEST | Parameter hilang atau tidak valid |
| 401 | MISSING_API_KEY / INVALID_API_KEY | Tidak ada key yang diberikan, atau key tidak valid/dicabut |
| 402 | PAYMENT_REQUIRED | Kredit habis - beli top-up atau upgrade |
| 404 | VIDEO_UNAVAILABLE / TRANSCRIPT_NOT_FOUND | Video atau resource tidak ditemukan |
| 429 | RATE_LIMITED | Terlalu banyak request untuk tingkat paket Anda |
| 503 | UPSTREAM_UNAVAILABLE | Masalah sementara di sisi upstream - aman untuk dicoba ulang |
Segera hadir
Pencarian di dalam channel, daftar semua video dalam sebuah channel, dan pagination playlist penuh sedang dalam pengembangan. Pelacakan upload baru via RSS untuk sementara tidak tersedia karena masalah yang tidak terkait di pihak YouTube.
Menggunakan API ini dengan tool AI
Lebih suka membiarkan Claude (atau tool AI coding lain) memanggil API ini untuk Anda daripada menulis request secara manual? Unduh Skill YouTube Transcript - sebuah Claude Skill siap pakai yang mengajarkannya cara mengambil transkrip, mencari, dan lainnya.