Validate Sddc Spec

Validate Sddc Spec

SDDC specification incorporates all the client inputs regarding VMW component parameters constituting the SDDC: NTP, DNS spec, ESXi, VC, VSAN, NSX spec et al.

Request
URI
POST
https://sfo-vcf01.rainpole.io/v1/sddcs/validations
COPY
Query Parameters
boolean
redo
Optional

redo

string
name
Optional

Validation name Deprecated: ESXI_VERSION_VALIDATION

Possible values are : JSON_SPEC_VALIDATION, SECURE_PLATFORM_AUDIT, LICENSE_KEY_VALIDATION, TIME_SYNC_VALIDATION, NETWORK_IP_POOLS_VALIDATION, NETWORK_CONFIG_VALIDATION, NETWORK_CONNECTIVITY_VALIDATION, ESXI_HOST_READINESS_VALIDATION, PASSWORDS_VALIDATION, HOST_IP_DNS_VALIDATION, CLOUDBUILDER_READY_VALIDATION, VSAN_AVAILABILITY_VALIDATION, NSXT_NETWORKS_VALIDATION, MANAGEMENT_NETWORKS_VALIDATION,

Request Body
SddcSpec of type(s) application/json
Optional

Show optional properties

{
    "clusterSpec": {
        "clusterName": "string"
    },
    "dnsSpec": {
        "domain": "vmware.com",
        "subdomain": "vcf.vmware.com"
    },
    "dvsSpecs": [
        {
            "dvsName": "string",
            "networks": [
                {}
            ],
            "vmnics": [
                {}
            ]
        }
    ],
    "hostSpecs": [
        {
            "association": "string",
            "credentials": {
                "password": "string",
                "username": "root"
            },
            "hostname": "esx-1",
            "ipAddressPrivate": {
                "ipAddress": "192.168.0.123"
            },
            "vSwitch": "string"
        }
    ],
    "networkSpecs": [
        {
            "networkType": "One among: VSAN, VMOTION, MANAGEMENT, VM_MANAGEMENT or any custom network type",
            "vlanId": "string"
        }
    ],
    "ntpServers": [
        {}
    ],
    "sddcId": "sfo01-m01",
    "taskName": "workflowconfig/workflowspec-ems.json",
    "vcenterSpec": {
        "rootVcenterPassword": "string",
        "vcenterHostname": "string"
    }
}
{
    "ceipEnabled": "true",
    "certificatesPassphrase": "string",
    "clusterSpec": {
        "clusterEvcMode": "string",
        "clusterName": "string",
        "hostFailuresToTolerate": 0,
        "hostProfileComplianceCheckHour": 0,
        "hostProfileComplianceCheckMinute": 0,
        "hosts": [
            "string"
        ],
        "personalityName": "string",
        "resourcePoolSpecs": [
            {
                "cpuLimit": 0,
                "cpuReservationExpandable": false,
                "cpuReservationMhz": 0,
                "cpuReservationPercentage": 0,
                "cpuSharesLevel": "string",
                "cpuSharesValue": 0,
                "memoryLimit": 0,
                "memoryReservationExpandable": false,
                "memoryReservationMb": 0,
                "memoryReservationPercentage": 0,
                "memorySharesLevel": "string",
                "memorySharesValue": 0,
                "name": "string",
                "type": "string"
            }
        ],
        "vmFolders": {
            "vmFolders": "string"
        }
    },
    "dnsSpec": {
        "domain": "vmware.com",
        "nameserver": "172.0.0.4",
        "secondaryNameserver": "172.0.0.5",
        "subdomain": "vcf.vmware.com"
    },
    "dvSwitchVersion": "One among:7.0.0, 7.0.2, 7.0.3",
    "dvsSpecs": [
        {
            "dvsName": "string",
            "isUsedByNsxt": false,
            "mtu": 0,
            "networks": [
                "string"
            ],
            "niocSpecs": [
                {
                    "trafficType": "One among:VSAN, VMOTION, VIRTUALMACHINE, MANAGEMENT, NFS, VDP, HBR, FAULTTOLERANCE, ISCSI",
                    "value": "string"
                }
            ],
            "vmnics": [
                "string"
            ]
        }
    ],
    "esxLicense": "string",
    "excludedComponents": [
        "string"
    ],
    "fipsEnabled": "true",
    "hostSpecs": [
        {
            "association": "string",
            "credentials": {
                "password": "string",
                "username": "root"
            },
            "hostname": "esx-1",
            "ipAddressPrivate": {
                "cidr": "172.0.0.0/24",
                "gateway": "192.168.0.1",
                "ipAddress": "192.168.0.123",
                "subnet": "255.255.255.252"
            },
            "key": "string",
            "serverId": "string",
            "sshThumbprint": "string",
            "sslThumbprint": "string",
            "vSwitch": "string",
            "vmknicSpecs": [
                {
                    "ipAddress": "string",
                    "macAddress": "string",
                    "portgroup": "One among:VSAN, VMOTION, MANAGEMENT"
                }
            ],
            "vswitch": "string"
        }
    ],
    "managementPoolName": "string",
    "networkSpecs": [
        {
            "activeUplinks": [
                "string"
            ],
            "excludeIpAddressRanges": [
                "string"
            ],
            "excludeIpaddresses": [
                "string"
            ],
            "gateway": "string",
            "includeIpAddress": [
                "string"
            ],
            "includeIpAddressRanges": [
                {
                    "endIpAddress": "192.168.0.128",
                    "startIpAddress": "192.168.0.123"
                }
            ],
            "mtu": "string",
            "networkType": "One among: VSAN, VMOTION, MANAGEMENT, VM_MANAGEMENT or any custom network type",
            "portGroupKey": "string",
            "standbyUplinks": [
                "string"
            ],
            "subnet": "string",
            "subnetMask": "string",
            "teamingPolicy": "One among:loadbalance_ip, loadbalance_srcmac, loadbalance_srcid, failover_explicit, loadbalance_loadbased",
            "vlanId": "string"
        }
    ],
    "nsxtSpec": {
        "ipAddressPoolSpec": {
            "description": "string",
            "ignoreUnavailableNsxtCluster": false,
            "name": "string",
            "subnets": [
                {
                    "cidr": "string",
                    "gateway": "string",
                    "ipAddressPoolRanges": [
                        {
                            "end": "string",
                            "start": "string"
                        }
                    ]
                }
            ]
        },
        "nsxtAdminPassword": "string",
        "nsxtAuditPassword": "string",
        "nsxtLicense": "string",
        "nsxtManagerSize": "One among:medium, large",
        "nsxtManagers": [
            {
                "hostname": "string",
                "ip": "string"
            }
        ],
        "overLayTransportZone": {
            "networkName": "string",
            "zoneName": "string"
        },
        "rootLoginEnabledForNsxtManager": false,
        "rootNsxtManagerPassword": "string",
        "sshEnabledForNsxtManager": false,
        "transportVlanId": 0,
        "vip": "string",
        "vipFqdn": "string",
        "vlanTransportZone": {
            "networkName": "string",
            "zoneName": "string"
        }
    },
    "ntpServers": [
        "string"
    ],
    "pscSpecs": [
        {
            "adminUserSsoPassword": "string",
            "pscId": "string",
            "pscSsoSpec": {
                "ssoDomain": "string"
            }
        }
    ],
    "remoteSiteSpec": {
        "pscAddress": "string",
        "sslThumbprint": "string",
        "vcCredentials": {
            "password": "string",
            "username": "root"
        }
    },
    "sddcId": "sfo01-m01",
    "sddcManagerSpec": {
        "hostname": "string",
        "ipAddress": "string",
        "licenseKey": "string",
        "localUserPassword": "string",
        "netmask": "string",
        "rootUserCredentials": {
            "password": "string",
            "username": "root"
        },
        "secondUserCredentials": {
            "password": "string",
            "username": "root"
        }
    },
    "securitySpec": {
        "esxiCertsMode": "One among:Custom, VMCA",
        "rootCaCerts": [
            {
                "alias": "string",
                "certChain": [
                    "string"
                ]
            }
        ]
    },
    "shouldCleanupVsan": "false",
    "skipEsxThumbprintValidation": false,
    "skipGatewayPingValidation": false,
    "taskName": "workflowconfig/workflowspec-ems.json",
    "vcenterSpec": {
        "licenseFile": "string",
        "rootVcenterPassword": "string",
        "sshThumbprint": "string",
        "sslThumbprint": "string",
        "storageSize": "One among:lstorage, xlstorage",
        "vcenterHostname": "string",
        "vcenterIp": "string",
        "vcenterNetmask": "string",
        "vmSize": "One among:xlarge, large, medium, small, tiny"
    },
    "vsanSpec": {
        "datastoreName": "string",
        "hclFile": "string",
        "licenseFile": "string",
        "vsanDedup": false,
        "vsanName": "string"
    },
    "vxManagerSpec": {
        "defaultAdminUserCredentials": {
            "password": "string",
            "username": "root"
        },
        "defaultRootUserCredentials": {
            "password": "string",
            "username": "root"
        },
        "sshThumbprint": "string",
        "sslThumbprint": "string",
        "vxManagerHostName": "string"
    }
}
boolean
ceipEnabled
Optional

