---
title: "Update a VM"
method: PUT
path: "/vms/{uuid}"
tags: ["vms"]
---

# Update a VM

`PUT /vms/{uuid}`

This operation submits a request to update a VM based on the input parameters.

## Path parameters

- `uuid` string, UUID, required

## Request body

- VmIntentInput — An intentful representation of a vm
  - `spec` Vm, required — An intentful representation of a vm spec
    - `description` string — A description for vm.
    - `resources` VmResources, required — VM Resources Definition.
      - `power_state` string — The current or desired power state of the VM.
      - `num_vcpus_per_socket` integer — Number of vCPUs per socket.
      - `num_sockets` integer — Number of vCPU sockets.
      - `gpu_list` VmGpu[] — GPUs attached to the VM.
        - `vendor` string — The vendor of the GPU.
        - `mode` string — The mode of this GPU.
        - `device_id` integer — The device ID of the GPU.
      - `memory_size_mib` integer — Memory size in MiB.
      - `boot_config` VmBootConfig — Indicates which device a VM should boot from.
        - `boot_device_order_list` string[] — Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.
        - `boot_device` VmBootDevice — Indicates which device a VM should boot from. One of disk_address or mac_address should be provided.
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `mac_address` string — MAC address of nic to boot from.
      - `hardware_clock_timezone` string — VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).
      - `guest_customization` GuestCustomization — VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloud_init should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
        - `cloud_init` object — If this field is set, the guest will be customized using cloud-init. Either user_data or custom_key_values should be provided. If custom_key_ves are provided then the user data will be generated using these key-value pairs.
          - `meta_data` string — The contents of the meta_data configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
          - `user_data` string — The contents of the user_data configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
        - `is_overridable` boolean — Flag to allow override of customization by deployer.
        - `sysprep` object — If this field is set, the guest will be customized using Sysprep. Either unattend_xml or custom_key_values should be provided. If custom_key_values are provided then the unattended answer file will be generated using these key-value pairs.
          - `install_type` string — Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is "PREPARED".
          - `unattend_xml` string — This field contains a Sysprep unattend xml definition, as a string. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
      - `power_state_mechanism` VmPowerStateMechanism — Indicates the mechanism guiding the VM power state transition. Currently used for the transition to "OFF" state.
        - `guest_transition_config` VmGuestPowerStateTransitionConfig — Extra configs related to power state transition.
          - `should_fail_on_script_failure` boolean — Indicates whether to abort ngt shutdown/reboot if script fails.
          - `enable_script_exec` boolean — Indicates whether to execute set script before ngt shutdown/reboot.
        - `mechanism` string — Power state mechanism (ACPI/GUEST/HARD).
      - `vga_console_enabled` boolean — Indicates whether VGA console should be enabled or not.
      - `disk_list` VmDisk[] — Disks attached to the VM.
        - `volume_group_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `device_properties` object
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `device_type` string
        - `uuid` string, UUID — The device ID which is used to uniquely identify this particular disk.
        - `data_source_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `disk_size_mib` integer — Size of the disk in MiB. Must match the size specified in 'disk_size_bytes' - rounded up to the nearest MiB - when that field is present.
        - `disk_size_bytes` integer — Size of the disk in Bytes.
      - `vnuma_config` VmVnumaConfig — Indicates how VM vNUMA should be configured
        - `num_vnuma_nodes` integer — Number of vNUMA nodes. 0 means vNUMA is disabled.
      - `nic_list` VmNic[] — NICs attached to the VM.
        - `nic_type` string — The type of this NIC. Defaults to NORMAL_NIC.
        - `uuid` string, UUID — The NIC's UUID, which is used to uniquely identify this particular NIC. This UUID may be used to refer to the NIC outside the context of the particular VM it is attached to.
        - `ip_endpoint_list` IpAddress[] — IP endpoints for the adapter. Currently, IPv4 addresses are supported.
          - `ip` string — Address string.
          - `type` string — Address type. It can only be "ASSIGNED" in the spec. If no type is specified in the spec, the default type is set to "ASSIGNED".
          - `prefix_length` integer — Prefix length for the IP address.
          - `gateway_address_list` string[] — Gateway IP addresses matching the subnet.
          - `ip_type` string — Indicates whether IP address is DHCP or Static.
        - `network_function_chain_reference` NetworkFunctionChainReference — The reference to a network_function_chain
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `network_function_nic_type` string — The type of this Network function NIC. Defaults to INGRESS.
        - `mac_address` string — The MAC address for the adapter.
        - `subnet_reference` SubnetReference — The reference to a subnet
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `model` string — The model of this NIC.
        - `is_connected` boolean — Whether or not the NIC is connected. True by default.
      - `guest_os_id` string — Guest OS Identifier. For ESX, refer to VMware documentation link (https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.
      - `serial_port_list` SerialPort[] — Serial ports configured on the VM.
        - `index` integer — Index of the serial port.
        - `is_connected` boolean — Indicates whether the serial port connection is connected or not.
      - `guest_tools` GuestToolsSpec — Information regarding guest tools.
        - `nutanix_guest_tools` NutanixGuestToolsSpec — Information regarding Nutanix Guest Tools.
          - `state` string — Nutanix Guest Tools is enabled or not.
          - `version` string — Desired Version of Nutanix Guest Tools installed on the VM.
          - `ngt_state` string — Nutanix guest tools is installed or not.
          - `credentials` Credentials — Credentials to login server
            - `username` string, required
            - `password` string
          - `iso_mount_state` string — Desired mount state of Nutanix Guest Tools ISO.
          - `enabled_capability_list` string[] — Application names that are enabled.
      - `storage_qos_policy_config` StorageQosPolicyConfigInput — The policy rule to be enforced depending on the type of policy. For ex - provisioned/throttled iops would be set for a storage qos policy.
        - `provisioned_iops` integer, required — Provisioned iops for the entities being governed by the policy.
        - `throttled_iops` integer, required — Throttled iops for the entities being governed by the policy.
      - `parent_reference` Reference — Reference to a kind
        - `kind` string, required
        - `uuid` string, UUID, required
        - `name` string
    - `cluster_reference` ClusterReference — The reference to a cluster
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `name` string, required — vm Name.
    - `availability_zone_reference` AvailabilityZoneReference — The reference to a availability_zone
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
  - `api_version` string
  - `metadata` VmMetadata, required — The vm kind metadata
    - `last_update_time` string, date-time — UTC date and time in RFC-3339 format when vm was last updated
    - `kind` string, required — The kind name
    - `uuid` string, UUID — vm uuid
    - `spec_version` integer — Version number of the latest spec.
    - `creation_time` string, date-time — UTC date and time in RFC-3339 format when vm was created
    - `spec_hash` string — Hash of the spec. This will be returned from server.
    - `should_force_translate` boolean — Applied on Prism Central only. Indicate whether force to translate the spec of the fanout request to fit the target cluster API schema.
    - `owner_reference` UserReference — The reference to a user
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `categories` object — Categories for the vm
    - `name` string — vm name

## Response `202`

Request Accepted

- VmIntentResponse — Response object for intentful operations on a vm
  - `status` VmDefStatus — An intentful representation of a vm status
    - `state` string — The state of the vm.
    - `name` string, required — vm Name.
    - `availability_zone_reference` AvailabilityZoneReference — The reference to a availability_zone
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `message_list` MessageResource[] — Any error messages for the vm, if in an error state.
      - `message` string, required — If state is ERROR, a message describing the error.
      - `reason` string, required — If state is ERROR, a machine-readable snake-cased string.
      - `details` object — Custom key-value details relevant to the status.
    - `cluster_reference` ClusterReference — The reference to a cluster
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `resources` VmResourcesDefStatus, required — VM Resources Status Definition.
      - `power_state` string — Current power state of the VM.
      - `num_vcpus_per_socket` integer — Number of vCPUs per socket.
      - `num_sockets` integer — Number of vCPU sockets.
      - `gpu_list` VmGpuOutputStatus[] — GPUs attached to the VM.
        - `frame_buffer_size_mib` integer — GPU frame buffer size in MiB.
        - `vendor` string — The vendor of the GPU.
        - `uuid` string, UUID — UUID of the GPU.
        - `num_virtual_display_heads` integer — Number of supported virtual display heads.
        - `pci_address` string — GPU {segment:bus:device:function} (sbdf) address if assigned.
        - `mode` string — The mode of this GPU
        - `fraction` integer — Fraction of the physical GPU assigned.
        - `guest_driver_version` string — Last determined guest driver version.
        - `device_id` integer — The device ID of the GPU.
        - `name` string — Name of the GPU resource.
      - `protection_type` string — The type of protection applied on a VM. PD_PROTECTED indicates a VM protected using Prism Element. RULE_PROTECTED indicates a VM protected using Prism Central.
      - `memory_size_mib` integer — Memory size in MiB.
      - `boot_config` VmBootConfig — Indicates which device a VM should boot from.
        - `boot_device_order_list` string[] — Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.
        - `boot_device` VmBootDevice — Indicates which device a VM should boot from. One of disk_address or mac_address should be provided.
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `mac_address` string — MAC address of nic to boot from.
      - `hardware_clock_timezone` string — VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).
      - `guest_customization` GuestCustomizationStatus — VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloud_init should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
        - `cloud_init` object — If this field is set, the guest will be customized using cloud-init. Either user_data or custom_key_values should be provided. If custom_key_ves are provided then the user data will be generated using these key-value pairs.
          - `meta_data` string — The contents of the meta_data configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
          - `user_data` string — The contents of the user_data configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
        - `is_overridable` boolean — Flag to allow override of customization by deployer.
        - `sysprep` object — If this field is set, the guest will be customized using Sysprep. Either unattend_xml or custom_key_values should be provided. If custom_key_values are provided then the unattended answer file will be generated using these key-value pairs.
          - `install_type` string — Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is "PREPARED".
          - `unattend_xml` string — This field contains a Sysprep unattend xml definition, as a string. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
      - `power_state_mechanism` VmPowerStateMechanism — Indicates the mechanism guiding the VM power state transition. Currently used for the transition to "OFF" state.
        - `guest_transition_config` VmGuestPowerStateTransitionConfig — Extra configs related to power state transition.
          - `should_fail_on_script_failure` boolean — Indicates whether to abort ngt shutdown/reboot if script fails.
          - `enable_script_exec` boolean — Indicates whether to execute set script before ngt shutdown/reboot.
        - `mechanism` string — Power state mechanism (ACPI/GUEST/HARD).
      - `vga_console_enabled` boolean — Indicates whether VGA console has been enabled or not.
      - `disk_list` VmDisk[] — Disks attached to the VM.
        - `volume_group_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `device_properties` object
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `device_type` string
        - `uuid` string, UUID — The device ID which is used to uniquely identify this particular disk.
        - `data_source_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `disk_size_mib` integer — Size of the disk in MiB. Must match the size specified in 'disk_size_bytes' - rounded up to the nearest MiB - when that field is present.
        - `disk_size_bytes` integer — Size of the disk in Bytes.
      - `vnuma_config` VmVnumaConfig — Indicates how VM vNUMA should be configured
        - `num_vnuma_nodes` integer — Number of vNUMA nodes. 0 means vNUMA is disabled.
      - `nic_list` VmNicOutputStatus[] — NICs attached to the VM.
        - `nic_type` string — The type of this NIC. Defaults to NORMAL_NIC.
        - `uuid` string, UUID — The NIC's UUID, which is used to uniquely identify this particular NIC. This UUID may be used to refer to the NIC outside the context of the particular VM it is attached to.
        - `ip_endpoint_list` IpAddress[] — IP endpoints for the adapter. Currently, IPv4 addresses are supported.
          - `ip` string — Address string.
          - `type` string — Address type. It can only be "ASSIGNED" in the spec. If no type is specified in the spec, the default type is set to "ASSIGNED".
          - `prefix_length` integer — Prefix length for the IP address.
          - `gateway_address_list` string[] — Gateway IP addresses matching the subnet.
          - `ip_type` string — Indicates whether IP address is DHCP or Static.
        - `network_function_chain_reference` NetworkFunctionChainReference — The reference to a network_function_chain
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `floating_ip` string — The Floating IP associated with the vnic.
        - `network_function_nic_type` string — The type of this Network function NIC. Defaults to INGRESS.
        - `mac_address` string — The MAC address for the adapter.
        - `subnet_reference` SubnetReference — The reference to a subnet
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `model` string — The model of this NIC.
        - `is_connected` boolean — Whether or not the NIC is connected. True by default.
      - `host_reference` Reference — Reference to a kind
        - `kind` string, required
        - `uuid` string, UUID, required
        - `name` string
      - `guest_os_id` string — Guest OS Identifier. For ESX, refer to VMware documentation link (https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.
      - `serial_port_list` SerialPort[] — Serial ports configured on the VM.
        - `index` integer — Index of the serial port.
        - `is_connected` boolean — Indicates whether the serial port connection is connected or not.
      - `guest_tools` GuestToolsStatus — Information regarding guest tools.
        - `nutanix_guest_tools` NutanixGuestToolsStatus — Information regarding Nutanix Guest Tools.
          - `available_version` string — Version of Nutanix Guest Tools available on the cluster.
          - `ngt_state` string — Nutanix guest tools is installed or not.
          - `iso_mount_state` string — Desired mount state of Nutanix Guest Tools ISO.
          - `state` string — Nutanix Guest Tools is enabled or not.
          - `version` string — Version of Nutanix Guest Tools installed on the VM.
          - `enabled_capability_list` string[] — Application names that are enabled.
          - `credentials` Credentials — Credentials to login server
            - `username` string, required
            - `password` string
          - `guest_os_version` string — Version of the operating system on the VM.
          - `vss_snapshot_capable` boolean — Whether the VM is configured to take VSS snapshots through NGT.
          - `is_reachable` boolean — Communication from VM to CVM is active or not.
          - `vm_mobility_drivers_installed` boolean — Whether VM mobility drivers are installed in the VM.
      - `hypervisor_type` string — The hypervisor type for the hypervisor the VM is hosted on.
      - `storage_qos_policy_config` StorageQosPolicyConfigOutput — The policy rule to be enforced depending on the type of policy. For ex - provisioned/throttled iops would be set for a storage qos policy.
        - `provisioned_iops` integer — Provisioned iops for the entities being governed by the policy.
        - `throttled_iops` integer — Throttled iops for the entities being governed by the policy.
      - `parent_reference` Reference — Reference to a kind
        - `kind` string, required
        - `uuid` string, UUID, required
        - `name` string
    - `description` string — A description for vm.
  - `spec` Vm — An intentful representation of a vm spec
    - `description` string — A description for vm.
    - `resources` VmResources, required — VM Resources Definition.
      - `power_state` string — The current or desired power state of the VM.
      - `num_vcpus_per_socket` integer — Number of vCPUs per socket.
      - `num_sockets` integer — Number of vCPU sockets.
      - `gpu_list` VmGpu[] — GPUs attached to the VM.
        - `vendor` string — The vendor of the GPU.
        - `mode` string — The mode of this GPU.
        - `device_id` integer — The device ID of the GPU.
      - `memory_size_mib` integer — Memory size in MiB.
      - `boot_config` VmBootConfig — Indicates which device a VM should boot from.
        - `boot_device_order_list` string[] — Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.
        - `boot_device` VmBootDevice — Indicates which device a VM should boot from. One of disk_address or mac_address should be provided.
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `mac_address` string — MAC address of nic to boot from.
      - `hardware_clock_timezone` string — VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).
      - `guest_customization` GuestCustomization — VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or cloud_init should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if "override_script" is set to "True" then the deployer can upload their own custom script.
        - `cloud_init` object — If this field is set, the guest will be customized using cloud-init. Either user_data or custom_key_values should be provided. If custom_key_ves are provided then the user data will be generated using these key-value pairs.
          - `meta_data` string — The contents of the meta_data configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.
          - `user_data` string — The contents of the user_data configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
        - `is_overridable` boolean — Flag to allow override of customization by deployer.
        - `sysprep` object — If this field is set, the guest will be customized using Sysprep. Either unattend_xml or custom_key_values should be provided. If custom_key_values are provided then the unattended answer file will be generated using these key-value pairs.
          - `install_type` string — Whether the guest will be freshly installed using this unattend configuration, or whether this unattend configuration will be applied to a pre-prepared image. Default is "PREPARED".
          - `unattend_xml` string — This field contains a Sysprep unattend xml definition, as a string. The value must be base64 encoded.
          - `custom_key_values` CustomGenericKeyValuePair — Generic key value pair used for custom attributes
      - `power_state_mechanism` VmPowerStateMechanism — Indicates the mechanism guiding the VM power state transition. Currently used for the transition to "OFF" state.
        - `guest_transition_config` VmGuestPowerStateTransitionConfig — Extra configs related to power state transition.
          - `should_fail_on_script_failure` boolean — Indicates whether to abort ngt shutdown/reboot if script fails.
          - `enable_script_exec` boolean — Indicates whether to execute set script before ngt shutdown/reboot.
        - `mechanism` string — Power state mechanism (ACPI/GUEST/HARD).
      - `vga_console_enabled` boolean — Indicates whether VGA console should be enabled or not.
      - `disk_list` VmDisk[] — Disks attached to the VM.
        - `volume_group_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `device_properties` object
          - `disk_address` DiskAddress — Disk Address.
            - `device_index` integer, required
            - `adapter_type` string, required
          - `device_type` string
        - `uuid` string, UUID — The device ID which is used to uniquely identify this particular disk.
        - `data_source_reference` Reference — Reference to a kind
          - `kind` string, required
          - `uuid` string, UUID, required
          - `name` string
        - `disk_size_mib` integer — Size of the disk in MiB. Must match the size specified in 'disk_size_bytes' - rounded up to the nearest MiB - when that field is present.
        - `disk_size_bytes` integer — Size of the disk in Bytes.
      - `vnuma_config` VmVnumaConfig — Indicates how VM vNUMA should be configured
        - `num_vnuma_nodes` integer — Number of vNUMA nodes. 0 means vNUMA is disabled.
      - `nic_list` VmNic[] — NICs attached to the VM.
        - `nic_type` string — The type of this NIC. Defaults to NORMAL_NIC.
        - `uuid` string, UUID — The NIC's UUID, which is used to uniquely identify this particular NIC. This UUID may be used to refer to the NIC outside the context of the particular VM it is attached to.
        - `ip_endpoint_list` IpAddress[] — IP endpoints for the adapter. Currently, IPv4 addresses are supported.
          - `ip` string — Address string.
          - `type` string — Address type. It can only be "ASSIGNED" in the spec. If no type is specified in the spec, the default type is set to "ASSIGNED".
          - `prefix_length` integer — Prefix length for the IP address.
          - `gateway_address_list` string[] — Gateway IP addresses matching the subnet.
          - `ip_type` string — Indicates whether IP address is DHCP or Static.
        - `network_function_chain_reference` NetworkFunctionChainReference — The reference to a network_function_chain
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `network_function_nic_type` string — The type of this Network function NIC. Defaults to INGRESS.
        - `mac_address` string — The MAC address for the adapter.
        - `subnet_reference` SubnetReference — The reference to a subnet
          - `kind` string, required — The kind name
          - `name` string
          - `uuid` string, UUID, required
        - `model` string — The model of this NIC.
        - `is_connected` boolean — Whether or not the NIC is connected. True by default.
      - `guest_os_id` string — Guest OS Identifier. For ESX, refer to VMware documentation link (https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.
      - `serial_port_list` SerialPort[] — Serial ports configured on the VM.
        - `index` integer — Index of the serial port.
        - `is_connected` boolean — Indicates whether the serial port connection is connected or not.
      - `guest_tools` GuestToolsSpec — Information regarding guest tools.
        - `nutanix_guest_tools` NutanixGuestToolsSpec — Information regarding Nutanix Guest Tools.
          - `state` string — Nutanix Guest Tools is enabled or not.
          - `version` string — Desired Version of Nutanix Guest Tools installed on the VM.
          - `ngt_state` string — Nutanix guest tools is installed or not.
          - `credentials` Credentials — Credentials to login server
            - `username` string, required
            - `password` string
          - `iso_mount_state` string — Desired mount state of Nutanix Guest Tools ISO.
          - `enabled_capability_list` string[] — Application names that are enabled.
      - `storage_qos_policy_config` StorageQosPolicyConfigInput — The policy rule to be enforced depending on the type of policy. For ex - provisioned/throttled iops would be set for a storage qos policy.
        - `provisioned_iops` integer, required — Provisioned iops for the entities being governed by the policy.
        - `throttled_iops` integer, required — Throttled iops for the entities being governed by the policy.
      - `parent_reference` Reference — Reference to a kind
        - `kind` string, required
        - `uuid` string, UUID, required
        - `name` string
    - `cluster_reference` ClusterReference — The reference to a cluster
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `name` string, required — vm Name.
    - `availability_zone_reference` AvailabilityZoneReference — The reference to a availability_zone
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
  - `api_version` string, required
  - `metadata` VmMetadata, required — The vm kind metadata
    - `last_update_time` string, date-time — UTC date and time in RFC-3339 format when vm was last updated
    - `kind` string, required — The kind name
    - `uuid` string, UUID — vm uuid
    - `spec_version` integer — Version number of the latest spec.
    - `creation_time` string, date-time — UTC date and time in RFC-3339 format when vm was created
    - `spec_hash` string — Hash of the spec. This will be returned from server.
    - `should_force_translate` boolean — Applied on Prism Central only. Indicate whether force to translate the spec of the fanout request to fit the target cluster API schema.
    - `owner_reference` UserReference — The reference to a user
      - `kind` string, required — The kind name
      - `name` string
      - `uuid` string, UUID, required
    - `categories` object — Categories for the vm
    - `name` string — vm name

## Other responses

- `404` — Invalid UUID provided
- `default` — Internal Error

---

[API](https://skmtc.net/nutanix/apis/nutanix-intentful-api.md) · [All operations](https://skmtc.net/nutanix/apis/nutanix-intentful-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nutanix/nutanix-intentful-api/revisions/40395083ab31/schema)
