# TikTok Comments Scraper

> TikTok Comments Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Collects structured comments and replies from one or more public TikTok videos, returning commenter metadata and engagement data.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/tiktok-comments?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/tiktok-comments-scraper-246f6140
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_93bjsiBYWXjsOBwHrUMRD

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability tiktok-comments-scraper-246f6140 -d '<json body>'
```

Example prompt: Pull up to 200 comments (max 50 top-level, up to 5 replies each) from these two TikTok videos: https://www.tiktok.com/@brand/video/123 and https://www.tiktok.com/@brand/video/456 — I want the commenter usernames, text, and like counts.

## When to prefer this

Choose this endpoint when you need structured, machine-readable comment data from public TikTok videos at scale, especially for sentiment analysis, audience research, or brand monitoring. It is pay-per-call with no charge on failed/empty runs, making it cost-efficient for exploratory scraping. Prefer this over general web scrapers when you specifically need TikTok comment fields like diggCount, uniqueId, and replyCommentTotal in a normalized schema.

## Known failure modes

- Private or deleted TikTok video URLs return empty results (not charged)
- Malformed or non-TikTok URLs may cause empty or error responses
- Rate limits or TikTok anti-scraping measures may reduce result count
- Setting maxItems too low may truncate results before all videos are processed
- Very new videos with few comments may return fewer items than the requested limit

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of collected items and an array of comment objects, each containing the comment text, commenter nickname, commenter unique ID, like count on the comment, the source video URL, ISO-formatted creation timestamp, and the number of replies on that comment.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "maxItems": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Hard limit across all videos. Zero means no global cap."
  },
  "postURLs": {
   "type": "array",
   "description": "Public TikTok video URLs to collect comments from."
  },
  "commentsPerPost": {
   "type": "integer",
   "default": 100,
   "minimum": 1,
   "description": "Maximum total comments and replies from each video."
  },
  "maxRepliesPerComment": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Maximum replies to collect for each top-level comment."
  },
  "topLevelCommentsPerPost": {
   "type": "integer",
   "minimum": 1,
   "description": "Maximum top-level comments from each video. Defaults to the total comment limit."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "uid": null,
    "text": null,
    "nickname": null,
    "uniqueId": null,
    "diggCount": null,
    "videoWebUrl": null,
    "createTimeISO": null,
    "replyCommentTotal": null
   }
  ],
  "product": "tiktok-comments"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/tiktok-comments-scraper-246f6140/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