Enable VCF Customer Experience Improvement Program

string
certificatesPassphrase
Optional

Passphrase for the vCenter / NSX certificates

clusterSpec
Required

Spec contains parameters for vCenter Cluster

dnsSpec
Required

Spec contains parameters of Domain Name System

string
dvSwitchVersion
Optional

The version of the distributed virtual switches to be used

array of DvsSpec
dvsSpecs
Required

List of Dvs Specs

string
esxLicense
Optional

License for the ESXi hosts

array of string
excludedComponents
Optional

Components to be excluded

boolean
fipsEnabled
Optional

Enable Federal Information Processing Standards

hostSpecs
Required

List of Host Specs

string
managementPoolName
Optional

A String identifying the network pool associated with the management domain

networkSpecs
Required

List of Network Specs

nsxtSpec
Optional

Spec contains parameters for NSX-T deployment and configurations

array of string
ntpServers
Required

List of NTP servers

array of PscSpec
pscSpecs
Optional

PSC VM spec

remoteSiteSpec
Optional

Spec contains parameters for Remote site products

string
sddcId
Required

Client string that identifies an SDDC by name or instance name. Used for management domain name. Can contain only letters, numbers and the following symbols: '-'.

sddcManagerSpec
Optional

Client input parameters for SDDC Manager Virtual Machine

