Create Vm

Create Vm

Creates a virtual machine. if you do not have all of the privileges described as follows:

  • The resource Folder referenced by the attribute VM.InventoryPlacementSpec.folder requires VirtualMachine.Inventory.Create.
  • The resource ResourcePool referenced by the attribute VM.ComputePlacementSpec.resource-pool requires Resource.AssignVMToPool.
  • The resource Datastore referenced by the attribute VM.StoragePlacementSpec.datastore requires Datastore.AllocateSpace.
  • The resource Network referenced by the attribute Ethernet.BackingSpec.network requires Network.Assign.
Request
URI
POST
https://{api_host}/api/vcenter/vm
COPY
Request Body
VM_CreateSpec of type(s) application/json
Required
{
    "guest_OS": "string",
    "name": "string",
    "placement": {
        "folder": "string",
        "resource_pool": "string",
        "host": "string",
        "cluster": "string",
        "datastore": "string"
    },
    "hardware_version": "string",
    "boot": {
        "type": "string",
        "efi_legacy_boot": false,
        "network_protocol": "string",
        "delay": 0,
        "retry": false,
        "retry_delay": 0,
        "enter_setup_mode": false
    },
    "boot_devices": [
        {
            "type": "string"
        }
    ],
    "cpu": {
        "count": 0,
        "cores_per_socket": 0,
        "hot_add_enabled": false,
        "hot_remove_enabled": false
    },
    "memory": {
        "size_MiB": 0,
        "hot_add_enabled": false
    },
    "disks": [
        {
            "type": "string",
            "ide": {
                "primary": false,
                "master": false
            },
            "scsi": {
                "bus": 0,
                "unit": 0
            },
            "sata": {
                "bus": 0,
                "unit": 0
            },
            "nvme": {
                "bus": 0,
                "unit": 0
            },
            "backing": {
                "type": "string",
                "vmdk_file": "string"
            },
            "new_vmdk": {
                "name": "string",
                "capacity": 0,
                "storage_policy": {
                    "policy": "string"
                }
            }
        }
    ],
    "nics": [
        {
            "type": "string",
            "upt_compatibility_enabled": false,
            "mac_type": "string",
            "mac_address": "string",
            "pci_slot_number": 0,
            "wake_on_lan_enabled": false,
            "backing": {
                "type": "string",
                "network": "string",
                "distributed_port": "string"
            },
            "start_connected": false,
            "allow_guest_control": false
        }
    ],
    "cdroms": [
        {
            "type": "string",
            "ide": "Vm_Hardware_IdeAddressSpec Object",
            "sata": "Vm_Hardware_SataAddressSpec Object",
            "backing": {
                "type": "string",
                "iso_file": "string",
                "host_device": "string",
                "device_access_type": "string"
            },
            "start_connected": false,
            "allow_guest_control": false
        }
    ],
    "floppies": [
        {
            "backing": {
                "type": "string",
                "image_file": "string",
                "host_device": "string"
            },
            "start_connected": false,
            "allow_guest_control": false
        }
    ],
    "parallel_ports": [
        {
            "backing": {
                "type": "string",
                "file": "string",
                "host_device": "string"
            },
            "start_connected": false,
            "allow_guest_control": false
        }
    ],
    "serial_ports": [
        {
            "yield_on_poll": false,
            "backing": {
                "type": "string",
                "file": "string",
                "host_device": "string",
                "pipe": "string",
                "no_rx_loss": false,
                "network_location": "string",
                "proxy": "string"
            },
            "start_connected": false,
            "allow_guest_control": false
        }
    ],
    "sata_adapters": [
        {
            "type": "string",
            "bus": 0,
            "pci_slot_number": 0
        }
    ],
    "scsi_adapters": [
        {
            "type": "string",
            "bus": 0,
            "pci_slot_number": 0,
            "sharing": "string"
        }
    ],
    "nvme_adapters": [
        {
            "bus": 0,
            "pci_slot_number": 0
        }
    ],
    "storage_policy": {
        "policy": "string"
    }
}
guest_OS
Required

