Устройства и сеансы
Инвентарь устройств ученика, журнал безопасности, отзыв и блокировка сеансов, индивидуальные исключения и общая политика школы.
- GET
/api/v1/t/me/devicesМои устройства - GET
/api/v1/t/me/device-eventsМоя история безопасности - POST
/api/v1/t/me/devices/:deviceId/revokeЗавершить сеансы своего устройства - POST
/api/v1/t/me/sessions/revoke-othersВыйти на остальных устройствах - POST
/api/v1/t/me/session/activityОтметить активность сеанса - GET
/api/v1/t/tenant/device-policyПолитика устройств школы - PATCH
/api/v1/t/tenant/device-policyИзменить политику устройств - GET
/api/v1/t/users/:id/devicesУстройства ученика - GET
/api/v1/t/users/:id/device-eventsИстория устройств ученика - POST
/api/v1/t/users/:id/devices/:deviceId/revokeЗавершить сеансы устройства ученика - POST
/api/v1/t/users/:id/devices/:deviceId/blockЗаблокировать устройство ученика - POST
/api/v1/t/users/:id/devices/:deviceId/unblockРазблокировать устройство ученика - POST
/api/v1/t/users/:id/sessions/revoke-allЗавершить все сеансы ученика - GET
/api/v1/t/users/:id/device-policy-overrideИндивидуальный лимит ученика - PUT
/api/v1/t/users/:id/device-policy-overrideЗадать индивидуальный лимит - DELETE
/api/v1/t/users/:id/device-policy-overrideУдалить индивидуальный лимит
/api/v1/t/me/devicesМои устройства
Возвращает устройства текущего пользователя, количество активных устройств и сеансов, текущий сеанс и эффективный лимит.
Пример ответа
{
"success": true,
"data": {
"active_devices": 2,
"max_active_devices": 2,
"online_now": 1,
"active_sessions": 2,
"devices": [{
"id": "8f3b1c2a-...",
"name": "Chrome · macOS",
"platform": "web",
"status": "online",
"last_seen_at": "2026-08-30T12:00:00Z",
"active_sessions": 1,
"is_current": true
}]
}
}/api/v1/t/me/device-eventsМоя история безопасности
Постранично возвращает входы, выходы, отказы, отзывы и блокировки устройств текущего пользователя.
Query-параметры
| Параметр | Тип | Описание |
|---|---|---|
pageопц. | integer | Страница, начиная с 1.Пример: 1 |
limitопц. | integer | От 1 до 200 событий.Пример: 20 |
/api/v1/t/me/devices/:deviceId/revokeЗавершить сеансы своего устройства
Завершает все активные сеансы на выбранном устройстве. Доступно только когда школа разрешает самостоятельное управление.
Параметры пути
| Параметр | Тип | Описание |
|---|---|---|
deviceIdобяз. | uuid | ID устройства из списка. |
Ошибки
| Код | error | Когда |
|---|---|---|
| 403 | device_self_management_disabled | Самостоятельное управление отключено школой. |
| 404 | device_not_found | Устройство не принадлежит текущему пользователю. |
/api/v1/t/me/sessions/revoke-othersВыйти на остальных устройствах
Завершает все управляемые сеансы пользователя, кроме текущего.
Ошибки
| Код | error | Когда |
|---|---|---|
| 403 | device_self_management_disabled | Самостоятельное управление отключено школой. |
/api/v1/t/me/session/activityОтметить активность сеанса
Продлевает скользящий тайм-аут текущего управляемого сеанса. Сервер ограничивает частоту обновления; повторный вызов безопасен.
/api/v1/t/tenant/device-policyПолитика устройств школы
Возвращает общие лимиты, режим контроля, сроки сеансов, правила самостоятельного управления, хранения событий и показа IP.
/api/v1/t/tenant/device-policyИзменить политику устройств
Частично обновляет политику. Пропущенные поля сохраняются; явный null в max_active_devices означает отсутствие лимита.
Тело запроса
| Параметр | Тип | Описание |
|---|---|---|
modeопц. | monitor_only | enforce | Наблюдать за превышениями или запрещать новые входы. |
max_active_devicesопц. | integer | null | От 1 до 10; null — без ограничений. |
inactive_device_daysопц. | integer | От 1 до 365 дней. |
allow_self_managementопц. | boolean | Разрешить ученику отзывать свои сеансы. |
allow_self_replacementопц. | boolean | Разрешить замену устройства на экране входа. |
notify_on_new_deviceопц. | boolean | Отправлять push-предупреждение на зарегистрированные устройства при первом успешном входе с нового устройства. |
revoke_on_password_changeопц. | boolean | Отзывать сеансы при смене пароля. |
revoke_on_password_resetопц. | boolean | Отзывать сеансы при восстановлении пароля. |
session_idle_timeout_minutesопц. | integer | От 5 до 525600 минут. |
session_absolute_lifetime_daysопц. | integer | От 1 до 365 дней. |
event_retention_daysопц. | integer | От 1 до 3650 дней. |
ip_visibilityопц. | none | masked | full | Как отображать IP в интерфейсах. |
Ошибки
| Код | error | Когда |
|---|---|---|
| 400 | invalid_device_policy | Одно или несколько значений вне допустимого диапазона. |
/api/v1/t/users/:id/devicesУстройства ученика
Возвращает администратору инвентарь устройств ученика и эффективный лимит с учётом индивидуального исключения.
Параметры пути
| Параметр | Тип | Описание |
|---|---|---|
idобяз. | uuid | ID ученика в текущей школе. |
/api/v1/t/users/:id/device-eventsИстория устройств ученика
Постраничный журнал событий безопасности выбранного ученика.
Параметры пути
| Параметр | Тип | Описание |
|---|---|---|
idобяз. | uuid | ID ученика. |
Query-параметры
| Параметр | Тип | Описание |
|---|---|---|
pageопц. | integer | Страница, начиная с 1. |
limitопц. | integer | От 1 до 200 событий. |
/api/v1/t/users/:id/devices/:deviceId/revokeЗавершить сеансы устройства ученика
Отзывает все активные сеансы на одном устройстве ученика.
/api/v1/t/users/:id/devices/:deviceId/blockЗаблокировать устройство ученика
Запрещает будущие входы с установки и сразу отзывает её активные сеансы.
Тело запроса
| Параметр | Тип | Описание |
|---|---|---|
reasonопц. | string | Необязательная причина, до 500 символов. |
/api/v1/t/users/:id/devices/:deviceId/unblockРазблокировать устройство ученика
Снимает запрет будущих входов; завершённые сеансы не восстанавливаются.
/api/v1/t/users/:id/sessions/revoke-allЗавершить все сеансы ученика
Отзывает все управляемые сеансы выбранного ученика.
/api/v1/t/users/:id/device-policy-overrideИндивидуальный лимит ученика
Возвращает индивидуальное исключение или 404, если действуют общие настройки школы.
/api/v1/t/users/:id/device-policy-overrideЗадать индивидуальный лимит
Создаёт или заменяет исключение: конкретный максимум либо режим без ограничений, опционально со сроком и причиной.
Тело запроса
| Параметр | Тип | Описание |
|---|---|---|
unlimited_devicesобяз. | boolean | true — без ограничений. |
max_active_devicesопц. | integer | null | От 1 до 10, только если unlimited_devices=false. |
expires_atопц. | RFC3339 | null | Будущий срок окончания или null. |
reasonопц. | string | null | Причина, до 500 символов. |
/api/v1/t/users/:id/device-policy-overrideУдалить индивидуальный лимит
Возвращает ученика к общей политике школы.