Guide · channels · playlists · batch

Transcribe a whole YouTube channel

To search a creator's back catalogue, build a RAG index or study what works in a niche, you need every transcript, not one. It takes two calls.

Step 1: list the videos

/v1/videos takes a channel URL, an @handle, a /channel/UC... link or a playlist URL, and returns up to 500 videos (newest first for channels) for 1 credit:

curl -H "x-api-key: YOUR_KEY" \
  "https://api.transkrio.com/v1/videos?url=@veritasium&limit=200"

Step 2: get the transcripts, 50 at a time

Send the returned URLs to /v1/batch. Results keep the order you sent, and each item has ok plus the transcript or an error:

import os
import requests

API = "https://api.transkrio.com/v1"
HEADERS = {"x-api-key": os.environ["TRANSKRIO_API_KEY"]}

videos = requests.get(f"{API}/videos", headers=HEADERS, timeout=60,
                      params={"url": "@veritasium", "limit": 200}).json()["videos"]
urls = [v["url"] for v in videos]

done, retry = {}, []
for i in range(0, len(urls), 50):
    r = requests.post(f"{API}/batch", headers=HEADERS, timeout=300,
                      json={"urls": urls[i:i + 50], "format": "text"})
    for item in r.json()["results"]:
        if item["ok"]:
            done[item["video_id"]] = item["text"]
        elif item["error"]["code"] == "processing":
            retry.append(item)          # being transcribed from the audio: send again later

print(len(done), "transcripts,", len(retry), "still processing")

What it costs

StepCredits
List up to 500 videos1
Each video with captions1
Each video without captions1 per started minute of audio
Private, deleted or failed videos0

A channel with 200 captioned videos costs about 201 credits: the free key covers a small channel, and the $9 Starter plan (3,000 credits) covers a dozen typical ones. Results are cached, so running the script again for the same videos is fast.

Podcasts work the same way

Pass a podcast RSS feed or an Apple Podcasts show link to /v1/videos and you get its episodes, ready for /v1/batch. See the podcast transcription API.

Next

Put the transcripts in a vector database and ask questions over the whole channel: RAG over YouTube videos. Or do it from n8n or Claude via MCP without writing code.

Try it with 100 free credits No card needed. Failed requests are free and unused credits roll over.
Get free API key

FAQ

How much does it cost to transcribe a channel?

1 credit to list up to 500 videos, then 1 credit per video that has captions. Videos without captions are transcribed from the audio for 1 credit per started minute. Videos that fail cost nothing.

How many videos can I list?

Up to 500 per call, newest first for channels. For older videos, use the channel's playlists.

Can I do it without code?

Yes, with the n8n node: a list step followed by a transcript step, or ask Claude through the MCP server to do it for you.