API Transkrip YouTube
Satu permintaan, transkrip lengkap. Bayar hanya untuk video yang Anda ambil.
Dapatkan kunci API gratis AndaMulai cepat
- Masuk dan buat kunci API di dasbor API. Anda mendapat 10 kredit gratis (5 transkrip).
- Kirim kunci di header X-API-Key bersama URL YouTube atau ID video.
- Beli paket kredit saat butuh lebih banyak, atau aktifkan isi ulang otomatis.
curl -X POST https://sum.video/api/v1/transcript \
-H "X-API-Key: sv_live_your_key" \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", "lang": "en"}'Permintaan
POST /api/v1/transcript
url: URL YouTube (tautan watch, youtu.be, shorts, embed, atau live). Gunakan ini atau video_id.video_id: ID video YouTube 11 karakter.lang: Bahasa subtitle pilihan, misalnya en, de, atau pt-BR. Bawaan en. Jika bahasa itu tidak ada, trek asli dikembalikan dan respons menyebutkan bahasa sebenarnya.format: json (segmen dengan stempel waktu, bawaan), text, atau srt.
import requests
response = requests.post(
"https://sum.video/api/v1/transcript",
headers={"X-API-Key": "sv_live_your_key"},
json={"video_id": "dQw4w9WgXcQ", "lang": "en", "format": "text"},
timeout=120,
)
print(response.json()["text"])const response = await fetch("https://sum.video/api/v1/transcript", {
method: "POST",
headers: { "X-API-Key": process.env.SUMVIDEO_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({ url: "https://youtu.be/dQw4w9WgXcQ" }),
});
const { segments, credits_remaining } = await response.json();Respons
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"is_generated": false,
"credits_used": 2,
"credits_remaining": 98,
"segments": [
{ "text": "We're no strangers to love", "offset": 18.64, "duration": 3.24 }
]
}Galat
| 401 | invalid_key | Kunci API tidak ada, salah, atau dicabut. |
| 400 | invalid_input | URL atau ID video tidak dapat dibaca. |
| 402 | insufficient_credits | Saldo Anda di bawah 2 kredit. |
| 402 | budget_exceeded | Anda telah mencapai batas kredit bulanan yang Anda tetapkan. |
| 404 | no_transcript | Video tidak memiliki subtitle, atau bersifat pribadi, siaran langsung, atau dihapus. Tidak ditagih. |
| 429 | rate_limited | Lebih dari 60 permintaan per menit pada satu kunci. Tunggu selama detik Retry-After. |
| 502 | upstream_error | YouTube tidak merespons tepat waktu. Tidak ditagih, coba lagi nanti. |
Cek saldo Anda
curl https://sum.video/api/v1/credits -H "X-API-Key: sv_live_your_key"Harga
Setiap transkrip seharga 2 kredit. Kredit tidak pernah kedaluwarsa. Pelanggan Pro mendapat 100 kredit bonus setiap bulan.
| Paket | Kredit | Transkrip | Harga | Per transkrip |
|---|---|---|---|---|
| Starter | 100 | 50 | US$4,49 | US$0,090 |
| Pro | 500 | 250 | US$13,99 | US$0,056 |
| Scale | 2.000 | 1.000 | US$37,99 | US$0,038 |
| Business | 5.000 | 2.500 | US$74,99 | US$0,030 |
Isi ulang otomatis, anggaran, dan peringatan
- Isi ulang otomatis membeli paket dengan kartu tersimpan Anda saat saldo turun di bawah ambang yang Anda pilih.
- Anggaran isi ulang bulanan membatasi berapa banyak yang dapat dibelanjakan isi ulang otomatis, dan batas kredit bulanan menghentikan permintaan saat tercapai.
- Peringatan email memberi tahu Anda saat saldo menipis, saat Anda mencapai 80% batas bulanan, atau saat isi ulang gagal.
Batas dan penggunaan wajar
60 permintaan per menit per kunci, hingga 5 kunci aktif per akun. API mengembalikan subtitle yang sudah ada di YouTube; API tidak mentranskripsi audio. Anda bertanggung jawab menggunakan transkrip sesuai hak pemilik video dan ketentuan YouTube.
FAQ
- Apakah saya membayar lagi untuk video yang sama?
- Ya, setiap permintaan yang berhasil seharga 2 kredit, tetapi video yang diulang dilayani dari cache kami dalam hitungan milidetik.
- Apa yang terjadi jika video tidak memiliki subtitle?
- Anda mendapat galat no_transcript dan tidak ada kredit yang dipotong.
- Apakah kompatibel dengan API transkrip lain?
- Permintaan dan respons mengikuti struktur umum url, lang, dan segments, jadi beralih biasanya hanya berarti mengganti URL dasar dan kunci.