YouTube Batch Transcript Extractor
Submit multiple YouTube URLs for batch transcript extraction
/v1/youtube/transcript/batch
curl -X POST "https://youtube.toolkitapi.io/v1/youtube/transcript/batch" \
-H "Content-Type: application/json" \
-d '{"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ", "https://www.youtube.com/watch?v=jNQXAC9IVRw"], "lang": "en"}'
import httpx
resp = httpx.post(
"https://youtube.toolkitapi.io/v1/youtube/transcript/batch",
json={"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ", "https://www.youtube.com/watch?v=jNQXAC9IVRw"], "lang": "en"},
)
print(resp.json())
const resp = await fetch("https://youtube.toolkitapi.io/v1/youtube/transcript/batch", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ", "https://www.youtube.com/watch?v=jNQXAC9IVRw"], "lang": "en"}),
});
const data = await resp.json();
console.log(data);
# See curl example
{
"jobId": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
}
Try It Live
Description
How to Use
1. Send a POST request with a JSON body containing a `urls` array (1–20 YouTube video URLs or IDs) and an optional `lang` preference.
2. The API returns a `jobId` with a 202 status. Processing runs asynchronously.
3. Poll `GET /v1/youtube/transcript/batch/{jobId}` to check progress. Status transitions from `queued` → `active` → `completed`.
4. Once completed, iterate over the `results` array. Each item includes the video ID, status (`succeeded` or `failed`), and either transcript content or an error message.
About This Tool
The Batch Transcript Extractor lets you submit up to 20 YouTube video URLs in a single request for asynchronous transcript extraction. The API returns a job ID immediately, and you poll the status endpoint to retrieve results as they complete.
Use this when you need transcripts from multiple videos and want to avoid making individual API calls for each one. It's ideal for batch processing workflows like indexing a playlist, building a training dataset, or bulk-extracting captions for a content library.
Each video in the batch is processed independently — failures on individual videos don't affect the others. The status response includes per-video success/failure details and aggregate statistics.
Why Use This Tool
- Playlist transcription — Extract transcripts from all videos in a playlist in one batch
- Dataset building — Bulk-extract captions for machine learning training data
- Content library indexing — Process a backlog of video URLs for search indexing
- Translation pipeline — Batch-extract source language transcripts for translation workflows
- Channel archiving — Download transcripts for an entire channel's video catalogue
Frequently Asked Questions
What's the maximum batch size?
What happens if some videos fail?
How long does a batch job take?
How long are batch results retained?
Start using YouTube Batch Transcript Extractor now
Get your free API key and make your first request in under a minute.