Validate Domain Creation Spec

Validate Domain Creation Spec

Perform validation of the DomainCreationSpec specification

Request
URI
POST
https://{api_host}/v1/domains/validations
COPY
Query Parameters
boolean
hostsOnly
Optional
Constraints: default: false

Validate hosts only

boolean
skipHostSwitchValidation
Optional
Constraints: default: false

Skips host switch validation when hostOnly=true


Request Body
DomainCreationSpec of type(s) application/json
Required

Show optional properties

{
    "vcenterSpec": {
        "networkDetailsSpec": {
            "dnsName": "string"
        }
    },
    "computeSpec": {
        "clusterSpecs": [
            {
                "hostSpecs": [
                    {
                        "id": "string"
                    }
                ],
                "datastoreSpec": {},
                "networkSpec": {}
            }
        ]
    }
}
{
    "domainName": "string",
    "orgName": "string",
    "vcenterSpec": {
        "name": "string",
        "networkDetailsSpec": {
            "ipAddress": "string",
            "dnsName": "string",
            "gateway": "string",
            "subnetMask": "string"
        },
        "rootPassword": "string",
        "datacenterName": "string",
        "vmSize": "One among:xlarge, large, medium, small, tiny",
        "storageSize": "One among:lstorage, xlstorage"
    },
    "computeSpec": {
        "clusterSpecs": [
            {
                "name": "string",
                "clusterImageId": "string",
                "vxRailDetails": {
                    "rootCredentials": {
                        "credentialType": "One among: SSH",
                        "username": "string",
                        "password": "string"
                    },
                    "adminCredentials": {
                        "credentialType": "One among: SSH",
                        "username": "string",
                        "password": "string"
                    },
                    "sshThumbprint": "string",
                    "sslThumbprint": "string",
                    "networks": [
                        {
                            "id": "string",
                            "type": "VSAN, VMOTION, VXLAN, NFS, ISCSI, VSAN_EXTERNAL",
                            "vlanId": 0,
                            "mtu": 0,
                            "subnet": "string",
                            "mask": "string",
                            "gateway": "string",
                            "ipPools": [
                                {
                                    "start": "string",
                                    "end": "string"
                                }
                            ],
                            "freeIps": [
                                "string"
                            ],
                            "usedIps": [
                                "string"
                            ]
                        }
                    ],
                    "ipAddress": "string",
                    "dnsName": "string",
                    "nicProfile": "string",
                    "contextWithKeyValuePair": {
                        "contextWithKeyValuePair": [
                            {
                                "attributeName": "string",
                                "datatype": "string",
                                "value": "string"
                            }
                        ]
                    },
                    "arrayContextWithKeyValuePair": {
                        "arrayContextWithKeyValuePair": [
                            {
                                "arrayAssociationContext": {
                                    "parent": "VxRailArrayAssociationContext Object",
                                    "arrayAttributeIdsKeyValue": {
                                        "arrayAttributeIdsKeyValue": "string"
                                    }
                                },
                                "simpleAttributes": [
                                    {
                                        "attributeName": "string",
                                        "datatype": "string",
                                        "value": "string"
                                    }
                                ]
                            }
                        ]
                    }
                },
                "hostSpecs": [
                    {
                        "id": "string",
                        "licenseKey": "string",
                        "ipAddress": "string",
                        "hostName": "string",
                        "username": "string",
                        "password": "string",
                        "hostNetworkSpec": {
                            "vmNics": [
                                {
                                    "id": "string",
                                    "vdsName": "string",
                                    "moveToNvds": false,
                                    "uplink": "string"
                                }
                            ],
                            "networkProfileName": "string"
                        },
                        "azName": "string",
                        "sshThumbprint": "string",
                        "serialNumber": "string"
                    }
                ],
                "datastoreSpec": {
                    "vsanDatastoreSpec": {
                        "datastoreName": "string",
                        "failuresToTolerate": 0,
                        "licenseKey": "string",
                        "dedupAndCompressionEnabled": false,
                        "esaConfig": {
                            "enabled": false,
                            "vsanMaxConfig": {
                                "enableVsanMax": false
                            }
                        }
                    },
                    "nfsDatastoreSpecs": [
                        {
                            "datastoreName": "string",
                            "nasVolume": {
                                "serverName": [
                                    "string"
                                ],
                                "path": "string",
                                "readOnly": false,
                                "userTag": "string"
                            }
                        }
                    ],
                    "vmfsDatastoreSpec": {
                        "fcSpec": [
                            {
                                "datastoreName": "string"
                            }
                        ]
                    },
                    "vvolDatastoreSpecs": [
                        {
                            "name": "string",
                            "vasaProviderSpec": {
                                "vasaProviderId": "string",
                                "storageContainerId": "string",
                                "storageProtocolType": "One among: ISCSI, NFS, FC",
                                "userId": "string"
                            }
                        }
                    ],
                    "vsanRemoteDatastoreClusterSpec": {
                        "vsanRemoteDatastoreSpec": [
                            {
                                "datastoreUuid": "string"
                            }
                        ]
                    }
                },
                "networkSpec": {
                    "vdsSpecs": [
                        {
                            "name": "string",
                            "isUsedByNsxt": false,
                            "nsxtSwitchConfig": {
                                "transportZones": [
                                    {
                                        "name": "string",
                                        "transportType": "One among: VLAN, OVERLAY"
                                    }
                                ],
                                "hostSwitchOperationalMode": "One among: STANDARD, ENS, ENS_INTERRUPT"
                            },
                            "portGroupSpecs": [
                                {
                                    "name": "string",
                                    "transportType": "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS, VREALIZE, ISCSI, EDGE_INFRA_OVERLAY_UPLINK, VM_MANAGEMENT, VSAN_EXTERNAL",
                                    "activeUplinks": [
                                        "string"
                                    ],
                                    "standByUplinks": [
                                        "string"
                                    ],
                                    "teamingPolicy": "One among:loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, failover_explicit, loadbalance_loadbased"
                                }
                            ],
                            "niocBandwidthAllocationSpecs": [
                                {
                                    "type": "string",
                                    "niocTrafficResourceAllocation": {
                                        "limit": 0,
                                        "sharesInfo": {
                                            "shares": 0,
                                            "level": "One among: low, normal, high, custom"
                                        },
                                        "reservation": 0
                                    }
                                }
                            ],
                            "mtu": 0
                        }
                    ],
                    "nsxClusterSpec": {
                        "nsxTClusterSpec": {
                            "geneveVlanId": 0,
                            "ipAddressPoolSpec": {
                                "name": "string",
                                "description": "string",
                                "ignoreUnavailableNsxtCluster": false,
                                "subnets": [
                                    {
                                        "ipAddressPoolRanges": [
                                            {
                                                "start": "string",
                                                "end": "string"
                                            }
                                        ],
                                        "cidr": "string",
                                        "gateway": "string"
                                    }
                                ]
                            },
                            "ipAddressPoolsSpec": [
                                {
                                    "name": "string",
                                    "description": "string",
                                    "ignoreUnavailableNsxtCluster": false,
                                    "subnets": [
                                        {
                                            "ipAddressPoolRanges": [
                                                {
                                                    "start": "string",
                                                    "end": "string"
                                                }
                                            ],
                                            "cidr": "string",
                                            "gateway": "string"
                                        }
                                    ]
                                }
                            ],
                            "uplinkProfiles": [
                                {
                                    "name": "string",
                                    "teamings": [
                                        {
                                            "policy": "One among: FAILOVER_ORDER, LOADBALANCE_SRCID, LOADBALANCE_SRC_MAC",
                                            "activeUplinks": [
                                                "string"
                                            ],
                                            "standByUplinks": [
                                                "string"
                                            ]
                                        }
                                    ],
                                    "transportVlan": 0,
                                    "supportedTeamingPolicies": {
                                        "supportedTeamingPolicies": "string"
                                    }
                                }
                            ]
                        }
                    },
                    "networkProfiles": [
                        {
                            "name": "string",
                            "description": "string",
                            "isDefault": false,
                            "nsxtHostSwitchConfigs": [
                                {
                                    "vdsName": "string",
                                    "uplinkProfileName": "string",
                                    "ipAddressPoolName": "string",
                                    "vdsUplinkToNsxUplink": [
                                        {
                                            "vdsUplinkName": "string",
                                            "nsxUplinkName": "string"
                                        }
                                    ]
                                }
                            ]
                        }
                    ]
                },
                "advancedOptions": {
                    "evcMode": "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, INTEL_CASCADELAKE, INTEL_ICELAKE, INTEL_SAPPHIRERAPIDS, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN, AMD_ZEN2, AMD_ZEN3, AMD_ZEN4",
                    "highAvailability": {
                        "enabled": false
                    }
                },
                "skipThumbprintValidation": false
            }
        ],
        "skipFailedHosts": false
    },
    "nsxTSpec": {
        "nsxManagerSpecs": [
            {
                "name": "string",
                "networkDetailsSpec": {
                    "ipAddress": "string",
                    "dnsName": "string",
                    "gateway": "string",
                    "subnetMask": "string"
                }
            }
        ],
        "vip": "string",
        "vipFqdn": "string",
        "licenseKey": "string",
        "nsxManagerAdminPassword": "string",
        "nsxManagerAuditPassword": "string",
        "formFactor": "string",
        "ipAddressPoolSpec": {
            "name": "string",
            "description": "string",
            "ignoreUnavailableNsxtCluster": false,
            "subnets": [
                {
                    "ipAddressPoolRanges": [
                        {
                            "start": "string",
                            "end": "string"
                        }
                    ],
                    "cidr": "string",
                    "gateway": "string"
                }
            ]
        }
    },
    "ssoDomainSpec": {
        "ssoDomainPassword": "string",
        "ssoDomainName": "string"
    },
    "securitySpec": {
        "esxiCertsMode": "VMCA",
        "rootCaCerts": [
            {
                "alias": "string",
                "certChain": [
                    "string"
                ]
            }
        ]
    },
    "deployWithoutLicenseKeys": false
}
string As ^[a-zA-Z0-9-]+$
domainName
Optional
Constraints: minLength: 3 maxLength: 20

