Apache CloudStack 4.17.0.0 Root Admin API Reference

updateVirtualMachine

Updates properties of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect. UpdateVirtualMachine does not first check whether the VM is stopped. Therefore, stop the VM manually before issuing this call.

Request parameters

Parameter NameDescriptionRequired
idThe ID of the virtual machinetrue
cleanupdetailsoptional boolean field, which indicates if details should be cleaned up or not (if set to true, details removed for this resource, details field ignored; if false or not set, no action)false
customidan optional field, in case you want to set a custom id to the resource. Allowed to Root Admins onlyfalse
detailsDetails in key/value pairs. 'extraconfig' is not allowed to be passed in details.false
dhcpoptionsnetworklistDHCP options which are passed to the VM on start up Example: dhcpoptionsnetworklist[0].dhcp:114=url&dhcpoptionsetworklist[0].networkid=networkid&dhcpoptionsetworklist[0].dhcp:66=www.test.comfalse
displaynameuser generated namefalse
displayvman optional field, whether to the display the vm to the end user or not.false
extraconfigan optional URL encoded string that can be passed to the virtual machine upon successful deploymentfalse
groupgroup of the virtual machinefalse
haenabletrue if high-availability is enabled for the virtual machine, false otherwisefalse
instancenameinstance name of the user vmfalse
isdynamicallyscalabletrue if VM contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory. This can be updated only when dynamic scaling is enabled on template, service offering and the corresponding global settingfalse
namenew host name of the vm. The VM has to be stopped/started for this update to take affectfalse
ostypeidthe ID of the OS type that best represents this VM.false
securitygroupidslist of security group ids to be applied on the virtual machine.false
securitygroupnamescomma separated list of security groups names that going to be applied to the virtual machine. Should be passed only when vm is created from a zone with Basic Network support. Mutually exclusive with securitygroupids parameterfalse
userdataan optional binary data that can be sent to the virtual machine upon a successful deployment. This binary data must be base64 encoded before adding it to the request. Using HTTP GET (via querystring), you can send up to 4KB of data after base64 encoding. Using HTTP POST(via POST body), you can send up to 1MB of data after base64 encoding.You also need to change vm.userdata.max.length valuefalse

Response Tags

