Skip to main content
Use POST /web/scrape with formats.parse: true and parseParams: {"type": "prebuilt", "parser": "tiktok-profile"}. Read the result in parsed.data, with parsed.type: "tiktok-profile". 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 profile URL, tiktok.com/@{username}. Query parameters are ignored.

Output

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

Profile fields

All fields are present. Unavailable scalar values are null. Counts are exact. like_count is the total likes across the profile’s videos, liked_video_count is how many videos the profile has liked, and friend_count is mutual follows. sec_uid is TikTok’s stable profile identifier, and created_at is ISO 8601. category is set for business accounts. Private profiles return their profile fields with is_private: true. A profile’s videos and follower lists aren’t returned: use TikTok feed and TikTok followers. For a single post, use TikTok video.

Empty results and errors

A nonexistent or removed profile produces NOT_FOUND. Read parsed.success before using the data. A failed parse has data: null and can coexist with successful outputs. parsed.type remains "tiktok-profile" 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.