Структура API: пути и область
Как читать пути OpenAPI и понимать контекст запроса.
Ниже — карта HTTP API Shturval Backend API по файлу OpenAPI (swagger.json): как устроены префиксы путей, что означает параметр cluster_id, чем отличаются «платформенные» и «кластерные» сценарии, зачем нужен раздел /tenants, где смотреть WebSocket.
Базовый путь и транспорт
- В спецификации задано поле
basePath:/api/v1. Итоговый URL REST-операции:{scheme}://{хост}/api/v1{path}, гдеpathиз колонки Swagger (например,/clusters,/platform/version). - Для
schemesв спецификации указаныhttpиhttps— в продуктиве обычно используется HTTPS.
Раздел /clusters и вложенные пути
- Префикс
/clusters— операции в разрезе кластеров: список кластеров, сведения поcluster_id, kubeconfig, ресурсы неймспейсов, сети, политики, observability и т.д. /clusters/{cluster_id}/namespaces/{namespace_name}/...: запросы в контексте конкретного кластера и неймспейса (согласуется с моделью «кластер → неймспейс → объект»).- Сценарии создания и жизненного цикла кластеров (провижининг, шаблоны) дополнительно разобраны в документации: API для управления кластерами.
Раздел /platform
- Префикс
/platformобъединяет глобальные для установки платформы настройки и операции: аутентификация (например, LDAP, OIDC), провайдеры и интеграции, профили, разрешения и роли, сессии, лицензия, сведения о версии, списки kubeconfig’ов, UI permissions и т.п. - Путь
/platform/swagв спецификации относится к служебной выдаче/обёртке спецификации (см. описание в Swagger). Пользовательский обзор открытия UI Swagger описан в разделе про Swagger.
Раздел /tenants
- Префикс
/tenants— операции в модели тенантов (создание, атрибуты), если мультитенантность задействована в вашей среде.
WebSocket и интерактивные сценарии
Помимо REST, в OpenAPI присутствуют пути под /websocket/...: например, поток логов контейнера и терминал. Это не обычные GET/POST с JSON-телом в одном ответе — клиенту нужен WebSocket-клиент (как в UI или в специализированных утилитах).
Смотрите требования к аутентификации/парам для каждой такой операции в Swagger на соответствующем пути.
Как сопоставить путь в Swagger и «куда нажимать в UI»
- В Swagger найдите path (например,
/platform/providers). - Убедитесь, что у метода в блоке security указан Bearer .
- Соберите итоговый URL:
{BACKENDPOINT}/api/v1+pathиз шага 1, подставив параметры пути (cluster_id,namespace_nameи т.д.).
Авторизация по токену: Авторизация и токен.