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

POST /api/users/me/active-org — Сменить активную организацию

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

ПолеЗначение
HTTPPOST /api/users/me/active-org
Auth
Scope токенаread_write
PG-функцииapi.set_user_active_org
Таблицы
SRM— (вне SRM, документировано по коду)
RP (права)
Файл роутаserver/routes/users.js
Статуспо коду (вне SRM)

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

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

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

Для человека

Как открыть: в шапке выберите нужную организацию из своих — за этим выбором и стоит этот метод.

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

Кто может. Любой вошедший участник — в пределах организаций, где он числится. Перейти в чужую организацию, где вас нет, нельзя: ответ 403.

Для агента

Запись — нужен токен со scope read_write (см. Конвенции). Меняет активную организацию владельца токена — это глобальный scope пользователя, поэтому переключение влияет на то, в какой организации будут создаваться новые сущности (проекты, спейсы и т.д.). Перед операциями записи агенту стоит убедиться, что активна нужная организация — проверить через whoami.

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

ПолеТипОбяз.Назначение
org_iduuidдаОрганизация, в которую переключиться. Должна быть среди организаций владельца

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

Окно терминала
curl -X POST https://specbuilder.vnimanie.ai/api/users/me/active-org \
-H "Authorization: Bearer tak_..." \
-H "Content-Type: application/json" \
-d '{"org_id":"9999aaaa-bbbb-cccc-dddd-eeeeeeeeeeee"}'

Ответ 200:

{ "ok": true, "active_org_id": "9999aaaa-bbbb-cccc-dddd-eeeeeeeeeeee" }

Пропущенный org_id вернёт 400; организация, в которой владелец не состоит, — 403 (NOT_ORG_MEMBER); несуществующая — 404. Cookie-клиент всегда получает JSON; Markdown-зеркало отдаётся только токену с Accept: text/markdown (server/agent/negotiate.js).

Связанные