youtube-data
关于
This skill fetches structured YouTube data like transcripts, metadata, and search results via a third-party API, bypassing Google API quotas. It triggers on URLs, creator names, or any implicit need for YouTube content analysis. It requires only a TranscriptAPI key and internet access, but cannot handle uploads or account management.
快速安装
Claude Code
推荐npx skills add ZeroPointRepo/youtube-skills -a claude-code/plugin add https://github.com/ZeroPointRepo/youtube-skillsgit clone https://github.com/ZeroPointRepo/youtube-skills.git ~/.claude/skills/youtube-data在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
YouTube Data
YouTube data access via TranscriptAPI.com — lightweight alternative to Google's YouTube Data API.
Setup
If $TRANSCRIPT_API_KEY is not set, read references/auth-setup.md 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.
API Reference
Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.
Video Data (transcript + metadata) — 1 credit
curl -s "https://transcriptapi.com/api/v2/youtube/transcript\
?video_url=VIDEO_URL&format=json&include_timestamp=true&send_metadata=true" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Response:
{
"video_id": "dQw4w9WgXcQ",
"language": "en",
"transcript": [
{ "text": "We're no strangers to love", "start": 18.0, "duration": 3.5 }
],
"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"
}
}
Search Data — 1 credit
curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Video result fields: videoId, title, channelId, channelTitle, channelHandle, channelVerified, lengthText, viewCountText, publishedTimeText, hasCaptions, thumbnails
Channel result fields (type=channel): channelId, title, handle, url, description, subscriberCount, verified, rssUrl, thumbnails
Channel Data
Channel endpoints accept channel — an @handle, channel URL, or UC... ID. No need to resolve first.
Resolve handle to ID (free):
curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Returns: {"channel_id": "UCsT0YIqwnpJCM-mx7-gSA4Q", "resolved_from": "@TED"}
Latest 15 videos with exact stats (free):
curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Returns: channel info, results array with videoId, title, published (ISO), viewCount (exact number), description, thumbnail
All channel videos (paginated, 1 credit/page):
curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Returns 100 videos per page + continuation_token for pagination.
Search within channel (1 credit):
curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\
?channel=@TED&q=QUERY&limit=30" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Playlist Data — 1 credit/page
Accepts playlist — a YouTube playlist URL or playlist ID.
curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_ID" \
-H "Authorization: Bearer $TRANSCRIPT_API_KEY" \
-H "User-Agent: YourAgent/1.0"
Returns: results (videos), playlist_info (title, numVideos, ownerName, viewCount), continuation_token, has_more
Credit Costs
| Endpoint | Cost | Data returned |
|---|---|---|
| transcript | 1 | Full transcript + metadata |
| search | 1 | Video/channel details |
| channel/resolve | free | Channel ID mapping |
| channel/latest | free | 15 videos + exact stats |
| channel/videos | 1/page | 100 videos per page |
| channel/search | 1 | Videos matching query |
| playlist/videos | 1/page | 100 videos per page |
Errors
| Code | Meaning | Action |
|---|---|---|
| 401 | Bad API key | Check key |
| 402 | No credits | transcriptapi.com/billing |
| 403/1010 | Cloudflare block | Add or fix User-Agent header |
| 404 | Not found | Resource doesn't exist |
| 408 | Timeout | Retry once |
| 422 | Validation error | Check param format |
Free tier: 100 credits, 300 req/min.
GitHub 仓库
相关推荐技能
content-collections
元Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。
polymarket
元这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。
creating-opencode-plugins
元该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。
sglang
元SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。
