diff --git a/EventHubBackSpec.md b/EventHubBackSpec.md index eb7e0ab..6b7bef9 100644 --- a/EventHubBackSpec.md +++ b/EventHubBackSpec.md @@ -522,6 +522,9 @@ src/ токен удалён, refresh-сессии user отозваны; `404`/`410`/`400`/`403`. - `POST /v1/login` — вход. - `POST /v1/refresh` — обновление токена. +- `POST /v1/logout` — `{ refresh_token }` → отзыв текущей `auth_session`; после этого + refresh той же сессии → `401`. Access JWT до истечения TTL не отзывается. + Невалидный refresh → `401`; отсутствие поля → `400`. Клиент чистит storage даже при ошибке сети. - `GET /v1/user/me` — профиль пользователя. - `PATCH /v1/user/me` — частичное обновление своего профиля: `language` (`ru`|`en`), `nickname`, `timezone`, `phone`, `avatar_url`, `preferences`; смена пароля — @@ -613,6 +616,7 @@ src/ - `GET /v1/admin/stats` — агрегированная статистика дашборда. - `POST /v1/admin/login` — вход администратора. - `POST /v1/admin/refresh` — обновление пары access/refresh JWT администратора. +- `POST /v1/admin/logout` — `{ refresh_token }` → отзыв admin `auth_session` (как user logout). - `GET /v1/admin/users`, `GET /v1/admin/users/:id` — пользователи. - `GET /v1/admin/users/:id/verification-token` — get/create email-verify token (стенды). - `GET /v1/admin/users/:id/password-reset-token` — get/create password-reset token (стенды). diff --git a/EventHubFrontSpec.md b/EventHubFrontSpec.md index 18cb6f4..cf39b11 100644 --- a/EventHubFrontSpec.md +++ b/EventHubFrontSpec.md @@ -371,7 +371,7 @@ E2E: `e2e/TESTIDS.md`. Моки (`npm run test:e2e`, `project=mock`) — тол legal stubs; позиция по подписке **владельца**; DNS/SPF без покупки домена без явного ок. **Продукт (фаза 2):** -- серверный logout / revoke session +- серверный logout / revoke session (`POST /v1/logout` + `{ refresh_token }`; клиент зовёт до clear storage) - загрузка файлов (avatar / cover / вложения) - полноценный push / reminders (сейчас in-app `notification` + email для specialist_invite) - waitlist на событие