The GuestOS enumerated type defines the valid guest operating system types used for configuring a virtual machine.
DOS : MS-DOS.
WIN_31 : Windows 3.1
WIN_95 : Windows 95
WIN_98 : Windows 98
WIN_ME : Windows Millennium Edition
WIN_NT : Windows NT 4
WIN_2000_PRO : Windows 2000 Professional
WIN_2000_SERV : Windows 2000 Server
WIN_2000_ADV_SERV : Windows 2000 Advanced Server
WIN_XP_HOME : Windows XP Home Edition
WIN_XP_PRO : Windows XP Professional
WIN_XP_PRO_64 : Windows XP Professional Edition (64 bit)
WIN_NET_WEB : Windows Server 2003, Web Edition
WIN_NET_STANDARD : Windows Server 2003, Standard Edition
WIN_NET_ENTERPRISE : Windows Server 2003, Enterprise Edition
WIN_NET_DATACENTER : Windows Server 2003, Datacenter Edition
WIN_NET_BUSINESS : Windows Small Business Server 2003
WIN_NET_STANDARD_64 : Windows Server 2003, Standard Edition (64 bit)
WIN_NET_ENTERPRISE_64 : Windows Server 2003, Enterprise Edition (64 bit)
WIN_LONGHORN : Windows Longhorn
WIN_LONGHORN_64 : Windows Longhorn (64 bit)
WIN_NET_DATACENTER_64 : Windows Server 2003, Datacenter Edition (64 bit)
WIN_VISTA : Windows Vista
WIN_VISTA_64 : Windows Vista (64 bit)
WINDOWS_7 : Windows 7
WINDOWS_7_64 : Windows 7 (64 bit)
WINDOWS_7_SERVER_64 : Windows Server 2008 R2 (64 bit)
WINDOWS_8 : Windows 8
WINDOWS_8_64 : Windows 8 (64 bit)
WINDOWS_8_SERVER_64 : Windows 8 Server (64 bit)
WINDOWS_9 : Windows 10
WINDOWS_9_64 : Windows 10 (64 bit)
WINDOWS_9_SERVER_64 : Windows 10 Server (64 bit)
WINDOWS_11_64 : Windows 11 (64 bit)
WINDOWS_12_64 : Windows 12 (64 bit)
WINDOWS_HYPERV : Windows Hyper-V
WINDOWS_SERVER_2019 : Windows Server 2019
WINDOWS_SERVER_2021 : Windows Server 2022
WINDOWS_SERVER_2025 : Windows Server 2025
FREEBSD : FreeBSD 10 or earlier
FREEBSD_64 : FreeBSD 10 x64 or earlier
FREEBSD_11 : FreeBSD 11
FREEBSD_12 : FreeBSD 12
FREEBSD_13 : FreeBSD 13
FREEBSD_14 : FreeBSD 14 or later
FREEBSD_11_64 : FreeBSD 11 x64
FREEBSD_12_64 : FreeBSD 12 x64
FREEBSD_13_64 : FreeBSD 13 x64
FREEBSD_14_64 : FreeBSD 14 x64 or later
REDHAT : Red Hat Linux 2.1
RHEL_2 : Red Hat Enterprise Linux 2
RHEL_3 : Red Hat Enterprise Linux 3
RHEL_3_64 : Red Hat Enterprise Linux 3 (64 bit)
RHEL_4 : Red Hat Enterprise Linux 4
RHEL_4_64 : Red Hat Enterprise Linux 4 (64 bit)
RHEL_5 : Red Hat Enterprise Linux 5
RHEL_5_64 : Red Hat Enterprise Linux 5 (64 bit)
RHEL_6 : Red Hat Enterprise Linux 6
RHEL_6_64 : Red Hat Enterprise Linux 6 (64 bit)
RHEL_7 : Red Hat Enterprise Linux 7
RHEL_7_64 : Red Hat Enterprise Linux 7 (64 bit)
RHEL_8_64 : Red Hat Enterprise Linux 8 (64 bit)
RHEL_9_64 : Red Hat Enterprise Linux 9 (64 bit)
CENTOS : CentOS 4/5
CENTOS_64 : CentOS 4/5 (64-bit)
CENTOS_6 : CentOS 6
CENTOS_6_64 : CentOS 6 (64-bit)
CENTOS_7 : CentOS 7
CENTOS_7_64 : CentOS 7 (64-bit)
CENTOS_8_64 : CentOS 8 (64-bit)
CENTOS_9_64 : CentOS 9 (64-bit)
ORACLE_LINUX : Oracle Linux 4/5
ORACLE_LINUX_64 : Oracle Linux 4/5 (64-bit)
ORACLE_LINUX_6 : Oracle Linux 6
ORACLE_LINUX_6_64 : Oracle Linux 6 (64-bit)
ORACLE_LINUX_7 : Oracle Linux 7
ORACLE_LINUX_7_64 : Oracle Linux 7 (64-bit)
ORACLE_LINUX_8_64 : Oracle Linux 8 (64-bit)
ORACLE_LINUX_9_64 : Oracle Linux 9 (64-bit)
SUSE : Suse Linux
SUSE_64 : Suse Linux (64 bit)
SLES : Suse Linux Enterprise Server 9
SLES_64 : Suse Linux Enterprise Server 9 (64 bit)
SLES_10 : Suse linux Enterprise Server 10
SLES_10_64 : Suse Linux Enterprise Server 10 (64 bit)
SLES_11 : Suse linux Enterprise Server 11
SLES_11_64 : Suse Linux Enterprise Server 11 (64 bit)
SLES_12 : Suse linux Enterprise Server 12
SLES_12_64 : Suse Linux Enterprise Server 12 (64 bit)
SLES_15_64 : Suse Linux Enterprise Server 15 (64 bit)
SLES_16_64 : Suse Linux Enterprise Server 16 (64 bit)
NLD_9 : Novell Linux Desktop 9
OES : Open Enterprise Server
SJDS : Sun Java Desktop System
MANDRAKE : Mandrake Linux
MANDRIVA : Mandriva Linux
MANDRIVA_64 : Mandriva Linux (64 bit)
TURBO_LINUX : Turbolinux
TURBO_LINUX_64 : Turbolinux (64 bit)
UBUNTU : Ubuntu Linux
UBUNTU_64 : Ubuntu Linux (64 bit)
DEBIAN_4 : Debian GNU/Linux 4
DEBIAN_4_64 : Debian GNU/Linux 4 (64 bit)
DEBIAN_5 : Debian GNU/Linux 5
DEBIAN_5_64 : Debian GNU/Linux 5 (64 bit)
DEBIAN_6 : Debian GNU/Linux 6
DEBIAN_6_64 : Debian GNU/Linux 6 (64 bit)
DEBIAN_7 : Debian GNU/Linux 7
DEBIAN_7_64 : Debian GNU/Linux 7 (64 bit)
DEBIAN_8 : Debian GNU/Linux 8
DEBIAN_8_64 : Debian GNU/Linux 8 (64 bit)
DEBIAN_9 : Debian GNU/Linux 9
DEBIAN_9_64 : Debian GNU/Linux 9 (64 bit)
DEBIAN_10 : Debian GNU/Linux 10
DEBIAN_10_64 : Debian GNU/Linux 10 (64 bit)
DEBIAN_11 : Debian GNU/Linux 11
DEBIAN_11_64 : Debian GNU/Linux 11 (64 bit)
DEBIAN_12 : Debian GNU/Linux 12
DEBIAN_12_64 : Debian GNU/Linux 12 (64 bit)
ASIANUX_3 : Asianux Server 3
ASIANUX_3_64 : Asianux Server 3 (64 bit)
ASIANUX_4 : Asianux Server 4
ASIANUX_4_64 : Asianux Server 4 (64 bit)
ASIANUX_5_64 : Asianux Server 5 (64 bit)
ASIANUX_7_64 : Asianux Server 7 (64 bit)
ASIANUX_8_64 : Asianux Server 8 (64 bit)
ASIANUX_9_64 : Asianux Server 9 (64 bit)
OPENSUSE : OpenSUSE Linux
OPENSUSE_64 : OpenSUSE Linux (64 bit)
FEDORA : Fedora Linux
FEDORA_64 : Fedora Linux (64 bit)
COREOS_64 : CoreOS Linux (64 bit)
VMWARE_PHOTON_64 : VMware Photon (64 bit)
OTHER_24X_LINUX : Linux 2.4x Kernel
OTHER_24X_LINUX_64 : Linux 2.4x Kernel (64 bit)
OTHER_26X_LINUX : Linux 2.6x Kernel
OTHER_26X_LINUX_64 : Linux 2.6x Kernel (64 bit)
OTHER_3X_LINUX : Linux 3.x Kernel
OTHER_3X_LINUX_64 : Linux 3.x Kernel (64 bit)
OTHER_4X_LINUX : Linux 4.x Kernel
OTHER_4X_LINUX_64 : Linux 4.x Kernel (64 bit)
OTHER_5X_LINUX : Linux 5.x Kernel
OTHER_5X_LINUX_64 : Linux 5.x Kernel (64 bit)
OTHER_6X_LINUX : Linux 6.x Kernel
OTHER_6X_LINUX_64 : Linux 6.x Kernel (64 bit)
OTHER_LINUX : Linux 2.2x Kernel
GENERIC_LINUX : Other Linux
OTHER_LINUX_64 : Linux (64 bit)
SOLARIS_6 : Solaris 6
SOLARIS_7 : Solaris 7
SOLARIS_8 : Solaris 8
SOLARIS_9 : Solaris 9
SOLARIS_10 : Solaris 10 (32 bit)
SOLARIS_10_64 : Solaris 10 (64 bit)
SOLARIS_11_64 : Solaris 11 (64 bit)
OS2 : OS/2
ECOMSTATION : eComStation 1.x
ECOMSTATION_2 : eComStation 2.0
NETWARE_4 : Novell NetWare 4
NETWARE_5 : Novell NetWare 5.1
NETWARE_6 : Novell NetWare 6.x
OPENSERVER_5 : SCO OpenServer 5
OPENSERVER_6 : SCO OpenServer 6
UNIXWARE_7 : SCO UnixWare 7
DARWIN : Mac OS 10.5
DARWIN_64 : Mac OS 10.5 (64 bit)
DARWIN_10 : Mac OS 10.6
DARWIN_10_64 : Mac OS 10.6 (64 bit)
DARWIN_11 : Mac OS 10.7
DARWIN_11_64 : Mac OS 10.7 (64 bit)
DARWIN_12_64 : Mac OS 10.8 (64 bit)
DARWIN_13_64 : Mac OS 10.9 (64 bit)
DARWIN_14_64 : Mac OS 10.10 (64 bit)
DARWIN_15_64 : Mac OS 10.11 (64 bit)
DARWIN_16_64 : Mac OS 10.12 (64 bit)
DARWIN_17_64 : Mac OS 10.13 (64 bit)
DARWIN_18_64 : Mac OS 10.14 (64 bit)
DARWIN_19_64 : Mac OS 10.15 (64 bit)
DARWIN_20_64 : Mac OS 11 (64 bit)
DARWIN_21_64 : Mac OS 12 (64 bit)
DARWIN_22_64 : Mac OS 13 (64 bit)
DARWIN_23_64 : Mac OS 14 (64 bit)
VMKERNEL : VMware ESX 4
VMKERNEL_5 : VMware ESX 5
VMKERNEL_6 : VMware ESX 6
VMKERNEL_65 : VMware ESXi 6.5 AND ESXi 6.7.
VMKERNEL_7 : VMware ESX 7
VMKERNEL_8 : VMware ESX 8
AMAZONLINUX2_64 : Amazon Linux 2 (64 bit)
AMAZONLINUX3_64 : Amazon Linux 3 (64 bit)
CRXPOD_1 : CRX Pod 1
ROCKYLINUX_64 : Rocky Linux (64-bit)
ALMALINUX_64 : AlmaLinux (64-bit)
OTHER : Other Operating System
OTHER_64 : Other Operating System (64 bit)

