You have a YouTube URL and you need the words. Maybe you are summarising competitor videos, feeding a RAG index, pulling quotes for a newsletter, or checking whether a creator actually said the thing in the thumbnail.
This is one call and one response. Pass the video URL or ID, get the transcript back as timed segments plus the full text. No pagination, no cursor, no cleanup pass.
The endpoint
YouTube
Transcript
GET /v1/youtube/transcript
Full transcript of any YouTube video or Short, time-coded and language-tagged.
1 credit per call · $1.50 per 1,000 calls · failed calls never charged
Full endpoint referenceMake the call
Put your key in FASTFETCHZ_KEY. The target below is a real one — it works as written.
curl "https://api.fastfetchz.com/v1/youtube/transcript?target=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DdQw4w9WgXcQ" \
-H "X-API-Key: $FASTFETCHZ_KEY"What comes back
Trimmed to the fields that matter. The full payload carries more.
{
"success": true,
"service": { "platform": "YouTube", "name": "Transcript" },
"credits_charged": 1,
"data": {
"video_id": "dQw4w9WgXcQ",
"language": "en",
"is_auto_generated": true,
"duration_seconds": 213,
"segments": [
{ "start": 0.0, "duration": 3.2, "text": "We're no strangers to love" },
{ "start": 3.2, "duration": 3.6, "text": "You know the rules and so do I" }
],
"text": "We're no strangers to love You know the rules and so do I ..."
}
}What it costs
1,000 transcripts ÷ 1 per call = 1,000 calls
1,000 calls × 1 credit = 1,000 credits
$2.90
Priced at the Starter pack rate: 10,000 credits for $29.00. Larger packs cost less per credit.
Auto-generated versus uploaded captions
Most videos only have machine captions. is_auto_generated: true tells you which you got. Auto captions have no punctuation and mangle names and jargon, which matters if you are doing entity extraction — clean them with an LLM pass before indexing, or accept the noise.
Videos with captions disabled return a 404. That is a failed call, and failed calls are never charged, so a batch of mixed URLs only costs you the ones that worked.
Building a searchable video archive
The usual pipeline: list a channel's videos, transcribe each one, embed the segments, and keep start on every chunk so a search result can deep-link to the exact second with &t=.
Transcribe once and store the result. Transcripts do not change, so a re-fetch is money you have already spent.