YouTube transcript SDKs for Python and JavaScript
Add transcripts, separate AI summaries, search and channel data to your app. Both SDKs cover all 10 REST endpoints and use the same API key and credits as the API.
Python SDK
Python 3.10+ · synchronous and asynchronous clients
pip install easytranscriber-sdkJavaScript / TypeScript SDK
Node.js 22+ · server-side ESM and CommonJS
npm install easytranscriberGet an API key from the dashboard and set EASYTRANSCRIBER_API_KEY in your process environment. The examples read it explicitly and the clients add the Bearer header. Keep keys out of browser code, public repositories and logs. The unrelated Python package named easytranscriber is not this SDK.
Transcript, then a separate summary
These examples make live requests and may spend credits. Summary language takes a display name such as English, or Auto to match the source language—not an ISO code.
import os
from easytranscriber_sdk import EasyTranscriber
with EasyTranscriber(os.environ["EASYTRANSCRIBER_API_KEY"]) as client:
result = client.transcribe("https://youtu.be/dQw4w9WgXcQ")
print(result["transcript"])
# A separate request: 1 additional credit.
summary = client.summarize(result["transcript"], language="English")
print(summary["summary"])import { EasyTranscriber } from "easytranscriber";
const apiKey = process.env.EASYTRANSCRIBER_API_KEY;
if (!apiKey) throw new Error("Set EASYTRANSCRIBER_API_KEY on the server");
const client = new EasyTranscriber({ apiKey });
const result = await client.transcribe({ url: "https://youtu.be/dQw4w9WgXcQ" });
console.log(result.transcript);
// A separate request: 1 additional credit.
const summary = await client.summarize({
transcript: result.transcript, language: "English",
});
console.log(summary.summary);All 10 REST endpoints
Routes below are relative to https://www.easytranscriber.com/api/v1. Videos can be up to 4 hours long. Every call requires a key and is subject to your account’s rate limit, including calls that cost no credits. Free and Plus allow 10 requests/minute, Pro 50 and Scale 300.
- Transcribe a video
POST /transcribe0 credits when cached; otherwise 1, or 2 over 2 hours
- Summarize transcript text
POST /summarize1 additional credit per request
- Check your credit balance
GET /credits0 credits
- Search YouTube
GET /youtube/search1 credit per requested page
- Resolve a channel
GET /youtube/channel/resolve0 credits
- Get a channel’s latest videos
GET /youtube/channel/latest0 credits; recent RSS uploads, not paginated
- Search within a channel
GET /youtube/channel/search1 credit per requested page
- List channel uploads
GET /youtube/channel/videos1 credit per requested page
- List playlist videos
GET /youtube/playlist/videos1 credit per requested page
- Read video comments
GET /youtube/comments1 credit per requested page