string
name
Optional

Virtual machine name. If unset, a default name will be generated by the server.

placement
Required

The VM.PlacementSpec structure contains information used to place a virtual machine onto resources within the vCenter inventory.

hardware_version
Optional

The Hardware.Version enumerated type defines the valid virtual hardware versions for a virtual machine. See https://kb.vmware.com/s/article/1003746 (Virtual machine hardware versions (1003746)).
VMX_03 : Hardware version 3, first supported in ESXi 2.5.
VMX_04 : Hardware version 4, first supported in ESXi 3.0.
VMX_06 : Hardware version 6, first supported in WS 6.0.
VMX_07 : Hardware version 7, first supported in ESXi 4.0.
VMX_08 : Hardware version 8, first supported in ESXi 5.0.
VMX_09 : Hardware version 9, first supported in ESXi 5.1.
VMX_10 : Hardware version 10, first supported in ESXi 5.5.
VMX_11 : Hardware version 11, first supported in ESXi 6.0.
VMX_12 : Hardware version 12, first supported in Workstation 12.0.
VMX_13 : Hardware version 13, first supported in ESXi 6.5.
VMX_14 : Hardware version 14, first supported in ESXi 6.7.
VMX_15 : Hardware version 15, first supported in ESXi 6.7 Update 2.
VMX_16 : Hardware version 16, first supported in Workstation 15.0.
VMX_17 : Hardware version 17, first supported in ESXi 7.0.0-0.
VMX_18 : Hardware version 18, first supported in ESXi 7.0 U1.
VMX_19 : Hardware version 19, first supported in ESXi 7.0 U2.
VMX_20 : Hardware version 20, first supported in ESXi 8.0.0.1.
VMX_21 : Hardware version 21, first supported in ESXi 8.0 U2.

