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

GET /api/orgs/:orgId/invites — Приглашения организации

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

ПолеЗначение
HTTPGET /api/orgs/:orgId/invites
Auth
Scope токенаread
PG-функцииapi.list_org_invites
Таблицыinvite
SRMSRM-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"
}
]

Связанные