Skip to main content
Use POST /web/scrape with formats.parse: true and parseParams: {"type": "prebuilt", "parser": "tiktok-comments"}. Read the result in parsed.data, with parsed.type set to "tiktok-comments". See the Quickstart for authentication and SDK setup. Don’t send custom rules with this parser. For CSS selectors and rules, use the Custom parser.

Request

Use a public video or photo post URL: tiktok.com/@{username}/video/{id} or /@{username}/photo/{id}. Short links such as vm.tiktok.com/... aren’t accepted; open them to get the full URL.

Output

When parsed.success is true, the parsed output has this shape:

Comment fields

Up to 20 top-level comments are returned, from the first page in TikTok’s order. Replies aren’t included; reply_count is how many each comment has. posted_at is ISO 8601, and is_liked_by_author is true when the post’s creator liked the comment.

Empty results and errors

A post with no visible comments returns comments: [], and so does a deleted or nonexistent post. Use TikTok video to check that a post exists. Read parsed.success before using the data. A failed parse has data: null and can coexist with successful outputs. parsed.type remains "tiktok-comments" even when parsing fails. See timeouts and errors for handling failures.

Request options

This parser reads public TikTok data separately from the rendered page, without logging in. Content filters and browser actions do not change its results. Browser profiles are unsupported with this parser. Other Scrape controls, including caching, timeouts, and zero data retention, still apply.