boot
Optional

The Boot.CreateSpec structure describes settings used when booting a virtual machine.

boot_devices
Optional

Boot device configuration. If unset, a server-specific boot sequence will be used.

cpu
Optional

The Cpu.UpdateSpec structure describes the updates to be made to the CPU-related settings of a virtual machine.

memory
Optional

The Memory.UpdateSpec structure describes the updates to be made to the memory-related settings of a virtual machine.

disks
Optional

List of disks. If unset, a single blank virtual disk of a guest-specific size will be created on the same storage as the virtual machine configuration, and will use a guest-specific host bus adapter type. If the guest-specific size is 0, no virtual disk will be created.

nics
Optional

List of Ethernet adapters. If unset, no Ethernet adapters will be created.

cdroms
Optional

List of CD-ROMs. If unset, no CD-ROM devices will be created.

floppies
Optional

List of floppy drives. If unset, no floppy drives will be created.

parallel_ports
Optional

List of parallel ports. If unset, no parallel ports will be created.

serial_ports
Optional

List of serial ports. If unset, no serial ports will be created.

sata_adapters
Optional

List of SATA adapters. If unset, any adapters necessary to connect the virtual machine's storage devices will be created; this includes any devices that explicitly specify a SATA host bus adapter, as well as any devices that do not specify a host bus adapter if the guest's preferred adapter type is SATA.

