Spectro Cloud clusterprofiles API
The clusterprofiles API from Spectro Cloud — 26 operation(s) for clusterprofiles.
The clusterprofiles API from Spectro Cloud — 26 operation(s) for clusterprofiles.
swagger: '2.0'
info:
title: Local Management APIs activations clusterprofiles API
version: v1
servers:
- url: https://edge-host-ip:5080
schemes:
- http
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: clusterprofiles
x-displayName: Clusterprofiles
paths:
/v1/clusterprofiles:
post:
operationId: v1ClusterProfilesCreate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileEntity'
- description: If true then cluster profile will be created and published in a single transaction
in: query
name: publish
type: boolean
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Creates a cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/bulk:
delete:
operationId: v1ClusterProfilesBulkDelete
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1BulkDeleteRequest'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1BulkDeleteResponse'
security:
- ApiKey: []
- Authorization: []
summary: Deletes list of cluster profiles
tags:
- clusterprofiles
/v1/clusterprofiles/import:
post:
operationId: v1ClusterProfilesImport
parameters:
- description: If true then cluster profile will be published post successful import
in: query
name: publish
type: boolean
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileImportEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Imports a cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/import/file:
post:
consumes:
- multipart/form-data
operationId: v1ClusterProfilesImportFile
parameters:
- description: If true then cluster profile will be published post successful import
in: query
name: publish
type: boolean
- description: Cluster profile import file
in: formData
name: importFile
type: file
- default: json
description: Cluster profile import file format ["yaml", "json"]
enum:
- yaml
- json
in: query
name: format
type: string
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Imports a cluster profile via file
tags:
- clusterprofiles
/v1/clusterprofiles/import/validate:
post:
operationId: v1ClusterProfilesImportValidate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileImportEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: Cluster profile import validated response
schema:
$ref: '#/definitions/v1ClusterProfileImportEntity'
security:
- ApiKey: []
- Authorization: []
summary: Validates cluster profile import
tags:
- clusterprofiles
/v1/clusterprofiles/macros:
get:
operationId: v1MacrosList
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1Macros'
security:
- ApiKey: []
- Authorization: []
summary: Retrieves a list of macros
tags:
- clusterprofiles
/v1/clusterprofiles/validate/name:
get:
description: Validates the cluster profile name and version
operationId: v1ClusterProfilesValidateNameVersion
parameters:
- description: Cluster profile name
in: query
name: name
type: string
- description: Cluster profile version
in: query
name: version
type: string
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: Validates the cluster profile metadata
tags:
- clusterprofiles
/v1/clusterprofiles/validate/packs:
post:
operationId: v1ClusterProfilesValidatePacks
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileTemplateDraft'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: Cluster profile packs validation response
schema:
$ref: '#/definitions/v1ClusterProfileValidatorResponse'
security:
- ApiKey: []
- Authorization: []
summary: Validates cluster profile packs
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Comma seperated pack meta such as schema, presets
in: query
name: includePackMeta
type: string
- description: Filter cluster profiles by target resource type - 'spectrocluster' for profiles suitable to launch/update clusters, 'clustertemplate' for profiles suitable to create/edit cluster template
enum:
- spectrocluster
- clustertemplate
in: query
name: resourceType
type: string
- description: If true, includes pack annotations like OCI registry provider type and OCI pack archive URL
in: query
name: includePackAnnotations
type: boolean
delete:
operationId: v1ClusterProfilesDelete
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified cluster profile
tags:
- clusterprofiles
get:
operationId: v1ClusterProfilesGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1ClusterProfile'
security:
- ApiKey: []
- Authorization: []
summary: Returns a specified cluster profile
tags:
- clusterprofiles
put:
operationId: v1ClusterProfilesUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileUpdateEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/clone:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
post:
operationId: v1ClusterProfilesUidClone
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileCloneEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Creates a clone of the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/clone/validate:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
post:
description: Validates the cloned cluster profile name, version and target project uid
operationId: v1ClusterProfilesUidCloneValidate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileCloneMetaInputEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: Ok response without content
headers:
AuditUid:
description: Audit uid for the request
type: string
security:
- ApiKey: []
- Authorization: []
summary: Validates the cluster profile clone
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/export:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- default: json
description: Cluster profile export file format [ "yaml", "json" ]
enum:
- yaml
- json
in: query
name: format
type: string
get:
operationId: V1ClusterProfilesUidExport
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
produces:
- application/octet-stream
responses:
'200':
description: Exports cluster profile as a file
headers:
Content-Disposition:
type: string
schema:
format: binary
type: string
security:
- ApiKey: []
- Authorization: []
summary: Export the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/export/terraform:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- default: yaml
description: Cluster profile export file format [ "yaml", "json" ]
enum:
- yaml
- json
in: query
name: format
type: string
get:
operationId: V1ClusterProfilesUidExportTerraform
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
produces:
- application/octet-stream
responses:
'200':
description: Downloads cluster profile export file
headers:
Content-Disposition:
type: string
schema:
format: binary
type: string
security:
- ApiKey: []
- Authorization: []
summary: Downloads the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/metadata:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
patch:
operationId: v1ClusterProfilesUidMetadataUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ProfileMetaEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified cluster profile metadata
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packRefs:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Cluster profile notification uid
in: query
name: notify
type: string
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileNotificationUpdateEntity'
patch:
operationId: v1ClusterProfilesPacksRefUpdate
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates cluster profile packs ref
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Comma seperated pack meta such as schema, presets
in: query
name: includePackMeta
type: string
get:
operationId: v1ClusterProfilesUidPacksGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1ClusterProfilePacksEntities'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile packs
tags:
- clusterprofiles
post:
operationId: v1ClusterProfilesUidPacksAdd
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1PackInputEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Adds a new pack to the specified cluster profile and returns the created pack uid
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/manifests:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Comma seperated pack meta such as schema, presets
in: query
name: includePackMeta
type: string
get:
operationId: v1ClusterProfilesUidPacksManifestsGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1ClusterProfilePacksManifests'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile pack manifests
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/resolvedValues:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- in: body
name: body
schema:
$ref: '#/definitions/v1PackParamsEntity'
get:
operationId: v1ClusterProfilesUidPacksResolvedValuesGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1PackResolvedValues'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile packs resolved values
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/{packName}:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Cluster profile pack name
in: path
name: packName
required: true
type: string
delete:
operationId: v1ClusterProfilesUidPacksNameDelete
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified pack information in the cluster profile
tags:
- clusterprofiles
get:
operationId: V1ClusterProfilesUidPacksNameGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1PackRefSummaryResponse'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile pack
tags:
- clusterprofiles
put:
operationId: v1ClusterProfilesUidPacksNameUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1PackUpdateEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified pack information in the cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/{packName}/config:
get:
operationId: v1ClusterProfilesUidPacksConfigGet
parameters:
- description: cluster profile uid
in: path
name: uid
required: true
type: string
- description: Cluster profile pack name
in: path
name: packName
required: true
type: string
- description: Cluster profile pack uid
in: query
name: packUid
required: true
type: string
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: An array of cluster profile pack configurations
schema:
$ref: '#/definitions/v1ClusterProfilePackConfigList'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile pack configuration
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/{packName}/manifests:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Cluster profile pack name
in: path
name: packName
required: true
type: string
get:
operationId: v1ClusterProfilesUidPacksUidManifests
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1ManifestEntities'
security:
- ApiKey: []
- Authorization: []
summary: Returns the associated manifests for the specified profile's pack
tags:
- clusterprofiles
post:
operationId: v1ClusterProfilesUidPacksNameManifestsAdd
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ManifestInputEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'201':
description: Created successfully
headers:
AuditUid:
description: Audit uid for the request
type: string
schema:
$ref: '#/definitions/v1Uid'
security:
- ApiKey: []
- Authorization: []
summary: Adds manifest to the profiles packs and returns the added manifests uid
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/packs/{packName}/manifests/{manifestUid}:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- description: Cluster profile pack name
in: path
name: packName
required: true
type: string
- description: Cluster profile pack manifest uid
in: path
name: manifestUid
required: true
type: string
delete:
operationId: v1ClusterProfilesUidPacksNameManifestsUidDelete
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified cluster profile pack manifest
tags:
- clusterprofiles
get:
operationId: v1ClusterProfilesUidPacksNameManifestsUidGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1ManifestEntity'
security:
- ApiKey: []
- Authorization: []
summary: Returns the specified cluster profile pack manifest
tags:
- clusterprofiles
put:
operationId: v1ClusterProfilesUidPacksNameManifestsUidUpdate
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1ManifestInputEntity'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Updates the specified manifest of the profile's pack
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/publish:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
patch:
description: 'Publish the draft cluster profile with next revision, the current draft cluster profile will be marked to published
and the draft cluster profile will be set to null in the cluster profile template.
'
operationId: v1ClusterProfilesPublish
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: Cluster profile published successfully
security:
- ApiKey: []
- Authorization: []
summary: Publishes the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/spc/download:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
get:
operationId: v1ClusterProfilesUidSpcDownload
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
produces:
- application/octet-stream
responses:
'200':
description: Download cluster profile archive file
headers:
Content-Disposition:
type: string
schema:
format: binary
type: string
security:
- ApiKey: []
- Authorization: []
summary: Downloads the specified cluster profile
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/validate/packs:
post:
operationId: v1ClusterProfilesUidValidatePacks
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
- in: body
name: body
schema:
$ref: '#/definitions/v1ClusterProfileTemplateDraft'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: Cluster profile packs validation response
schema:
$ref: '#/definitions/v1ClusterProfileValidatorResponse'
security:
- ApiKey: []
- Authorization: []
summary: Validates specified cluster profile packs
tags:
- clusterprofiles
/v1/clusterprofiles/{uid}/variables:
parameters:
- description: Cluster profile uid
in: path
name: uid
required: true
type: string
delete:
operationId: V1ClusterProfilesUidVariablesDelete
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1VariableNames'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was deleted successfully
security:
- ApiKey: []
- Authorization: []
summary: Deletes the specified cluster profile variables
tags:
- clusterprofiles
get:
operationId: V1ClusterProfilesUidVariablesGet
parameters:
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'200':
description: OK
schema:
$ref: '#/definitions/v1Variables'
security:
- ApiKey: []
- Authorization: []
summary: Retrieve a list of variables defined for the cluster profile
tags:
- clusterprofiles
patch:
operationId: V1ClusterProfilesUidVariablesPatch
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Variables'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Update specific variables defined for a cluster profile
tags:
- clusterprofiles
put:
operationId: V1ClusterProfilesUidVariablesPut
parameters:
- in: body
name: body
schema:
$ref: '#/definitions/v1Variables'
- description: A project UID is required for project-scoped resources and should be omitted when targeting tenant-scoped resources
in: header
name: ProjectUid
type: string
responses:
'204':
description: The resource was updated successfully
security:
- ApiKey: []
- Authorization: []
summary: Update the variables defined for a cluster profile
tags:
- clusterprofiles
definitions:
v1ManifestInputEntity:
description: Manifest request payload
properties:
content:
description: Manifest content
type: string
name:
description: Manifest name
type: string
v1RegistryMetadata:
description: Registry meta
properties:
isDefault:
type: boolean
x-omitempty: false
isPrivate:
type: boolean
x-omitempty: false
kind:
type: string
name:
type: string
scope:
type: string
uid:
type: string
type: object
v1Variables:
properties:
variables:
description: List of unique variable fields with schema constraints
items:
$ref: '#/definitions/v1Variable'
type: array
uniqueItems: true
type: object
v1ObjectMeta:
description: ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.
properties:
annotations:
additionalProperties:
type: string
description: 'Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotatio
# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/spectro-cloud/refs/heads/main/openapi/spectro-cloud-clusterprofiles-api-openapi.yml