GET /api/orgs/:orgId/invites — Приглашения организации
Сгенерировано из матриц + кода. Правки вносить в источники (
docs/matrices/,server/routes/), не здесь.
| Поле | Значение |
|---|---|
| HTTP | GET /api/orgs/:orgId/invites |
| Auth | — |
| Scope токена | read |
| PG-функции | api.list_org_invites |
| Таблицы | invite |
| SRM | SRM-062, SRM-063 |
| RP (права) | RP-065, RP-066 |
| Файл роута | server/routes/orgs.js |
| Статус | done |
Аргументы запроса (best-effort из хендлера; путь-параметры опущены):
аргументов не обнаружено (подтвердить вручную по server/routes/orgs.js)
Коды ответов/ошибок (из хендлера): 200 — уточнить причины вручную
Для человека
Как открыть: на экране организации (вкладка «Организация») откройте раздел «Приглашения» — таблица показывает все приглашения организации.
Показывает приглашения организации: статус каждого (ожидает / принято / отклонено / истекло), роль, метку, кто создал, кем принято, срок. Новые — сверху. Отсюда же приглашение можно отозвать.
Полный список всех приглашений организации видит только её администратор. Попытка обратиться без прав администратора возвращает 403.
Для агента
Этот список API-токену недоступен — на любом scope. Каждая строка содержит token приглашения (секрет ссылки), поэтому GET на /api/orgs/:orgId/invites закрыт для токенов прямым правилом в agent-gate (server/auth/agentGate.js, DENY GET, VLN-075). Вызов с Authorization: Bearer tak_... вернёт 403 (problem+json, «Forbidden for token») и не дойдёт до хендлера. Сам список доступен только из браузера под cookie-сессией администратора организации.
При этом создание и отзыв приглашений токену разрешены — закрыто именно чтение списка с секретами: см. пригласить участника (POST) и отозвать приглашение (DELETE).
Под cookie-сессией администратора — GET /api/orgs/{orgId}/invites.
Пример (cookie-сессия администратора):
curl https://specbuilder.vnimanie.ai/api/orgs/0c8f1e2a-.../invites \ -b cookies.txtОтвет 200 — массив приглашений, новые сверху:
[ { "id": "b7c4...", "token": "9f1a2b3c...", "role": "member", "label": "Новый аналитик", "status": "pending", "created_by_email": "lead@example.com", "created_by_name": "Лид", "accepted_by_email": null, "expires_at": "2026-06-29T12:00:00.000Z", "created_at": "2026-06-15T12:00:00.000Z" }]Связанные
- Экраны: Организация
- Конвенции · Роли · Ошибки · Глоссарий