TikToktiktok.creative_center.ads.search
TikTok 创意中心热门广告 API
按关键词搜 TikTok 创意中心的热门广告:广告视频、文案和品牌,按国家和近 7、30 或 180 天。view=full 时另有点赞、点击率、预算档位、投放目标和行业。这是表现好的广告精选,没有投放日期。
GEThttps://api.okdata.online/v1/tiktok/creative_center/ads/search
价格
每次调用 $0.002,返回一页,约 20 条广告。抓 1,000 条广告大约要 50 次调用,合计 $0.10。每翻一页是一次单独的调用;失败的调用不扣费。
参数
| 参数名 | 类型 | 说明 |
|---|---|---|
query *必填 | string | 关键词,和在平台搜索框里输入的一样。 |
country | string | 国家(ISO 代码),默认 US。 |
window | string307180 | 回看天数,默认 30 天。 |
sort | stringrelevancelikes | 排序方式。 |
cursor | string | 上一次返回的 page.next_cursor,原样传回。每翻一页都是一次单独的调用。 |
view | stringcompactstandardfull | 返回多少字段。full 会在 ext 里带上平台特有字段。 |
fields | string | 只保留这些字段,逗号分隔,用来省 token。 |
所有接口的 cursor、view、fields 用法一致: 请求说明.
返回字段
每一条都是 Ad.
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 广告在广告库里的 ID。 |
url | string | 广告在广告库里的链接。 |
advertiser | AdvertiserRef | 投放广告的广告主。 |
title | string | null | 广告标题(有的话)。 |
text | string | 广告文案,纯文本;没有则为空字符串。 |
format | string | null | 素材形式;dynamic 指平台按观众动态拼装(商品目录广告)。 |
images | string[] | null | 素材图片地址。 |
videos | string[] | null | 素材视频地址。 |
landing_url | string | null | 广告落地页。 |
cta | string | null | 行动按钮文字。 |
platforms | string[] | null | 投放位置,如 facebook、instagram。 |
active | boolean | null | 是否仍在投放。 |
first_shown_at | string | null | 首次展示时间,ISO 8601,UTC。 |
last_shown_at | string | null | 最近展示时间,ISO 8601,UTC。 |
reach | string | null | 广告库公布的触达人数:区间(如 1K-10K)或人数(Meta 广告的欧盟触达);未公布为 null。 |
ext | object | 平台特有字段,只在 view=full 时返回。 |
请求示例
curl -G "https://api.okdata.online/v1/tiktok/creative_center/ads/search" \
-H "Authorization: Bearer $OKDATA_API_KEY" \
--data-urlencode 'query=coffee'import os
import requests
resp = requests.get(
"https://api.okdata.online/v1/tiktok/creative_center/ads/search",
headers={"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"},
params={"query": "coffee"},
timeout=60,
)
body = resp.json()
if body["code"] != "ok":
raise RuntimeError(f"{body['code']}: {body['message']} (charged: {body['charged']})")
for row in body["data"]["items"]:
print(row["advertiser"]["name"], row["first_shown_at"], row["text"][:60])
print("cost: $" + body["meta"]["billing"]["amount"])const url = new URL('https://api.okdata.online/v1/tiktok/creative_center/ads/search');
url.searchParams.set('query', "coffee");
const res = await fetch(url, {
headers: {
Authorization: `Bearer ${process.env.OKDATA_API_KEY}`,
},
});
const body = await res.json();
if (body.code !== 'ok') throw new Error(`${body.code}: ${body.message}`);
for (const row of body.data.items) {
console.log(row.advertiser.name, row.first_shown_at, row.text.slice(0, 60));
}
console.log('cost: $' + body.meta.billing.amount);{
"name": "call",
"arguments": {
"endpoint": "tiktok.creative_center.ads.search",
"params": {
"query": "coffee"
}
}
}或者对接好 MCP 的智能体直接说用「TikTok 创意中心热门广告」总结这些广告主打什么卖点、推什么优惠、从什么时候开始投。
返回示例
{
"code": "ok",
"request_id": "0f6c2a8e-4b1d-4e0a-9a51-3c7d2b9e1f20",
"data": {
"items": [
{
"id": "1879699044062290",
"url": "https://library.tiktok.com/ads/detail/?ad_id=1879699044062290",
"advertiser": {
"id": null,
"name": "Trail Kit Outdoors Ltd",
"url": null
},
"title": "Espresso is Back",
"text": "Espresso is Back",
"format": "video",
"images": null,
"videos": [
"https://library.tiktok.com/api/v1/cdn/video/1879699044062290.mp4"
],
"landing_url": null,
"cta": null,
"platforms": [
"tiktok"
],
"active": null,
"first_shown_at": "2026-11-10T08:00:00Z",
"last_shown_at": "2026-11-11T08:00:00Z",
"reach": "1K-10K"
}
]
},
"page": {
"next_cursor": "eyJvIjoyMH0",
"has_more": true
},
"warnings": [],
"meta": {
"capability": "tiktok.creative_center.ads.search",
"billing": {
"amount": "0.002",
"currency": "USD",
"balance_after": "9.998"
},
"unavailable": {},
"cached": false,
"replayed": false,
"fetched_at": "2026-11-11T08:00:00Z"
}
}在线调试
这会向 https://api.okdata.online 发送一次真实调用,正常计费:最多 $0.002。失败的调用不扣费。key 只会发往这个地址,本站不保存。
常见问题
TikTok 创意中心热门广告接口多少钱?
每次调用 $0.002,返回一页,约 20 条广告。抓 1,000 条广告大约要 50 次调用,合计 $0.10。每翻一页是一次单独的调用;失败的调用不扣费。
怎么翻页?
把返回里的 page.next_cursor 原样作为 cursor 参数传回去。page.has_more 为 false 时就没有下一页了。每一页都是一次 $0.002 的调用。
需要TikTok账号、Cookie 或扫码登录吗?
不需要。只要带上 okdata 的 API key。返回的是TikTok上的公开数据,不会用到你自己的TikTok账号。
调用失败会扣费吗?
不会。所有错误都会返回 charged: false;只有超时返回 charged: null,表示结果还没确定。带同一个 Idempotency-Key 重发,绝不会重复扣费。
TikTok不展示某个字段怎么办?
这个字段会是 null,meta.unavailable 里会列出它和原因:platform(平台本来就不展示)或 capability(我们暂时取不到)。
用到这个接口的问答
TikTok的其他接口
- TikTok 视频搜索tiktok.videos.searchPost[]$0.002/次
- TikTok 视频详情tiktok.videos.getPost$0.002/次
- TikTok 视频评论tiktok.videos.comments.listComment[]$0.002/次
- TikTok 账号信息tiktok.users.getAccount$0.002/次
- TikTok 广告库搜索tiktok.ads.searchAd[]$0.004/次
- TikTok Shop 商品搜索tiktok.shop.products.searchProduct[]$0.004/次
- TikTok Shop 商品详情tiktok.shop.products.getProduct$0.002/次
- TikTok Shop 商品评价tiktok.shop.products.reviews.listReview[]$0.002/次