Перейти к содержимому

POST /api/auth/login — Вход

Сгенерировано из матриц + кода. Правки вносить в источники (docs/matrices/, server/routes/), не здесь.

ПолеЗначение
HTTPPOST /api/auth/login
Auth
Scope токенаread_write
PG-функцииapi.login
Таблицыuser, session
SRMSRM-086
RP (права)RP-091
Файл роутаserver/routes/auth.js
Статусdone

Аргументы запроса (best-effort из хендлера; путь-параметры опущены):

АргументГдеОбяз.Заметка
emailbodyподтвердить
passwordbodyподтвердить

Коды ответов/ошибок (из хендлера): 400, 401, 500 (+ 200) — уточнить причины вручную

Для человека

Как открыть: в правом верхнем углу нажмите «Войти» → откроется карточка с заголовком «Вход» → поля e-mail и пароль → кнопка «Войти».

Проверяет почту и пароль и, если они верны, открывает сессию: страница перезагружается уже под вашим аккаунтом, появляются ваши спейсы, проекты и профиль. Сессия держится в защищённой cookie, поэтому при следующем заходе с этого браузера вход обычно уже не требуется — до выхода или истечения срока.

Оба поля обязательны: если что-то не заполнено — 400. Если пара «почта + пароль» не подходит — 401 с одинаковым сообщением «Неверный email или пароль». Сообщение одно на оба случая нарочно: по нему нельзя понять, существует ли вообще аккаунт на этот адрес, — это защита от перебора почт.

Кто может. Вход доступен всем ролям — от гостя до администратора платформы (RP-091). Под входом нет: гость работает без аккаунта, его проекты лежат в гостевом спейсе и при регистрации переносятся (см. Регистрацию). Если пароль забыт — запросите сброс.

Для агента

Это эндпоинт человеческой cookie-сессии — агент его обычно не вызывает. Агенты аутентифицируются не входом по паролю, а Bearer-токеном, который владелец заранее выпускает в профиле (раздел «Токены API», см. Создать токен). Токен действует как сам пользователь, под его ролью; никакой сессии через /login для этого не нужно. Логин/пароль агенту здесь ни к чему — он просто шлёт Authorization: Bearer tak_... на нужный ресурс.

Метод задокументирован для полноты. На успех он отдаёт Set-Cookie с подписанной сессией — это механизм браузера, не токен-клиента. Тело запроса:

ПолеТипОбяз.Назначение
emailstringдаПочта аккаунта
passwordstringдаПароль

Ответ 200 — профиль вошедшего пользователя (и Set-Cookie в заголовках):

{ "user": { "id": "a1b2c3d4-...", "email": "user@example.com", "displayName": "Иван" } }

Ошибки: 400 — не передали поле; 401 — неверная пара почта/пароль. Markdown-зеркала и аффордансов у этого метода нет — он не входит в агентный набор ресурсов (server/agent/affordances.js). Чтобы понять, под кем вы работаете по токену, используйте GET /api/users/me.

Связанные