PUT /api/v1/users/me
Updates the profile of the currently authenticated user. All fields in the request body are optional -- only the provided fields will be updated.
Authentication​
Required. Bearer token must be included in the Authorization header.
Request​
Body Parameters​
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | No | Display name |
nickname | string | No | Unique username |
language | string | No | Preferred language ("en" or "ru") |
theme | string | No | UI theme ("light" or "dark") |
profile_hidden | bool | No | Whether to hide profile from other users |
Example​
curl -X PUT https://intotes.com/api/v1/users/me \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"name": "Alice Updated",
"nickname": "alice_new",
"language": "en",
"theme": "dark",
"profile_hidden": false
}'
Response​
200 OK​
Returns the full updated user profile.
Returns the full UserInfo object (same structure as Get Me).
{
"id": 42,
"name": "Alice Updated",
"nickname": "alice_new",
"profile_hidden": false,
"email": "alice@example.com",
"referral_code": "XYZ789",
"language": "en",
"theme": "dark",
"level": 0,
"balance": 125050,
"bonus_balance": 0,
"total_balance": 125050,
"avatar_url": "https://cdn.intotes.com/avatars/42.jpg",
"telegram_verified": false,
"is_creator": false,
"is_stats_viewer": false,
"positions": [],
"closed_positions_has_more": false,
"total_predictions": 12,
"biggest_win": 8500,
"registered_date": "2025-06-15"
}
Errors​
| Status | Code | Description |
|---|---|---|
| 400 | invalid_body | Request body is malformed or contains invalid data |
| 400 | nickname_taken | The requested nickname is already in use |
| 400 | invalid_nickname | The nickname format is invalid |
| 400 | invalid_language | Language must be "en" or "ru" |
| 400 | invalid_theme | Theme must be "light" or "dark" |
| 401 | unauthorized | Missing or invalid authentication token |