The same engine that powers the free web tool is available as a plain REST API — no YouTube Data API key, no OAuth setup, no quota management on your side. One Authorization: Bearer header and you are in.
Why this instead of the official YouTube Data API?
The official YouTube Data API v3 caption endpoints are limited to videos you own. For everyone else, the options are brittle scraping of YouTube's innertube endpoints or a hosted transcript service. This API does the innertube work for you — reliably, at scale, and with a fallback to AI transcription when captions do not exist.
Quick start
- Create a free account and generate a Bearer key in the API dashboard (shown once — store it).
- Call the transcript endpoint:
curl "https://<host>/api/transcript?url=https://youtu.be/dQw4w9WgXcQ&format=srt" \ -H "Authorization: Bearer ***"
- Swap
formatfortxt,vtt,csv,bi-srt, orjson; addlang=fito translate.
Endpoints at a glance
| Endpoint | What it does | Cost |
|---|---|---|
GET /api/transcript | Fetch one transcript (captions or ASR) | 1 credit |
GET /api/asr/job | Poll an ASR job until done | free |
POST /api/batch | Up to 25 videos, or a playlist URL | 1 / success |
GET /api/batch/status | Batch progress | free |
GET /api/batch/download | Combined or per-video files | free |
GET/POST/DELETE /api/keys | Manage your Bearer keys | free |
Pricing
| Action | Cost |
|---|---|
| Caption fetch / ASR job start | 1 credit |
| Translation | 1 credit / 2,500 chars |
| ASR | 1 credit / 90 s of audio |
| Batch item (success only) | 1 credit |
Plans: Basic €9/mo (1,200 credits), Pro €29/mo (4,000 credits), Business €79/mo (unlimited). Every failed fetch is free — you only pay for transcripts you actually get.
Typical integrations
- LLM pipelines — transcript → summarize, quote, or RAG-index, without touching audio. Walkthrough on the transcripts for LLMs page (REST + MCP).
- Content repurposing — video to blog post to social thread, automated nightly.
- Research tooling — bulk-transcribe a corpus of talks for analysis.
- Accessibility — generate SRT/VTT for videos that lack captions, in the languages you need.
Full reference — parameters, error codes, and the key manager — lives on the API docs page.
Frequently asked questions
Do I need a Google/YouTube Data API key?
No. The API reads caption tracks directly from YouTube's own data — there is no Google Data API quota, no project setup, and no OAuth dance on your side. You only need a key for our API.
How is pricing structured?
Credit-based: 1 credit per transcript fetch, 1 credit per 2,500 translated characters, 1 credit per 90 seconds of ASR audio, and 1 credit per successful batch item. Failed fetches are never charged. Plans start at €9/month.
What formats can the API return?
JSON (segments with start/duration/text) by default, or TXT, SRT, VTT, CSV, and bilingual SRT (original + translated two-line cues, format=bi-srt&lang=TARGET) rendered server-side. Same output whether you call from the web UI or the API.
Does it handle videos without captions?
Yes — pass source=asr (or auto) and the audio is transcribed with a Whisper-class model. ASR is async: the call returns a 202 with a job ID, you poll the job endpoint until it is done.
Can I bias the transcription toward specific terms (jargon, product names)?
Yes. For local-file ASR (POST /api/upload), send an X-Initial-Prompt header with your word list — comma- or newline-separated, up to ~50 terms. It's passed to Whisper as an initial prompt, which nudges the model to keep your exact spelling for technical terms.
Can I batch videos?
Yes — POST /api/batch with up to 25 URLs or a playlist link. Failed items are isolated and free; results persist for 24 hours.