securitySpec
Optional

Spec contains security settings

boolean
shouldCleanupVsan
Optional

Flag indicating whether cleanup vSAN should be ran

boolean
skipEsxThumbprintValidation
Optional

Skip ESXi thumbprint validation

boolean
skipGatewayPingValidation
Optional

Skip VSAN / VMOTION networks gateway connectivity validation

string
taskName
Required

Name of the task to execute

vcenterSpec
Required

Spec contains parameters for vCenter

vsanSpec
Optional

Spec contains parameters of Virtual SAN

vxManagerSpec
Optional

Spec contains parameters for VxManager

Responses
200

Accepted

Returns Validation of type(s) application/json
{
    "additionalProperties": {
        "additionalProperties": "string"
    },
    "description": "string",
    "executionStatus": "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED, CANCELLATION_IN_PROGRESS",
    "id": "string",
    "resultStatus": "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS, CANCELLATION_IN_PROGRESS",
    "validationChecks": [
        {
            "description": "string",
            "errorResponse": {
                "arguments": [
                    "string"
                ],
                "causes": [
                    {
                        "message": "string",
                        "type": "string"
                    }
                ],
                "context": {
                    "context": "string"
                },
                "errorCode": "string",
                "errorType": "string",
                "message": "string",
                "nestedErrors": [
                    "Error Object"
                ],
                "referenceToken": "string",
                "remediationMessage": "string"
            },
            "nestedValidationChecks": [
                "ValidationCheck Object"
            ],
            "resultStatus": "One among: IN_PROGRESS, SUCCEEDED, FAILED, SKIPPED, CANCELLED, CANCELLATION_IN_PROGRESS",
            "severity": "One among: WARNING, ERROR, INFO"
        }
    ]
}
object
additionalProperties
Optional