Response NameDescription
idthe ID of the virtual machine
accountthe account associated with the virtual machine
backupofferingidthe ID of the backup offering of the virtual machine
backupofferingnamethe name of the backup offering of the virtual machine
bootmodeGuest vm Boot Mode
boottypeGuest vm Boot Type
cpunumberthe number of vCPUs this virtual machine is using
cpuspeedthe speed of each vCPU
cpuusedthe amount of the vm's CPU currently used
createdthe date when this virtual machine was created
detailsVm details in key/value pairs.
diskioreadthe read (IO) of disk on the VM
diskiowritethe write (IO) of disk on the VM
diskkbsreadthe VM's disk read in KiB
diskkbswritethe VM's disk write in KiB
diskofferingidthe ID of the disk offering of the virtual machine
diskofferingnamethe name of the disk offering of the virtual machine
displaynameuser generated name. The name of the virtual machine is returned if no displayname exists.
displayvman optional field whether to the display the vm to the end user or not.
domainthe name of the domain in which the virtual machine exists
domainidthe ID of the domain in which the virtual machine exists
forvirtualnetworkthe virtual network for the service offering
groupthe group name of the virtual machine
groupidthe group ID of the virtual machine
guestosidOs type ID of the virtual machine
haenabletrue if high-availability is enabled, false otherwise
hostidthe ID of the host for the virtual machine
hostnamethe name of the host for the virtual machine
hypervisorthe hypervisor on which the template runs
iconBase64 string representation of the resource icon
instancenameinstance name of the user vm; this parameter is returned to the ROOT admin only
isdynamicallyscalabletrue if vm contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory.
isodisplaytextan alternate display text of the ISO attached to the virtual machine
isoidthe ID of the ISO attached to the virtual machine
isonamethe name of the ISO attached to the virtual machine
keypairsssh key-pairs
lastupdatedthe date when this virtual machine was updated last time
memorythe memory allocated for the virtual machine
memoryintfreekbsthe internal memory (KiB) that's free in VM or zero if it can not be calculated
memorykbsthe memory used by the VM in KiB
memorytargetkbsthe target memory in VM (KiB)
namethe name of the virtual machine
networkkbsreadthe incoming network traffic on the VM in KiB
networkkbswritethe outgoing network traffic on the host in KiB
osdisplaynameOS name of the vm
ostypeidOS type id of the vm
passwordthe password (if exists) of the virtual machine
passwordenabledtrue if the password rest feature is enabled, false otherwise
pooltypethe pool type of the virtual machine
projectthe project name of the vm
projectidthe project id of the vm
publicippublic IP address id associated with vm via Static nat rule
publicipidpublic IP address id associated with vm via Static nat rule
readonlydetailsList of read-only Vm details as comma separated string.
receivedbytesthe total number of network traffic bytes received
rootdeviceiddevice ID of the root volume
rootdevicetypedevice type of the root volume
sentbytesthe total number of network traffic bytes sent
serviceofferingidthe ID of the service offering of the virtual machine
serviceofferingnamethe name of the service offering of the virtual machine
servicestateState of the Service from LB rule
statethe state of the virtual machine
templatedisplaytext an alternate display text of the template for the virtual machine
templateidthe ID of the template for the virtual machine. A -1 is returned if the virtual machine was created from an ISO file.
templatenamethe name of the template for the virtual machine
useridthe user's ID who deployed the virtual machine
usernamethe user's name who deployed the virtual machine
vgputhe vGPU type used by the virtual machine
zoneidthe ID of the availablility zone for the virtual machine
zonenamethe name of the availability zone for the virtual machine
affinitygroup(*)list of affinity groups associated with the virtual machine
idthe ID of the affinity group
accountthe account owning the affinity group
descriptionthe description of the affinity group
domainthe domain name of the affinity group
domainidthe domain ID of the affinity group
namethe name of the affinity group
projectthe project name of the affinity group
projectidthe project ID of the affinity group
typethe type of the affinity group
virtualmachineIdsvirtual machine IDs associated with this affinity group
nic(*)the list of nics associated with vm
idthe ID of the nic
adaptertypeType of adapter if available
broadcasturithe broadcast uri of the nic
deviceiddevice id for the network when plugged into the virtual machine
extradhcpoptionthe extra dhcp options on the nic
gatewaythe gateway of the nic
ip6addressthe IPv6 address of network
ip6cidrthe cidr of IPv6 network
ip6gatewaythe gateway of IPv6 network
ipaddressthe ip address of the nic
ipaddressesIP addresses associated with NIC found for unmanaged VM
isdefaulttrue if nic is default, false otherwise
isolatedpvlanthe isolated private VLAN if available
isolatedpvlantypethe isolated private VLAN type if available
isolationurithe isolation uri of the nic
macaddresstrue if nic is default, false otherwise
netmaskthe netmask of the nic
networkidthe ID of the corresponding network
networknamethe name of the corresponding network
nsxlogicalswitchId of the NSX Logical Switch (if NSX based), null otherwise
nsxlogicalswitchportId of the NSX Logical Switch Port (if NSX based), null otherwise
secondaryipthe Secondary ipv4 addr of nic
traffictypethe traffic type of the nic
typethe type of the nic
virtualmachineidId of the vm to which the nic belongs
vlanidID of the VLAN/VNI if available
securitygroup(*)list of security groups associated with the virtual machine
idthe ID of the security group
accountthe account owning the security group
descriptionthe description of the security group
domainthe domain name of the security group
domainidthe domain ID of the security group
namethe name of the security group
projectthe project name of the group
projectidthe project id of the group
virtualmachinecountthe number of virtualmachines associated with this securitygroup
virtualmachineidsthe list of virtualmachine ids associated with this securitygroup
egressrule(*)the list of egress rules associated with the security group
accountaccount owning the security group rule
cidrthe CIDR notation for the base IP address of the security group rule
endportthe ending IP of the security group rule
icmpcodethe code for the ICMP message response
icmptypethe type of the ICMP message response
protocolthe protocol of the security group rule
ruleidthe id of the security group rule
securitygroupnamesecurity group name
startportthe starting IP of the security group rule
tags(*)the list of resource tags associated with the rule
ingressrule(*)the list of ingress rules associated with the security group
accountaccount owning the security group rule
cidrthe CIDR notation for the base IP address of the security group rule
endportthe ending IP of the security group rule
icmpcodethe code for the ICMP message response
icmptypethe type of the ICMP message response
protocolthe protocol of the security group rule
ruleidthe id of the security group rule
securitygroupnamesecurity group name
startportthe starting IP of the security group rule
tags(*)the list of resource tags associated with the rule
tags(*)the list of resource tags associated with the rule
accountthe account associated with the tag
customercustomer associated with the tag
domainthe domain associated with the tag
domainidthe ID of the domain associated with the tag
keytag key name
projectthe project name where tag belongs to
projectidthe project id the tag belongs to
resourceidid of the resource
resourcetyperesource type
valuetag value
jobidthe ID of the latest async job acting on this object
jobstatusthe current status of the latest async job acting on this object
jobidthe ID of the latest async job acting on this object
jobstatusthe current status of the latest async job acting on this object