Роли и доступы

Кто какие эндпоинты может вызывать. Доступ определяется ролью пользователя и — для кураторов — набором гранулярных прав.

Скоупы

В справочнике у каждого эндпоинта есть цветные бейджи скоупа — они показывают, кому он доступен.

СкоупКто этоГде работает
PublicЛюбой клиент без токена/api/v1/auth/*, /api/v1/public/*
TenantЛюбой авторизованный участник школыЧтение в /api/v1/t/*
AdminАдминистратор школыУправление в /api/v1/t/*
CuratorКуратор — в пределах своих учеников и правУправление в /api/v1/t/* при наличии права
StudentУченикПрохождение курсов, тестов, заданий
SuperadminОператор платформы/api/v1/admin/* (над всеми школами)

Роли

  • superadmin — оператор платформы. tenant_id отсутствует. Создаёт школы, управляет тарифами и биллингом.
  • admin — администратор школы. Полный доступ ко всем данным своей школы; обходит все проверки прав куратора.
  • curator — преподаватель/куратор. Доступ выдаётся точечными правами (см. ниже) и ограничен его учениками.
  • student — ученик. Записывается на курсы, проходит тесты и задания, видит свой рейтинг.

Права куратора

Куратор по умолчанию ничего не может изменять. Администратор выдаёт ему права через PUT /t/users/:id/permissions. В справочнике эндпоинт с требуемым правом помечен бейджем право: ….

ПравоЧто разрешает
manage_coursesСоздание и редактирование курсов, модулей, уроков, тестов, заданий, траекторий
manage_studentsУправление учениками, списки записей, проверка и оценивание работ
can_manage_groupsСоздание групп и управление их составом
manage_examsСоздание и публикация экзаменов (ЕНТ)
view_analyticsПросмотр аналитики и попыток прохождения тестов
Ограничение по ученикам (curator scope)
Куратор без расширенных прав видит только своих учеников — тех, кто записан на его курсы или входит в его группы. Списки автоматически фильтруются, а доступ к чужому ученику отдаёт 404. Администратор видит всех.
Кэш прав
Права куратора кэшируются на сервере ~60 секунд. После изменения прав новые ограничения вступают в силу в течение минуты.