{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/spectro-cloud/main/json-schema/spectro-cloud-v1-spectro-cluster-profiles-schema.json", "title": "v1SpectroClusterProfiles", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/spectro-cloud-edgehosts-api-openapi.yml#/components/schemas/v1SpectroClusterProfiles", "properties": { "profiles": { "items": { "$ref": "#/$defs/v1SpectroClusterProfileEntity" }, "type": "array" }, "spcApplySettings": { "$ref": "#/$defs/v1SpcApplySettings" } }, "required": [ "profiles" ], "type": "object", "$defs": { "v1ManifestRefUpdateEntity": { "description": "Manifest update request payload", "properties": { "content": { "description": "Manifest content in yaml", "type": "string" }, "name": { "description": "Manifest name", "type": "string" }, "uid": { "description": "Manifest uid", "type": "string" } }, "required": [ "name" ] }, "v1PackType": { "default": "spectro", "enum": [ "spectro", "helm", "manifest", "oci" ], "type": "string" }, "v1PackValuesEntity": { "description": "Pack values entity to refer the existing pack for the values override", "properties": { "manifests": { "description": "Pack manifests are additional content as part of the profile", "items": { "$ref": "#/$defs/v1ManifestRefUpdateEntity" }, "type": "array" }, "name": { "description": "Pack name", "type": "string" }, "tag": { "description": "Pack version tag", "type": "string" }, "type": { "$ref": "#/$defs/v1PackType" }, "values": { "description": "Pack values represents the values.yaml used as input parameters either Params OR Values should be used, not both If both applied at the same time, will only use Values", "type": "string" } }, "required": [ "name" ], "type": "object" }, "v1SpcApplySettings": { "properties": { "actionType": { "enum": [ "DownloadAndInstall", "DownloadAndInstallLater" ], "type": "string" } }, "type": "object" }, "v1SpectroClusterProfileEntity": { "description": "Cluster profile request payload", "properties": { "packValues": { "description": "Cluster profile packs array", "items": { "$ref": "#/$defs/v1PackValuesEntity" }, "type": "array", "uniqueItems": true }, "replaceWithProfile": { "description": "Cluster profile uid to be replaced with new profile", "type": "string" }, "uid": { "description": "Cluster profile uid", "type": "string" }, "variables": { "items": { "$ref": "#/$defs/v1SpectroClusterVariable" }, "type": "array" } }, "type": "object" }, "v1SpectroClusterVariable": { "description": "Variable with value which will be used within the packs of cluster profile", "properties": { "name": { "description": "Variable name", "type": "string" }, "value": { "description": "Actual value of the variable to be used within the cluster", "type": "string" } }, "required": [ "name" ], "type": "object" } } }