# TikTok 创意中心热门广告搜索接口

TikTok 创意中心热门广告搜索 API（数据接口）按关键词搜 TikTok 创意中心的热门广告（Top Ads）：广告视频、文案、品牌名、点赞数、时长、投放目标；一次看一个国家，可选统计周期，按推荐或点赞数排序。一页 20 条。这是表现好的广告素材展示，不是广告库：没有投放时间。每次调用 2 积分（约 $0.004–$0.0067），失败不扣。最近实测：2026-10-17。

- 页面：https://socialtoai.com/zh/tiktok-top-ad-search-api/
- 最近更新：2026-10-17
- 最近实测：2026-10-17

| 请求 | 价格键 | 积分 |
| --- | --- | --- |
| `POST /v1/call/tiktok.top_ad_search` | `tiktok.top_ad_search` | 2 |

预览：这个接口还没有标为稳定，参数和返回字段之后可能调整。计费和其他调用一样，调用失败不扣积分。

## 请求

```bash
curl https://api.socialtoai.com/v1/call/tiktok.top_ad_search \
  -H "Authorization: Bearer $SOCIALTOAI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "sneakers"
  }'
```

```python
import os
import requests

response = 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())
```

## 参数

| 名称 | 类型 | 是否必填 | 默认值 | 说明 |
| --- | --- | --- | --- | --- |
| `query` | string | 必填 | — | 搜索词 |
| `region` | string | 选填 | — | 看哪个国家或地区的热门广告，两个字母的代码；不写是美国 |
| `window` | string | 选填 | 180d | 统计最近多久的表现 `"7d"` `"30d"` `"180d"` |
| `sort` | string | 选填 | relevance | 按创意中心自己的推荐顺序，或按点赞数从高到低 `"relevance"` `"popular"` |
| `cursor` | string | 选填 | — | 填上一次返回的 page.cursor，取下一页。 |

## 返回字段

| 字段 | 类型 | 含义 | 能否给出 |
| --- | --- | --- | --- |
| `items[].title` | string | 条目的标题或名称。 | TikTok 给不了，始终是 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 | 点击广告后打开的地址。 | TikTok 给不了，始终是 null |
| `items[].fields.advertiser.id` | string | 广告主编号。 | TikTok 给不了，始终是 null |
| `items[].fields.advertiser.name` | string | 广告主名称。 | 有 |
| `items[].fields.advertiser.url` | string | 广告主在平台上的主页。 | TikTok 给不了，始终是 null |
| `items[].fields.images` | string[] | 图片素材的地址。 | TikTok 给不了，始终是 null |
| `items[].fields.first_shown_at` | string | 广告首次展示的时间。 | TikTok 给不了，始终是 null |
| `items[].fields.last_shown_at` | string | 广告最近一次展示的时间；还在投放的广告，是平台最近一次看到它的时间。 | TikTok 给不了，始终是 null |

每一条另有 platform、id、ref、approx、type；items 外面的部分每个调用都一样。 [返回格式](https://socialtoai.com/zh/docs/api/response.md)

## 示例返回

示例数据：名称、链接和正文已替换成占位符，数字是录制时的真实值。

```json
{
  "request_id": "req_00000000-0000-4000-8000-000000000001",
  "schema_version": "v1",
  "fetched_at": "2026-10-12T22:19:55.000Z",
  "action": "call",
  "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"
  },
  "warnings": [],
  "applied_params": {
    "query": "sneakers"
  },
  "cost_credits": 2,
  "billing": {
    "cost_credits": 2,
    "balance_credits": 98,
    "today_spend_credits": 2,
    "daily_limit_credits": null,
    "daily_remaining_credits": null,
    "display": "本次 2 积分，余额 98 积分"
  },
  "replayed": false
}
```

## 翻页与失败

- 一次调用返回一页，最多 20 条；page.has_more 为 true 时把 page.cursor 填进 cursor 取下一页，每页 2 积分，cursor 30 分钟内有效。
- 正常执行但没有结果，算一次成功的调用：status 为 "empty"，items 为空，扣 2 积分。
- 每把 Key 每秒 1 次，购买后 5 次；超出不扣费。 [频率限制](https://socialtoai.com/zh/docs/credits-and-billing.md#rate-limits)
- 失败的调用 0 积分，不会自动重试。 [错误码](https://socialtoai.com/zh/docs/api/errors.md)

## 在 AI 里这样问

- 按关键词搜 TikTok 创意中心的热门广告（Top Ads）：sneakers → `call {"op":"tiktok.top_ad_search","query":"sneakers"}`，2 积分
- 按关键词搜 TikTok 创意中心的热门广告（Top Ads）：sneakers，window 取 7d。 → `call {"op":"tiktok.top_ad_search","query":"sneakers","window":"7d"}`，2 积分

## TikTok 的其他接口

| 接口 | 做什么 | 价格键 | 积分 | 页面 |
| --- | --- | --- | --- | --- |
| `top_ad_detail` | 按编号取 TikTok 创意中心的一条热门广告（Top Ads）。 | `tiktok.top_ad_detail` | 2 | https://socialtoai.com/zh/tiktok-top-ad-detail-api.md |
| `ad_search` | 按关键词搜 TikTok 公开广告库（欧洲地区投放的广告）。 | `tiktok.ad_search` | 2 | https://socialtoai.com/zh/tiktok-ad-search-api.md |
| `ad_detail` | 按编号或链接取 TikTok 公开广告库里的一条广告。 | `tiktok.ad_detail` | 2 | https://socialtoai.com/zh/tiktok-ad-detail-api.md |
| `search` | 按关键词找视频：正文、作者、点赞数、评论数、播放或阅读数和发布时间。 | `tiktok.search` | 2 | https://socialtoai.com/zh/tiktok-search-api.md |
| `detail` | 用编号或链接取一条视频：正文、作者、点赞数、评论数、播放或阅读数和发布时间。 | `tiktok.detail` | 2 | https://socialtoai.com/zh/tiktok-detail-api.md |
| `comments` | 一条视频下的评论：正文、点赞数、回复数和时间。 | `tiktok.comments` | 2 | https://socialtoai.com/zh/tiktok-comments-api.md |
| `user_profile` | 一个账号：名称、简介、粉丝数、关注数和作品数。 | `tiktok.user_profile` | 2 | https://socialtoai.com/zh/tiktok-user-profile-api.md |
| `user_posts` | 一个账号最近发布的视频。 | `tiktok.user_posts` | 2 | https://socialtoai.com/zh/tiktok-user-posts-api.md |
| `hashtag_videos` | 按话题名取一页带这个话题的 TikTok 视频，每页约 20 条。 | `tiktok.hashtag_videos` | 2 | https://socialtoai.com/zh/tiktok-hashtag-videos-api.md |
| `product_reviews` | 按商品编号取 TikTok Shop 美国站这件商品排在最前的 10 条买家评价。 | `tiktok.product_reviews` | 2 | https://socialtoai.com/zh/tiktok-product-reviews-api.md |

## 常见问题

**需要 TikTok 账号，或者申请 TikTok 官方的 API 吗？**

不需要，只要一把 SocialToAI 的 Key。返回的是 TikTok 上公开可见的内容和账号信息，你不用登录 TikTok，也不用在那边申请任何东西。

**“预览”是什么意思？**

预览：这个接口还没有标为稳定，参数和返回字段之后可能调整。计费和其他调用一样，调用失败不扣积分。
