Авторизация (Auth)

Запросить OTP-код

Запрос OTPкода (зависит от предаваемого значения intent: регистрация, восстановление, верификация и т. д.).

Запрос:

/auth/otp

Метод запроса: POST.

Интенты:

Параметры запроса:

Пример тела запроса:

{
  "intent": 1,
  "email": "user@example.com"
}

Ответ:

Схема данных ответа (Schema): OTP.

Пример ответа:

{
  "transport": "email",
  "intent": "email_registration",
  "credential": "user@example.com",
  "expires_at": "2026-04-18T12:37:09Z"
}

Возможные сообщения об ошибках:

Регистрация пользователя

Запрос на регистрацию нового пользователя.

Запрос:

/auth/register

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "email": "user@example.com",
  "password": "SecurePass123",
  "profile": {
    "first_name": "Иван",
    "last_name": "Иванов",
    "middle_name": "Иванович",
    "gender": "male",
    "birthdate": "1990-01-15"
  },
  "newsletter_sub": false
}

Ответ:

Схема данных ответа (Schema): User.

Пример ответа:

{
  "user_id": "550e8400-e29b-41d4-a716-446655440000",
  "email": "user@example.com",
  "email_verified": false,
  "phone_number": null,
  "phone_number_verified": false,
  "is_active": true,
  "otp_transport": "email",
  "first_name": "Иван",
  "last_name": "Иванов",
  "middle_name": "Иванович",
  "gender": "male",
  "birthdate": "1990-01-15",
  "timezone_id": null,
  "region_id": null,
  "address_actual": null,
  "email_candidate": null,
  "phone_number_candidate": null
}

Возможные сообщения об ошибках:

Подтверждение email при регистрации

Запрос на подтверждение регистрации пользователя.

Запрос:

/auth/register/confirm

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "email": "user@example.com",
  "code": "123456"
}

Ответ:

Схема данных ответа (Schema): User.

Возможные сообщения об ошибках:

Авторизация (логин)

Запрос на авторизацию пользователя по email/телефону и паролю.

Запрос:

/auth/authorize

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "email": "user@example.com",
  "password": "SecurePass123"
}

Ответ:

Схема данных ответа (Schema): AuthAuthorizeResponse.

Пример ответа:

{
  "time_created": 1742774400000,
  "time_updated": 1742774400000,
  "access_token": "d0e88af65fbd63ca1e1d45b0ddda3265e64c50cba3041f0d5a09686f74448de6",
  "refresh_token": "40c06bf69b0e8ce5afff490260973954e4ad2b2417caaffdf23473e75d8d323f",
  "user_id": "53ecec94-ae83-4d40-a39b-970a95018110",
  "expires_at": "2026-04-18T12:37:09Z",
  "status": "PENDING",
  "client": null,
  "device": {
    "device_platform": "mac",
    "device_os": "Mac OS X",
    "device_version": "10.15.7",
    "app_device": "Chrome",
    "app_build": "146.0.0",
    "device_locale": "ru",
    "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
  }
}

Возможные сообщения об ошибках:

Подтверждение входа через OTP

Запрос на подтверждение авторизации пользователя по OTP-коду.

Запрос:

/auth/authorize/confirm

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "code": "123456"
}

Ответ:

Схема данных ответа (Schema): AuthAuthorizeResponse.

Пример ответа:

{
  "time_created": 1742774400000,
  "time_updated": 1742774400000,
  "access_token": "d0e88af65fbd63ca1e1d45b0ddda3265e64c50cba3041f0d5a09686f74448de6",
  "refresh_token": "40c06bf69b0e8ce5afff490260973954e4ad2b2417caaffdf23473e75d8d323f",
  "user_id": "53ecec94-ae83-4d40-a39b-970a95018110",
  "expires_at": "2026-04-18T12:37:09Z",
  "status": "ACTIVE",
  "client": null,
  "device": {
    "device_platform": "mac",
    "device_os": "Mac OS X",
    "device_version": "10.15.7",
    "app_device": "Chrome",
    "app_build": "146.0.0",
    "device_locale": "ru",
    "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36"
  }
}

Возможные сообщения об ошибках:

Восстановление пароля

Запрос на восстановление доступа (смена пароля по OTP коду).

Запрос:

/auth/restore

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "email": "user@example.com",
  "code": "123456",
  "password": "NewSecurePass123"
}

Ответ:

Схема данных ответа (Schema): Нет.

Возможные сообщения об ошибках:

Обновление токена

Запрос на обновление сессии по ранее полученному токену.

Запрос:

/auth/refresh

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "refresh_token": "dGhpcyBpcyBhIHJlZnJlc2ggdG9rZW4..."
}

Ответ:

Схема данных ответа (Schema): UserToken.

Пример ответа:

{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "refresh_token": "bmV3UmVmcmVzaFRva2VuSGVyZQ...",
  "user_id": "550e8400-e29b-41d4-a716-446655440000",
  "expires_at": "2026-04-18T12:37:09Z",
  "otp_transport": "email",
  "is_confirmed": true,
  "device_info": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)"
}

Возможные сообщения об ошибках:

Проверка пароля

Запрос на проверку пароля. Необходимо использовать для чувствительных операций.

Запрос:

/auth/password_check

Метод запроса: POST.

Параметры запроса:

Пример тела запроса:

{
  "password": "SecurePass123"
}

Ответ:

Схема данных ответа (Schema): Нет.

Возможные сообщения об ошибках: