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

PUT /api/spaces/:spaceId/members/:userId — Изменить участника

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

ПолеЗначение
HTTPPUT /api/spaces/:spaceId/members/:userId
AuthrequireSpacemanOrOrgAdmin — requireSpacemanOrOrgAdmin
Scope токенаread_write
PG-функцииapi.set_space_member_role
Таблицыspace_member
SRMSRM-055
RP (права)RP-054
Файл роутаserver/routes/spaces.js
Статусdone

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

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

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

Для человека

Как открыть: вкладка «Спейсы» → карточка спейса → «Настройки спейса»«Участники» → у нужного участника смените роль в спейсе.

Меняет роль участника внутри спейса — например, повышает рядового участника до менеджера-спейсмена или наоборот. Сам факт членства при этом не трогается, меняется только роль. Назначение менеджера спейса есть и отдельной кнопкой «Менеджер» (Назначить менеджера) — она доступна только администратору организации.

Кто может. Менеджер спейса (спейсмен) или администратор организации (RP-054; requireSpacemanOrOrgAdmin). Остальные — 403.

Для агента

Запись — токен со scope read_write. Путь PUT /api/spaces/:spaceId/members/:userId на write-allowlist’е (server/auth/agentGate.js, операция SPACE_MEMBER_SET_ROLE). Под ролью владельца токена: спейсмен спейса или org_admin, иначе 403.

Путь:

ПараметрГдеНазначение
spaceIdpathUUID спейса (в коде — :id)
userIdpathUUID участника

Тело запроса (JSON):

ПолеТипОбяз.Назначение
rolestringдаНовая роль в спейсе: member или spaceman

Пример запроса:

Окно терминала
curl -X PUT https://specbuilder.vnimanie.ai/api/spaces/a1b2c3d4-5678-49ab-8cde-f0123456789a/members/8a4b2c33-1d55-4e66-9f77-bb22cc33dd44 \
-H "Authorization: Bearer tak_..." \
-H "Content-Type: application/json" \
-d '{"role":"spaceman"}'

Ответ 200:

{ "ok": true }

Только JSON. Новая роль видна в списке участников.

Связанные