""" Операции с сервисами Nubes — получение списка и деталей через API. Используется: - main.py → список сервисов для UI - api_test.py → операции сервиса (modify/delete/...) - scenario.py → поиск svcOperationId для операции """ from api.http_client import HttpClient def get_services(client): """GET /services → список ВСЕХ сервисов пользователя. Возвращает list[dict], каждый с ключами: svcId, svc (короткое имя), svcExtendedName (полное имя), operations[] operations — это ДОСТУПНЫЕ операции, не путать с запущенными.""" data = client.get("/services") return data.get("results", []) def get_service_detail(client, svc_id): """GET /services/{svcId} → детали одного сервиса. Возвращает dict с ключами: svc, svcShort, operations[] operations — список доступных операций: [{svcOperationId, operation, isCreate, ...}, ...] svcOperationId — ЧИСЛОВОЙ ID операции, нужен для: - POST /instanceOperations (поле svcOperationId) - GET /instanceOperations/default/{svcOperationId} (шаблон параметров)""" data = client.get(f"/services/{svc_id}") return data.get("svc", {})