scsi_adapters
Optional

List of SCSI adapters. If unset, any adapters necessary to connect the virtual machine's storage devices will be created; this includes any devices that explicitly specify a SCSI host bus adapter, as well as any devices that do not specify a host bus adapter if the guest's preferred adapter type is SCSI. The type of the SCSI adapter will be a guest-specific default type.

nvme_adapters
Optional

List of NVMe adapters. If unset, any adapters necessary to connect the virtual machine's storage devices will be created; this includes any devices that explicitly specify a NVMe host bus adapter, as well as any devices that do not specify a host bus adapter if the guest's preferred adapter type is NVMe.

storage_policy
Optional

The VM.StoragePolicySpec structure contains information about the storage policy to be associated with a virtual machine object.

Authentication
This operation uses the following authentication methods.
Responses
201

ID of newly-created virtual machine. The result will be an identifier for the resource type: VirtualMachine.

Returns string of type(s) application/json
Operation doesn't return any data structure

400

com.vmware.vapi.std.errors.already_exists : if a virtual machine with the specified name already exists. | com.vmware.vapi.std.errors.invalid_argument : if any of the specified parameters are invalid. | com.vmware.vapi.std.errors.resource_in_use : if any of the specified storage addresses (eg. IDE, SATA, SCSI, NVMe) result in a storage address conflict. | com.vmware.vapi.std.errors.unsupported : if VM.CreateSpec.guest-os is not supported for the requested virtual hardware version and spec includes unset fields that default to guest-specific values.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


