Pull clean transcripts, search videos and channels, and track new uploads — without scraping, proxies, or breakage. Simple credits, no rate-limit roulette.
Seven focused endpoints. Predictable credit pricing. Responses shaped for LLM consumption.
Fetch the full transcript of any public video as clean JSON or plain text, with or without timestamps.
GET /v1/youtube/transcript?video_url=https://youtu.be/dQw4...
Authorization: Bearer tl_live_xxx
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"transcript": [
{ "text": "Welcome back to the channel...", "start": 0.0, "duration": 3.2 }
]
}
Query YouTube for videos, channels, or playlists and get structured results with continuation-token pagination.
Scope your search to a single channel — by handle, ID, or URL — to find exactly the videos you need.
GET /v1/youtube/channel/search?channel=@fireship&q=rust
{
"results": [
{ "video_id": "5C_HPTJg5ek", "title": "Rust in 100 Seconds" }
],
"continuation": "EpcDEg1..."
}
List every upload on a channel, newest first, with full metadata — ideal for building channel-wide indexes.
GET /v1/youtube/channel/videos?channel=@veritasium
{
"videos": [ /* 30 per page */ ],
"continuation": "4qmFsgKF..."
}
Poll a channel's latest uploads at no credit cost — the cheapest way to trigger downstream workflows.
GET /v1/youtube/channel/latest?channel=@mkbhd
{
"latest": [
{ "video_id": "aX3jf9Qw1kE", "published": "2 hours ago" }
]
}
Expand any playlist into its full video list — courses, series, and curated collections become ingestible datasets.
GET /v1/youtube/playlist/videos?playlist=PLBmc...
{
"playlist_id": "PLBmc...",
"videos": [ /* ordered entries */ ],
"continuation": null
}
Use plain REST, connect an MCP server to your AI client, or let an agent skill set everything up for you.
A single base URL and Bearer-token auth. Works from any language or runtime in under a minute.
curl "https://api.transcriptlayer.com/v1/youtube/transcript?video_url=..." \
-H "Authorization: Bearer tl_live_xxx"
Give Claude, ChatGPT, or any MCP client direct access to every endpoint as native tools.
claude mcp add transcriptlayer \
-e TL_API_KEY=tl_live_xxx \
-- npx @transcriptlayer/mcp
One command installs a skill that teaches your coding agent when and how to call the API.
npx skills add transcriptlayer/agent-skill
No tiers to decode — every subscription includes all endpoints. Pay only for the credits you use.
Drag to your expected volume — most requests cost 1 credit.
Need more than 1M credits/month or custom terms? Talk to us about a custom plan →
Short answers to what developers ask before integrating.
TranscriptLayer is a YouTube transcript & discovery API built for AI applications, agents, and LLM pipelines. One HTTP call returns clean transcripts in JSON or plain text — no scraping, proxies, or browser automation. It also offers video search, channel search and resolution, channel video listings, and playlist videos.
One plan with every feature: $5/month including 1,000 credits, then $0.005 per extra credit. Most requests cost 1 credit. Annual billing is $54/year (about $4.50/month). No feature tiers — every subscription includes all endpoints.
No. Failed requests are never billed — if a request fails, the credits are automatically refunded to your account.
Yes. Every plan includes an MCP server and agent skill, so MCP clients such as Claude can call TranscriptLayer directly. It also works from any HTTP stack — cURL, Python, Node.js, or any language with an HTTP client.
No. You authenticate with your TranscriptLayer API key only (Authorization: Bearer header). No Google Cloud project or YouTube Data API setup is required.
No. TranscriptLayer is an independent service and is not affiliated with or endorsed by YouTube or Google.