Video Transcript

v1.4.1

Extract full transcripts from video content for analysis, summarization, note-taking, or research. Use when the user wants a written version of video content, asks to "transcribe this", "get the text from this video", "convert video to text", or shares a video URL for content extraction.

3· 3.1k·6 current·6 all-time
byRohit Das@therohitdas
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description (video transcription) matches requested artifacts: node is required to run the provided auth script, TRANSCRIPT_API_KEY is the service credential, and ~/.openclaw/openclaw.json is used to store the API key for agent runtime. No unrelated credentials, binaries, or services are requested.
Instruction Scope
SKILL.md limits runtime actions to registering/verifying an account (email + OTP), saving the returned API key to ~/.openclaw/openclaw.json, and calling transcriptapi.com endpoints via curl. File writes are documented and the script explicitly only updates the OpenClaw config and makes a backup. The instructions do not request unrelated system files or extra credentials.
Install Mechanism
There is no install spec (lowest-risk), but the package includes an executable Node script (scripts/tapi-auth.js) that the agent will run if used. The script performs network calls to transcriptapi.com and writes the API key to the OpenClaw config; there are no downloads from untrusted URLs or archive extraction.
Credentials
Only TRANSCRIPT_API_KEY is required and is the primary credential used to access TranscriptAPI. The only config path requested is the agent config (~/.openclaw/openclaw.json) where the key is stored; this is proportionate for a service-client skill.
Persistence & Privilege
always is false and the skill does not request permanent platform-wide privileges. It writes its own entry into ~/.openclaw/openclaw.json (backing up the existing file first) which is expected for storing an API key for future invocations; it does not modify other skills or global agent settings.
Assessment
This skill behaves as advertised: it needs your TranscriptAPI API key and provides a Node CLI to create an account and save the key to ~/.openclaw/openclaw.json (the file is backed up before changes). Before installing, verify you trust transcriptapi.com and are comfortable storing the API key in your OpenClaw agent config (any local process or other skills that can read that file could access the key). Ensure Node is installed for the auth script to run, and expect the usual data flow: email→OTP→server returns API key→key stored locally. If you prefer not to have the key written to disk, create the API key manually on transcriptapi.com and set TRANSCRIPT_API_KEY in your environment instead.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

🎬 Clawdis
Binsnode
EnvTRANSCRIPT_API_KEY
Config~/.openclaw/openclaw.json
Primary envTRANSCRIPT_API_KEY
latestvk9720df03j4jyqnhpxt74z5azh80y7k6
3.1kdownloads
3stars
12versions
Updated 1mo ago
v1.4.1
MIT-0

Video Transcript

Extract transcripts from videos via TranscriptAPI.com.

Setup

If $TRANSCRIPT_API_KEY is not set, help the user create an account (100 free credits, no card):

Step 1 — Register: Ask user for their email.

node ./scripts/tapi-auth.js register --email USER_EMAIL

→ OTP sent to email. Ask user: "Check your email for a 6-digit verification code."

Step 2 — Verify: Once user provides the OTP:

node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE

API key saved to ~/.openclaw/openclaw.json. See File Writes below for details. Existing file is backed up before modification.

Manual option: transcriptapi.com/signup → Dashboard → API Keys.

File Writes

The verify and save-key commands save the API key to ~/.openclaw/openclaw.json (sets skills.entries.transcriptapi.apiKey and enabled: true). Existing file is backed up to ~/.openclaw/openclaw.json.bak before modification.

To use the API key in terminal/CLI outside the agent, add to your shell profile manually: export TRANSCRIPT_API_KEY=<your-key>

GET /api/v2/youtube/transcript

curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_URL&format=text&include_timestamp=true&send_metadata=true" \
  -H "Authorization: Bearer $TRANSCRIPT_API_KEY"
ParamRequiredDefaultValues
video_urlyesYouTube 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):

{
  "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):

{
  "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
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.

Comments

Loading comments...