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

PUT /api/collections/:id — Обновить коллекцию

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

ПолеЗначение
HTTPPUT /api/collections/:id
Auth
Scope токенаread_write
PG-функцииapi.update_collection
Таблицыcollection
SRMSRM-232
RP (права)
Файл роутаserver/routes/collections.js
Статусdone

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

АргументГдеОбяз.Заметка
descriptionbodyподтвердить
doc_titlebodyподтвердить
is_publicbodyподтвердить
namebodyподтвердить
tagsbodyподтвердить

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

Для человека

Как открыть: в навигации «Коллекции» → откройте карточку коллекции → меняйте поля прямо в редакторе (название, описание, заголовок документа, публичность). Теги редактируются чипами прямо на карточке в списке.

Обновляет свойства коллекции. Слои, блоки и роли здесь не трогаются — для них есть отдельные действия внутри редактора; этот запрос меняет только «шапку» коллекции.

Кто может. Менять коллекцию может администратор организации-владельца или администратор платформы. Чужую коллекцию изменить нельзя — ответ 403.

Для агента

Запись — нужен токен со scope read_write (см. Конвенции). У роута нет route-middleware с ролью — владение проверяется внутри: править коллекцию может org-admin организации-владельца (owner_org_id) или site-admin. Глобальные коллекции (owner_org_id пуст) правит только site-admin. Иначе — 403.

Путь-параметр :id — UUID коллекции.

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

ПолеТипОбяз.Назначение
namestringнетНовое название
descriptionstringнетНовое описание
doc_titlestringнетЗаголовок проектного документа
is_publicbooleanнетПубличность
tagsstring[]нетТеги; пропустить поле — теги не трогаются, передать [] — очистить

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

Окно терминала
curl -X PUT https://specbuilder.vnimanie.ai/api/collections/0660b640-86b0-42c5-8e22-93973848bb56 \
-H "Authorization: Bearer tak_..." \
-H "Content-Type: application/json" \
-d '{"name":"Точное земледелие v2","tags":["agro","ml","2026"]}'

Ответ 200:

{ "id": "0660b640-86b0-42c5-8e22-93973848bb56", "name": "Точное земледелие v2", "tags": ["agro", "ml", "2026"] }

Cookie-клиент всегда получает JSON; Markdown-зеркало — токену с Accept: text/markdown (server/agent/negotiate.js).

Связанные