API Reference
Patch the current profile
Patch the current profile. The following is this gateway’s public contract.
Preview guide
Paste into an AI assistant to help with integration. Documentation and examples only; no real credentials.
Updated · Reviewed
Endpoint and authentication
PATCH https://api.tu-zi.com/api/user/self
Transport: json
Use an account system token and New-Api-User (account ID), or a valid site login session. Manage system tokens in account settings. Inference API keys are not substitutes.
Authorization: Bearer YOUR_SYSTEM_TOKEN
New-Api-User: YOUR_USER_ID
Content-Type: application/json
Minimal request example
{
"display_name": "API user"
}
Before running
Replace https://api.tu-zi.com with this site origin (do not append /v1 twice), and YOUR_MODEL with the exact marketplace model ID. Install requests for Python; use Node.js 20+ and save JavaScript as .mjs. WebSocket samples list their own dependencies.
Set SYSTEM_TOKEN and USER_ID in the environment; keep system tokens out of frontend code. Replace YOUR_SYSTEM_TOKEN and YOUR_USER_ID in cURL.
Start with a minimal request, then read the result using the response fields below. For async APIs, a returned task ID requires polling; acceptance does not mean generation has finished.
Constraints
Updates only supplied allowlisted fields. Rejects unknown fields, null, an empty object and bodies above 64 KiB. Cannot change role, quota, group, password or email. Response follows the current-account endpoint.
Body parameters
| Field | Type | Required | Description / constraints |
|---|---|---|---|
| display_name | string | No | Display name, 1–20 Unicode characters. |
| language | string | No | Interface language. Values: "zh-CN", "zh-TW", "en", "fr", "ru", "ja", "vi" |
| accept_unset_model_ratio_model | boolean | No | Whether to accept models without a configured ratio. |
| high_concurrency_enabled | boolean | No | High-concurrency preference; does not bypass account limits. |
| record_ip_log | boolean | No | Whether to record request IP addresses. |
Response fields
| Field | Type | Description / constraints |
|---|---|---|
| success | boolean | Business success; do not rely only on HTTP status. |
| message | string | Result or error message. |
| data.id | integer | Account ID, used in New-Api-User for system-token requests. |
| data.username | string | Username. |
| data.display_name | string | Display name. |
| data.quota | integer | Remaining quota in site units. |
| data.used_quota | integer | Consumed quota in site units. |
| data.request_count | integer | Total request count. |
| data.group | string | Account group. |
| data.setting | string | JSON-encoded user settings. |
| data.permissions | object | Account permissions and configuration capabilities. |
| data.role | integer | Account role value. |
| data.status | integer | Account status. |
| data.email | string | Bound email. |
| data.use_group | string | Usage group configuration. |
| data.disabled_channels | string | Disabled-channel configuration. |
| data.model_limits_enabled | boolean | Whether account model limits are enabled. |
| data.model_limits | string | Account model restriction configuration. |
| data.aff_code | string | Referral code. |
| data.aff_count | integer | Current referral count. |
| data.aff_history_count | integer | Historical referral count. |
| data.aff_quota | integer | Current referral quota. |
| data.aff_history_quota | integer | Historical referral quota. |
| data.inviter_id | integer | Inviter ID. |
| data.model_call_timeout_seconds | integer | Model-call timeout in seconds. |
| data.stripe_customer | string | Payment customer identifier. |
| data.sidebar_modules | object | string | Sidebar module settings; preserve the returned representation. |
| data.admin_permissions | string[] | Effective administrative permissions; usually empty for ordinary accounts. |
| data.github_id | string | github binding identifier. |
| data.google_id | string | google binding identifier. |
| data.discord_id | string | discord binding identifier. |
| data.oidc_id | string | oidc binding identifier. |
| data.wechat_id | string | wechat binding identifier. |
| data.telegram_id | string | telegram binding identifier. |
| data.linux_do_id | string | linux_do binding identifier. |
Illustrative response; some endpoints show essential fields only. Optional fields may be absent.
{
"success": true,
"message": "",
"data": {
"id": 123,
"username": "demo",
"display_name": "Demo",
"quota": 500000,
"used_quota": 0,
"request_count": 0,
"group": "default",
"setting": "{}"
}
}
Errors and retries
Check HTTP status and success. Business validation errors may return HTTP 200 with {"success":false,"message":"..."}; some include error.code. Authentication may return 401/403 and rate limiting 429. HTTP 200 alone does not guarantee success.
Use bounded exponential backoff for reads. Do not blindly retry task creation, generation, or key mutations, to avoid duplicate billing or execution.
兔子API