vcenter VM: clone-task
Request:
HTTP request
Request Body Structure:
"spec" : {
"guest_customization_spec" : {
"name" : "string"
},
"power_on" : true,
"name" : "string",
"disks_to_remove" : [
"obj-103",
"obj-103"
],
"source" : "obj-103",
"placement" : {
"cluster" : "obj-103",
"folder" : "obj-103",
"datastore" : "obj-103",
"host" : "obj-103",
"resource_pool" : "obj-103"
},
"disks_to_update" : [
{
"value" : {
"datastore" : "obj-103"
},
"key" : "obj-103"
}
]
}
}
Request Body Parameters:
Name | Type | Description |
---|---|---|
bold = required | ||
spec | clone_spec | Virtual machine clone specification. |
spec.source | string | Virtual machine to clone from. This attribute was added in vSphere API 7.0.0. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: |
spec.name | string | Virtual machine name. This attribute was added in vSphere API 7.0.0.
|
spec.placement | clone_placement_spec | Virtual machine placement information. This attribute was added in vSphere API 7.0.0. Optional. If this field is unset, the system will use the values from the source virtual machine. If specified, each field will be used for placement. If the fields result in disjoint placement the operation will fail. If the fields along with the placement values of the source virtual machine result in disjoint placement the operation will fail. |
spec.placement.folder | string | Virtual machine folder into which the cloned virtual machine should be placed. This attribute was added in vSphere API 7.0.0. Optional. If field is unset, the system will use the virtual machine folder of the source virtual machine. If this results in a conflict due to other placement parameters, the virtual machine clone operation will fail.When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: |
spec.placement.resource_pool | string | Resource pool into which the cloned virtual machine should be placed. This attribute was added in vSphere API 7.0.0. Optional. If field is unset, the system will use the resource pool of the source virtual machine. If this results in a conflict due to other placement parameters, the virtual machine clone operation will fail.When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: |
spec.placement.host | string | Host onto which the cloned virtual machine should be placed. If If Optional. If this field is unset, if |
spec.placement.cluster | string | Cluster into which the cloned virtual machine should be placed. If If Optional. If |
spec.placement.datastore | string | Datastore on which the cloned virtual machine's configuration state should be stored. This datastore will also be used for any virtual disks that are created as part of the virtual machine clone operation unless individually overridden. This attribute was added in vSphere API 7.0.0. Optional. If field is unset, the system will use the datastore of the source virtual machine.When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: |
spec.disks_to_remove | string[] | Set of Disks to Remove. This attribute was added in vSphere API 7.0.0. Optional. If unset, all disks will be copied. If the same identifier is in vcenter.VM.clone_spec.disks_to_update InvalidArgument fault will be returned.When clients pass a value of this structure as a parameter, the field must contain identifiers for the resource type: |
spec.disks_to_update | list | Map of Disks to Update. This attribute was added in vSphere API 7.0.0. Optional. If unset, all disks will copied to the datastore specified in the vcenter.VM.clone_placement_spec.datastore field of vcenter.VM.clone_spec.placement. If the same identifier is in vcenter.VM.clone_spec.disks_to_remove InvalidArgument fault will be thrown.When clients pass a value of this structure as a parameter, the key in the field key/value pairs must be an identifier for the resource type: |
spec.power_on | boolean | Attempt to perform a vcenter.VM.clone_spec.power_on after clone. This attribute was added in vSphere API 7.0.0. Optional. If unset, the virtual machine will not be powered on. |
spec.guest_customization_spec | guest_customization_spec | Guest customization spec to apply to the virtual machine after the virtual machine is deployed. This attribute was added in vSphere API 7.0.0. Optional. If unset, the guest operating system is not customized after clone. |
spec.guest_customization_spec.name | string | Name of the customization specification. This attribute was added in vSphere API 7.0.0. Optional. If unset, no guest customization is performed. |
Response:
HTTP Status Code: 200
Representation:
"value" : "obj-103"
}
Response Type:
Name | Type | Description |
---|---|---|
bold = required | ||
value | string | ID of newly-created virtual machine. |
Errors:
HTTP Status Code | Type | Description |
---|---|---|
400 | already_exists | if a virtual machine with the specified name already exists. |
500 | error | if the system reports an error while responding to the request. |
400 | invalid_argument | if any of the specified parameters are invalid. |
404 | not_found | if any of the resources specified in spec could not be found |
500 | resource_inaccessible | if a specified resource (eg. host) is not accessible. |
503 | service_unavailable | if the system is unable to communicate with a service to complete the request. |
500 | unable_to_allocate_resource | if any of the resources needed to clone the virtual machine could not be allocated. |
401 | unauthenticated | if the user can not be authenticated. |
403 | unauthorized | if the user doesn't have the required privileges. |