Get a TikTok account profile
One public TikTok account’s profile, by username or profile URL. Returns the bio, avatar, verification and organization flags, region, the account creation date, the bio link, the secUid, and the full stats block. The counts are the exact published figures rather than the rounded ones shown on the page, so a follower count comes back as 1719888 rather than 1.7M — which is what makes week-to-week tracking possible at all. A private account is reported in notes rather than as an error. Billing: 1 credit.
/user-profile Accounts https://api.fetchlayer.dev/tiktok/user-profile Headers
Authorization string required Bearer token — your FetchLayer API key.
Parameters
username string required A username with or without the leading @, or a profile URL.
format string optional json or markdown. Markdown returns a rendered summary instead of the structured record. (default: json)
timeoutMs integer optional Time limit for each individual page read, in milliseconds (max 60000). It bounds one page, not the whole request.
Response Fields
user-profile
Get a TikTok account profile
transport string The upstream source. Always "tiktok".
notes string[] Caveats you can act on — a private account, comments turned off, a list that ran out early, paging that has gone as deep as it goes. Empty when there are none. An empty result always comes with a note explaining it, never as an unexplained empty array.
pagesFetched number Pages of results read, which is what the request costs: one credit per page. resolve-url reports 0 and is not billed.
profile.id string TikTok’s numeric account id.
profile.uniqueId string The @handle, without the @.
profile.nickname string The display name.
profile.url string Canonical profile URL.
profile.signature string The bio text.
profile.avatarUrl string Avatar image. Pass it to GET /media to re-fetch it after TikTok’s own signed link expires.
profile.verified boolean Whether TikTok shows the verification badge.
profile.privateAccount boolean Whether the account is private. A private account has no public posts, and notes says so.
profile.createdAt string When the account was created, or null.
profile.region string The region TikTok publishes for the account, or null.
profile.isOrganization boolean Whether TikTok marks the account as an organization.
profile.bioLink string The link in the bio, or null.
profile.secUid string TikTok’s opaque secondary account id.
profile.stats.followerCount number Followers — the exact figure, not the rounded one.
profile.stats.followingCount number Accounts this one follows.
profile.stats.heartCount number Total likes across the account’s videos.
profile.stats.videoCount number Public videos posted.
profile.stats.friendCount number Mutual follows.
Request
curl -X POST "https://api.fetchlayer.dev/tiktok/user-profile" \
-H "Authorization: Bearer ss-your-key" \
-H "Content-Type: application/json" \
-d '{"username":"@nasa"}'Response
{
"transport": "tiktok",
"notes": [],
"pagesFetched": 1,
"profile": {
"id": "7664638705177150477",
"uniqueId": "nasa",
"nickname": "NASA",
"url": "https://www.tiktok.com/@nasa",
"signature": "Making the seemingly impossible, possible.✨",
"avatarUrl": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/...",
"verified": true,
"privateAccount": false,
"createdAt": "2026-07-20T15:55:49.000Z",
"region": null,
"isOrganization": true,
"bioLink": null,
"secUid": "MS4wLjABAAAAU9BRVzC8oCaegVnia8IbqWhPb_-dbU7s00Y3wS1_Nx8g5RUaYvyXrpejgjdxTwd6",
"stats": {
"followerCount": 1719888,
"followingCount": 23,
"heartCount": 8962614,
"videoCount": 45,
"friendCount": 17
}
}
}