TikTok API endpoint
Returns a public TikTok profile by `handler`, the username without the leading `@`. The `user` object has the id, `uniqueId`, nickname, signature, verified and private flags, region, language, avatar, bio link and `secUid`; `stats` has follower, following, heart, video and friend counts. A missing, deleted or banned handle returns 404.
/tiktok/profile/{handler}Path parameters:
handler: TikTok username without the leading @Returns the wrapped public TikTok profile payload.
Missing, deleted, or banned handles return 404.
| Field | In the sample | Value in the sample |
|---|---|---|
| user.id | Has a value | |
| user.uniqueId | Has a value | |
| user.nickname | Has a value | |
| user.avatarLarger | Has a value | p19-common-sign.tiktokcdn-us.com |
| user.signature | Has a value | |
| user.createTime | Has a value | 1,689,461,786 |
| user.verified | Has a value | true |
| user.secUid | Has a value | |
| user.bioLink | Has a value | |
| user.commerceUserInfo | Has a value | |
| user.privateAccount | Has a value | false |
| user.secret | Has a value | false |
| user.ttSeller | Has a value | false |
| user.region | Empty | |
| user.language | Has a value | |
| user.isOrganization | Has a value | 1 |
| stats.followerCount | Has a value | 4,000,000 |
| stats.followingCount | Has a value | 1 |
| stats.heart | Has a value | 19,800,000 |
| stats.heartCount | Has a value | 19,800,000 |
| stats.videoCount | Has a value | 480 |
| stats.diggCount | Has a value | 3,710 |
| stats.friendCount | Has a value | 1 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| x-api-key (header) | string | Yes | API key required | ||
| handler (path) | string | Yes | TikTok handle without the leading @ | chatgpt |
curl -X GET "https://api.crawlora.net/api/v1/tiktok/profile/chatgpt" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"user": {
"id": "7256182609359995947",
"uniqueId": "chatgpt",
"nickname": "chatgpt",
"signature": "What can I help with?",
"verified": true,
"secUid": "MS4wLjABAAAAT4vq3vsh9X-Vb_WtV6tz4QWTbKjliTKCiK5DqnJNtQEA2RUveHb7UdnL7xgPK2HB"
},
"stats": {
"followerCount": 458800,
"followingCount": 1,
"heartCount": 800300,
"videoCount": 59
}
}
}Request schema
No body schema
Response schema
#/definitions/tiktok.profileResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | tiktok.Profile | No | ||||
| data.stats | object | No | Follower, following, like and video counts for the account. | |||
| data.stats.diggCount | integer | No | 0 | Number of videos the account has liked. | ||
| data.stats.followerCount | integer | No | 458800 | Number of accounts that follow this account. | ||
| data.stats.followingCount | integer | No | 1 | Number of accounts this account follows. | ||
| data.stats.friendCount | integer | No | 1 | Number of friends, meaning accounts that follow each other. | ||
| data.stats.heart | integer | No | 800300 | Total likes the account's videos have received. Very large totals are rounded. | ||
| data.stats.heartCount | integer | No | 800300 | Total likes the account's videos have received. Can be negative for accounts with more than about 2.1 billion likes; use `heart` then. | ||
| data.stats.videoCount | integer | No | 59 | Number of videos the account has posted. | ||
| data.user | object | No | Account details: identity, bio, verification and region. | |||
| data.user.avatarLarger | string | No | https://p16-pu-sign-useast8.tiktokcdn-us.com/tos-useast5-avt-0068-tx/fb1ed871dc01261013179da3fafcc1cd~c5_1080x1080.jpeg?lk3s=a5d48078&nonce=62362&refresh_token=e3e8e01eff1ea0116ae406af630dc407&x-expires=1734098400&x-signature=MXMzwWT8Tl1nxFZfYNQxOZM%2F%2Byo%3D&shp=a5d48078&shcp=81f88b70 | URL of the account's large profile picture. | ||
| data.user.bioLink | object | No | Link shown in the account's bio. | |||
| data.user.bioLink.link | string | No | www.openai.com/chatgpt | |||
| data.user.commerceUserInfo | object | No | Commerce details for the account: whether it is a commerce account and its category. | |||
| data.user.commerceUserInfo.category | string | No | Software & Apps | |||
| data.user.commerceUserInfo.commerceUser | boolean | No | true | |||
| data.user.createTime | integer | No | 1689461786 | Time the account was created, in Unix seconds. | ||
| data.user.id | string | No | 7256182609359995947 | TikTok numeric user id of the account. | ||
| data.user.isOrganization | integer | No | 1 | Organisation account flag; `1` marks an organisation account. | ||
| data.user.language | string | No | en | Language code set on the account, for example `en`. | ||
| data.user.nickname | string | No | chatgpt | Display name of the account. | ||
| data.user.privateAccount | boolean | No | false | Whether the account is private. | ||
| data.user.region | string | No | US | Country or region code of the account, for example `US`. | ||
| data.user.secUid | string | No | MS4wLjABAAAAT4vq3vsh9X-Vb_WtV6tz4QWTbKjliTKCiK5DqnJNtQEA2RUveHb7UdnL7xgPK2HB | TikTok secUid of the account. Use it as the `secUid` of the posts endpoint. | ||
| data.user.secret | boolean | No | false | Secret-account flag as TikTok returns it. | ||
| data.user.signature | string | No | What can I help with? | Bio text shown on the account's profile. | ||
| data.user.ttSeller | boolean | No | false | Whether the account is a TikTok Shop seller. | ||
| data.user.uniqueId | string | No | uniqueId | Account handle, the name that follows `@` in the profile URL. | ||
| data.user.verified | boolean | No | true | Whether the account has a verified badge. | ||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Invalid input | #/definitions/app.Response |
| 404 | Profile not found | #/definitions/app.Response |
| 429 | Rate limit exceeded | #/definitions/app.Response |
| 500 | Internal server error | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/tiktok/profile/chatgpt" \
-H "x-api-key: $CRAWLORA_API_KEY"