Save profile settings
/api/crm/v2/profile.updatev2profile.updatePartially updates the current user's profile: only the provided keys are processed, other fields remain unchanged. Suitable for saving a single field or submitting the entire form in one request.
An empty value clears the field (name, telegram_user_id, phone, photo). If the value is required, an empty value returns error 118: timezone, language, and phone.
Email cannot be changed here: changing the login requires confirmation and has separate methods: profile.request_email_change and profile.cancel_email_change.
Phone is a pair of keys that must be sent together; sending one without the other returns error 117. Changing the password requires old_password (error 128 if it does not match), sends a notification to the email, and terminates all user sessions, including the current one: credentials have changed, so re-login is required. Enabling 2FA requires a valid otp code; disabling does not. otp_reset issues a new secret, leaves 2FA disabled, and returns secret and qr for new setup.
Authorization
api-token + language + role
Request body multipart/form-data
An empty value clears the field
Example: John Smith
Country code: 1-🇷🇺(+7|8), 2-🇦🇿(+994|0), 3-🇧🇾(+375|80), 4-🇰🇿(+7|8), 6-🇷🇸(+381|0), 7-🇹🇷(+90|0), 8-🇺🇦(+380|0), 9-🇵🇹(+351|0), 10-🇰🇬(+996|0), 11-🇺🇸(+1), 12-🇫🇷(+33|0), 13-🇲🇩(+373|0), 15-🇪🇪(+372), 18-🇬🇪(+995), 19-🇺🇿(+998), 22-🇵🇱(+48|0), 23-🇹🇯(+992|8), 25-🇷🇴(+40|0), 44-🇨🇭(+41|0)
Example: 1
Only required together with phone_format_id; phone number is mandatory
Example: (952) 056-31-65
Digits only; an empty value clears the field
Example: 476962294
Example: Europe/Kaliningrad
Example: ru
The file replaces the avatar; an empty text field removes it
New password; only together with old_password
Example: 987654321
Current password; required when changing the password
Example: 123456789
true enables 2FA and requires otp, false disables it
Example: true
Issues a new 2FA secret; 2FA remains disabled until re-binding
Example: false
Current secret code; required when enabling 2FA and for otp_reset
Example: 192870
Responses
OK
Values:successerror
Example: success
Example: Successfully saved
Exists if the avatar has been replaced
Example: data:image/jpeg;base64,/9j/4AAQSkZJRg...
Present when otp_reset
Example: KA2G2UKBHBBHKOJR
Present for otp_reset
Example: https://api.qrserver.com/v1/create-qr-code/?data=otpauth%3A%2F%2Ftotp%2FFS%2520Admin%3Akalabunga82%40gmail.com%3Fsecret%3DKA2G2UKBHBBHKOJR%26issuer%3DFS%2520Admin&size=520x520&margin=15