API

Сохранить настройки профиля

POST/api/crm/v2/profile.updatev2
operationId: profile.update

Частично обновляет профиль текущего пользователя: обрабатываются только переданные ключи, остальные поля не меняются. Подходит и для сохранения одного поля, и для сохранения всей формы одним запросом. Пустое значение очищает поле (name, telegram_user_id, телефон, photo). Если значение обязательно, пустое возвращает ошибку 118: timezone, language и телефон. Email здесь не меняется: смена логина требует подтверждения, для неё есть отдельные profile.request_email_change и profile.cancel_email_change. Телефон — пара ключей, они передаются вместе: один без другого возвращает ошибку 117. Смена пароля требует old_password (ошибка 128, если он не совпадает), отправляет уведомление на email и завершает все сессии пользователя, включая текущую: учётные данные изменились, поэтому нужно войти заново. Включение 2FA требует корректного кода otp, выключение — нет; otp_reset выпускает новый секрет, оставляет 2FA выключенной и возвращает secret и qr для новой привязки.

Авторизация

api-token + language + role

Тело запроса multipart/form-data

object
namestringможет быть null

Пустое значение очищает поле

Пример: John Smith

phone_format_idinteger (PhoneFormatId)

Код страны: 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)

Пример: 1

phone_numberstringможет быть null

Только вместе с phone_format_id; телефон обязателен

Пример: (952) 056-31-65

telegram_user_idstringможет быть null

Только цифры; пустое значение очищает поле

Пример: 476962294

timezonestring

Пример: Europe/Kaliningrad

languagestring

Пример: ru

photostring · binaryможет быть null

Файл заменяет аватар; пустое текстовое поле удаляет его

passwordstring

Новый пароль; только вместе с old_password

Пример: 987654321

old_passwordstring

Текущий пароль; обязателен при смене пароля

Пример: 123456789

otp_enabledboolean

true включает 2FA и требует otp, false выключает её

Пример: true

otp_resetboolean

Выпускает новый секрет 2FA; 2FA остаётся выключенной до новой привязки

Пример: false

otpstring

Код текущего секрета; обязателен при включении 2FA и при otp_reset

Пример: 192870

Ответы

OK

object
statusstringобязательный

Значения:successerror

Пример: success

dataobject
descriptionstring

Пример: Successfully saved

photostring

Есть, если аватар заменён

Пример: data:image/jpeg;base64,/9j/4AAQSkZJRg...

secretstring

Есть при otp_reset

Пример: KA2G2UKBHBBHKOJR

qrstring

Есть при otp_reset

Пример: 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