# TikTok Post search as public JSON

> GET /api/post/search — $0.004 per call in USDC on Base, Polygon, Arbitrum, Monad or Solana. No account, no OAuth — pay with x402 or a prepaid credit key.

- This page (HTML): https://tiktok.fetcher.sh/post-search
- Service catalog: https://tiktok.fetcher.sh/index.md
- Agent setup: https://tiktok.fetcher.sh/skill.md

Public post search without Research API approval or TikTok for Developers OAuth. Worked query: `keyword=ai`. See /blog/tiktok-api-alternatives.

## Endpoint

`GET /api/post/search`

## Parameters

- `keyword` — query, required
- `cursor` — query, optional
- `region` — query, optional
- `sortType` — query, optional (RELEVANCE, MOST_LIKED, DATE_POSTED)
- `dateRange` — query, optional (ALL_TIME, YESTERDAY, THIS_WEEK, THIS_MONTH, LAST_THREE_MONTHS, LAST_SIX_MONTHS)

## Pay per call (x402)

Call with no payment and the server answers 402 with machine-readable requirements. Sign, retry — libraries like `@x402/fetch` do the loop.

```bash
# call without payment to inspect the 402 challenge
curl -i 'https://tiktok.fetcher.sh/api/post/search?keyword=...'
# HTTP/1.1 402 Payment Required
# payment-required: <base64 payment requirements>
```

## Prepaid credits

Top up once at the apex `/topup`. Every call after that is a plain HTTP request.

```bash
curl -H 'Authorization: Bearer bby_live_...' \
  'https://tiktok.fetcher.sh/api/post/search?keyword=...'
```

## Response

```json
{
  "status": 200,
  "message": "ok",
  "data": { }
}
```
