Video Transcript

ZeroPointRepo/youtube-skills/skills/video-transcript

by ZeroPointRepo4f7994b94e7d5e250c3b51102d609992e04d5d0dNo license1K starsListed Oct 9, 2026Updated Oct 9, 2026Repository updated 2 days ago

Use when video content needs to be extracted as text: pasted YouTube links or IDs, requests to transcribe, summarize, quote, translate, convert video to text, or extract information from video content. Also use when a user shares a video URL without explanation and wants to know what it says. Not for uploads or account management.

Instructions onlyProductivity & Workflow
AI-generated overview

Fetches YouTube video transcripts through the TranscriptAPI service and returns them as text or timestamped JSON.

What it does
This skill instructs an agent to call the TranscriptAPI.com YouTube transcript endpoint with a video URL or 11-character video ID. It returns the transcript either as readable text with optional timestamps or as structured JSON segments, and can include video metadata such as title and channel. It also documents required headers, parameters, error codes, and credit usage.
When to use it
Use it when a user shares a YouTube link or ID and wants the spoken content as text, or asks to transcribe, summarize, quote, translate, or extract information from a video. It is not intended for uploading videos or managing accounts.
Requirements
Internet access to transcriptapi.com, a TRANSCRIPT_API_KEY environment variable (a free tier is available), and an Authorization bearer header plus a non-default User-Agent header on every request. No additional runtimes or dependencies are needed, and the skill ships no scripts, only reference documents.

Video Transcript

Extract transcripts from videos via TranscriptAPI.com.

Setup

If $TRANSCRIPT_API_KEY is not set, read references/auth-setup.md [blocked] and follow the instructions there to get and store the key.

Required Headers

Every request needs two headers:

  • Authorization: Bearer $TRANSCRIPT_API_KEY
  • User-Agent: your agent's name and version if known (e.g. HermesAgent/0.11.0, ClaudeCode/1.0). Version is optional — agent name alone is fine. Do not omit this header or send a bare default — Cloudflare will return a 403 (error code 1010) and block the request.

GET /api/v2/youtube/transcript

http
GET https://transcriptapi.com/api/v2/youtube/transcript?video_url=VIDEO_URL&format=text&include_timestamp=true&send_metadata=trueAuthorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0
ParamRequiredDefaultValues
video_urlyes—YouTube URL or 11-char video ID
formatnojsonjson (structured), text (readable)
include_timestampnotruetrue, false
send_metadatanofalsetrue, false

Accepted URL formats:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://youtube.com/shorts/VIDEO_ID
  • Bare video ID: dQw4w9WgXcQ

Response (format=text&send_metadata=true):

json
{  "video_id": "dQw4w9WgXcQ",  "language": "en",  "transcript": "[00:00:18] We're no strangers to love\n[00:00:21] You know the rules...",  "metadata": {    "title": "Rick Astley - Never Gonna Give You Up",    "author_name": "Rick Astley",    "author_url": "https://www.youtube.com/@RickAstley",    "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg"  }}

Response (format=json):

json
{  "video_id": "dQw4w9WgXcQ",  "language": "en",  "transcript": [    { "text": "We're no strangers to love", "start": 18.0, "duration": 3.5 },    { "text": "You know the rules and so do I", "start": 21.5, "duration": 2.8 }  ]}

Tips

  • Summarize long transcripts into key points first, offer full text on request.
  • Use format=json when you need precise timestamps for quoting specific moments.
  • Use send_metadata=true to get video title and channel for context.
  • Works with YouTube Shorts too.

Errors

CodeMeaningAction
401Bad API keyCheck key or re-setup
402No creditsTop up at transcriptapi.com/billing
403/1010Cloudflare blockAdd or fix User-Agent header
404No transcriptVideo may not have captions enabled
408TimeoutRetry once after 2s

1 credit per successful request. Errors don't consume credits. Free tier: 100 credits, 300 req/min.

Copy-paste examples

Every request in this file as a ready-to-run one-liner: references/curl-examples.md [blocked]

Source and attribution

Source:ZeroPointRepo/youtube-skillsinskills/video-transcriptat commit4f7994b

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal