/v1/search"platform": "youtube"YouTube 搜索接口
按关键词找视频。
按关键词搜 YouTube 视频,拿回正文、作者和播放或阅读数:用 HTTP 取 JSON,或在 AI 客户端里通过 MCP 调用。YouTube 搜索 API(数据接口)每次调用 2 积分(约 $0.004–$0.0067),失败不扣,返回格式和其他调用相同。最近实测:2026-11-01。
最近更新:
limit: 100,一次调用自动翻页,最多 5 页、10 积分。够数或没有下一页就停,用不上的页不扣,失败的页也不扣。读 1,000 条约 100 积分,约 ¥2.4($0.33)。每日监控:对你的 AI 说“每天帮我盯着”,这个调用每天自己跑,只把新内容发给你,一个月最多 62 积分,约 ¥1.5($0.21)。 看怎么设
调用 YouTube 搜索,你会拿到什么。
取自一次录制的返回。
录制的一次调用返回了 20 条,下面是第一条的每个字段。名称和正文在示例里去掉了,数字是录制时的真实值。
| 字段 | 录制时的值 |
|---|---|
| url | 示例里已去掉 |
| format | video |
| title | 示例里已去掉 |
| text | null:YouTube 给不了 |
| published_at | null:YouTube 给不了 |
| author.id | 示例里已去掉 |
| author.username | 示例里已去掉 |
| author.name | 示例里已去掉 |
| author.verified | null:YouTube 给不了 |
| author.followers | null:YouTube 给不了 |
| metrics.likes | null:YouTube 给不了 |
| metrics.comments | null:YouTube 给不了 |
| metrics.shares | null:YouTube 给不了 |
| metrics.collects | null:YouTube 给不了 |
| metrics.views | 1,840 |
| metrics.reposts | null:YouTube 给不了 |
| images | 1 项 |
| hashtags | null:YouTube 给不了 |
| is_pinned | null:YouTube 给不了 |
每次 2 积分(≈ $0.004–$0.0067),$10 约够 1,500 次。
YouTube 搜索的请求与返回
curl https://api.socialtoai.com/v1/search \ -H "Authorization: Bearer $SOCIALTOAI_API_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -H "Content-Type: application/json" \ -d '{ "platform": "youtube", "query": "meteor shower" }'import osimport uuidimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/search", headers={ "Authorization": f"Bearer {os.environ['SOCIALTOAI_API_KEY']}", # A new key for each request; the same one again retries it without paying twice. "Idempotency-Key": str(uuid.uuid4()), }, json={ "platform": "youtube", "query": "meteor shower", },)print(response.json())# 已经通过 MCP 接好了?直接用大白话问。在 YouTube 上搜和“meteor shower”有关的视频。# 你的 AI 会调用 search 工具,参数是:{ "platform": "youtube", "query": "meteor shower"}取值sortpublished_within{ "platform": "youtube", "status": "ok", "items": [ { "platform": "youtube", "id": "…", "ref": "…", "approx": [], "type": "content", "url": "https://example.com/…", "format": "video", "title": "…", "text": null, "published_at": null, "author": { "id": "…", "username": "…", "name": "…", "verified": null, "followers": null }, "metrics": { "likes": null, "comments": null, "shares": null, "collects": null, "views": 1840, "reposts": null }, "images": ["https://example.com/…"], "hashtags": null, "is_pinned": null } ], "unavailable": ["text", "published_at", "author.verified", "author.followers", "metrics.likes", "metrics.comments", "metrics.shares", "metrics.collects", "metrics.reposts", "hashtags", "is_pinned"], "page": { "has_more": true, "cursor": "cur_…", "cursor_expires_at": "2026-10-12T19:20:45.000Z" }, "cost_credits": 2}nullcomments nullshares nullcollects nullviews 1,840示例里的名称和正文已去掉,数字是录制时的真实值。
YouTube 搜索的参数。
6 个,2 个必填。
用 POST 发一个 JSON 请求体。Key 放在 Authorization 请求头里,不要放进网址。
| 名称 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| platform | string | 必填 | — | 这一页固定填 "youtube"。 |
| query | string | 必填 | — | 搜索词 |
| sort | string | 选填 | "relevance" | 按相关度排,或按播放数排"relevance""popular" |
| published_within | string | 选填 | — | 发布时间在最近多久之内"day""week""month""year" |
| type | string | 选填 | — | "user":搜账号(2 积分)。"user" |
| cursor | string | 选填 | — | 填上一次返回的 page.cursor,取下一页。 |
YouTube 搜索返回的字段。
YouTube 给不了的标出来了。
| 字段 | 类型 | 含义 |
|---|---|---|
| items[].url | string | 能直接打开的链接。 |
| items[].format | string | video、image、text 或 article。 |
| items[].title | string | 标题。 |
| items[].text | string始终 null | 正文或文案。 |
| items[].published_at | string始终 null | 发布时间,ISO 8601(UTC)。 |
| items[].author.id | string | 作者的账号编号。 |
| items[].author.username | string | 作者的账号名。 |
| items[].author.name | string | 作者的显示名。 |
| items[].author.verified | boolean始终 null | 作者是否认证。 |
| items[].author.followers | integer始终 null | 作者的粉丝数。 |
| items[].metrics.likes | integer始终 null | 点赞数。 |
| items[].metrics.comments | integer始终 null | 评论数。 |
| items[].metrics.shares | integer始终 null | 分享数。 |
| items[].metrics.collects | integer始终 null | 收藏数。 |
| items[].metrics.views | integer | 播放或阅读数。 |
| items[].metrics.reposts | integer始终 null | 转发数。 |
| items[].images | string[] | 图片地址。 |
| items[].hashtags | string[]始终 null | 话题标签,不带 #。 |
| items[].is_pinned | boolean始终 null | 是否被作者置顶。 |
nullYouTube 给不了的字段null 的意思是“YouTube 没给这个值”,不要当成 0。这些字段在这个调用里始终是 null:
text正文或文案。published_at发布时间,ISO 8601(UTC)。author.verified作者是否认证。author.followers作者的粉丝数。metrics.likes点赞数。metrics.comments评论数。metrics.shares分享数。metrics.collects收藏数。metrics.reposts转发数。hashtags话题标签,不带 #。is_pinned是否被作者置顶。
请求里带上对应的参数,就换成另一种返回:
type=user搜账号2 积分和 TikTok 搜索比,这个调用多给标题和图片,少给正文、发布时间、作者粉丝数、点赞、评论数、分享、收藏和话题标签。
每一条另有 platform、id、ref、approx、type;items 外面的部分每个调用都一样。 返回格式
YouTube 搜索的翻页与计费。
每把 Key 每秒 5 次,购买后 20 次;超出不扣费。 频率限制
失败的调用 0 积分,不会自动重试。 错误码
首屏的“最近实测”是最近一次真实调用成功的日子。每次调用从平台读取,返回里的 fetched_at 是读取时间;同一把 Key 5 分钟内重发完全相同的请求算重放(replayed: true),0 积分,返回第一次读到的结果。
接好 MCP 后,这样问就会用到 YouTube 搜索。
在 YouTube 上搜和“meteor shower”有关的视频。
2 积分search {"platform":"youtube","query":"meteor shower"}在 YouTube 上找和“nasa”有关的账号。
2 积分search {"platform":"youtube","query":"nasa","type":"user"}
交给你的 AI。
复制给 Claude 或 ChatGPT。
怎么接用 SocialToAI 的 MCP 服务(https://mcp.socialtoai.com/mcp)完成这件事:在 YouTube 上搜和“meteor shower”有关的视频。调用 search 工具,参数是 {"platform":"youtube","query":"meteor shower"}。必填:query;可选:sort(relevance、popular)、published_within(day、week、month、year)。要多条就传 limit(比如 limit=100,最多 5 页),一次调用自动翻页,不用自己一页页取;每页 2 积分,用不上的页不扣。开跑前先算出总共要多少积分,问我同意了再调用。拿到结果后,可以接着调:detail(详情)、comments(评论),用返回的 ref 或 username。如果还没接上 SocialToAI,告诉我怎么接,不要让我把 Key 贴进对话。回答时附上你用到的每一条的链接,最后告诉我花了多少积分。接好 MCP 后把这段话贴进对话。里面没有 Key:在 Claude 和 ChatGPT 里登录授权,其他客户端把 Key 放在请求头里。
这些工具运行时会调用它。
用到它的工作场景。
同一个调用,换个平台。
全部平台和价格/v1/search{ "platform": "youtube", "query": "meteor shower" }2 积分每次调用接着看。
官方能做什么、谁能申请、多少钱,带来源。
每天盯品牌口碑:态度占比和背后的原帖,每次 16 积分起
让你的 AI 直接读 YouTube。