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

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

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

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

Справочник API

Команда курса и успеваемость

Приглашения, роли внутри курса, список учащихся, журнал, проверка работ, аналитика и объявления.

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

Метод Маршрут Доступ Назначение
GET /api/dashboard/instructor Преподаватель Получить сводку кабинета преподавателя.
GET /api/instructor/courses/[id]/team Управление командой Получить участников команды и приглашения.
POST /api/instructor/courses/[id]/team Управление командой Пригласить участника команды по почте или ссылке.
GET /api/instructor/courses/[id]/students Чтение учащихся Получить учащихся и ожидающие приглашения.
POST /api/instructor/courses/[id]/students Управление доступом Выдать доступ учащемуся по почте или ссылке.
GET /api/instructor/courses/[id]/gradebook Чтение журнала Получить матрицу прогресса и решений.
GET /api/instructor/courses/[id]/comments Редактирование курса Получить обсуждения всего курса.
GET /api/instructor/review-queue Проверка работ Получить очередь работ с ручной проверкой.
POST /api/instructor/reviews Проверка работ Опубликовать рецензию, статус и балл.
GET /api/instructor/steps/[id]/submissions Проверка работ Получить попытки по одному шагу.
GET /api/instructor/courses/[id]/analytics Чтение аналитики Получить учебные показатели курса.
GET /api/instructor/courses/[id]/revenue Чтение доходов Получить финансовую сводку курса.
GET /api/instructor/courses/[id]/promos Управление продажами Получить промокоды курса.
POST /api/instructor/courses/[id]/promos Управление продажами Создать промокод.
PUT /api/instructor/courses/[id]/promos/[promoId] Управление продажами Изменить промокод.
DELETE /api/instructor/courses/[id]/promos/[promoId] Управление продажами Удалить промокод.
GET /api/instructor/courses/[id]/marketing-links Управление продажами Получить рекламные ссылки.
POST /api/instructor/courses/[id]/marketing-links Управление продажами Создать рекламную ссылку.
PATCH /api/instructor/courses/[id]/marketing-links/[linkId] Управление продажами Включить или выключить ссылку.
DELETE /api/instructor/courses/[id]/marketing-links/[linkId] Управление продажами Удалить рекламную ссылку.
GET /api/instructor/courses/[id]/announcements Редактирование курса Получить объявления курса.
POST /api/instructor/courses/[id]/announcements Редактирование курса Создать черновик объявления.
PUT /api/instructor/courses/[id]/announcements/[announcementId] Редактирование курса Изменить черновик объявления.
DELETE /api/instructor/courses/[id]/announcements/[announcementId] Редактирование курса Удалить черновик объявления.
POST /api/instructor/courses/[id]/announcements/[announcementId]/publish Редактирование курса Опубликовать объявление в приложении и, если включено, отправить email.
POST /api/instructor/courses/[id]/announcements/audience Редактирование курса Рассчитать аудиторию, email-доступность и персональные исключения.
POST /api/instructor/courses/[id]/announcements/test Редактирование курса Отправить тестовое письмо на подтверждённый email преподавателя.

Права внутри курса

Права задаются участием в конкретном курсе, а не общей ролью на всей платформе. Основные роли команды:

  • OWNER — владелец;
  • MANAGER — управление командой и доступами;
  • EDITOR — редактирование материалов и комментариев;
  • MENTOR — сопровождение учащихся;
  • REVIEWER — проверка работ;
  • ANALYST — чтение журнала и показателей.

Не показывайте кнопку действия, пока не проверили соответствующее право на сервере. Клиентское скрытие элемента не заменяет проверку API.

Приглашение учащегося

Адресное приглашение связывается с электронной почтой. Одноразовая ссылка не содержит адреса и закрывается после первого успешного принятия. Пример адресного запроса:

{
  "email": "student@example.com"
}

Если учётная запись уже существует, доступ появляется сразу. Иначе создаётся приглашение.

Журнал

GET /api/instructor/courses/[id]/gradebook возвращает учащихся, уроки, шаги и агрегированные состояния попыток. Используйте серверные фильтры курса и урока, а на клиенте не пытайтесь восстанавливать правильность по тексту ответа.

Рецензирование

Очередь показывает работы REVIEW, ожидающие ручной проверки. Публикация рецензии идемпотентно отправляет учащемуся уведомление. Скрытые эталонные ответы остаются только в преподавательском интерфейсе.

Аналитика

Учебная аналитика и доходы разделены. Первая отвечает на вопросы об активности, сложных заданиях и прогрессе; вторая — об успешных покупках, возвратах и динамике выручки.

Новости и рассылки курса

Новость всегда публикуется как уведомление внутри Latorn. Поле sendEmail дополнительно включает email-канал для учащихся с подтверждённой почтой и действующим согласием на рассылки. В excludedUserIds можно передать учащихся, которых нужно исключить из обоих каналов.

Перед сохранением или публикацией вызовите POST /api/instructor/courses/[id]/announcements/audience. Он принимает аудиторию, строку поиска и исключения, а возвращает исходный размер сегмента, число исключённых, итоговое число получателей, email-доступную часть и безопасный список для предпросмотра. Поиск меняет только список предпросмотра, но не сам сегмент.

Тестовое письмо отправляется текущему преподавателю и не публикует новость. При публикации API возвращает отдельные счётчики in-app уведомлений, доступных и поставленных в очередь email, а также идентификатор фоновой кампании. Массовая отправка ставится в очередь и выполняется возобновляемым worker-процессом техническими пачками; после его работы повторный GET показывает фактические успешные и неуспешные доставки.

Поддержка