Name of the workload domain

string As ^[a-zA-Z0-9-]+$
orgName
Optional
Constraints: minLength: 3 maxLength: 20

Organization name of the workload domain

object
vcenterSpec
Required

This specification contains the installation and configuration of vCenter in a workload domain

object
computeSpec
Required

This specification contains the parameters required to add each cluster to a workload domain

object
nsxTSpec
Optional

This specification contains the parameters required to install and configure NSX in a workload domain

object
ssoDomainSpec
Optional

Spec for the SSO configuration in a VMware Cloud Foundation Domain

object
securitySpec
Optional

Spec contains security settings

boolean
deployWithoutLicenseKeys
Optional

Flag that indicates if the deployment should happen without license keys

Responses
200

Ok

Returns Validation of type(s) application/json
"Validation Object"
string
id
Required

ID of the validation

string
description
Required

Description of the validation

string
executionStatus
Required

Execution status of the validation. One among: IN_PROGRESS, FAILED, COMPLETED, UNKNOWN, SKIPPED, CANCELLED, CANCELLATION_IN_PROGRESS

string
resultStatus
Required

Result status of the validation after it has completed its execution. One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS, UNKNOWN, CANCELLATION_IN_PROGRESS

array of object
validationChecks
Optional

List of one or more validation checks that are performed as part of the validation

