Помощь · Интеграции

Документация API

Публичные маршруты Latorn для учётных записей, обучения и преподавательских инструментов. Каждый раздел можно читать отдельно.

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

Справочник API

Учётная запись и безопасность

Регистрация, подтверждение почты, профиль, смена пароля и управление персональными настройками.

Маршруты раздела

Метод Маршрут Доступ Назначение
POST /api/auth/register Без входа Создать учётную запись и отправить код подтверждения.
POST /api/auth/verify-email Без входа Подтвердить адрес электронной почты шестизначным кодом.
POST /api/auth/resend-verification Без входа Повторно отправить код подтверждения.
POST /api/auth/forgot-password Без входа Запросить код восстановления пароля.
POST /api/auth/reset-password Без входа Установить новый пароль по коду.
GET /api/profile Нужна сессия Получить профиль текущего пользователя.
PATCH /api/profile Нужна сессия Изменить имя, описание и аватар.
POST /api/account/instructor/activate Нужна сессия Включить преподавательский кабинет для своей учётной записи.
POST /api/account/security/password Нужна сессия Сменить пароль после проверки текущего.
POST /api/account/security/email/request Нужна сессия Запросить смену электронной почты.
POST /api/account/security/email/confirm Нужна сессия Подтвердить новый адрес кодом.
DELETE /api/account/privacy/marketing Нужна сессия Отозвать согласие на информационные рассылки.
POST /api/account/privacy/deletion-request Нужна сессия Создать запрос на удаление данных.
POST /api/uploads/avatar Нужна сессия Загрузить локальный файл аватара.

Регистрация

POST /api/auth/register принимает JSON:

{
  "email": "student@example.com",
  "name": "Анна",
  "password": "надёжный-пароль",
  "acceptedLegal": true,
  "acceptedMarketing": false
}

После ответа 201 пользователь подтверждает почту через POST /api/auth/verify-email:

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

Коды регистрации, повторной отправки и восстановления защищены ограничением частоты запросов. Обрабатывайте 429 RATE_LIMITED как временную ошибку и не запускайте автоматический цикл повторов.

Профиль

GET /api/profile возвращает данные текущего пользователя. Для изменения передайте только нужные поля:

{
  "name": "Анна Петрова",
  "bio": "Изучаю Python и анализ данных",
  "image": "/uploads/avatars/avatar.webp"
}

В поле image разрешён пустой текст или путь, полученный от POST /api/uploads/avatar. Произвольные внешние адреса не принимаются.

Подключение преподавательского кабинета

POST /api/account/instructor/activate не требует тела запроса и работает только с текущей учётной записью. Для роли STUDENT он включает роль INSTRUCTOR; повторный вызов для INSTRUCTOR безопасен и возвращает уже активное состояние. Более привилегированную системную роль маршрут не понижает.

Подключение кабинета не меняет зачисления, прогресс, покупки и доступ пользователя к уже приобретённым курсам.

Смена электронной почты

Процесс состоит из двух запросов:

  1. POST /api/account/security/email/request с новым адресом и текущим паролем.
  2. POST /api/account/security/email/confirm с новым адресом и кодом из письма.

Изменение не вступает в силу до подтверждения кода.

Поддержка