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

DELETE /api/spaces/:spaceId/blocks/:id — Удалить блок спейса

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

ПолеЗначение
HTTPDELETE /api/spaces/:spaceId/blocks/:id
AuthrequireSpacemanOrOrgAdmin — requireSpacemanOrOrgAdmin
Scope токенаread_write
PG-функцииapi.delete_space_block
Таблицыspace_block_overlay
SRMSRM-167
RP (права)RP-053
Файл роутаserver/routes/spaces.js
Статусdone

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

аргументов не обнаружено (подтвердить вручную по server/routes/spaces.js)

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

Для человека

Как открыть: верхняя панель → «Спейсы» → карточка спейса → вкладка «Блоки» → удалите блок из строки списка.

Убирает блок из спейса. Поведение зависит от происхождения блока:

  • базовый блок коллекции — не стирается насовсем, а скрывается в этом спейсе (в оверлее помечается удалённым). Сам блок остаётся в коллекции и других спейсах, а здесь его всегда можно вернуть;
  • кастомный блок — он жил только в этом спейсе, поэтому удаляется без следа.

Так что для унаследованного блока «удалить» обратимо: это скрытие, а не правка коллекции.

Кто может. Менеджер своего спейса или администратор организации (RP-128). Сотрудник и наблюдатель блоки не удаляют.

Для агента

Запись — токен со scope read_write; доступ проверяет requireSpacemanOrOrgAdmin (спейсмен спейса или org-admin его организации), иначе 403. Путь занесён в write-allowlist agent-gate точным шаблоном (server/auth/agentGate.js).

Путь-параметры — :spaceId и :blockId. Тела у запроса нет. Для унаследованного блока это скрытие (обратимо через восстановление); для кастомного — удаление строки оверлея.

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

Окно терминала
curl -X DELETE https://specbuilder.vnimanie.ai/api/spaces/{spaceId}/blocks/{blockId} \
-H "Authorization: Bearer tak_..."

Ответ 200: { "ok": true }. Только JSON, без ETag. Изменение видно в списке блоков — скрытый блок из него уходит.

Связанные