object
additionalProperties
Optional

additionalProperties


400

Bad Request

Returns Error of type(s) application/json
"Error Object"
string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

array of string
arguments
Optional

The arguments used to localize the message, Can be used by scripts to automate the error processing.

object
context
Optional

The error context (e.g. the component where it occurred).

string
message
Optional

The localized error message

string
remediationMessage
Optional

The localized remediation error message

array of object
causes
Optional

The underlying cause exceptions.

array of Error
nestedErrors
Optional

The nested errors when the error is a composite one

string
referenceToken
Optional

A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues.


500

InternalServerError

Returns Error of type(s) application/json
"Error Object"
string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

array of string
arguments
Optional

The arguments used to localize the message, Can be used by scripts to automate the error processing.

object
context
Optional

The error context (e.g. the component where it occurred).

string
message
Optional

The localized error message

string
remediationMessage
Optional

The localized remediation error message

array of object
causes
Optional

The underlying cause exceptions.

array of Error
nestedErrors
Optional

The nested errors when the error is a composite one

string
referenceToken
Optional

A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues.


Code Samples
COPY
                    curl -X POST -H 'Authorization: <value>' -H 'Content-Type: application/json' -d '{"computeSpec:"object","vcenterSpec:"object"}' https://{api_host}/v1/domains/validations