401

com.vmware.vapi.std.errors.unauthenticated : if the user can not be authenticated.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


403

com.vmware.vapi.std.errors.unauthorized : if the user doesn't have the required privileges.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


404

com.vmware.vapi.std.errors.not_found : if any of the resources specified in spec could not be found

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


500

com.vmware.vapi.std.errors.error : if the system reports an error while responding to the request. | com.vmware.vapi.std.errors.resource_inaccessible : if a specified resource (eg. host) is not accessible. | com.vmware.vapi.std.errors.unable_to_allocate_resource : if any of the resources needed to create the virtual machine could not be allocated.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


503

com.vmware.vapi.std.errors.service_unavailable : if the system is unable to communicate with a service to complete the request.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.


default

'Default' means this response is used for all HTTP codes that are not covered individually for this operation.

Returns Std_Errors_Error of type(s) application/json
{
    "messages": [
        {
            "id": "string",
            "default_message": "string",
            "args": [
                "string"
            ],
            "localized": "string"
        }
    ],
    "error_type": "string"
}
messages
Required

Stack of one or more localizable messages for human error consumers. The message at the top of the stack (first in the list) describes the error from the perspective of the operation the client invoked.

Each subsequent message in the stack describes the "cause" of the prior message.

object
data
Optional

Data to facilitate clients responding to the operation reporting a standard error to indicating that it was unable to complete successfully. Operations may provide data that clients can use when responding to errors. Since the data that clients need may be specific to the context of the operation reporting the error, different operations that report the same error may provide different data in the error. The documentation for each each operation will describe what, if any, data it provides for each error it reports.

The ArgumentLocations, FileLocations, and TransientIndication structures are intended as possible values for this field. DynamicID may also be useful as a value for this field (although that is not its primary purpose). Some services may provide their own specific structures for use as the value of this field when reporting errors from their operations.

Some operations will not set this field when reporting errors.

error_type
Optional

Enumeration of all standard errors. Used as discriminator in protocols that have no standard means for transporting the error type, e.g. REST.
ERROR : Discriminator for the Error type.
ALREADY_EXISTS : Discriminator for the AlreadyExists type.
ALREADY_IN_DESIRED_STATE : Discriminator for the AlreadyInDesiredState type.
CANCELED : Discriminator for the Canceled type.
CONCURRENT_CHANGE : Discriminator for the ConcurrentChange type.
FEATURE_IN_USE : Discriminator for the FeatureInUse type.
INTERNAL_SERVER_ERROR : Discriminator for the InternalServerError type.
INVALID_ARGUMENT : Discriminator for the InvalidArgument type.
INVALID_ELEMENT_CONFIGURATION : Discriminator for the InvalidElementConfiguration type.
INVALID_ELEMENT_TYPE : Discriminator for the InvalidElementType type.
INVALID_REQUEST : Discriminator for the InvalidRequest type.
NOT_ALLOWED_IN_CURRENT_STATE : Discriminator for the NotAllowedInCurrentState type.
NOT_FOUND : Discriminator for the NotFound type.
OPERATION_NOT_FOUND : Discriminator for the OperationNotFound type.
RESOURCE_BUSY : Discriminator for the ResourceBusy type.
RESOURCE_IN_USE : Discriminator for the ResourceInUse type.
RESOURCE_INACCESSIBLE : Discriminator for the ResourceInaccessible type.
SERVICE_UNAVAILABLE : Discriminator for the ServiceUnavailable type.
TIMED_OUT : Discriminator for the TimedOut type.
UNABLE_TO_ALLOCATE_RESOURCE : Discriminator for the UnableToAllocateResource type.
UNAUTHENTICATED : Discriminator for the Unauthenticated type.
UNAUTHORIZED : Discriminator for the Unauthorized type.
UNEXPECTED_INPUT : Discriminator for the UnexpectedInput type.
UNSUPPORTED : Discriminator for the Unsupported type.
UNVERIFIED_PEER : Discriminator for the UnverifiedPeer type.