POST
/v1/call/tiktok.top_ad_detail预览TikTok 创意中心热门广告详情接口
TikTok 独有的接口。
TikTok 创意中心热门广告详情 API(数据接口)按编号取 TikTok 创意中心的一条热门广告(Top Ads):广告视频、文案、品牌名、落地页、点赞数、评论数、分享数、时长、投放目标、投放的国家。每次调用 2 积分(约 $0.004–$0.0067),失败不扣。用 HTTP 调用,或让 AI 客户端通过 MCP 调用。最近实测:2026-10-17。
2 积分每次调用
一个对象每次调用返回
2026-10-17最近实测
968 B示例返回的体积(1 条)
最近更新:
预览:这个接口还没有标为稳定,参数和返回字段之后可能调整。计费和其他调用一样,调用失败不扣积分。
请求与返回
curl https://api.socialtoai.com/v1/call/tiktok.top_ad_detail \ -H "Authorization: Bearer $SOCIALTOAI_KEY" \ -H "Content-Type: application/json" \ -d '{ "id": "7686210433094729735" }'import osimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/call/tiktok.top_ad_detail", headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"}, json={ "id": "7686210433094729735", },)print(response.json())# 已经通过 MCP 接好了?直接用大白话问。用“TikTok 创意中心热门广告详情”接口(tiktok.top_ad_detail),参数是 id: 7686210433094729735。# 你的 AI 会调用 call 工具,参数是:{ "id": "7686210433094729735"}200 OK968 B2 积分
{ "op": "tiktok.top_ad_detail", "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": "https://example.com/…", "advertiser": { "id": null, "name": "…", "url": null }, "images": null, "first_shown_at": null, "last_shown_at": null } } ], "unavailable": ["title", "fields.images", "fields.first_shown_at", "fields.last_shown_at", "fields.advertiser.id", "fields.advertiser.url"], "cost_credits": 2}- entry_type
- ad
- format
- video
- text
- …
- landing_url
- https://example.com/…
- images
null- first_shown_at
null- last_shown_at
null
示例里的名称和正文已去掉,数字是录制时的真实值。
示例数据完整返回
1 个参数。
全部必填。
用 POST 发一个 JSON 请求体。Key 放在 Authorization 请求头里,不要放进网址。
| 名称 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| id | string | 必填 | — | 热门广告的编号,一串数字;用“TikTok 创意中心热门广告搜索”查 |
这些值从哪里拿。
id热门广告的编号,一串数字;用“TikTok 创意中心热门广告搜索”查(例如 7686210433094729735)
这些接口返回的每一条都带 ref,原样填进来即可:
top_ad_search创意中心热门广告搜索ad_search广告库搜索
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 | 点击广告后打开的地址。 |
| 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.advertiser.id广告主编号。fields.advertiser.url广告主在平台上的主页。fields.images图片素材的地址。fields.first_shown_at广告首次展示的时间。fields.last_shown_at广告最近一次展示的时间;还在投放的广告,是平台最近一次看到它的时间。
每一条另有 platform、id、ref、approx、type;items 外面的部分每个调用都一样。 返回格式
会发生什么。
一次调用返回一个对象,不翻页,2 积分。
每把 Key 每秒 1 次,购买后 5 次;超出不扣费。 频率限制
失败的调用 0 积分,不会自动重试。 错误码
接好 MCP 后,这样问就会用到它。
按编号取 TikTok 创意中心的一条热门广告(Top Ads):7686210433094729735
2 积分call {"op":"tiktok.top_ad_detail","id":"7686210433094729735"}按关键词搜 TikTok 创意中心的热门广告(Top Ads):sneakers,再对前 3 个结果:按编号取 TikTok 创意中心的一条热门广告(Top Ads)。
8 积分call {"op":"tiktok.top_ad_search","query":"sneakers"}call {"op":"tiktok.top_ad_detail","id":"<ref>"} × 3
常见问题。
简短回答。
TikTok 的全部接口需要 TikTok 账号,或者申请 TikTok 官方的 API 吗?
不需要,只要一把 SocialToAI 的 Key。返回的是 TikTok 上公开可见的内容和账号信息,你不用登录 TikTok,也不用在那边申请任何东西。
“预览”是什么意思?
预览:这个接口还没有标为稳定,参数和返回字段之后可能调整。计费和其他调用一样,调用失败不扣积分。