> ## Documentation Index > Fetch the complete documentation index at: https://kb.vastdata.com/llms.txt > Use this file to discover all available pages before exploring further. # Validate Data Engine Upgrade > Run pre-upgrade validations for the data engine. Returns whether the upgrade is allowed and details of any failed validations. Currently validates linked kube cluster version compatibility. ## OpenAPI ````json GET /data-engine/validate-upgrade { "openapi": "3.0.3", "info": { "title": "VAST DataEngine API", "description": "Combined OpenAPI specification for Document360: Provisioning, Telemetries Query, Telemetries Collector, and shared common components.", "version": "1.4.0" }, "servers": [ { "url": "http://localhost:3000", "description": "Provisioning Service (Local development server)" }, { "url": "http://localhost:8080/query_telemetries", "description": "Telemetries Query Service (Local development server)" }, { "url": "http://localhost:8080/telemetries", "description": "Telemetries Collector Service (Local development server)" } ], "tags": [ { "name": "Provisioning Service v1.4.0", "description": "Provisioning Service API" }, { "name": "Provisioning Service v1.4.0 > dataEngine", "description": "Data Engine lifecycle" }, { "name": "Provisioning Service v1.4.0 > setup_provisioning", "description": "Deprecated provisioning setup" }, { "name": "Provisioning Service v1.4.0 > pipelines", "description": "Pipelines" }, { "name": "Provisioning Service v1.4.0 > pipelineRevisions", "description": "Pipeline revisions" }, { "name": "Provisioning Service v1.4.0 > functions", "description": "Functions" }, { "name": "Provisioning Service v1.4.0 > functionRevisions", "description": "Function revisions" }, { "name": "Provisioning Service v1.4.0 > functionRevisionsDeprecated", "description": "Deprecated function revision endpoints" }, { "name": "Provisioning Service v1.4.0 > triggers", "description": "Triggers" }, { "name": "Provisioning Service v1.4.0 > topics", "description": "Topics" }, { "name": "Provisioning Service v1.4.0 > containerRegistries", "description": "Container registries" }, { "name": "Provisioning Service v1.4.0 > kubernetesClusters", "description": "Kubernetes clusters" }, { "name": "Provisioning Service v1.4.0 > kubernetesSecrets", "description": "Kubernetes secrets" }, { "name": "Provisioning Service v1.4.0 > mtlsAuthenticationCredentials", "description": "mTLS authentication credentials" }, { "name": "Provisioning Service v1.4.0 > dashboard", "description": "Dashboard" }, { "name": "Provisioning Service v1.4.0 > reports", "description": "Saved reports" }, { "name": "Telemetries Collector Service v1.4.0", "description": "API for collecting OTEL signals (traces, logs and metrics)" }, { "name": "Telemetries Collector Service v1.4.0 > collect_telemetries", "description": "Collect OTEL signals" }, { "name": "Telemetries Query Service v1.4.0", "description": "API for querying traces, logs and metrics" }, { "name": "Telemetries Query Service v1.4.0 > query_telemetries", "description": "Query traces and logs" }, { "name": "Telemetries Query Service v1.4.0 > metrics", "description": "Query metrics" }, { "name": "Telemetries Query Service v1.4.0 > reports", "description": "Saved reports" } ], "paths": { "/data-engine/validate-upgrade": { "get": { "summary": "Validate Data Engine Upgrade", "description": "Run pre-upgrade validations for the data engine. Returns whether the upgrade is allowed and details of any failed validations. Currently validates linked kube cluster version compatibility.", "operationId": "validate_upgrade", "tags": [ "Provisioning Service v1.4.0 > dataEngine" ], "parameters": [ { "name": "target_version", "in": "query", "required": "true", "schema": { "type": "string" }, "description": "Target upgrade version (e.g. 5.6.0)" } ], "responses": { "200": { "description": "Upgrade validation result", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpgradeValidationResponse" } } } }, "401": { "$ref": "#/components/responses/UnauthorizedError" }, "500": { "$ref": "#/components/responses/InternalServerError" } } } } }, "components": { "schemas": { "UpgradeValidationResponse": { "type": "object", "properties": { "allowed": { "type": "boolean", "description": "Whether the upgrade is allowed (true if all validations passed)" }, "validations": { "type": "array", "items": { "$ref": "#/components/schemas/UpgradeValidationCheck" }, "description": "List of validation checks that were performed" } } }, "UpgradeValidationCheck": { "type": "object", "properties": { "name": { "type": "string", "description": "Name of the validation check" }, "passed": { "type": "boolean", "description": "Whether this validation passed" }, "message": { "type": "string", "nullable": "true", "description": "Human-readable message explaining the failure, or null if passed" }, "details": { "type": "array", "items": { "type": "object", "additionalProperties": "true" }, "description": "Validation-specific details. Each validation defines its own detail fields." } } }, "ErrorResponse": { "type": "object", "properties": { "detail": { "type": "string" }, "source": { "$ref": "#/components/schemas/ErrorSource" }, "code": { "type": "string", "description": "Optional machine-readable error code for clients to branch on instead of parsing `detail`." } } }, "ErrorSource": { "type": "object", "description": "Represents the underlying problem that made Data Engine raise the error", "properties": { "source_type": { "type": "string", "description": "The component where the error happened", "example": "kubernetes | vms | vdb | registry" }, "source_name": { "type": "string", "description": "The name of the source compoenent", "example": "my-cluster" }, "inner_error": { "type": "string", "description": "The error message from the source component", "example": "Failed to connect to the cluster" } } } }, "responses": { "UnauthorizedError": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "InternalServerError": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } } ````