Skip to content

Update Account Profile

Updates non-trading profile fields for an account.

PUT

https://{some_domain}/account/me

Alias endpoint:

PUT

https://{some_domain}/account/profile

Authorization

All requests must include a JWT token:

Authorization: <JWT_TOKEN>

Allowed session types:

  • SESSION_USER
  • SESSION_CUSTOMER

SESSION_USER can update only the account from the current user session.

SESSION_CUSTOMER can update only accounts owned by the authenticated customer. When a customer has multiple accounts, pass login in the request body.

Request

Content-Type: application/json

At least one profile field must be provided.

Body Parameters

Field Type Required Description
login int No Account login. Optional for SESSION_USER; recommended for SESSION_CUSTOMER with multiple accounts
name string No Account display name. Max length 128
avatar string No Public account avatar reference returned by POST /upload with purpose=account_avatar, for example {uuid}. Legacy generated avatars can use {uuid}.svg. Max length 4096
phone string No Phone number. Max length 64
address string No Address. Max length 256
city string No City. Max length 128
state string No State or region. Max length 128
country string No Country. Max length 128
zipcode string No ZIP or postal code. Max length 32
user_color string No User color marker. Max length 32

The endpoint does not allow changing trading, access, or ownership fields such as group, leverage, enable, enable_read_only, balance, credit, customer_id, email, or passwords.

avatar must reference an existing public storage file with purpose account_avatar. Use POST /upload with multipart field purpose=account_avatar to upload a new avatar. External URLs are not accepted. The account stores the avatar reference without /storage/.

Request Example

{
  "login": 1001,
  "name": "John Doe",
  "avatar": "8e68414e-0e3f-48dd-b7b8-f5be9e26d4f7",
  "phone": "+35700000000",
  "city": "Limassol",
  "country": "CY"
}

Response

Success (200)

{
  "login": 1001,
  "avatar": "8e68414e-0e3f-48dd-b7b8-f5be9e26d4f7",
  "name": "John Doe",
  "phone": "+35700000000",
  "address": "Street 1",
  "city": "Limassol",
  "state": "",
  "country": "CY",
  "zipcode": "3010",
  "user_color": "#ffffff",
  "update_time": 1777564800
}

Error Responses

Code Error Description
400 INVALID_DATA Request validation failed or no profile field was provided
400 INVALID_AVATAR avatar does not reference a public account avatar file
403 ACCESS_DENIED The session cannot update the requested account
404 RET_NOT_FOUND Account was not found
401 PERMISSION_DENIED Invalid or missing JWT