Vcenter NamespaceManagement VirtualMachineClasses update

Vcenter NamespaceManagement VirtualMachineClasses update

Update the configuration of the VM class object

This operation was added in vSphere API 7.0.2.00100.

Returns an authorization error if you do not have all of the privileges described as follows:

  • Operation execution requires VirtualMachineClasses.Manage.
Request
URI
PATCH
https://{api_host}/api/vcenter/namespace-management/virtual-machine-classes/{vm_class}
COPY
Path Parameters
string
vm_class
Required

Identifier for the VM class.

The parameter must be an identifier for the resource type: com.vmware.vcenter.namespace_management.VirtualMachineClass.


Request Body

Information about the VM class object to be updated.

{
    "cpu_count": 0,
    "cpu_reservation": 0,
    "memory_mb": 0,
    "memory_reservation": 0,
    "description": "string",
    "devices": {
        "vgpu_devices": [
            {
                "profile_name": "string"
            }
        ],
        "dynamic_direct_path_io_devices": [
            {
                "vendor_id": 0,
                "device_id": 0,
                "custom_label": "string"
            }
        ]
    },
    "instance_storage": {
        "policy": "string",
        "volumes": [
            {
                "size": 0
            }
        ]
    },
    "config_spec": {}
}
integer As int64 As int64
cpu_count
Optional

The number of CPUs configured for virtual machine of this class.

This property was added in vSphere API 7.0.2.00100.

If missing or null the current value the will not be modified.

integer As int64 As int64
cpu_reservation
Optional

This property is deprecated as of vSphere API 8.0.2.0. Use CPU allocation in Vcenter NamespaceManagement VirtualMachineClasses UpdateSpec.config_spec instead to reserve CPUs for a virtual machine.

The percentage of total available CPUs reserved for a virtual machine. We multiply this percentage by the minimum frequency amongst all the cluster nodes to get the CPU reservation that is specified to vSphere in MHz.

This property was added in vSphere API 7.0.2.00100.

If missing or null, no CPU reservation is requested for the virtual machine.

integer As int64 As int64
memory_mb
Optional

The amount of memory in MB configured for virtual machine of this class.

This property was added in vSphere API 7.0.2.00100.

If missing or null the current value the will not be modified.

integer As int64 As int64
memory_reservation
Optional

This property is deprecated as of vSphere API 8.0.2.0. Use memory allocation in Vcenter NamespaceManagement VirtualMachineClasses UpdateSpec.config_spec instead to reserve memory for a virtual machine.

The percentage of available memory reserved for a virtual machine of this class. Memory reservation must be set to 100% for VM class with vGPU or Dynamic DirectPath I/O devices.

This property was added in vSphere API 7.0.2.00100.

If missing or null, no memory reservation is requested for virtual machine.

string
description
Optional

Description for the VM class.

This property was added in vSphere API 7.0.2.00100.

If missing or null, description is not updated.

devices
Optional

This property is deprecated as of vSphere API 8.0.2.0. Use device changes in Vcenter NamespaceManagement VirtualMachineClasses UpdateSpec.config_spec instead to add vGPU and Dynamic DirectPath I/O virtual devices.

Virtual devices corresponding to the VM class.

This property was added in vSphere API 7.0.3.0.

If missing or null, virtual devices will not be updated.

instance_storage
Optional

Instance storage associated with the VM class.

This property was added in vSphere API 8.0.0.0.

If missing or null, instance storage specification will not be updated.

object
config_spec
Optional

A VirtualMachineConfigSpec associated with the VM class.

This property was added in vSphere API 8.0.2.0.

If missing or null, the config spec will not be updated.

Authentication
This operation uses the following authentication methods.
Responses
204

Success!

Operation doesn't return any data structure

400

Vapi Std Errors AlreadyExists if a VM class by the name as specified in the spec already exists in the vCenter inventory.

Vapi Std Errors InvalidArgument if the input spec.instanceStorage.policy refers to an invalid storage policy or if the input spec includes settings that are out of acceptable bounds or a combination of settings that are not internally consistent with the input spec.

Vapi Std Errors NotAllowedInCurrentState:

  • if vm_class is marked for deletion or is used for defining cluster capacity.
  • if vm_class is marked for deletion.
Returns Vapi Std Errors Error of type(s) application/json
"Vapi Std Errors Error Object"
array of object
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 Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


401

if the user can not be authenticated.

Returns Vapi Std Errors Unauthenticated of type(s) application/json
This response body class contains all of the following: InlineVapi Std Errors Unauthenticated0
"Vapi Std Errors Unauthenticated Object"
string
challenge
Optional

Indicates the authentication challenges applicable to the target API provider. It can be used by a client to discover the correct authentication scheme to use. The exact syntax of the value is defined by the specific provider, the protocol and authentication schemes used.

For example, a provider using REST may adhere to the WWW-Authenticate HTTP header specification, RFC7235, section 4.1. In this case an example challenge value may be: SIGN realm="27da1358-2ba4-11e9-b210-d663bd873d93",sts="http://vcenter/sso?vsphere.local", Basic realm="vCenter"

This property was added in vSphere API 7.0.0.0.

This property is optional because it was added in a newer version than its parent node.


403

if the user does not have VirtualMachineClasses.Manage privilege.

Returns Vapi Std Errors Unauthorized of type(s) application/json
This response body class contains all of the following: InlineVapi Std Errors Unauthorized0
"Vapi Std Errors Unauthorized Object"

404

if or the vm_class cannot be located.

Returns Vapi Std Errors NotFound of type(s) application/json
This response body class contains all of the following: InlineVapi Std Errors NotFound0
"Vapi Std Errors NotFound Object"

500

if the system reports an error while responding to the request.

Returns Vapi Std Errors Error of type(s) application/json
"Vapi Std Errors Error Object"
array of object
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 Vapi Std Errors ArgumentLocations, Vapi Std Errors FileLocations, and Vapi Std Errors TransientIndication schemas are intended as possible values for this property. Vapi Std DynamicID may also be useful as a value for this property (although that is not its primary purpose). Some resources may provide their own specific schemas for use as the value of this property when reporting errors from their operations.

Some operations will not set this property when reporting errors.

string
error_type
Required

Discriminator field to help API consumers identify the structure type.

For more information see: Vapi Std Errors Error Type.

This property was added in vSphere API 6.7.2.

Can be missing or null for compatibility with preceding implementations.


Code Samples
COPY
                    curl -X PATCH -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{}'