Cisco Crosswork Cw Vm Mangager API
The CwVmMangager API from Cisco Crosswork — 19 operation(s) for cwvmmangager.
The CwVmMangager API from Cisco Crosswork — 19 operation(s) for cwvmmangager.
openapi: 3.2.0
info:
title: api/vm_install_api.proto Cw Vm Mangager API
version: version not set
x-provenance:
method: harvested
authored_by: Cisco Crosswork
harvested_by: API Evangelist
harvested_on: '2026-08-19'
first_party: true
note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
provider_published: true
x-evidence:
- type: source
url: https://github.com/CiscoDevNet/crosswork-openapi-spec/blob/master/NCAHI/4.0APIs/vm_install_api.swagger.json
- type: raw
url: https://raw.githubusercontent.com/CiscoDevNet/crosswork-openapi-spec/master/NCAHI/4.0APIs/vm_install_api.swagger.json
tags:
- name: CwVmMangager
paths:
/v1/node-manager/actions:
get:
summary: Get the general Crosswork VMM Actions
operationId: GetVMMActions
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiNodeActions'
tags:
- CwVmMangager
/v1/node-manager/all:
get:
summary: Get All Data Centre, Cluster and VM info.
operationId: GetAll
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVMMDump'
tags:
- CwVmMangager
/v1/node-manager/clusters:
get:
summary: Get map of Clusters configured in Crosswork.
operationId: GetClusters
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiClustersResp'
tags:
- CwVmMangager
/v1/node-manager/clusters/{Id}:
get:
summary: Get Cluster identified by Id.
operationId: GetCluster
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiCwClusterAndActions'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/dcs:
get:
summary: Get map of Data Centres configured in Crosswork.
operationId: GetDCs
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiDCsResp'
tags:
- CwVmMangager
/v1/node-manager/dcs/vcentres/{Id}:
get:
summary: Get Vcentre Data Centre identified by Id configured in Crosswork.
operationId: GetVCentre
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVCentreDC'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
patch:
summary: Patch Vcentre Data Centre data in Crosswork.
operationId: PatchVCentreDC
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: ID as assigned by Crosswork
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVCentreReq'
required: true
/v1/node-manager/inventory/import:
post:
summary: Upload a small inventory base64 encoded file only
operationId: ImportInventory
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
tags:
- CwVmMangager
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiFiledata'
required: true
/v1/node-manager/inventory/sample:
get:
summary: Request a sample inventory base64 encoded file.
operationId: GetSampleInventoryFile
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiSmallFileChunk'
tags:
- CwVmMangager
/v1/node-manager/inventory/{Id}/export:
post:
summary: Export the cluster id inventory as a base64 encoded file.
operationId: ExportInventory
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiSmallFileChunk'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/tasks:
get:
summary: Get Network Manager Jobs
operationId: GetVMMTasks
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVMMTaskResults'
parameters:
- name: filter.pageSize
in: query
required: false
schema:
type: integer
format: int32
- name: filter.pageNum
in: query
required: false
schema:
type: integer
format: int32
- name: filterData.status
in: query
required: false
schema:
type: string
- name: filterData.jobType
in: query
required: false
schema:
type: string
- name: filterData.jobName
in: query
required: false
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/tasks/{jobId}:
get:
summary: Get Network Manager Job identified by job_id
operationId: GetVMMTask
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVMMTask'
parameters:
- name: jobId
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/tasks/{jobId}/cancel:
post:
summary: Cancel Network Manager Job identified by job_id
operationId: CancelVMMTask
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: jobId
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/vms:
get:
summary: Get map of all VMs configured in Crosswork.
operationId: GetCwVMs
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiVMsResp'
tags:
- CwVmMangager
/v1/node-manager/vms/add:
post:
summary: Add Cw VM in Crosswork. Returned OpResult Id identifies the assigned VM id
operationId: AddCwVM
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
tags:
- CwVmMangager
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiCwVM'
required: true
/v1/node-manager/vms/{Id}:
get:
summary: Get Cw VM identified by Id
operationId: GetCwVM
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiCwVM'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
delete:
summary: Delete the VM identified by Id from the inventory.
operationId: DeleteVm
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
patch:
summary: Patch Cw VM identified by id
operationId: PatchVm
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: Cluster Identifier as assigned by Crosswork
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiCwVM'
required: true
/v1/node-manager/vms/{Id}/actions:
get:
summary: Get the Actions allowed for the VM
operationId: GetVMActions
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiNodeActions'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/vms/{Id}/deploy:
post:
summary: Apply the configuration of the Cw VM identified. Returned Id identifes the install job/task
operationId: ApplyVM
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/vms/{Id}/erase:
delete:
summary: Initiate task to destroy and delete the VM identified by Id from the inventory.
operationId: DestroyVm
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
/v1/node-manager/vms/{Id}/remove:
post:
summary: Drain and remove from the cluster the VM identified by its *Management IP address*.
operationId: DrainRemoveVM
responses:
'200':
description: A successful response.
content:
application/json:
schema:
$ref: '#/components/schemas/install_apiOpResult'
parameters:
- name: Id
description: Id of service or app name or resource as assigned by Crossworks.
in: path
required: true
schema:
type: string
tags:
- CwVmMangager
components:
schemas:
install_apiCwCluster:
type: object
properties:
Cw_VM_Image:
type: string
title: Target Cw cluster image
ClusterIPStack:
type: string
description: Cluster IP Stack Type; IPv4 or IPv6.
ManagementVIP:
type: string
title: Cluster Management Virtual IPv4 address
ManagementIPNetmask:
type: string
title: Cluster Management netmask in dotted decimal
ManagementIPGateway:
type: string
title: Cluster Management default gateway
DataVIP:
type: string
title: Cluster Data Virtual IPv4 address
DataIPNetmask:
type: string
title: Cluster Data netmask in dotted decimal
DataIPGateway:
type: string
title: Cluster Data default gateway
DNS:
type: string
title: DNS server address
DomainName:
type: string
title: DNS Domain Name used by the cluster
CWPassword:
type: string
title: Cluster VMs password
VMSize:
type: string
title: Cluster VMs size profile (Small, Medium or Large)
NTP:
type: string
title: NTP Server address
ClusterHostName:
type: string
title: Virtual Host name for the cluster
ClusterName:
type: string
title: The name/id of the cluster and DC
ClusterVMs:
type: array
items:
type: string
title: List of VMs in the cluster
SchemaVersion:
type: string
title: The configuration schema version
install_apiVMMTaskTypes:
type: string
enum:
- None
- Deploy
- Erase
- Refresh
- Plan
- Add
- Update
- Delete
- DrainRemove
default: None
install_apiVMResource:
type: object
properties:
Host:
type: string
title: Virtualization host name
Datastore:
type: string
title: Datastore name
HSDatastore:
type: string
title: High Speed Datastore name
HostedCwVMs:
type: array
items:
type: string
title: List of Cw VMs on this DC
install_apiDCsResp:
type: object
properties:
VCentres:
type: object
additionalProperties:
$ref: '#/components/schemas/install_apiVCentreDC'
description: Map is keyed by VCentre id.
install_apiVMMDump:
type: object
properties:
VCentres:
$ref: '#/components/schemas/install_apiDCsResp'
CwClusters:
$ref: '#/components/schemas/install_apiClustersResp'
CwVMs:
$ref: '#/components/schemas/install_apiVMsResp'
install_apiCwClusterAndActions:
type: object
properties:
CwCluster:
$ref: '#/components/schemas/install_apiCwCluster'
ClusterActions:
$ref: '#/components/schemas/install_apiNodeActions'
install_apiVMsResp:
type: object
properties:
CwVMs:
type: object
additionalProperties:
$ref: '#/components/schemas/install_apiCwVM'
description: Map is keyed by VM Crosswork assigned id.
CwVMDataCentre:
type: object
properties:
DataCentre_Id:
type: string
title: The VM's DataCentre ID
Host:
type: string
title: Virtualization host name
Datastore:
type: string
title: Datastore name
HSDatastore:
type: string
title: High Speed Datastore name
install_apiVMMTaskResults:
type: object
properties:
NmTasks:
type: array
items:
$ref: '#/components/schemas/install_apiVMMTask'
install_apiVCentreDC:
type: object
properties:
DCname:
type: string
title: The vCentre DC Name, used as DC id
VCentreAddress:
type: string
title: The vCentre address
VCentreUser:
type: string
title: The vCentre username
VCentrePassword:
type: string
title: The vCentre password
MgmtNetworkName:
type: string
title: The name of the network in vCentre to be used as the Cw VM Management network
DataNetworkName:
type: string
title: The name of the network in vCentre to be used as the Cw VM Data network
DCfolder:
type: string
title: The folder on the vCentre
VMs:
type: array
items:
$ref: '#/components/schemas/install_apiVMResource'
install_apiClustersResp:
type: object
properties:
CwClusterAndActions:
type: object
additionalProperties:
$ref: '#/components/schemas/install_apiCwClusterAndActions'
description: Map is keyed by cluster id.
install_apiFiledata:
type: object
properties:
name:
type: string
size:
type: string
format: int64
type:
type: string
content:
type: string
format: byte
install_apiNodeActions:
type: object
properties:
Actions:
type: object
additionalProperties:
type: boolean
format: boolean
title: Node Actions
install_apiCwVM:
type: object
properties:
ManagementIPAddress:
type: string
title: The VM's management IP address
DataIPAddress:
type: string
title: The VM's data IP address
NodeType:
type: string
title: The Cw VM Node type. One of Management, Worker, Hybrid
VMName:
type: string
title: The VM Name
CwImage:
type: string
title: The VM Image
Cluster_Id:
type: string
title: The VM's Cluster ID
HostDataCentre:
$ref: '#/components/schemas/CwVMDataCentre'
Op_Status:
$ref: '#/components/schemas/install_apiCwVmState'
title: Operational Status - ignored in requests
VmSize:
type: string
title: VM Size
install_apiOpResult:
type: object
properties:
Result:
$ref: '#/components/schemas/install_apiResultValue'
description: ResultValue indicates the success/failure for the requested operation.
Description:
type: string
title: Addional response information
ResultMap:
type: object
additionalProperties:
type: string
title: 'Supplementary keyed response info for the operation (for example: version number, error message)'
ResultString:
type: array
items:
type: string
title: Simple result string
Id:
type: string
title: Resource Identifier returned by operation, if any
description: 'OpResult is used to indicate whether an operation has been accepted or not. A string or map payload provides the additional response information (for example: version number, error data).'
install_apiCwVmState:
type: string
enum:
- Initializing
- Down
- Running
- Degraded
- Erased
- Failed
- Suspended
- Configuring
- Erasing
default: Initializing
title: "- Initializing: Defines unknown/initialized state.\n - Down: When the VM is non-functional.\n - Running: When the VM is completely functional.\n - Degraded: When the VM is running but suspected not to be completely functional.\n - Erased: When the VM is erased but still in the inventory.\n - Failed: When some unrecoverable error happened\n - Suspended: When the VM is suspended\n - Configuring: When the VM is being configured\n - Erasing: When the VM is being destroyed/erased"
install_apiVCentreReq:
type: object
properties:
Id:
type: string
title: ID as assigned by Crosswork
VCentreUser:
type: string
title: The vCentre username
VCentrePassword:
type: string
title: The vCentre password
VCentreAddress:
type: string
title: The vCentre address
DCfolder:
type: string
title: The folder on the vCentre
install_apiOpStatus:
type: string
enum:
- CANCELLED
- FAILED
- SUCCESSFUL
- QUEUED
- RUNNING
- IDLE
default: CANCELLED
install_apiSmallFileChunk:
type: object
properties:
filedata:
$ref: '#/components/schemas/install_apiFiledata'
install_apiResultValue:
type: string
enum:
- NOOP
- SUCCESS
- FAILURE
default: NOOP
install_apiVMMTask:
type: object
properties:
NmTaskId:
type: string
NmTaskType:
$ref: '#/components/schemas/install_apiVMMTaskTypes'
CwVMs:
type: array
items:
type: string
TimeInitiated:
type: string
TimeCompleted:
type: string
Status:
$ref: '#/components/schemas/install_apiOpStatus'
Username:
type: string
InstallerVersion:
type: string
RunOpts:
type: object
additionalProperties:
type: string
Output:
type: string
Error:
type: string
ClusterId:
type: string
DcId:
type: string
ManifestFile:
type: string