Vcenter Guest CustomizationSpecs set

Vcenter Guest CustomizationSpecs set

Sets an existing specification, possibly after retrieving (by using GET /vcenter/guest/customization-specs/{name}) and editing it.

This operation was added in vSphere API 7.0.0.0.

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

  • Operation execution requires VirtualMachine.Provisioning.ModifyCustSpecs.
Request
URI
PUT
https://{api_host}/api/vcenter/guest/customization-specs/{name}
COPY
Path Parameters
string
name
Required

The name of the customization specification that needs to be set.

The parameter must be an identifier for the resource type: com.vmware.vcenter.guest.CustomizationSpec.


Request Body

The new specification that will overwrite the existing specification.

Vcenter Guest CustomizationSpecs Spec of type(s) application/json
Required

Show optional properties

{
    "fingerprint": "string",
    "spec": {},
    "description": "string",
    "name": "string"
}
{
    "fingerprint": "string",
    "spec": {
        "configuration_spec": {
            "windows_config": {
                "reboot": "string",
                "sysprep": {
                    "gui_run_once_commands": [
                        "string"
                    ],
                    "user_data": {
                        "computer_name": {
                            "type": "string",
                            "fixed_name": "string",
                            "prefix": "string"
                        },
                        "full_name": "string",
                        "organization": "string",
                        "product_key": "string"
                    },
                    "domain": {
                        "type": "string",
                        "workgroup": "string",
                        "domain": "string",
                        "domain_username": "string",
                        "domain_password": "string",
                        "domain_ou": "string"
                    },
                    "gui_unattended": {
                        "auto_logon": false,
                        "auto_logon_count": 0,
                        "password": "string",
                        "time_zone": 0
                    }
                },
                "sysprep_xml": "string"
            },
            "linux_config": {
                "hostname": {
                    "type": "string",
                    "fixed_name": "string",
                    "prefix": "string"
                },
                "domain": "string",
                "time_zone": "string",
                "script_text": "string",
                "compatible_customization_method": "string"
            },
            "cloud_config": {
                "type": "string",
                "cloudinit": {
                    "metadata": "string",
                    "userdata": "string"
                }
            }
        },
        "global_dns_settings": {
            "dns_suffix_list": [
                "string"
            ],
            "dns_servers": [
                "string"
            ]
        },
        "interfaces": [
            {
                "mac_address": "string",
                "adapter": {
                    "ipv4": {
                        "type": "string",
                        "ip_address": "string",
                        "prefix": 0,
                        "gateways": [
                            "string"
                        ]
                    },
                    "ipv6": {
                        "type": "string",
                        "ipv6": [
                            {
                                "ip_address": "string",
                                "prefix": 0
                            }
                        ],
                        "gateways": [
                            "string"
                        ]
                    },
                    "windows": {
                        "dns_servers": [
                            "string"
                        ],
                        "dns_domain": "string",
                        "wins_servers": [
                            "string"
                        ],
                        "net_bios_mode": "string"
                    }
                }
            }
        ]
    },
    "description": "string",
    "name": "string"
}
string
fingerprint
Required

The fingerprint is a unique identifier for a given version of the configuration. Each change to the configuration will update this value. A client cannot change this value. If specified when updating a specification, the changes will only be applied if the current fingerprint matches the specified fingerprint. This field can be used to guard against updates that has happened between the specification content was read and until it is applied.

This property was added in vSphere API 7.0.0.0.

spec
Required

The specification object.

This property was added in vSphere API 7.0.0.0.

string
description
Required

Description of the specification.

This property was added in vSphere API 7.0.0.0.

string
name
Required

Name of the specification.

This property was added in vSphere API 7.0.0.0.

Authentication
This operation uses the following authentication methods.
Responses
204

Success!

Operation doesn't return any data structure

400

If, based on the item's fingerprint value, the set process detects that the specification has changed since its retrieval, then the operation throws InvalidArgument exception to warn the client that he might overwrite another client's change.

If the settings in spec are not valid.

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

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 doesn't have the required privileges.

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 a customization specification is not found.

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"

503

if the system is unable to communicate with a service to complete the request.

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

Code Samples
COPY
                    curl -X PUT -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"description:"string","fingerprint:"string","name:"string","spec":"{}"}' https://{api_host}/api/vcenter/guest/customization-specs/{name}