Douyin Account Profile Lookup (by UID)
omnial/douyin-web-fetch-user-profile-by-uid
Given a Douyin account's numeric UID, returns that account's public profile metadata: display name, bio (signature), verification status, profile city, stable identifiers (id, sec_uid, display id), follower/following counts, account create/modify timestamps and cancellation state. A UID with no visible profile returns the endpoint's own short notice and a non-zero status code rather than an error.
Price
Up to $0.00205 per call; you pay what the call used
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.00.
Data source
Data from Douyin.
Use it
Your AI assistant does the work: it finds this tool, shows you the price first, runs it, and you are charged when the run finishes. There is nothing to set up for this tool in particular.
Connect once and your AI can find and run this tool, and any other it needs.
For developers: the calls your assistant makes
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/douyin-web-fetch-user-profile-by-uid" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/douyin-web-fetch-user-profile-by-uid" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/douyin-web-fetch-user-profile-by-uid", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/douyin-web-fetch-user-profile-by-uid", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.00205 |
- Updated
- Nov 6, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"uid"
],
"properties": {
"uid": {
"type": "string",
"examples": [
"68141954464"
],
"description": "User UID"
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "The account's numeric UID (matches the query)."
},
"city": {
"type": "string",
"description": "The profile's city field. Empty string observed on the one real account."
},
"id_str": {
"type": "string",
"description": "The same UID as a string."
},
"status": {
"type": "number",
"description": "Profile status code; 1 observed on the one real account."
},
"message": {
"type": "string",
"description": "Present only on the no-visible-profile case; the endpoint's own message (e.g. 'forbidden'). Absent on a successful profile fetch."
},
"prompts": {
"type": "string",
"description": "Present only on the no-visible-profile case; a human-readable notice from the platform ('temporarily no personal info viewable', in Chinese). Absent on a successful profile fetch."
},
"sec_uid": {
"type": "string",
"description": "The account's stable, resettable public identifier (a base64-ish token)."
},
"nickname": {
"type": "string",
"description": "The account's public display name."
},
"short_id": {
"type": "number",
"description": "The account's short numeric id."
},
"verified": {
"type": "boolean"
},
"signature": {
"type": "string",
"description": "The account's public bio. Observed as a short Chinese phrase ('该减肥了') on the one real account; may be an empty string on other accounts."
},
"display_id": {
"type": "string",
"description": "The account's short numeric id rendered as a string."
},
"create_time": {
"type": "number",
"description": "Unix seconds. 0 observed on the one real account (the platform does not always populate it) -- do not read 0 as 'created at the epoch'."
},
"follow_info": {
"type": "object",
"properties": {
"follower_count": {
"type": "number"
},
"following_count": {
"type": "number"
},
"follower_count_str": {
"type": "string",
"description": "Abbreviated follower count for display. Observed as '0' on the one real account even though the numeric `follower_count` was 61 (see usage.md)."
},
"following_count_str": {
"type": "string",
"description": "Abbreviated following count for display. Observed as '0' while the numeric `following_count` was 180 on the one real account (see usage.md)."
}
},
"additionalProperties": true
},
"modify_time": {
"type": "number",
"description": "Unix seconds."
},
"avatar_large": {
"type": "object",
"properties": {
"url_list": {
"type": [
"array",
"null"
],
"description": "The avatar's image URLs, withheld."
}
},
"description": "Largest avatar. URL value withheld same as `avatar_thumb`.",
"additionalProperties": true
},
"avatar_thumb": {
"type": "object",
"properties": {
"url_list": {
"type": [
"array",
"null"
],
"description": "The avatar's image URLs, withheld. The raw URL-bearing array is nulled on the one real account; only presence is observable."
}
},
"description": "Smallest avatar size. URL value withheld (stripped to `null`) -- only whether an avatar is set is observable, not the image itself.",
"additionalProperties": true
},
"avatar_medium": {
"type": "object",
"properties": {
"url_list": {
"type": [
"array",
"null"
],
"description": "The avatar's image URLs, withheld."
}
},
"description": "Mid-size avatar. URL value withheld same as `avatar_thumb`.",
"additionalProperties": true
},
"user_canceled": {
"type": "boolean"
},
"verified_reason": {
"type": "string",
"description": "Public verification badge reason. Empty string observed."
}
},
"description": "The account record. Carries only the `message`/`prompts` notice fields (below) on the no-visible-profile case, and the full profile fields on a real account.",
"additionalProperties": true
},
"extra": {
"type": "object",
"properties": {
"now": {
"type": "number",
"description": "Epoch milliseconds; present on every call observed."
}
},
"description": "The upstream server clock at response time.",
"additionalProperties": true
},
"status_code": {
"type": "number",
"description": "0 on a successful profile fetch; 10033 (the endpoint's own code) on the no-visible-profile case."
}
},
"description": "The account profile record. Observed as `{ data: { message, prompts }, extra: { now }, status_code }` (no profile fields) when the given `uid` has no visible profile.",
"additionalProperties": true
}