# TikTok Search API

The TikTok Search API searches TikTok videos by keyword: text, author, likes, comment count, views and publish time, in the same response format as every other SocialToAI call. One call costs 2 credits ($0.004 to $0.0067 depending on the pack); failed calls are free. Call it over HTTP or from your AI client over MCP. Last tested 2026-10-17.

- Page: https://socialtoai.com/tiktok-search-api/
- Last updated: 2026-10-17
- Last tested: 2026-10-17

| Request | Price key | Credits |
| --- | --- | --- |
| `POST /v1/search` | `tiktok.search` | 2 |

## Request

```bash
curl https://api.socialtoai.com/v1/search \
  -H "Authorization: Bearer $SOCIALTOAI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform": "tiktok",
    "query": "space station"
  }'
```

```python
import os
import requests

response = requests.post(
    "https://api.socialtoai.com/v1/search",
    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},
    json={
        "platform": "tiktok",
        "query": "space station",
    },
)
print(response.json())
```

## Parameters

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `platform` | string | Required | — | Always "tiktok" on this page. |
| `query` | string | Required | — | Search terms |
| `sort` | string | Optional | relevance | By relevance, by likes, or newest first `"relevance"` `"popular"` `"latest"` |
| `published_within` | string | Optional | — | Only videos posted within this period `"day"` `"week"` `"month"` `"half_year"` |
| `type` | string | Optional | — | "user": accounts instead of posts (2 credits). `"user"` |
| `cursor` | string | Optional | — | Pass page.cursor from the last response to get the next page. |

## Other values of this call

| Selected by | Returns | Price key | Credits | Parameters |
| --- | --- | --- | --- | --- |
| `type=user` | accounts instead of posts | `tiktok.search:user` | 2 | `query` |

## Response fields

| Field | Type | Meaning | Given |
| --- | --- | --- | --- |
| `items[].url` | string | A link that opens the item. | yes |
| `items[].format` | string | video, image, text or article. | yes |
| `items[].title` | string | The title. | always null: TikTok does not give it |
| `items[].text` | string | The body text or caption. | yes |
| `items[].published_at` | string | When it was published, ISO 8601 in UTC. | yes |
| `items[].author.id` | string | The author's account ID. | yes |
| `items[].author.username` | string | The author's handle. | yes |
| `items[].author.name` | string | The author's display name. | yes |
| `items[].author.verified` | boolean | Whether the author is verified. | always null: TikTok does not give it |
| `items[].author.followers` | integer | The author's follower count. | yes |
| `items[].metrics.likes` | integer | Likes. | yes |
| `items[].metrics.comments` | integer | Comments. | yes |
| `items[].metrics.shares` | integer | Shares. | yes |
| `items[].metrics.collects` | integer | Saves. | yes |
| `items[].metrics.views` | integer | Views or plays. | yes |
| `items[].metrics.reposts` | integer | Reposts. | always null: TikTok does not give it |
| `items[].images` | string[] | Image addresses. | always null: TikTok does not give it |
| `items[].hashtags` | string[] | Hashtags, without the #. | yes |
| `items[].is_pinned` | boolean | Whether the author pinned it. | always null: TikTok does not give it |

Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. [Response format](https://socialtoai.com/docs/api/response.md)

## Sample response

Sample data: names, links and text are replaced by placeholders; the numbers are as recorded.

```json
{
  "request_id": "req_00000000-0000-4000-8000-000000000001",
  "schema_version": "v1",
  "fetched_at": "2026-10-12T19:17:24.000Z",
  "action": "search",
  "platform": "tiktok",
  "status": "ok",
  "items": [
    {
      "platform": "tiktok",
      "id": "…",
      "ref": "…",
      "approx": [],
      "type": "content",
      "url": "https://example.com/…",
      "format": "video",
      "title": null,
      "text": "…",
      "published_at": "2026-10-11T23:17:34.000Z",
      "author": {
        "id": "…",
        "username": "…",
        "name": "…",
        "verified": null,
        "followers": 92601
      },
      "metrics": {
        "likes": 353,
        "comments": 11,
        "shares": 19,
        "collects": 40,
        "views": 7561,
        "reposts": null
      },
      "images": null,
      "hashtags": ["…", "…"],
      "is_pinned": null
    }
  ],
  "unavailable": ["title", "author.verified", "metrics.reposts", "images", "is_pinned"],
  "page": {
    "has_more": true,
    "cursor": "cur_…",
    "cursor_expires_at": "2026-10-12T19:47:24.000Z"
  },
  "warnings": [],
  "applied_params": {
    "query": "space station"
  },
  "cost_credits": 2,
  "billing": {
    "cost_credits": 2,
    "balance_credits": 98,
    "today_spend_credits": 2,
    "daily_limit_credits": null,
    "daily_remaining_credits": null,
    "display": "This call: 2 credits. Balance: 98 credits."
  },
  "replayed": false
}
```

## Paging and failures

- One call returns a page of up to 30 items. When page.has_more is true, send page.cursor back as cursor for the next page; each page costs 2 credits and a cursor works for 30 minutes.
- A call that runs and finds nothing is a successful call: status is "empty", items is empty, and it costs 2 credits.
- 1 call per second per key, 5 after a purchase; going over is not charged. [Rate limits](https://socialtoai.com/docs/credits-and-billing.md#rate-limits)
- A failed call costs 0 credits and is never retried on its own. [Error codes](https://socialtoai.com/docs/api/errors.md)

## Ask your AI

- Search TikTok for videos about "space station". → `search {"platform":"tiktok","query":"space station"}`, 2 credits
- Search TikTok for videos about "space station": accounts instead of posts. → `search {"platform":"tiktok","query":"nike","type":"user"}`, 2 credits

## Tools that use it

- [Brand buzz](https://socialtoai.com/tools/brand-buzz.md): How people feel about it on each platform, what comes up most, and the posts behind it
- [Find creators](https://socialtoai.com/tools/find-creators.md): Creators who make that content, with their size, recent posts and how well each fits
- [Viral finder](https://socialtoai.com/tools/viral-finder.md): Posts that did clearly better than their authors usually do

## The same call on other platforms

| Platform | Price key | Credits | Page |
| --- | --- | --- | --- |
| Instagram | `instagram.search:user` | 3 | https://socialtoai.com/instagram-search-api.md |
| X | `x.search` | 2 | https://socialtoai.com/x-search-api.md |
| Reddit | `reddit.search` | 2 | https://socialtoai.com/reddit-search-api.md |
| YouTube | `youtube.search` | 2 | https://socialtoai.com/youtube-search-api.md |
| LinkedIn | `linkedin.search` | 2 | https://socialtoai.com/linkedin-search-api.md |
| Threads | `threads.search` | 2 | https://socialtoai.com/threads-search-api.md |
| Pinterest | `pinterest.search` | 2 | https://socialtoai.com/pinterest-search-api.md |
| Xiaohongshu | `xiaohongshu.search` | 12 | https://socialtoai.com/xiaohongshu-search-api.md |
| Douyin | `douyin.search` | 12 | https://socialtoai.com/douyin-search-api.md |
| Weibo | `weibo.search` | 2 | https://socialtoai.com/weibo-search-api.md |
| WeChat Articles | `wechat.search` | 12 | https://socialtoai.com/wechat-search-api.md |
| Bilibili | `bilibili.search` | 2 | https://socialtoai.com/bilibili-search-api.md |
| Zhihu | `zhihu.search` | 2 | https://socialtoai.com/zhihu-search-api.md |
| Kuaishou | `kuaishou.search` | 12 | https://socialtoai.com/kuaishou-search-api.md |
| WeChat Channels | `wechat_channels.search` | 12 | https://socialtoai.com/wechat-channels-search-api.md |

## More on TikTok

| Interface | What it does | Price key | Credits | Page |
| --- | --- | --- | --- | --- |
| `detail` | One video by ID or link: text, author, likes, comment count, views and publish time. | `tiktok.detail` | 2 | https://socialtoai.com/tiktok-detail-api.md |
| `comments` | The comments under one video: text, likes, reply count and time. | `tiktok.comments` | 2 | https://socialtoai.com/tiktok-comments-api.md |
| `user_profile` | One account: name, bio, followers, following and post count. | `tiktok.user_profile` | 2 | https://socialtoai.com/tiktok-user-profile-api.md |
| `user_posts` | The recent videos of one account. | `tiktok.user_posts` | 2 | https://socialtoai.com/tiktok-user-posts-api.md |
| `top_ad_detail` | Get one Top Ad of TikTok's Creative Center by its ID. | `tiktok.top_ad_detail` | 2 | https://socialtoai.com/tiktok-top-ad-detail-api.md |
| `top_ad_search` | Search the Top Ads of TikTok's Creative Center by keyword. | `tiktok.top_ad_search` | 2 | https://socialtoai.com/tiktok-top-ad-search-api.md |
| `hashtag_videos` | Get a page of the TikTok videos under a hashtag, by its name, about 20 a page. | `tiktok.hashtag_videos` | 2 | https://socialtoai.com/tiktok-hashtag-videos-api.md |
| `product_reviews` | Get the first 10 buyers' reviews of a TikTok Shop product in the United States by the product's ID. | `tiktok.product_reviews` | 2 | https://socialtoai.com/tiktok-product-reviews-api.md |
| `product_search` | Search the products of TikTok Shop in the United States by terms. | `tiktok.product_search` | 2 | https://socialtoai.com/tiktok-product-search-api.md |
| `seller_products` | Get a page of the products a TikTok Shop seller in the United States has on sale by the seller's ID. | `tiktok.seller_products` | 2 | https://socialtoai.com/tiktok-seller-products-api.md |

## FAQ

**Do I need a TikTok account or TikTok's own API access?**

No. You only need a SocialToAI key. The call returns content and account information publicly visible on TikTok; you never sign in to TikTok or apply for anything there.

**Can I get accounts instead of posts?**

Yes: send type=user in the request. That call costs 2 credits.
