Youtube Search

ZeroPointRepo/youtube-skills/skills/youtube-search

作者 ZeroPointRepo4f7994b94e7d5e250c3b51102d609992e04d5d0d无许可证1K 个星标收录于 2026年10月9日更新于 2026年10月9日仓库2天前更新

Use when the user wants to find YouTube content on any topic: searching for videos or channels, finding creators who cover a subject, discovering tutorials, talks, or expert discussions, or looking up a channel by name or handle. Also use proactively when the user wants to research a topic and YouTube is a good source. Not for account management or written-source-only research.

AI 生成的概览

通过 TranscriptAPI 服务搜索 YouTube 的视频、频道、播放列表和影片,并可获取视频字幕。

功能
该技能提供调用 TranscriptAPI YouTube 接口的说明:跨视频、频道、播放列表和影片的全局搜索,在指定频道内搜索,以及将 @handle 解析为频道 ID。它记录了 type、sort、上传日期、时长和 features 等查询参数,以及使用 continuation 令牌的分页方式,并说明了 JSON 响应结构。它还给出“先搜索、后取字幕”的工作流程,并列出错误码和积分消耗。
适用场景
当用户想查找某个主题的 YouTube 内容、寻找覆盖该主题的创作者或频道、发现教程、演讲或专家讨论,或按名称或 handle 查找频道时使用。它也适合在用户研究某个主题且 YouTube 是合适来源时主动使用。
运行要求
需要能访问 transcriptapi.com 的网络连接,以及 TRANSCRIPT_API_KEY 环境变量(文中提到有 100 积分的免费额度)。无需其他运行时或依赖,该技能不附带脚本,只有参考文档。

YouTube Search

Search YouTube and fetch transcripts 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.

API Reference

Full OpenAPI spec: transcriptapi.com/openapi.json — consult this for the latest parameters and schemas.

GET /api/v2/youtube/search — 1 credit/page

Search YouTube globally for videos, channels, playlists, or movies.

http
GET https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20Authorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0
ParamRequiredDefaultValidation
qconditional—1-200 chars (trimmed), first page
typenovideovideo, channel, playlist, movie (first page)
sortnorelevancerelevance or views (first page)
upload_dateno—hour, today, week, month, year — videos, first page
durationno—short (<4m), medium (4-20m), long (>20m) — videos, first page
featuresno—comma-separated: hd, subtitles, cc, live, 4k, hdr, etc.
limitno201-50
continuationconditional—token from a previous response (subsequent pages)

Provide exactly one of q (first page) or continuation (next pages) — the token already encodes the filters. sort/upload_date/duration/features apply to the first page only.

Find recent, most-viewed videos:

http
GET https://transcriptapi.com/api/v2/youtube/search?q=innovation&sort=views&duration=long&upload_date=monthAuthorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0

Search for playlists on a topic:

http
GET https://transcriptapi.com/api/v2/youtube/search?q=react+tutorial&type=playlistAuthorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0

Video search response:

json
{  "results": [    {      "type": "video",      "videoId": "dQw4w9WgXcQ",      "title": "Rick Astley - Never Gonna Give You Up",      "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",      "channelTitle": "Rick Astley",      "channelHandle": "@RickAstley",      "channelVerified": true,      "lengthText": "3:33",      "viewCountText": "1.5B views",      "publishedTimeText": "14 years ago",      "hasCaptions": true,      "thumbnails": [{ "url": "...", "width": 120, "height": 90 }]    }  ],  "result_count": 20}

Channel search response (type=channel):

json
{  "results": [{    "type": "channel",    "channelId": "UCuAXFkgsw1L7xaCfnd5JJOw",    "title": "Rick Astley",    "handle": "@RickAstley",    "url": "https://www.youtube.com/@RickAstley",    "description": "Official channel...",    "subscriberCount": "4.2M subscribers",    "verified": true,    "rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UC...",    "thumbnails": [...]  }],  "result_count": 5}

GET /api/v2/youtube/channel/search — 1 credit

Search videos within a specific channel. Accepts channel — an @handle, channel URL, or UC... ID.

http
GET https://transcriptapi.com/api/v2/youtube/channel/search?channel=@TED&q=climate+change&limit=30Authorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0
ParamRequiredValidation
channelyes@handle, channel URL, or UC... ID
qyes1-200 chars
limitno1-50 (default 30)

Returns up to ~30 results (YouTube limit). Same video response shape as global search.

GET /api/v2/youtube/channel/resolve — FREE

Convert @handle to channel ID:

http
GET https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TEDAuthorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0

Workflow: Search → Transcript

http
# 1. Search for videosGET https://transcriptapi.com/api/v2/youtube/search?q=python+web+scraping&type=video&limit=5Authorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0
# 2. Get transcript from resultGET https://transcriptapi.com/api/v2/youtube/transcript?video_url=VIDEO_ID&format=text&include_timestamp=true&send_metadata=trueAuthorization: Bearer $TRANSCRIPT_API_KEYUser-Agent: YourAgent/1.0

Errors

CodeMeaningAction
401Bad API keyCheck key
402No creditstranscriptapi.com/billing
403/1010Cloudflare blockAdd or fix User-Agent header
404Not foundResource doesn't exist
408TimeoutRetry once
422Invalid paramCheck param format

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]

来源与署名

来源:ZeroPointRepo/youtube-skills位于skills/youtube-search提交4f7994b

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架