POST
/v1/call/tiktok.top_ad_search预览TikTok 创意中心热门广告搜索接口
TikTok 独有的接口。
TikTok 创意中心热门广告搜索 API(数据接口)按关键词搜 TikTok 创意中心的热门广告(Top Ads):广告视频、文案、品牌名、点赞数、时长、投放目标;一次看一个国家,可选统计周期,按推荐或点赞数排序。一页 20 条。这是表现好的广告素材展示,不是广告库:没有投放时间。每次调用 2 积分(约 $0.004–$0.0067),失败不扣。最近实测:2026-10-17。
2 积分每次调用
每页最多 20 条一次调用返回一页
2026-10-17最近实测
1.0 KB示例返回的体积(1 条)
最近更新:
预览:这个接口还没有标为稳定,参数和返回字段之后可能调整。计费和其他调用一样,调用失败不扣积分。
请求与返回
curl https://api.socialtoai.com/v1/call/tiktok.top_ad_search \ -H "Authorization: Bearer $SOCIALTOAI_KEY" \ -H "Content-Type: application/json" \ -d '{ "query": "sneakers" }'import osimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/call/tiktok.top_ad_search", headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"}, json={ "query": "sneakers", },)print(response.json())# 已经通过 MCP 接好了?直接用大白话问。用“TikTok 创意中心热门广告搜索”接口(tiktok.top_ad_search),参数是 query: sneakers。# 你的 AI 会调用 call 工具,参数是:{ "query": "sneakers"}改一改请求上面的代码会跟着变。
windowsort200 OK1.0 KB2 积分
{ "op": "tiktok.top_ad_search", "platform": "tiktok", "status": "ok", "items": [ { "platform": "tiktok", "id": "…", "ref": "…", "approx": [], "type": "entry", "entry_type": "ad", "title": null, "url": "https://example.com/…", "rank": null, "heat": null, "fields": { "format": "video", "text": "…", "landing_url": null, "advertiser": { "id": null, "name": null, "url": null }, "images": null, "first_shown_at": null, "last_shown_at": null } } ], "unavailable": ["title", "fields.landing_url", "fields.images", "fields.first_shown_at", "fields.last_shown_at", "fields.advertiser.id", "fields.advertiser.url"], "page": { "has_more": true, "cursor": "cur_…", "cursor_expires_at": "2026-10-12T22:49:55.000Z" }, "cost_credits": 2}- entry_type
- ad
- format
- video
- text
- …
- landing_url
null- images
null- first_shown_at
null- last_shown_at
null
示例里的名称和正文已去掉,数字是录制时的真实值。
示例数据录制的 20 条里的 1 条
5 个参数。
1 个必填。
用 POST 发一个 JSON 请求体。Key 放在 Authorization 请求头里,不要放进网址。
| 名称 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| query | string | 必填 | — | 搜索词 |
| region | string | 选填 | — | 看哪个国家或地区的热门广告,两个字母的代码;不写是美国 |
| window | string | 选填 | "180d" | 统计最近多久的表现"7d""30d""180d" |
| sort | string | 选填 | "relevance" | 按创意中心自己的推荐顺序,或按点赞数从高到低"relevance""popular" |
| cursor | string | 选填 | — | 填上一次返回的 page.cursor,取下一页。 |
items 里每一条的字段。
TikTok 给不了的标出来了。
| 字段 | 类型 | 含义 |
|---|---|---|
| items[].title | string始终 null | 条目的标题或名称。 |
| items[].url | string | 能打开它的链接;平台的列表不带链接时为 null。 |
| items[].rank | integer | 榜上的名次,从 1 起。 |
| items[].heat | integer | 平台给的热度值。 |
| items[].fields.format | string | 广告形态:文字、图片或视频;other 是平台自有的其他形式。 |
| items[].fields.text | string | 广告文案。 |
| items[].fields.landing_url | string始终 null | 点击广告后打开的地址。 |
| items[].fields.advertiser.id | string始终 null | 广告主编号。 |
| items[].fields.advertiser.name | string | 广告主名称。 |
| items[].fields.advertiser.url | string始终 null | 广告主在平台上的主页。 |
| items[].fields.images | string[]始终 null | 图片素材的地址。 |
| items[].fields.first_shown_at | string始终 null | 广告首次展示的时间。 |
| items[].fields.last_shown_at | string始终 null | 广告最近一次展示的时间;还在投放的广告,是平台最近一次看到它的时间。 |
nullTikTok 给不了的字段null 的意思是“TikTok 没给这个值”,不要当成 0。这些字段在这个调用里始终是 null:
title条目的标题或名称。fields.landing_url点击广告后打开的地址。fields.advertiser.id广告主编号。fields.advertiser.url广告主在平台上的主页。fields.images图片素材的地址。fields.first_shown_at广告首次展示的时间。fields.last_shown_at广告最近一次展示的时间;还在投放的广告,是平台最近一次看到它的时间。
每一条另有 platform、id、ref、approx、type;items 外面的部分每个调用都一样。 返回格式
会发生什么。
一次调用返回一页,最多 20 条;page.has_more 为 true 时把 page.cursor 填进 cursor 取下一页,每页 2 积分,cursor 30 分钟内有效。
正常执行但没有结果,算一次成功的调用:status 为 "empty",items 为空,扣 2 积分。
每把 Key 每秒 1 次,购买后 5 次;超出不扣费。 频率限制
失败的调用 0 积分,不会自动重试。 错误码
接好 MCP 后,这样问就会用到它。
按关键词搜 TikTok 创意中心的热门广告(Top Ads):sneakers
2 积分call {"op":"tiktok.top_ad_search","query":"sneakers"}按关键词搜 TikTok 创意中心的热门广告(Top Ads):sneakers,window 取 7d。
2 积分call {"op":"tiktok.top_ad_search","query":"sneakers","window":"7d"}
常见问题。
简短回答。
TikTok 的全部接口需要 TikTok 账号,或者申请 TikTok 官方的 API 吗?
不需要,只要一把 SocialToAI 的 Key。返回的是 TikTok 上公开可见的内容和账号信息,你不用登录 TikTok,也不用在那边申请任何东西。
“预览”是什么意思?
预览:这个接口还没有标为稳定,参数和返回字段之后可能调整。计费和其他调用一样,调用失败不扣积分。