additionalProperties

string
description
Optional

Description of the validation

string
executionStatus
Optional

Execution status of the validation

string
id
Optional

ID of the validation

string
resultStatus
Optional

Result status of the validation after it has completed its execution

validationChecks
Optional

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


202

Success

Returns Validation of type(s) application/json
{
    "additionalProperties": {
        "additionalProperties": "string"
    },
    "description": "string",
    "executionStatus": "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED, CANCELLATION_IN_PROGRESS",
    "id": "string",
    "resultStatus": "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS, CANCELLATION_IN_PROGRESS",
    "validationChecks": [
        {
            "description": "string",
            "errorResponse": {
                "arguments": [
                    "string"
                ],
                "causes": [
                    {
                        "message": "string",
                        "type": "string"
                    }
                ],
                "context": {
                    "context": "string"
                },
                "errorCode": "string",
                "errorType": "string",
                "message": "string",
                "nestedErrors": [
                    "Error Object"
                ],
                "referenceToken": "string",
                "remediationMessage": "string"
            },
            "nestedValidationChecks": [
                "ValidationCheck Object"
            ],
            "resultStatus": "One among: IN_PROGRESS, SUCCEEDED, FAILED, SKIPPED, CANCELLED, CANCELLATION_IN_PROGRESS",
            "severity": "One among: WARNING, ERROR, INFO"
        }
    ]
}
object
additionalProperties
Optional

additionalProperties

string
description
Optional

Description of the validation

string
executionStatus
Optional

Execution status of the validation

string
id
Optional

ID of the validation

string
resultStatus
Optional

Result status of the validation after it has completed its execution

validationChecks
Optional

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


403

Forbidden

Operation doesn't return any data structure

404

Not Found

Returns Error of type(s) application/json
{
    "arguments": [
        "string"
    ],
    "causes": [
        {
            "message": "string",
            "type": "string"
        }
    ],
    "context": {
        "context": "string"
    },
    "errorCode": "string",
    "errorType": "string",
    "message": "string",
    "nestedErrors": [
        "Error Object"
    ],
    "referenceToken": "string",
    "remediationMessage": "string"
}
array of string
arguments
Optional

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

array of ErrorCause
causes
Optional

The underlying cause exceptions.

object
context
Optional

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

string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

string
message
Optional

The localized error message

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.

string
remediationMessage
Optional

The localized remediation error message


500

Internal Server Error

Returns Error of type(s) application/json
{
    "arguments": [
        "string"
    ],
    "causes": [
        {
            "message": "string",
            "type": "string"
        }
    ],
    "context": {
        "context": "string"
    },
    "errorCode": "string",
    "errorType": "string",
    "message": "string",
    "nestedErrors": [
        "Error Object"
    ],
    "referenceToken": "string",
    "remediationMessage": "string"
}
array of string
arguments
Optional

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

array of ErrorCause
causes
Optional

The underlying cause exceptions.

object
context
Optional

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

string
errorCode
Optional

The minor error code

string
errorType
Optional

The error type

string
message
Optional

The localized error message

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.

string
remediationMessage
Optional

The localized remediation error message