GET /api/spaces/:id/edges/public — Публичные связи спейса
Сгенерировано из матриц + кода. Правки вносить в источники (
docs/matrices/,server/routes/), не здесь.
| Поле | Значение |
|---|---|
| HTTP | GET /api/spaces/:id/edges/public |
| Auth | — |
| Scope токена | read |
| PG-функции | — |
| Таблицы | — |
| SRM | — (вне SRM, документировано по коду) |
| RP (права) | — |
| Файл роута | server/routes/spaces.js |
| Статус | по коду (вне SRM) |
Аргументы запроса (best-effort из хендлера; путь-параметры опущены):
аргументов не обнаружено (подтвердить вручную по server/routes/spaces.js)
Коды ответов/ошибок (из хендлера): 400, 403, 404 (+ 200) — уточнить причины вручную
Для человека
Как открыть: отдельного экрана у этого метода нет — он работает «под капотом». Когда гость на экране создания выбирает публичную коллекцию и запускает генерацию, фронтенд подтягивает связи именно её гостевого спейса этим публичным срезом, чтобы граф рисовался по правильной коллекции, а не по предыдущей.
Это гостевая, доступная без входа версия списка связей спейса: тот же набор рёбер с учётом оверлея, но только для гостевых спейсов. Запрос к не-гостевому спейсу отклоняется (403).
Кто видит. Кто угодно, даже без регистрации — но лишь для гостевых спейсов. Связи командных и личных спейсов через этот метод недоступны.
Для агента
Это публичный маршрут: он объявлен в роутере до проверки авторизации и не требует ни cookie-сессии, ни токена. Заголовок Authorization можно не передавать. Агенту он нужен редко — для гостевого сценария; во всех остальных случаях берите обычный список связей под своим токеном.
Путь-параметр: :id — UUID спейса. Спейс должен быть типа guest, иначе 403 ({"error":"Только гостевые спейсы"}).
Пример запроса (без авторизации):
curl https://specbuilder.vnimanie.ai/api/spaces/f9e8d7c6-.../edges/publicОтвет 200 — тот же формат, что и у непубличного списка:
[ { "source_id": "DATA_INGESTION", "target_id": "FEATURE_STORE", "is_custom": false }]Коды ошибок: 403 — спейс не гостевой; 400 — ошибка чтения внутри PG-функции. Формат ответа всегда JSON; Markdown-зеркало и ETag/304 для этого среза не предусмотрены.