1. Overview
VMware Cloud Foundation on Dell EMC VxRail API Reference Guide
1.2. License information
License : VMware Cloud Foundation
Terms of service : http://www.vmware.com/
1.3. URI scheme
Host : sddc-manager.sfo01.rainpole.local
BasePath : /
Schemes : HTTPS
1.4. Tags
-
BackupRestore : APIs for managing Backups and Restore
-
Bundles : APIs for managing Bundles
-
CEIP : APIs for managing CEIP status
-
Certificates : APIs for managing Certificates
-
Clusters : APIs for managing Clusters
-
Credentials : APIs for managing Credentials
-
DepotSettings : APIs for managing Depot Settings
-
Domains : APIs for managing Domains
-
Federation : APIs for managing Federation
-
Hosts : APIs for managing Hosts
-
License Keys : APIs for managing License Keys
-
Members : APIs for managing Members of the Federation
-
Membership Token : APIs for managing Membership Token
-
NSX-T Clusters : APIs for managing NSX-T Clusters
-
NsxTEdgeClusters : APIs for managing NSX-T Edge Clusters
-
Progress : APIs for progress of Federation Tasks
-
SddcManagers : APIs for managing SDDC Managers
-
SystemPrechecks : APIs for managing System Prechecks
-
Tasks : APIs for managing Tasks
-
Tokens : APIs for managing Access and Refresh Token
-
Upgradables : APIs for managing Upgradables
-
Upgrades : APIs for managing Upgrades
-
Users : APIs for managing Users
-
VcfServices : APIs for managing VCF Services
-
VersionAliasesForBundleComponentType : APIs for managing Version Alias Configuration
-
system : APIs for managing DNS & NTP configuration
-
vCenters : APIs for managing vCenters
-
vRSLCM : APIs for managing vRealize Suite Lifecycle Manager
1.5. API Versioning
-
API versioning is at the granularity of each resource.
-
API versioning is similar to URI versioning so that it is explicit i.e all APIs have the "/<version>/" prefix.
-
API version is independent of the product version and will evolve independently.
Tip
|
Reference APIs using the full path i.e "/v1/hosts" so that any future changes can be localized to a small scope in the automation code. This ensures that when the API version is incremented, you only need to update the references to the old APIs (which are now marked as deprecated) with the new APIs |
Note
|
|
Product Version | APIs |
---|---|
Product Version N |
|
Product Version N+1 |
|
Product Version N+2 |
|
Product Version N+3 |
|
1.6. Security
1.6.1. Overview
Cloud Builder APIs
-
All APIs are secured and need an username and password for invocation.
-
The APIs follow the Basic Authentication scheme.
-
To invoke the APIs, Cloud Builder "admin" account account and its password is required.
SDDC Manager APIs
-
All APIs are secured and need an access token for invocation.
-
The APIs follow the Bearer Authentication scheme.
-
To invoke the Restore APIs, SDDC Manager "admin" and its password is required.
-
The username and password are sent using Basic Authentication scheme.
-
Tip
|
For security reasons, you should periodically update the password of the SDDC Manager account. |
-
To use more secured APIs like Get the Credentials, Update or rotate passwords for a list of resources, Retry a failed credentials task for a given ID, the user should have the appropriate role mapped. Refer Authorization section for more details.
1.6.2. Authentication
-
An access token and a refresh token can be obtained using the Token API. Refer Create a token pair section
-
An access token has a validity of 1 hour and a refresh token has a validity of 24 hours.
-
If the access token has expired, a new access token can be obtained using the refresh token (provided the refresh token has not expired). Refer Refresh an access token section.
-
If the refresh token has expired, a new pair of access and refresh token can be obtained using the Token API . Refer Create a token pair section.
-
Refer below for various use cases of API invocation and the HTTP response code :-
API invocation | HTTP Response code |
---|---|
With a valid access token |
200 |
Without an access token |
401 |
With an expired access token |
401 |
With an access token with insufficient privileges |
403 |
With an expired or invalid refresh token |
404 |
1.6.3. Authorization
-
Every user can either have an ADMIN role or an OPERATOR role. Refer Get the Roles and Add users for information to fetch the Role ID and add users.
-
To invoke more secured APIs like Get the Credentials, Update or rotate passwords for a list of resources, Retry a failed credentials task for a given ID, the user MUST have the ADMIN role.
1.6.4. Changing the "admin" account password
Cloud Builder APIs
Note
|
Changing password of the Cloud Builder "admin" account is not supported. |
SDDC Manager APIs
You can follow the below steps to change the password for the "admin" account of the SDDC Manager.
-
SSH in to the SDDC Manager VM, login as "vcf" user.
-
Enter su to switch to the "root" user.
-
Enter the following command:
/opt/vmware/vcf/commonsvcs/scripts/auth/set-basicauth-password.sh admin <password>
-
For <password>, enter the new password to associate with the admin account.
Password requirements:
-
Length: 8-12 characters
-
Must include: mix of upper-case and lower-case letters a number a special character such as @ ! # $ % ^ or ?
-
Cannot include: * { } [ ] ( ) / \ ' " ` ~ , ; : . < >
2. Use cases
2.1. Access Token and Refresh Token
2.1.1. Create a token pair
-
SDDC Manager APIs are secured using token-based authentication.
-
As a first step before invocation of any API, an access token has to be obtained.
-
Invoking the Token API returns a token pair - access token and refresh token.
-
To invoke an API, the access token has to be passed in the Authorization header as a Bearer token.
Prerequisites
-
The following data is required :-
-
VCF Credentials
-
User created in SSO or AD domain and associated as an ADMIN or OPERATOR role in VCF
-
Username
-
Password
-
-
Note
|
For the sake of brevity, the Bearer tokens have been abbreviated in the code snippets throughout this document. |
Note
|
To create a token pair with "apiKey", refer Obtain access token for a service user section. |
Steps
-
Invoke the API with the right credentials.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tokens' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"username" : "[email protected]",
"password" : "VMware123!"
}'
HTTP Request
POST /v1/tokens HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 77
Host: sddc-manager.sfo01.rainpole.local
{
"username" : "[email protected]",
"password" : "VMware123!"
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 683
{
"accessToken" : "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxNTFlZWI5Yy1mNWNmLTQ3N2UtYTJhYS0yMzg4ZmFmYzMwNDAiLCJpYXQiOjE1ODIxMzgzMzQsInN1YiI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsImlzcyI6InZjZi1hdXRoIiwiYXVkIjoic2RkYy1zZXJ2aWNlcyIsIm5iZiI6MTU4MjEzODMzNCwiZXhwIjoxNTgyMTQxOTM0LCJ1c2VyIjoiYWRtaW5pc3RyYXRvckB2c3BoZXJlLmxvY2FsIiwibmFtZSI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsInNjb3BlIjpbIkJBQ0tVUF9DT05GSUdfUkVBRCIsIkNSRURFTlRJQUxfUkVBRCIsIlVTRVJfV1JJVEUiLCJPVEhFUl9XUklURSIsIkJBQ0tVUF9DT05GSUdfV1JJVEUiLCJPVEhFUl9SRUFEIiwiVVNFUl9SRUFEIiwiQ1JFREVOVElBTF9XUklURSJdfQ.ylzrCyo4ymTKtSv1flmUrW-b8mxjRl7T2uV3a8sWWMA",
"refreshToken" : {
"id" : "3c6b3c30-3bf2-480b-9539-8483699ab911"
}
}
2.1.2. Refresh an access token
-
Refresh token is a special type of token used to renew an access token when the access token expires.
-
A refresh token can be used any number of times to obtain an access token until it has not expired or been revoked.
Prerequisites
-
The following data is required
-
Refresh token is obtained when token pair is generated
-
Steps
-
Invoke the API by passing the refresh token.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tokens/access-token/refresh' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '"eb8d1a03-6644-4a76-b018-2c7b02c2a526"'
HTTP Request
PATCH /v1/tokens/access-token/refresh HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 38
Host: sddc-manager.sfo01.rainpole.local
"eb8d1a03-6644-4a76-b018-2c7b02c2a526"
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 583
eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxNTFlZWI5Yy1mNWNmLTQ3N2UtYTJhYS0yMzg4ZmFmYzMwNDAiLCJpYXQiOjE1ODIxMzgzMzQsInN1YiI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsImlzcyI6InZjZi1hdXRoIiwiYXVkIjoic2RkYy1zZXJ2aWNlcyIsIm5iZiI6MTU4MjEzODMzNCwiZXhwIjoxNTgyMTQxOTM0LCJ1c2VyIjoiYWRtaW5pc3RyYXRvckB2c3BoZXJlLmxvY2FsIiwibmFtZSI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsInNjb3BlIjpbIkJBQ0tVUF9DT05GSUdfUkVBRCIsIkNSRURFTlRJQUxfUkVBRCIsIlVTRVJfV1JJVEUiLCJPVEhFUl9XUklURSIsIkJBQ0tVUF9DT05GSUdfV1JJVEUiLCJPVEhFUl9SRUFEIiwiVVNFUl9SRUFEIiwiQ1JFREVOVElBTF9XUklURSJdfQ.ylzrCyo4ymTKtSv1flmUrW-b8mxjRl7T2uV3a8sWWMA
2.1.3. Revoke a refresh token
-
As refresh tokens are generally issued with validity for longer durations, there is a possibility that they maybe compromised.
-
Revoking a refresh token means that an already issued refresh token cannot be used again to refresh an access token.
Prerequisites
-
The following data is required
-
Refresh token
-
Steps
-
Invoke the API by passing the refresh token which is to be revoked.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tokens/refresh-token' -i -X DELETE \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '"eb8d1a03-6644-4a76-b018-2c7b02c2a526"'
HTTP Request
DELETE /v1/tokens/refresh-token HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 38
Host: sddc-manager.sfo01.rainpole.local
"eb8d1a03-6644-4a76-b018-2c7b02c2a526"
HTTP Response
HTTP/1.1 204 No Content
2.2. User Management
2.2.1. Add users
-
This API is used to add users.
Prerequisites
-
The following data is required
-
Name of the SSO or AD domain
-
Username
-
Type of the user. For types supported, refer to User
-
Role ID
-
Steps
-
Fetch the role ID for the role.
Tip
|
Refer to Get the Roles |
-
Invoke the API to add a user.
Note
|
For the sake of brevity, the Bearer tokens in the Authorization header has been abbreviated in the code snippets throughout this document. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/users' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '[ {
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
}, {
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
}, {
"name" : "SERVICE_USER_1",
"type" : "SERVICE",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
} ]'
HTTP Request
POST /v1/users HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 437
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
[ {
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
}, {
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
}, {
"name" : "SERVICE_USER_1",
"type" : "SERVICE",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
}
} ]
HTTP Response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 884
{
"elements" : [ {
"id" : "2f015af3-7cc4-4969-b4ce-0c1f47fa7147",
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
}, {
"id" : "9a9916e9-b76c-4027-8dd7-cd4135d53bed",
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
}, {
"id" : "97ee9d88-1c8c-4d7a-8e2c-e8700bf0f238",
"name" : "SERVICE_USER_1",
"domain" : "Nil",
"type" : "SERVICE",
"apiKey" : "18KCYp4Jr1NFJpyTssZ68YBp5vM30Wwp",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
} ]
}
2.2.2. Add a service users
-
This API is used to add service users.
Prerequisites
-
The following data is required
-
Username
-
Type of the user. The type would be SERVICE for service users. For types supported, refer to User.
-
Role ID
-
Steps
-
Fetch the role ID for the role.
Tip
|
Refer to Get the Roles |
-
Invoke the API to create a service user.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/users' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '[ {
"name" : "service_account_1",
"type" : "SERVICE",
"role" : {
"id" : "3cf33a99-af3a-4069-81eb-c3f59e878b31"
}
} ]'
HTTP Request
POST /v1/users HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 128
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
[ {
"name" : "service_account_1",
"type" : "SERVICE",
"role" : {
"id" : "3cf33a99-af3a-4069-81eb-c3f59e878b31"
}
} ]
HTTP Response
HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 337
{
"elements" : [ {
"id" : "3973ae09-aace-43e9-ab95-47ba48fc1c12",
"name" : "service_account_1",
"domain" : "Nil",
"type" : "SERVICE",
"apiKey" : "OinmaemCXdt8gzsGWGACi9cXJeXB4C5o",
"role" : {
"id" : "3cf33a99-af3a-4069-81eb-c3f59e878b31"
},
"creationTimestamp" : "2020-03-26T01:06:35.136Z"
} ]
}
-
The response of the API contains the apiKey. With the apiKey, the service user can login and obtain access token.
Obtain access token for a service user
Prerequisites
-
The following data is required
-
API key
-
Steps
-
Invoke the API with the API key to generate an access token and refresh token.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tokens' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{
"apiKey" : "6598S0SIQC04sGjEr0nIeDlZx18GYRoT"
}'
HTTP Request
POST /v1/tokens HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 51
Host: sddc-manager.sfo01.rainpole.local
{
"apiKey" : "6598S0SIQC04sGjEr0nIeDlZx18GYRoT"
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 683
{
"accessToken" : "eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxNTFlZWI5Yy1mNWNmLTQ3N2UtYTJhYS0yMzg4ZmFmYzMwNDAiLCJpYXQiOjE1ODIxMzgzMzQsInN1YiI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsImlzcyI6InZjZi1hdXRoIiwiYXVkIjoic2RkYy1zZXJ2aWNlcyIsIm5iZiI6MTU4MjEzODMzNCwiZXhwIjoxNTgyMTQxOTM0LCJ1c2VyIjoiYWRtaW5pc3RyYXRvckB2c3BoZXJlLmxvY2FsIiwibmFtZSI6ImFkbWluaXN0cmF0b3JAdnNwaGVyZS5sb2NhbCIsInNjb3BlIjpbIkJBQ0tVUF9DT05GSUdfUkVBRCIsIkNSRURFTlRJQUxfUkVBRCIsIlVTRVJfV1JJVEUiLCJPVEhFUl9XUklURSIsIkJBQ0tVUF9DT05GSUdfV1JJVEUiLCJPVEhFUl9SRUFEIiwiVVNFUl9SRUFEIiwiQ1JFREVOVElBTF9XUklURSJdfQ.ylzrCyo4ymTKtSv1flmUrW-b8mxjRl7T2uV3a8sWWMA",
"refreshToken" : {
"id" : "3c6b3c30-3bf2-480b-9539-8483699ab911"
}
}
2.2.3. Get the Users
-
This API is used to get all the users listed in the system.
-
This also gives other details associated with the user like domain, type of user and the role id.
Steps
-
Invoke the API to fetch all users.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/users' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/users HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 884
{
"elements" : [ {
"id" : "2f015af3-7cc4-4969-b4ce-0c1f47fa7147",
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
}, {
"id" : "9a9916e9-b76c-4027-8dd7-cd4135d53bed",
"name" : "[email protected]",
"domain" : "vsphere.local",
"type" : "USER",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
}, {
"id" : "97ee9d88-1c8c-4d7a-8e2c-e8700bf0f238",
"name" : "SERVICE_USER_1",
"domain" : "Nil",
"type" : "SERVICE",
"apiKey" : "18KCYp4Jr1NFJpyTssZ68YBp5vM30Wwp",
"role" : {
"id" : "ca968735-40d3-4853-affd-548b442947c0"
},
"creationTimestamp" : "2020-03-26T01:06:37.008Z"
} ]
}
2.2.4. Delete an User
-
This API is used to delete an user.
Prerequisites
-
The following data is required
-
User ID
-
Steps
-
Invoke the API with the "user ID" to be deleted.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/users/2f015af3-7cc4-4969-b4ce-0c1f47fa7147' -i -X DELETE \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/users/2f015af3-7cc4-4969-b4ce-0c1f47fa7147 HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 204 No Content
2.2.5. Get the Roles
-
This API is used to fetch all the roles supported by VCF.
-
Currently there are two roles that are supported - ADMIN and OPERATOR.
Prerequisites
None
Steps
-
Invoke the API to fetch the roles and role IDs
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/roles' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/roles HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 251
{
"elements" : [ {
"id" : "46e2795b-18f5-4ff0-9356-5c09d91e92e9",
"name" : "ADMIN",
"description" : "Administrator"
}, {
"id" : "a04b2c65-e4d7-4a5c-a32d-46e73d67ca4f",
"name" : "OPERATOR",
"description" : "Operator"
} ]
}
2.2.6. Get SSO Domain
-
This API is used to fetch the SSO domains known to the system.
Prerequisites
-
None
Steps
-
Invoke the API by specifying the "SSO domain name".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sso-domains' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/sso-domains HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 38
{
"elements" : [ "vsphere.local" ]
}
2.2.7. Get SSO Domain entities
-
This API is used to fetch all domain entities in a particular domain known to the system.
-
This includes users and subdomains.
Prerequisites
-
The following data is required
-
SSO Domain name
-
Steps
-
Invoke the API by specifying the "SSO domain name".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sso-domains/vsphere.local/entities' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/sso-domains/vsphere.local/entities HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 697
{
"elements" : [ {
"id" : "[email protected]",
"name" : "USER_1",
"type" : "USER"
}, {
"id" : "[email protected]",
"name" : "USER_2",
"type" : "USER"
}, {
"id" : "[email protected]",
"name" : "USER_3",
"type" : "USER"
}, {
"id" : "[email protected]",
"name" : "USER_4",
"type" : "USER"
}, {
"id" : "vsphere.local\\\\group_1",
"name" : "",
"type" : "GROUP"
}, {
"id" : "vsphere.local\\\\group_2",
"name" : "",
"type" : "GROUP"
}, {
"id" : "vsphere.local\\\\group_3",
"name" : "",
"type" : "GROUP"
}, {
"id" : "vsphere.local\\\\group_4",
"name" : "",
"type" : "GROUP"
} ]
}
2.3. Customer Experience Improvement Program
2.3.1. Get CEIP Status
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ceip' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/ceip HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 83
{
"status" : "ENABLED",
"instanceId" : "3f39d4a1-78d2-11e8-af85-f1cf26258cdc"
}
2.3.2. Update CEIP Status
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ceip' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"status" : "ENABLE"
}'
HTTP Request
PATCH /v1/system/ceip HTTP/1.1
Content-Type: application/json
Content-Length: 25
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"status" : "ENABLE"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/3f39d4a1-78d2-11e8-af85-f1cf26258cdc
Content-Length: 79
{
"id" : "3f39d4a1-78d2-11e8-af85-f1cf26258cdc",
"status" : "IN_PROGRESS"
}
-
Track the task status using the "id" from the previous response. The GET URL is set in the header response and can be used directly. Refer to: Get a Task.
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
Tip
|
To retry task refer to: Retry a Task. |
2.4. Tasks
2.4.1. Get the Tasks
Prerequisites
None
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tasks' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/tasks HTTP/1.1
Content-Type: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1886
{
"elements" : [ {
"id" : "6e4ae58d-ba62-437e-b331-c1de92945969",
"name" : "Commissioning host(s) esxi-5.vrack.vsphere.local to VMware Cloud Foundation",
"status" : "Failed",
"creationTimestamp" : "2019-06-20T12:03:18.890Z",
"subTasks" : [ {
"name" : "HostVibValidationAction",
"description" : "Validate the hosts for any disallowed VIBS",
"status" : "SUCCESSFUL",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
}, {
"name" : "HostMaintenanceModeValidationAction",
"description" : "Verifies that none of the hosts are in maintenance mode",
"status" : "FAILED",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
}, {
"name" : "FetchDnsAndNtpAction",
"description" : "Fetches DNS \\u0026 NTP IPs",
"status" : "PENDING",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
} ],
"errors" : [ {
"errorCode" : "COMMISION_HOST_FAILED",
"message" : "Failed to Commissioning host(s) esxi-5.vrack.vsphere.local to VMware Cloud Foundation"
} ],
"resources" : [ {
"resourceId" : "5f9e0fbe-f933-483e-b51e-43557a383f89",
"type" : "HOST"
} ],
"resolutionStatus" : "UNRESOLVED",
"isCancellable" : false
}, {
"id" : "e47d04b6-b699-4cdd-9360-c269a4a6ddad",
"name" : "Credentials rotate operation",
"status" : "Successful",
"creationTimestamp" : "2019-06-20T12:03:18.890Z",
"subTasks" : [ {
"name" : "sddc-manager.vrack.vsphere.local:FTP",
"description" : "Password rotate for sddc-manager.vrack.vsphere.local and credential type FTP",
"status" : "SUCCESSFUL",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
} ],
"resources" : [ {
"resourceId" : "ddad972e-efaa-4415-b43e-0c53adcf6588",
"type" : "HOST"
} ],
"resolutionStatus" : "UNRESOLVED",
"isCancellable" : false
} ]
}
2.4.2. Get a Task
Prerequisites
-
The following data is required
-
ID of the task
-
Steps
-
Invoke the API by providing the ID of the task as input.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tasks/ea221fbb-525d-46d4-be40-558230155307' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/tasks/ea221fbb-525d-46d4-be40-558230155307 HTTP/1.1
Content-Type: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 942
{
"id" : "ea221fbb-525d-46d4-be40-558230155307",
"name" : "Vi workload Domain Creation",
"status" : "FAILED",
"creationTimestamp" : "1970-01-19T08:19:44.721Z",
"subTasks" : [ {
"name" : "HostVibValidationAction",
"description" : "Validate the hosts for any disallowed VIBS",
"status" : "SUCCESSFUL",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
}, {
"name" : "HostMaintenanceModeValidationAction",
"description" : "Verifies that none of the hosts are in maintenance mode",
"status" : "FAILED",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
}, {
"name" : "FetchDnsAndNtpAction",
"description" : "Fetches DNS \\u0026 NTP IPs",
"status" : "PENDING",
"creationTimestamp" : "2019-06-20T12:03:18.890Z"
} ],
"resources" : [ {
"resourceId" : "344a0551-80bc-45a9-9e9d-22b32af7b0ce",
"type" : "HOST"
} ],
"resolutionStatus" : "UNRESOLVED",
"isCancellable" : false
}
2.4.3. Retry a Task
Used to retry a failed task/workflow.
Prerequisites
-
The following data is required
-
ID of the failed task
-
Steps
-
Invoke the API by providing the ID of the task as input.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/tasks/3c731cd4-125f-485e-a591-f3f9adfa7d98' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
PATCH /v1/tasks/3c731cd4-125f-485e-a591-f3f9adfa7d98 HTTP/1.1
Content-Type: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Note
|
The credentials' update/rotate password tasks cannot be retried using this API. Refer to Retry a failed credentials task for a given ID section. |
2.5. Hosts
2.5.1. Get the Hosts
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 4149
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
}, {
"id" : "8045e44e-974e-4f43-9862-7f0326782638",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx02.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.101",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"status" : "ASSIGNED",
"hybrid" : true
}, {
"id" : "8045e44e-974e-4f43-9862-7f0326782638",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx03.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.102",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"status" : "ASSIGNED",
"hybrid" : true
} ]
}
Get ASSIGNED Hosts
This API can be used to fetch all the hosts that are currently assigned to any domain and hence cannot be used for other domain tasks
Steps
-
Invoke the API by specifying the "status" as "ASSIGNED".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts?status=ASSIGNED' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts?status=ASSIGNED HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
} ]
}
Get Hosts by Domain
This API can be used to fetch all the hosts that are currently assigned to a given domain.
Steps
-
Invoke the API by specifying the "domainId".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts?domainId=377236f7-4965-4179-895e-eeb4eb9a6ad1' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts?domainId=377236f7-4965-4179-895e-eeb4eb9a6ad1 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
} ]
}
Get Hosts by Cluster
This API can be used to fetch all the hosts that are currently assigned to a given cluster.
Steps
-
Invoke the API by specifying the "clusterId".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts?clusterId=4205afdd-94f5-403e-a051-1a9bba09ef40' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts?clusterId=4205afdd-94f5-403e-a051-1a9bba09ef40 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
} ]
}
Get Hosts by Storage Type
This API can be used to fetch all the hosts that are currently configured with the given storage type.
Note
|
Supported storage type is "VSAN". |
Steps
-
Invoke the API by specifying the "storageType".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts?storageType=VSAN' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts?storageType=VSAN HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
} ]
}
Get Hosts by Datastore Name
This API can be used to fetch all the hosts that are currently configured with the given datastore.
Steps
-
Invoke the API by specifying the "datastoreName".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts?datastoreName=datastore1' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts?datastoreName=datastore1 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1525
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
} ]
}
2.5.2. Get a Host
Prerequisites
-
The following data is required
-
ID of the host
-
Steps
-
Invoke the API by providing the ID of the host as input.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/hosts/c0703437-6746-470b-9e1c-f9d3bbc9b1c1' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/hosts/c0703437-6746-470b-9e1c-f9d3bbc9b1c1 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1392
{
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"esxiVersion" : "7.0.0-13006603",
"fqdn" : "esfo01m01esx01.sfo01.rainpole.local",
"hardwareVendor" : "VMware, Inc.",
"hardwareModel" : "VMware Virtual Platform",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"cpu" : {
"frequencyMHz" : 4994.0,
"usedFrequencyMHz" : 0.0,
"cores" : 2,
"cpuCores" : [ {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
}, {
"frequencyMHz" : 2497.0,
"model" : "Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz",
"manufacturer" : "Intel"
} ]
},
"memory" : {
"totalCapacityMB" : 79999.0,
"usedCapacityMB" : 0.0
},
"storage" : {
"totalCapacityMB" : 781250.0,
"usedCapacityMB" : 0.0,
"disks" : [ {
"capacityMB" : 390625.0,
"diskType" : "HDD"
}, {
"capacityMB" : 390625.0,
"diskType" : "FLASH"
} ]
},
"physicalNics" : [ {
"deviceName" : "vmnic0",
"macAddress" : "02:00:1b:31:93:d2"
}, {
"deviceName" : "vmnic1",
"macAddress" : "02:00:1b:31:93:d3"
} ],
"domain" : {
"id" : "377236f7-4965-4179-895e-eeb4eb9a6ad1"
},
"cluster" : {
"id" : "4205afdd-94f5-403e-a051-1a9bba09ef40"
},
"status" : "ASSIGNED",
"compatibleStorageType" : "VSAN",
"hybrid" : false
}
2.5.3. Get the unmanaged hosts based on a Criterion
This API is used to get the unmanaged hosts from vCenter that meets a specific criterion.
Prerequisites
-
The cluster in a domain to which hosts are to be added must exist.
-
There must be a host already added to the cluster VCenter.
Get the unmanaged hosts from vCenter based on a criterion
Steps
-
Get the ID of the cluster to which hosts are going to be added
-
TIP: Get the Clusters
-
Filter the response by cluster name and get the respective ID
-
-
Invoke the Get Hosts Criteria API to list all the criteria supported.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/criteria' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/criteria HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 160
{
"elements" : [ {
"name" : "UNMANAGED_HOSTS_IN_VCENTER",
"description" : "All unmanaged hosts that are not in inventory but there in vcenter"
} ]
}
-
Pick one of the criterion and post a query with its name attribute
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/queries' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"name" : "UNMANAGED_HOSTS_IN_VCENTER"
}'
HTTP Request
POST /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/queries HTTP/1.1
Content-Type: application/json
Content-Length: 43
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"name" : "UNMANAGED_HOSTS_IN_VCENTER"
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c
Content-Type: application/json
Content-Length: 168
{
"queryInfo" : {
"status" : "IN_PROGRESS",
"processing" : true,
"failure" : false,
"completed" : false
},
"result" : {
"elements" : [ ]
}
}
-
Read the tracking URL returned as Location header in the previous step.
-
Poll the tracking URL until the "status" is not "IN_PROGRESS".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/hosts/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 345
{
"queryInfo" : {
"status" : "COMPLETED",
"processing" : false,
"failure" : false,
"completed" : true
},
"result" : {
"elements" : [ {
"fqdn" : "esxi-1.vrack.vsphere.local",
"ipAddresses" : [ {
"ipAddress" : "10.0.0.100",
"type" : "MANAGEMENT"
} ],
"hybrid" : false
} ]
}
}
2.6. License Keys
2.6.1. Add a License Key
-
This API is used to add a license key.
-
Adding a license key which is already added , will give an error.
Tip
|
Refer to: Get a License Key to check if a license key is already present. |
-
Adding an incorrect (key size and format) or an invalid license key (invalid or expired), will give an error.
Prerequisites
-
The following data is required
-
License key
-
Product type
-
License key description
-
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "NSXT",
"description" : "NSXT license key"
}'
HTTP Request
POST /v1/license-keys HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 109
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "NSXT",
"description" : "NSXT license key"
}
HTTP Response
HTTP/1.1 201 Created
Location: /v1/license-keys/XX0XX-XX0XX-XX0XX-XX0XX-XX0XX
2.6.2. Get the License Keys
-
This API is used to get all the license keys.
-
This also gives the license key metrics like usage and validity of a license key.
-
License keys can be filtered based on product type and/or license key status.
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/license-keys HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 912
{
"elements" : [ {
"id" : "e370f734-2452-4758-8d5d-a1b6c948964e",
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "VCENTER",
"description" : "vCenter license key",
"isUnlimited" : false,
"licenseKeyUsage" : {
"total" : 5,
"remaining" : 4,
"used" : 1,
"licenseUnit" : "INSTANCE"
},
"licenseKeyValidity" : {
"licenseKeyStatus" : "ACTIVE",
"expiryDate" : "2029-05-23T16:12:53.001Z"
}
}, {
"id" : "7c9c4292-e5fa-4147-9d39-6990800672f8",
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "NSXT",
"description" : "NSX-T license key",
"isUnlimited" : false,
"licenseKeyUsage" : {
"total" : 15,
"remaining" : 14,
"used" : 1,
"licenseUnit" : "VM"
},
"licenseKeyValidity" : {
"licenseKeyStatus" : "ACTIVE",
"expiryDate" : "2029-05-23T16:12:53.001Z"
}
} ]
}
Get License Keys By Product Type
Steps
-
Invoke the API by specifying the _"productType".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys?productType=VCENTER,ESXI' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/license-keys?productType=VCENTER,ESXI HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 471
{
"elements" : [ {
"id" : "72a4041e-6194-4e69-8ad9-04a4b6e78a2f",
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "VCENTER",
"description" : "vCenter license key",
"isUnlimited" : false,
"licenseKeyUsage" : {
"total" : 5,
"remaining" : 4,
"used" : 1,
"licenseUnit" : "INSTANCE"
},
"licenseKeyValidity" : {
"licenseKeyStatus" : "ACTIVE",
"expiryDate" : "2029-05-23T16:12:53.001Z"
}
} ]
}
Get License Keys By Status Of The License Key
Steps
-
Invoke the API by specifying the _"licenseKeyStatus".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys?licenseKeyStatus=ACTIVE,NEVER_EXPIRES' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/license-keys?licenseKeyStatus=ACTIVE,NEVER_EXPIRES HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 471
{
"elements" : [ {
"id" : "12c62d1d-19bc-47fc-8ec3-367a1b797a67",
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "VCENTER",
"description" : "vCenter license key",
"isUnlimited" : false,
"licenseKeyUsage" : {
"total" : 5,
"remaining" : 4,
"used" : 1,
"licenseUnit" : "INSTANCE"
},
"licenseKeyValidity" : {
"licenseKeyStatus" : "ACTIVE",
"expiryDate" : "2029-05-23T16:12:53.001Z"
}
} ]
}
2.6.3. Get a License Key
-
This API is used to get the license key metrics like usage and validity of a license key.
-
If the license key does not exist, you will get an error.
Prerequisites
-
The following data is required
-
License key
-
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys/XX0XX-XX0XX-XX0XX-XX0XX-XX0XX' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/license-keys/XX0XX-XX0XX-XX0XX-XX0XX-XX0XX HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 416
{
"id" : "39b1e10b-f4d4-443e-bea7-be8fe995ac47",
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX",
"productType" : "VCENTER",
"description" : "vCenter license key",
"isUnlimited" : false,
"licenseKeyUsage" : {
"total" : 5,
"remaining" : 4,
"used" : 1,
"licenseUnit" : "INSTANCE"
},
"licenseKeyValidity" : {
"licenseKeyStatus" : "ACTIVE",
"expiryDate" : "2029-05-23T16:12:53.001Z"
}
}
2.6.4. Delete a License Key
-
This API is used to delete a license key.
Warning
|
Deleting a license key which is in use, will give an error. |
Prerequisites
-
The following data is required
-
License key
-
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/license-keys/XX0XX-XX0XX-XX0XX-XX0XX-XX0XX' -i -X DELETE \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/license-keys/XX0XX-XX0XX-XX0XX-XX0XX-XX0XX HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 204 No Content
2.7. Domains
A workload domain is a policy based resource container with specific availability and performance attributes that combines compute (vSphere), storage (vSAN) and networking (NSX) into a single consumable entity.
2.7.1. Create a Domain
Create a Domain workflow automatically:
-
Deploys an additional vCenter Server Appliance for the new domain within the management domain.
-
By leveraging a separate vCenter Server instance per domain, software updates can be applied without impacting other domains. It also allows for each domain to have additional isolation as needed.
Prerequisites
-
The following data is required
-
Name of the domain
-
vCenter details
-
Name of the vCenter
-
Network details
-
IP Address of the vCenter
-
FQDN of the vCenter
-
Gateway
-
Subnet mask
-
-
Password for the root user (8-20 characters)
-
-
Steps
-
Validate the input specification
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"domainName" : "test",
"vcenterSpec" : {
"name" : "vcenter-1",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.43",
"dnsName" : "vcenter-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
},
"rootPassword" : "VMware123!",
"datacenterName" : "new-vi-1"
}
}'
HTTP Request
POST /v1/domains/validations HTTP/1.1
Content-Type: application/json
Content-Length: 336
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"domainName" : "test",
"vcenterSpec" : {
"name" : "vcenter-1",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.43",
"dnsName" : "vcenter-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
},
"rootPassword" : "VMware123!",
"datacenterName" : "new-vi-1"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66
Content-Type: application/json
Content-Length: 110
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"description" : "",
"executionStatus" : "IN_PROGRESS"
}
-
Get Validation response of the domain specification using id obtained from previous spec validation call
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66' -i -X GET \ -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 224
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"description" : "Validation result",
"executionStatus" : "COMPLETED",
"resultStatus" : "SUCCEEDED",
"validationChecks" : [ {
"resultStatus" : "SUCCEEDED"
} ]
}
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"domainName" : "test",
"vcenterSpec" : {
"name" : "vcenter-1",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.43",
"dnsName" : "vcenter-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
},
"rootPassword" : "VMware123!",
"datacenterName" : "new-vi-1"
}
}'
HTTP Request
POST /v1/domains HTTP/1.1
Content-Type: application/json
Content-Length: 336
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"domainName" : "test",
"vcenterSpec" : {
"name" : "vcenter-1",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.43",
"dnsName" : "vcenter-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
},
"rootPassword" : "VMware123!",
"datacenterName" : "new-vi-1"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/f0bd214d-a075-48d4-bd6b-d9a3243a4c66
Content-Length: 146
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"name" : "",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:24:38.065Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.7.2. Update a Domain
Update a Domain workflow:
-
Import the primary cluster
-
For the first NSX-T VI Domain in your environment, the workflow deploys a cluster of three NSX-T Managers in the management domain. The workflow also configures an anti-affinity rule between the managers to prevent them from being on the same host for High Availability. Each subsequent NSX-T Domains will either share this NSX-T Manager Cluster or create its own.
-
If required, the new domain can also share the NSX-T cluster with an existing workload domain. In this scenario, new NSX-T Managers will not be deployed, but will be shared with an existing NSX-T Cluster.
-
For this, fetch the information of the NSX-T Managers that can be shared.
-
From the list of NSX-T Clusters fetched, only the existing NSX-T clusters for which "isShared" is true, can be shared with the new domains being deployed.
-
The precise information of the existing NSX-T Cluster fetched from above should be used in the "nsxTSpec" section of the input payload.
-
-
-
Licenses integrate the deployed components with the appropriate pieces in the Cloud Foundation software stack.
-
Prerequisites
-
VxRail Domain should have already been created.
-
A DHCP server must be configured on the VLAN of the domain. When NSX creates VTEPs for the domain, they are assigned IP addresses from the DHCP server.
-
The following data is required
-
ID of the created domain
-
Host details
-
For each host
-
IP address of the host
-
FQDN of the host
-
user name of the host
-
password of the host
-
-
-
Datastore details
-
License for the vSAN datastore
-
-
VxRail Manager Details
-
admin and root credentials
-
-
Network Details
-
List of VDS (which should have a single element for VxRail)
-
For each VDS
-
VDS name
-
isUsedByNsxt set to true
-
list of Port groups with its names and the corresponding transport type
-
-
-
-
NSX cluster Details
-
For NSX-T
-
VLAN ID of Geneve
{ "nsxTClusterSpec" : { "geneveVlanId" : 2 } }
-
-
For NSX-T
-
NSX Manager virtual machine details
-
Name of the NSX Manager virtual machine
-
Network details
-
IP Address of the virtual machine
-
Fully-qualified domain name
-
Gateway
-
Subnet mask
-
-
Virtual IP address which would act as proxy/alias for NSX-T managers
-
Fully-qualified domain name for VIP so that common SSL certificates can be installed across all managers
-
License key for NSX
-
NSX manager admin Password (basic authorization and SSH)
-
-
{ "nsxManagerSpecs" : [ { "name" : "nsx-manager-2", "networkDetailsSpec" : { "ipAddress" : "10.0.0.44", "dnsName" : "nsx-manager-2.vrack.vsphere.local", "gateway" : "10.0.0.250", "subnetMask" : "255.255.255.0" } }, { "name" : "nsx-manager-3", "networkDetailsSpec" : { "ipAddress" : "10.0.0.44", "dnsName" : "nsx-manager-2.vrack.vsphere.local", "gateway" : "10.0.0.250", "subnetMask" : "255.255.255.0" } }, { "name" : "nsx-manager-4", "networkDetailsSpec" : { "ipAddress" : "10.0.0.44", "dnsName" : "nsx-manager-2.vrack.vsphere.local", "gateway" : "10.0.0.250", "subnetMask" : "255.255.255.0" } } ], "vip" : "10.0.0.166", "vipFqdn" : "vip-nsxmanager.vrack.vsphere.local", "licenseKey" : "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX", "nsxManagerAdminPassword" : "VMware123!" }
-
Steps
-
Through VxRail UI, create a cluster in the VC, which was created as part of the previous invocation of the create domain
-
Get the ID of the created domain
-
TIP: Get the Domains
-
Filter the response by VxRail Domain name and get the respective ID
-
-
Get the list of unmanaged clusters with names in thus created vi domain, Invoke a call to get clusters to get the details.
Tip
|
Refer to: Get the unmanaged clusters by criterion |
-
Choose the name of one cluster that needs to be imported. Invoke a call to get unmanaged cluster by selected cluster name to get the network and host details.
Tip
|
Refer to: Get an unmanaged cluster by criterion |
-
Create a domain update spec
-
With the cluster information from previous call:
-
For each host populate
-
IP address of the host
-
FQDN of the host
-
user name of the host
-
password of the host
-
-
Network Details
-
For each VDS
-
VDS name
-
isUsedByNsxt set to true
-
list of Port groups with its names and the corresponding transport type
-
-
-
-
Choose to create a new NSX-T domain or select from the existing ones
-
TIP: For NSX-T clusters refer to Get the NSX-T Clusters
-
-
Adding license key for NSXt and vSAN datastore
-
TIP: For license refer to Get a License Key
-
-
-
Validation of the domain specification though async call
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/1234/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterSpec" : {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "192.10.20.30",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.31",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.32",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "123"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "SDDC-Dswitch-Private1",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 3
}
}
}
},
"nsxTSpec" : {
"nsxManagerSpecs" : [ {
"name" : "nsx-manager-2",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-3",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-4",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
} ],
"vip" : "10.0.0.166",
"vipFqdn" : "vip-nsxmanager.vrack.vsphere.local",
"licenseKey" : "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"nsxManagerAdminPassword" : "VMware123!"
}
}'
HTTP Request
POST /v1/domains/1234/validations HTTP/1.1
Content-Type: application/json
Content-Length: 2483
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterSpec" : {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "192.10.20.30",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.31",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.32",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "123"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "SDDC-Dswitch-Private1",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 3
}
}
}
},
"nsxTSpec" : {
"nsxManagerSpecs" : [ {
"name" : "nsx-manager-2",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-3",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-4",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
} ],
"vip" : "10.0.0.166",
"vipFqdn" : "vip-nsxmanager.vrack.vsphere.local",
"licenseKey" : "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"nsxManagerAdminPassword" : "VMware123!"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66
Content-Type: application/json
Content-Length: 110
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"description" : "",
"executionStatus" : "IN_PROGRESS"
}
-
Get Validation response of the import primary cluster specification
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66' -i -X GET \ -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/validations/f0bd214d-a075-48d4-bd6b-d9a3243a4c66 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 224
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"description" : "Validation result",
"executionStatus" : "COMPLETED",
"resultStatus" : "SUCCEEDED",
"validationChecks" : [ {
"resultStatus" : "SUCCEEDED"
} ]
}
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the domain update task using the validated input spec.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/1234' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterSpec" : {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "192.10.20.30",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.31",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.32",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "123"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "SDDC-Dswitch-Private1",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 3
}
}
}
},
"nsxTSpec" : {
"nsxManagerSpecs" : [ {
"name" : "nsx-manager-2",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-3",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-4",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
} ],
"vip" : "10.0.0.166",
"vipFqdn" : "vip-nsxmanager.vrack.vsphere.local",
"licenseKey" : "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"nsxManagerAdminPassword" : "VMware123!"
}
}'
HTTP Request
PATCH /v1/domains/1234 HTTP/1.1
Content-Type: application/json
Content-Length: 2483
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterSpec" : {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "192.10.20.30",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.31",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
}, {
"ipAddress" : "192.10.20.32",
"hostName" : "abc.com",
"username" : "root",
"password" : "VMware123!"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "123"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "SDDC-Dswitch-Private1",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 3
}
}
}
},
"nsxTSpec" : {
"nsxManagerSpecs" : [ {
"name" : "nsx-manager-2",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-3",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
}, {
"name" : "nsx-manager-4",
"networkDetailsSpec" : {
"ipAddress" : "10.0.0.44",
"dnsName" : "nsx-manager-2.vrack.vsphere.local",
"gateway" : "10.0.0.250",
"subnetMask" : "255.255.255.0"
}
} ],
"vip" : "10.0.0.166",
"vipFqdn" : "vip-nsxmanager.vrack.vsphere.local",
"licenseKey" : "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"nsxManagerAdminPassword" : "VMware123!"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/f0bd214d-a075-48d4-bd6b-d9a3243a4c66
Content-Length: 146
{
"id" : "f0bd214d-a075-48d4-bd6b-d9a3243a4c66",
"name" : "",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:24:37.248Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.7.3. Get the Domains
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 567
{
"elements" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5",
"name" : "VI-1",
"vcenters" : [ {
"id" : "c0703437-6756-470b-9e1c-f9d3bbc9b1c6"
} ],
"clusters" : [ {
"id" : "8045e44e-974e-4f43-9862-7f0326782655"
} ]
}, {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1",
"name" : "VDI-1",
"vcenters" : [ {
"id" : "c0703437-6846-470b-9e1c-f9d3bbc9b1c9"
} ],
"clusters" : [ {
"id" : "8045e44e-974e-4f43-9862-7f0326782677"
}, {
"id" : "8045e44e-974e-4f43-9861-7f0326782633"
} ]
} ]
}
2.7.4. Get a Domain
Prerequisites
-
The following data is required
-
ID of the domain
-
Steps
-
Invoke the API using the ID of the domain
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/c0703437-6746-470b-9e1c-f9d3bbc9b1c5' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/c0703437-6746-470b-9e1c-f9d3bbc9b1c5 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 222
{
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5",
"name" : "VI-1",
"vcenters" : [ {
"id" : "c0703437-6756-470b-9e1c-f9d3bbc9b1c6"
} ],
"clusters" : [ {
"id" : "8045e44e-974e-4f43-9862-7f0326782655"
} ]
}
2.7.5. Get Domain Endpoints
Prerequisites
-
The following data is required
-
ID of the domain
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/86ec4d1b-6049-4a4b-99aa-740e2ac9a8a4/endpoints' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/86ec4d1b-6049-4a4b-99aa-740e2ac9a8a4/endpoints HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 192
{
"elements" : [ {
"type" : "VCENTER",
"url" : "https://vcenter-1.vrack.vsphere.local"
}, {
"type" : "NSX_MANAGER",
"url" : "https://nsxManager.vrack.vsphere.local"
} ]
}
2.7.6. Delete a Domain
When you delete a domain, the clusters within the domain are deleted.
Warning
|
Deleting a domain is an irreversible operation. All clusters and VMs within the domain are deleted and the underlying datastores are destroyed. |
Prerequisites
-
The following data is required
-
ID of the domain that has to be deleted.
-
Tip
|
Back up the data on the domain. |
Tip
|
Migrate the VMs that you want to retain, to another domain. |
Steps
-
Initialize the deletion.
Warning
|
It is not possible to delete a domain without having marked it for deletion. This 2-step deletion ensures that a domain is not deleted accidentally. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/f74c2d97-621a-4984-9ab6-5d84effde82f' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"markForDeletion" : true
}'
HTTP Request
PATCH /v1/domains/f74c2d97-621a-4984-9ab6-5d84effde82f HTTP/1.1
Content-Type: application/json
Content-Length: 30
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"markForDeletion" : true
}
HTTP Response
HTTP/1.1 200 OK
-
Trigger the deletion.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/f74c2d97-621a-4984-9ab6-5d84effde82f' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/domains/f74c2d97-621a-4984-9ab6-5d84effde82f HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/1ef40ff0-3ffc-4a59-998d-9f94cb34c33e
Content-Length: 142
{
"id" : "1ef40ff0-3ffc-4a59-998d-9f94cb34c33e",
"name" : "",
"status" : "UNKNOWN",
"creationTimestamp" : "2020-04-10T06:24:36.496Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.8. Clusters
2.8.1. Create a Cluster
After you add the VxRail primary cluster, additional clusters can be added to expand the domain.
Prerequisites
-
The following data is required
-
Domain Identifier in which the cluster is to be created
-
Cluster details
-
Name of the new cluster that will be added to the specified workload domain
-
VxRail Manager Details
-
admin and root credentials
-
-
VSAN license key
-
Host details
-
Hostname of ESXi host which is part of the cluster
-
IpAddress of the same ESXi host which is part of the cluster
-
Password of ESXi host which is part of the cluster
-
-
List of VDS details
-
For each VDS
-
DVS name
-
Flag to indicate whether this DVS is used by NSX-T
-
Port group names and the corresponding transport type
-
-
-
NSX cluster Details
-
For NSX-T
-
VLAN ID of Geneve
-
-
-
{ "nsxTClusterSpec" : { "geneveVlanId" : 2 } }
-
-
Workload Domain must be provisioned.
Note
|
NSX-T Manager(s) are configured when domain is created. |
-
Host configuration must have minimum two active vmNics.
-
A DHCP server must be configured for NSX-T VTEPS
Steps
-
Through VxRail UI, create a cluster in the VC, which was created as part of the previous invocation of the create domain
-
Get the ID of the created domain
-
TIP: Get the Domains
-
Filter the response by VxRail Domain name and get the respective ID
-
-
Get the list of unmanaged clusters with names in thus created vi domain, Invoke a call to get clusters to get the details.
Tip
|
Refer to: Get the unmanaged clusters by criterion |
-
Choose the name of one cluster that needs to be imported. Invoke a call to get unmanaged cluster by selected cluster name to get the network and host details.
Tip
|
Refer to: Get an unmanaged cluster by criterion |
-
Create a cluster spec as shown in the curl payload below using the information from previous call
-
Validate the input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"domainId" : "6f86021b-fb89-4254-a3bd-e59aa2afcfa9",
"computeSpec" : {
"clusterSpecs" : [ {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "XXXX-XXXX"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "vRack-DSwitch",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 1
}
}
},
"advancedOptions" : {
"evcMode" : "",
"highAvailability" : {
"enabled" : false
}
}
} ]
}
}'
HTTP Request
POST /v1/clusters/validations HTTP/1.1
Content-Type: application/json
Content-Length: 1575
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"domainId" : "6f86021b-fb89-4254-a3bd-e59aa2afcfa9",
"computeSpec" : {
"clusterSpecs" : [ {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "XXXX-XXXX"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "vRack-DSwitch",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 1
}
}
},
"advancedOptions" : {
"evcMode" : "",
"highAvailability" : {
"enabled" : false
}
}
} ]
}
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 142
{
"id" : "7be5813a-3c2f-41fa-a7db-22f8bf773b65",
"description" : "Validating Cluster Creation Spec",
"executionStatus" : "IN_PROGRESS"
}
-
Get Validation response of the cluster specification with id obtained from previous spec validation call
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/validations/53a5b0d6-aa9f-4451-9bdd-dcdff69ac433' -i -X GET \ -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters/validations/53a5b0d6-aa9f-4451-9bdd-dcdff69ac433 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 224
{
"id" : "53a5b0d6-aa9f-4451-9bdd-dcdff69ac433",
"description" : "Validation result",
"executionStatus" : "COMPLETED",
"resultStatus" : "SUCCEEDED",
"validationChecks" : [ {
"resultStatus" : "SUCCEEDED"
} ]
}
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation. -
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"domainId" : "0a9282cb-744e-4fc4-86e7-86c4d7bdb0a3",
"computeSpec" : {
"clusterSpecs" : [ {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "XXXX-XXXX"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "vRack-DSwitch",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 1
}
}
},
"advancedOptions" : {
"evcMode" : "",
"highAvailability" : {
"enabled" : false
}
}
} ]
}
}'
HTTP Request
POST /v1/clusters HTTP/1.1
Content-Type: application/json
Content-Length: 1575
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"domainId" : "0a9282cb-744e-4fc4-86e7-86c4d7bdb0a3",
"computeSpec" : {
"clusterSpecs" : [ {
"name" : "Cluster1",
"vxRailDetails" : {
"rootCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
},
"adminCredentials" : {
"credentialType" : "SSH",
"username" : "admin",
"password" : "VMware123!"
}
},
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"datastoreSpec" : {
"vsanDatastoreSpec" : {
"licenseKey" : "XXXX-XXXX"
}
},
"networkSpec" : {
"vdsSpecs" : [ {
"name" : "vRack-DSwitch",
"isUsedByNsxt" : true,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ]
} ],
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 1
}
}
},
"advancedOptions" : {
"evcMode" : "",
"highAvailability" : {
"enabled" : false
}
}
} ]
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/95312a64-5320-4c0d-8d22-2759afff5708
Content-Length: 166
{
"id" : "95312a64-5320-4c0d-8d22-2759afff5708",
"name" : "Add Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:50.350Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.8.2. Get the Clusters
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 703
{
"elements" : [ {
"id" : "8045e44e-974e-4f43-9862-7f0326782655",
"name" : "sfo01-m01-mgmt01",
"primaryDatastoreName" : "sfo01-m01-vsan01",
"primaryDatastoreType" : "VSAN",
"hosts" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}, {
"id" : "c0703431-6742-470b-9e1d-f9d3bbc9b1c9"
} ],
"isStretched" : false
}, {
"id" : "2345e44e-974e-4f43-9862-7f0326782898",
"name" : "SDDC-Cluster1",
"primaryDatastoreName" : "sfo01-m01-vsan01",
"primaryDatastoreType" : "VSAN",
"hosts" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}, {
"id" : "c0703431-6742-470b-9e1d-f9d3bbc9b1c9"
} ],
"isStretched" : true
} ]
}
Get the Stretched Clusters
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters?isStretched=true' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters?isStretched=true HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 363
{
"elements" : [ {
"id" : "2345e44e-974e-4f43-9862-7f0326782898",
"name" : "sfo01-m01-mgmt01",
"primaryDatastoreName" : "sfo01-m01-vsan01",
"primaryDatastoreType" : "VSAN",
"hosts" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}, {
"id" : "c0703431-6742-470b-9e1d-f9d3bbc9b1c9"
} ],
"isStretched" : true
} ]
}
Get the Vanilla Clusters
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters?isStretched=false' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters?isStretched=false HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 364
{
"elements" : [ {
"id" : "8045e44e-974e-4f43-9862-7f0326782655",
"name" : "sfo01-m01-mgmt01",
"primaryDatastoreName" : "sfo01-m01-vsan01",
"primaryDatastoreType" : "VSAN",
"hosts" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}, {
"id" : "c0703431-6742-470b-9e1d-f9d3bbc9b1c9"
} ],
"isStretched" : false
} ]
}
2.8.3. Get the unmanaged clusters by criterion
This API is used to get the unmanaged clusters from vCenter that meets a specific criterion.
Prerequisites
-
Domain should already been created.
-
There must be a cluster already added to the VCenter.
-
The following data is required
-
ID of the created domain
-
Get the unmanaged clusters from vCenter based on a criterion
Steps
-
Get the ID of the created domain
-
TIP: Get the Domains
-
Filter the response by VxRail Domain name and get the respective ID
-
-
Invoke the Get clusters Criteria API to list all the criteria supported.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/criteria' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/criteria HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 313
{
"elements" : [ {
"name" : "UNMANAGED_CLUSTERS_IN_VCENTER",
"description" : "All unmanaged clusters that are not in inventory but there in vcenter"
}, {
"name" : "UNMANAGED_CLUSTER_IN_VCENTER",
"description" : "Specific unmanaged cluster that is not in inventory but there in vcenter"
} ]
}
-
Pick one of the criterion and post a query with its name attribute
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/queries' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"name" : "UNMANAGED_CLUSTERS_IN_VCENTER"
}'
HTTP Request
POST /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/queries HTTP/1.1
Content-Type: application/json
Content-Length: 46
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"name" : "UNMANAGED_CLUSTERS_IN_VCENTER"
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c
Content-Type: application/json
Content-Length: 168
{
"queryInfo" : {
"status" : "IN_PROGRESS",
"processing" : true,
"failure" : false,
"completed" : false
},
"result" : {
"elements" : [ ]
}
}
-
Read the tracking URL returned as Location header in the previous step.
-
Poll the tracking URL until the "status" is not "IN_PROGRESS".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 208
{
"queryInfo" : {
"status" : "COMPLETED",
"processing" : false,
"failure" : false,
"completed" : true
},
"result" : {
"elements" : [ {
"name" : "VxRail-Cluster-1"
} ]
}
}
2.8.4. Get a Cluster
Prerequisites
-
The following data is required
-
ID of the cluster
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/8045e44e-974e-4f43-9862-7f0326782655' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters/8045e44e-974e-4f43-9862-7f0326782655 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 319
{
"id" : "8045e44e-974e-4f43-9862-7f0326782655",
"name" : "sfo01-m01-mgmt01",
"primaryDatastoreName" : "sfo01-m01-vsan01",
"primaryDatastoreType" : "VSAN",
"hosts" : [ {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}, {
"id" : "c0703431-6742-470b-9e1d-f9d3bbc9b1c9"
} ],
"isStretched" : false
}
2.8.5. Get an unmanaged cluster by criterion
This API is used to get the unmanaged cluster by cluster name from vCenter that meets a specific criterion.
Prerequisites
-
Domain should already been created.
-
There must be a cluster already added to the VCenter.
-
The following data is required
-
ID of the created domain
-
List of unmanaged clusters with names
-
Tip
|
Refer to: Get the unmanaged clusters by criterion. |
-
Choose one cluster name that need to be imported
-
Get the unmanaged cluster from vCenter for domain update based on a criterion*
Steps
-
Get the ID of the created domain
-
TIP: Get the Domains
-
Filter the response by VxRail Domain name and get the respective ID
-
-
Invoke the Get Clusters Criteria API to list all the criteria supported.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/criteria' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/criteria HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 313
{
"elements" : [ {
"name" : "UNMANAGED_CLUSTERS_IN_VCENTER",
"description" : "All unmanaged clusters that are not in inventory but there in vcenter"
}, {
"name" : "UNMANAGED_CLUSTER_IN_VCENTER",
"description" : "Specific unmanaged cluster that is not in inventory but there in vcenter"
} ]
}
-
Pick one of the criterion and post a query with its name attribute
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/VxRail-Cluster-1/queries' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"name" : "UNMANAGED_CLUSTER_IN_VCENTER"
}'
HTTP Request
POST /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/VxRail-Cluster-1/queries HTTP/1.1
Content-Type: application/json
Content-Length: 45
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"name" : "UNMANAGED_CLUSTER_IN_VCENTER"
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/VxRail-Cluster-1/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c
Content-Type: application/json
Content-Length: 168
{
"queryInfo" : {
"status" : "IN_PROGRESS",
"processing" : true,
"failure" : false,
"completed" : false
},
"result" : {
"elements" : [ ]
}
}
-
Read the tracking URL returned as Location header in the previous step.
-
Poll the tracking URL until the "status" is not "IN_PROGRESS".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/VxRail-Cluster-1/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/2d54bb6c-637a-49a4-a94c-622671d0ab32/clusters/VxRail-Cluster-1/queries/622671d0ab32-2d54bb6c-637a-49a4-a94c HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 883
{
"queryInfo" : {
"status" : "COMPLETED",
"processing" : false,
"failure" : false,
"completed" : true
},
"result" : {
"elements" : [ {
"name" : "VxRail-Cluster-1",
"hosts" : [ {
"ipAddress" : "10.0.0.100",
"fqdn" : "esxi-1.vrack.vsphere.local"
} ],
"vdsSpecs" : [ {
"name" : "SDDC-Dswitch-Private1",
"isUsedByNsxt" : false,
"portGroupSpecs" : [ {
"name" : "Management Network-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "MANAGEMENT"
}, {
"name" : "Virtual SAN-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VSAN"
}, {
"name" : "vSphere vMotion-24777c60-af96-4ae1-9d98-9881c70a0f7d",
"transportType" : "VMOTION"
} ],
"niocBandwidthAllocationSpecs" : null
} ]
} ]
}
}
2.8.6. Expand a Cluster
Importing an individual host into a vcf cluster adds that host to the vcf cluster. You can import multiple hosts at a time to a cluster.
Prerequisites
-
The following data is required
-
ID of the cluster
-
For each host
-
ip address of the host
-
username of the host
-
password of the host
-
-
-
The cluster in a domain to which hosts are to be added must exist.
-
There must be a host already added to the cluster VCenter.
-
Ensure that the host you want to add is in an active state.
-
Prefer to use get unmanaged hosts calls to get the valid hosts ready for addition using query API
Tip
|
Refer to: Get the unmanaged hosts based on a Criterion. |
Steps
-
Validate the input specification async.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.0",
"hostName" : "www.abc.com",
"username" : "test",
"password" : "pass"
} ]
}
}'
HTTP Request
POST /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations HTTP/1.1
Content-Type: application/json
Content-Length: 185
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.0",
"hostName" : "www.abc.com",
"username" : "test",
"password" : "pass"
} ]
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/clusters/validations/30d33ca1-4791-4dd4-ada4-1d1a59cdacec
Content-Type: application/json
Content-Length: 143
{
"id" : "30d33ca1-4791-4dd4-ada4-1d1a59cdacec",
"description" : "Validating Cluster Expansion Spec",
"executionStatus" : "IN_PROGRESS"
}
-
Get Validation response of the cluster expansion specification from id obtained from previous spec validation call
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/validations/53a5b0d6-aa9f-4451-9bdd-dcdff69ac433' -i -X GET \ -H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/clusters/validations/53a5b0d6-aa9f-4451-9bdd-dcdff69ac433 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 224
{
"id" : "53a5b0d6-aa9f-4451-9bdd-dcdff69ac433",
"description" : "Validation result",
"executionStatus" : "COMPLETED",
"resultStatus" : "SUCCEEDED",
"validationChecks" : [ {
"resultStatus" : "SUCCEEDED"
} ]
}
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.0",
"hostName" : "www.abc.com",
"username" : "test",
"password" : "pass"
} ]
}
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 185
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.0",
"hostName" : "www.abc.com",
"username" : "test",
"password" : "pass"
} ]
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/83db139b-0e03-484a-8cf0-fddb6967d2db
Content-Length: 166
{
"id" : "83db139b-0e03-484a-8cf0-fddb6967d2db",
"name" : "Add Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:53.917Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
Related APIs
Validate the input spec for operations on a cluster
Update a Cluster by adding or removing Hosts, Stretching a standard vSAN cluster, Unstretching a stretched cluster or by marking for deletion
Get the Hosts
Get a Host
Get the Tasks
Get a Task
Retry a Task
Get the unmanaged hosts based on a Criterion
2.8.7. Compact a Cluster
When a host is removed from a cluster in a domain, the vSAN members are reduced. Ensure that you have enough hosts remaining to facilitate the configured vSAN availability. Failure to do so might result in the datastore being marked as read-only or in data loss.
Note: Post removing the host from the cluster in SDDC, user would need to remove the host from the VxRail Cluster through the VxRail vCenter plugin.
Prerequisites
-
The following data is required
-
For each host to be removed
-
ID of the host
-
-
Steps
-
Validate the input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterCompactionSpec" : {
"hosts" : [ {
"id" : "b8d4d3f1-4f45-487c-8ae6-144291eef475"
} ]
}
}'
HTTP Request
POST /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations HTTP/1.1
Content-Type: application/json
Content-Length: 115
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterCompactionSpec" : {
"hosts" : [ {
"id" : "b8d4d3f1-4f45-487c-8ae6-144291eef475"
} ]
}
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 296
{
"id" : "b8c66680-a2ef-4a70-8c6d-e2bc19f6631e",
"description" : "Validating Cluster Compaction Spec",
"executionStatus" : "COMPLETED",
"resultStatus" : "SUCCEEDED",
"validationChecks" : [ {
"description" : "ClusterCompactionSpecValidation",
"resultStatus" : "SUCCEEDED"
} ]
}
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterCompactionSpec" : {
"hosts" : [ {
"id" : "708a6307-8e28-4270-b0a2-bbd1a10bf029"
} ]
}
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 115
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterCompactionSpec" : {
"hosts" : [ {
"id" : "708a6307-8e28-4270-b0a2-bbd1a10bf029"
} ]
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/d64aaeb9-d6b9-4350-a143-fff4776a52a5
Content-Length: 166
{
"id" : "d64aaeb9-d6b9-4350-a143-fff4776a52a5",
"name" : "Add Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:53.752Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.8.8. Prepare for Stretch
Prepare a Standard VxRail vSAN cluster prior to converting it to a Stretched cluster. This will ensure that the VMs on the existing hosts (availability zone) of the cluster do not get migrated to the hosts (second availability zone) that get added to the cluster.
Prerequisites
-
The following data is required
-
ID of the cluster
-
Boolean indicating the cluster has been marked for prepare.
-
-
The cluster must exist and the id should be valid.
-
The cluster must not be stretched.
Steps
-
Trigger the Prepare for Stretch task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"prepareForStretch" : true
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 32
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"prepareForStretch" : true
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/b0e4c9a8-43af-4195-9de4-db0f049a5171
Content-Length: 174
{
"id" : "b0e4c9a8-43af-4195-9de4-db0f049a5171",
"name" : "Prepare for Stretch Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:48.313Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
-
Track the task status using the "id" from the previous response.
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
Tip
|
Refer to: Retry a Task. |
2.8.9. Stretch a Cluster
Convert a Standard VxRail vSAN cluster to a Stretched cluster
Prerequisites
-
The Witness VM is not managed by SDDC and should be added to the datacenter corresponding to the cluster provided. Please refer to the 'Deploying a vSAN Witness Appliance' section in the 'VMware Cloud Foundation Operations and Administration Guide'.
-
The vMotion, vSAN, and VXLAN networks require L3 routing between the availability zones. vSAN networks must also have L3 routing to the vSAN network of the witness host. Please refer to the 'Prerequisites for Stretching a Cluster' section in the 'VMware Cloud Foundation Operations and Administration Guide'.
-
Hosts in the second availability zone being used for stretch should not already be a part of SDDC and should be added to the given VxRail cluster through the VxRail cluster expansion flow in vCenter. For more information to expand a VxRail cluster, contact Dell EMC Support.
-
The 'Prepare for Stretch' API should be executed before starting with the Stretch workflow.
-
A valid 'Stretched Cluster' license should be applied to the VxRail vSAN Cluster before executing stretch.
-
The following data is required
-
ID of the cluster
-
For each host in the second availability zone which needs to be used for the stretch operation
-
IP Address of the host
-
Hostname (fqdn) of the host
-
SSH Username
-
SSH Password
-
-
For the witness VM
-
vSAN IP
-
IP address or the fqdn
-
If the witness is managed in vCenter by the fqdn, the the same needs to be provided, else the IP address.
-
-
vSAN subnet cidr
-
-
For each availability zone
-
vSAN Gateway IP
-
vSAN subnet cidr
-
-
Secondary availability zone vLAN ID
-
-
The cluster should not be stretched and the id provided should be valid.
-
You must have a valid ESXi license specified with adequate sockets available for the host to be added.
-
Ensure that the given host should be in active state.
-
Underlying physical network should have proper MTUs and vSAN/vMotion connectivity between availability zones and the witness.
Steps
-
Validate the input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterStretchSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
},
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"secondaryAzOverlayVlanId" : 0
}
}'
HTTP Request
POST /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations HTTP/1.1
Content-Type: application/json
Content-Length: 571
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterStretchSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
},
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"secondaryAzOverlayVlanId" : 0
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/clusters/validations/f52ef7dc-982d-4d90-a4e8-a429184de7ea
Content-Type: application/json
Content-Length: 145
{
"id" : "f52ef7dc-982d-4d90-a4e8-a429184de7ea",
"description" : "Stretch Cluster Validation Workflow",
"executionStatus" : "IN_PROGRESS"
}
-
If the "executionStatus" is "IN_PROGRESS", the spec validation task is still in progress.
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterStretchSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
},
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"secondaryAzOverlayVlanId" : 0
}
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 571
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterStretchSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
},
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"secondaryAzOverlayVlanId" : 0
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/923b1795-568a-4b51-ab21-d7c3b8318454
Content-Length: 170
{
"id" : "923b1795-568a-4b51-ab21-d7c3b8318454",
"name" : "Stretch Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:48.546Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
-
Track the task status using the "id" from the previous response.
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
Tip
|
Refer to: Retry a Task. |
2.8.10. Expand a Stretched Cluster
The expansion workflow on a VxRail stretched cluster adds new hosts from a different availability zone to VCF. The hosts that are part of the expansion are already a part of the VxRail cluster.You can import multiple hosts at a time to a cluster.
Prerequisites
-
Hosts in the second availability zone being used for expansion should not already be a part of SDDC and should be added to the given VxRail cluster through the VxRail cluster expansion flow in vCenter. For more information to expand a VxRail cluster, contact Dell EMC Support. Please refer to the 'Cluster Spanning for VMware Cloud Foundation on VxRail' section in the 'VMware Cloud Foundation Operations and Administration Guide' for more information on expanding clusters that need cluster spanning.
-
The Witness VM is not managed by SDDC and should be added to the datacenter corresponding to the cluster provided. Please refer to the 'Deploying a vSAN Witness Appliance' section in the 'VMware Cloud Foundation Operations and Administration Guide'.
-
The vMotion, vSAN, and VXLAN networks require L3 routing between the availability zones. vSAN networks must also have L3 routing to the vSAN network of the witness host. Please refer to the 'Prerequisites for Stretching a Cluster' section in the 'VMware Cloud Foundation Operations and Administration Guide'.
-
The following data is required
-
ID of the cluster
-
For each host in the second availability zone which needs to be used for the expansion operation
-
IP Address of the host
-
Hostname (fqdn) of the host
-
SSH Username
-
SSH Password
-
Name of the availability zone which the new host belongs to
-
The availability zone name can be fetched from the vCenter
-
-
-
For the witness VM
-
vSAN IP
-
IP address or the fqdn
-
If the witness is managed in vCenter by the fqdn, the the same needs to be provided, else the IP address.
-
-
vSAN subnet cidr
-
-
For each availability zone
-
vSAN Gateway IP
-
vSAN subnet cidr
-
-
-
The cluster should be stretched and the id provided should be valid.
-
You must have a valid ESXi license specified with adequate sockets available for the host to be added.
-
Ensure that the given host should be in active state.
-
Underlying physical network should have proper MTUs and vSAN/vMotion connectivity between availability zones and the witness.
Steps
-
Validate the input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX",
"azName" : "azName"
} ],
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
}
}
}'
HTTP Request
POST /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32/validations HTTP/1.1
Content-Type: application/json
Content-Length: 564
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX",
"azName" : "azName"
} ],
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
}
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/clusters/validations/19c84e10-0f90-473a-b5b4-7d19007ba594
Content-Type: application/json
Content-Length: 142
{
"id" : "19c84e10-0f90-473a-b5b4-7d19007ba594",
"description" : "Validate Expand Cluster Workflow",
"executionStatus" : "IN_PROGRESS"
}
-
If the "executionStatus" is "IN_PROGRESS", the spec validation task is still in progress.
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
NoteMake changes to the input specification and re-validate using a new API invocation.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX",
"azName" : "azName"
} ],
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
}
}
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 564
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"ipAddress" : "10.0.0.104",
"hostName" : "esxi-4.vrack.vsphere.local",
"username" : "root",
"password" : "XXXX-XXXX",
"azName" : "azName"
} ],
"vsanNetworkSpecs" : [ {
"vsanGatewayIP" : "10.0.8.1",
"vsanCidr" : "10.0.8.0/24"
}, {
"vsanGatewayIP" : "10.0.12.1",
"vsanCidr" : "10.0.12.0/24"
} ],
"witnessSpec" : {
"vsanIp" : "10.0.4.88",
"fqdn" : "witness-vsan.vrack.vsphere.local",
"vsanCidr" : "10.0.4.0/24"
}
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/455cb8ae-1e51-4b73-8968-98f36920c44f
Content-Length: 169
{
"id" : "455cb8ae-1e51-4b73-8968-98f36920c44f",
"name" : "Expand Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:51.776Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
-
Track the task status using the "id" from the previous response.
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
Tip
|
Refer to: Retry a Task. |
2.8.11. Unstretch a Cluster
Convert a Stretched VxRail cluster to a Standard VxRail vSAN cluster. This operation is currently NOT SUPPORTED.
2.8.12. Delete a Cluster
Warning
|
Datastores on the ESXi hosts in the cluster that will be deleted are destroyed. |
Note
|
You cannot delete the last cluster in a domain. Instead, the domain can be deleted. |
Prerequisites
-
The following data is required
-
ID of the cluster to be deleted
-
-
Ensure that a cluster with the given ID exists.
-
The cluster has been marked for deletion.
-
Migrate or backup the VMs and data on the data store associated with the cluster to another location.
Steps
-
Initialize the deletion.
Warning
|
It is not possible to delete a cluster without having marked it for deletion. This 2-step deletion ensures that a cluster is not deleted accidentally. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"markForDeletion" : true
}'
HTTP Request
PATCH /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Content-Type: application/json
Content-Length: 30
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"markForDeletion" : true
}
HTTP Response
HTTP/1.1 200 OK
-
Trigger the deletion.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/clusters/2d54bb6c-637a-49a4-a94c-622671d0ab32 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/8f445c1b-606b-4297-92a5-43f4322eec7f
Content-Length: 166
{
"id" : "8f445c1b-606b-4297-92a5-43f4322eec7f",
"name" : "Add Cluster Workflow",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:23:50.720Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.9. Multi Site Management
2.9.1. Create a Multi Site Management Federation
A federation is a group of Cloud Foundation instances, such that each member can view information about the other Cloud Foundation instances in the group. The federation creator is granted the controller role by default.
You can create multiple federations within your organization, but global visibility is available only within a federation. Members can belong to only a single federation at a time.
Prerequisites
-
The following data is required
-
Name of the federation
-
Member Details
-
FQDN of the Member
-
Role of the Member (CONTROLLER)
-
Site Type (DATACENTER)
-
Site Name
-
City where the site is located
-
State where the site is located (Optional)
-
Country where the site is located
-
Location coordinates
-
Longitude
-
Latitude
-
-
-
-
Ensure, VCF Instance Role is set to NOT_JOINED.
Tip
|
Refer to: Get fact about a VMware Cloud Foundation |
Steps
-
Trigger the Create Federation
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation' -i -X PUT \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer etYWR....' \ -d '{ "federationName" : "New Federation", "memberJoinDetail" : { "role" : "CONTROLLER", "fqdn" : "sddc-manager-1.vrack.vsphere.local", "siteType" : "DATACENTER", "siteName" : "Palo Alto Epic Center", "country" : "USA", "state" : "California", "city" : "Palo Alto", "coordinate" : { "longitude" : -122.838, "latitude" : 37.286 } } }'
HTTP Request
PUT /v1/sddc-federation HTTP/1.1
Content-Type: application/json
Content-Length: 382
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
{
"federationName" : "New Federation",
"memberJoinDetail" : {
"role" : "CONTROLLER",
"fqdn" : "sddc-manager-1.vrack.vsphere.local",
"siteType" : "DATACENTER",
"siteName" : "Palo Alto Epic Center",
"country" : "USA",
"state" : "California",
"city" : "Palo Alto",
"coordinate" : {
"longitude" : -122.838,
"latitude" : 37.286
}
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 246
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : "a62460cb-38ae-4668-9877-c86078798383",
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
-
Create federation API returns a task object. Task object has the task id.
-
Poll for the status of the workflow using the task ID with request
TIP: Refer to: Get a Task -
Validate the input specification.
-
Validates if VCF instance Role is other than CONTROLLER
-
-
Initialize the fabric services
-
Initialize the topics
-
Initialize persistent store
-
Add member to federation
-
Update persistent store with new member details
-
If the "status" is "SUCCEEDED", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
2.9.2. Invite
You can invite Cloud Foundation instances to join a federation. They can be invited as a controller or a regular member.
In the InvitationSpec or http/curl request if inviteeRole is MEMBER, the vcf instance will have limited access and will not be able to view federation details.
Inorder to view federation details, use inviteeRole as CONTROLLER or MANAGER.
Since a federation can include a maximum of three controllers, you may want to assign the controller role to the primary data centers within the federation.
Prerequisites
-
Federation must be created.
-
You must have the controller role to invite a member to a federation.
-
Only one member can be invited at a time.
-
The following data is required
-
Role of the Invitee
-
FQDN of the Invitee
-
Steps
-
Trigger the task using the valid invite spec.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/membership-tokens' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWR....' \
-d '{
"inviteeRole" : "MEMBER",
"inviteeFqdn" : "sddc-manager-1.vrack.vsphere.local",
"tokenExpiryHours" : 0.0
}'
HTTP Request
POST /v1/sddc-federation/membership-tokens HTTP/1.1
Content-Type: application/json
Content-Length: 114
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
{
"inviteeRole" : "MEMBER",
"inviteeFqdn" : "sddc-manager-1.vrack.vsphere.local",
"tokenExpiryHours" : 0.0
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 229
{
"controllerFqdn" : [ "sddc-manager-1.vrack.vsphere.local" ],
"inviteeRole" : "MEMBER",
"inviteeFqdn" : "sddc-manager-1.vrack.vsphere.local",
"invitationToken" : "817e0e5f-066f-4c82-8a70-ac324906e7b4",
"error" : null
}
-
This is a sync call, and on success should get a token, role and name.
-
If there is a failure, appropriate error is returned. Perform relevant corrective actions before retrying this API.
2.9.3. Join the Federation
You can join a federation as a controller/manager/member depending on the assigned role in the invitation.
Use the token you received as part of the invitation, to trigger a join API.
An invitation is valid for ten days. You must request a new invitation after this period.
Prerequisites
-
The following data is required
-
Controller FQDN
-
You can provide any of the controllers FQDN to join the federation. However, it is preferred to provide
the FQDN of the controller who sent out the invitation.
-
-
Token
-
Token you received from the controller as part of the invitation.
-
-
Member Details
-
Role of the invitee, this should match the role you provided during invite.
-
FQDN of the invitee
-
Type of the site, it will always be "DATACENTER" for 1.0 release
-
Name of the site
-
Country
-
State
-
City
-
Coordinate of the site
-
Longitude
-
Latitude
-
-
-
Steps
Provide above inputs and invoke the API.
If the request goes through successfully, we should see this new member on the world map.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/members' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWR....' \
-d '{
"controllerFqdn" : "sddc-manager-1.vrack.vsphere.local",
"joinToken" : "test",
"commonName" : "sddcmgr-newyork.msm.local",
"memberJoinDetail" : {
"role" : "MEMBER",
"fqdn" : "sddcmgr-newyork.msm.local",
"siteType" : "DATACENTER",
"siteName" : "New York Epic Center",
"country" : "USA",
"state" : "New York",
"city" : "New York",
"coordinate" : {
"longitude" : -74.006,
"latitude" : 40.712
}
}
}'
HTTP Request
POST /v1/sddc-federation/members HTTP/1.1
Content-Type: application/json
Content-Length: 454
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
{
"controllerFqdn" : "sddc-manager-1.vrack.vsphere.local",
"joinToken" : "test",
"commonName" : "sddcmgr-newyork.msm.local",
"memberJoinDetail" : {
"role" : "MEMBER",
"fqdn" : "sddcmgr-newyork.msm.local",
"siteType" : "DATACENTER",
"siteName" : "New York Epic Center",
"country" : "USA",
"state" : "New York",
"city" : "New York",
"coordinate" : {
"longitude" : -74.006,
"latitude" : 40.712
}
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 246
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : "ef960ed5-12c5-4512-a020-5b53fb177ff6",
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
2.9.4. Get progress
Use this API to get progress of long running operations in the system. When operations like bootstrap, join or teardown are triggered, as part of response
you receive a request ID. Use this request ID to track the status of the operation.
Prerequisites
-
Request ID
Steps
-
Provide a valid request ID and invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/tasks/4421185a-469b-421c-868a-b3a3ce7d3de5' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWR....'
HTTP Request
GET /v1/sddc-federation/tasks/4421185a-469b-421c-868a-b3a3ce7d3de5 HTTP/1.1
Content-Type: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 212
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : null,
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
2.9.5. Get Multi Site Management Federation Details
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation' -i -X GET \
-H 'Authorization: Bearer etYWR....'
HTTP Request
GET /v1/sddc-federation HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3160
[ {
"memberDetails" : {
"role" : "CONTROLLER",
"fqdn" : "sddc-manager-1.vrack.vsphere.local",
"siteType" : "DATACENTER",
"siteName" : "Palo Alto Epic Center",
"country" : "USA",
"state" : "California",
"city" : "Palo Alto",
"coordinate" : {
"longitude" : -122.838,
"latitude" : 37.286
}
},
"memberInventory" : {
"capacity" : {
"summary" : {
"domainCount" : 2,
"aggregatedCapacity" : {
"cpu" : {
"free" : 58.795,
"total" : 79.799,
"used" : 21.00399,
"unallocated" : 0.0,
"unit" : "GHZ"
},
"hostCount" : {
"total" : 10,
"unallocated" : 4,
"used" : 6
},
"datastores" : [ {
"used" : 0.866,
"datastoreName" : "vsanDatastore1",
"datastoreType" : "VSAN",
"freeSpace" : 5.839,
"capacity" : 6.705,
"unallocated" : 2.694,
"unit" : "TB"
}, {
"used" : 0.866,
"datastoreName" : "vsanDatastore2",
"datastoreType" : "VSAN",
"freeSpace" : 5.839,
"capacity" : 6.705,
"unallocated" : 2.694,
"unit" : "TB"
} ],
"memory" : {
"free" : 76.109,
"total" : 375.0,
"used" : 298.89,
"unallocated" : 0.0,
"unit" : "GB"
}
},
"domainTypeInfo" : [ {
"type" : null,
"domainCount" : 2,
"aggregatedCapacity" : {
"cpu" : {
"free" : 58.795,
"total" : 79.799,
"used" : 21.00399,
"unallocated" : 0.0,
"unit" : "GHZ"
},
"hostCount" : {
"total" : 10,
"unallocated" : 4,
"used" : 6
},
"datastores" : [ {
"used" : 0.866,
"datastoreName" : "vsanDatastore1",
"datastoreType" : "VSAN",
"freeSpace" : 5.839,
"capacity" : 6.705,
"unallocated" : 2.694,
"unit" : "TB"
}, {
"used" : 0.866,
"datastoreName" : "vsanDatastore2",
"datastoreType" : "VSAN",
"freeSpace" : 5.839,
"capacity" : 6.705,
"unallocated" : 2.694,
"unit" : "TB"
} ],
"memory" : {
"free" : 76.109,
"total" : 375.0,
"used" : 298.89,
"unallocated" : 0.0,
"unit" : "GB"
}
}
} ],
"domainInfo" : null
}
},
"inventoryInfo" : null,
"softwareInfo" : {
"pendingUpdates" : 1
},
"creationTime" : null
},
"memberLiveness" : {
"livelinessCode" : "GREEN",
"livelinessDetails" : [ "The vcf site Palo Alto Epic Centeris live" ]
},
"memberHealth" : {
"healthCode" : "GREEN",
"healthDetails" : [ "Category: CPU, usage: 60.0, and it is normal." ]
}
} ]
This API can be used to get list of all VCF instances in the federation with details.
* VCF instance details
* VCF instance inventory
* VCF instance liveness
* VCF instance health
2.9.6. Get Members
Get the details of the members.
Prerequisites
-
Federation must be created.
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/members' -i -X GET \
-H 'Authorization: Bearer etYWR....'
HTTP Request
GET /v1/sddc-federation/members HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 426
{
"memberDetail" : {
"role" : "CONTROLLER",
"fqdn" : "sddc-manager-1.vrack.vsphere.local",
"siteType" : "DATACENTER",
"siteName" : "Palo Alto Epic Center",
"country" : "USA",
"state" : "California",
"city" : "Palo Alto",
"coordinate" : {
"longitude" : -122.838,
"latitude" : 37.286
}
},
"federationName" : "New Federation",
"permissions" : [ "JOIN" ],
"error" : null
}
2.9.7. Leave from the federation
Leaving a federation removes the Multi-Instance Management view from your SDDC Manager dashboard.
If you are a controller, you can leave a federation only if there is at least one more controller in the federation.
If you are the only controller member in a federation, you must dismantle a federation instead of leaving it.
Prerequisites
-
The following data is required
-
ID (FQDN) of the member to be deleted, specified as a path variable.
-
If member ID is equal to the FQDN of invoking SDDC Manager, it is treated as leave.
-
Otherwise, it is treated as evicting the member (specified by ID) by invoking SDDC Manager. In this case the invoking SDDC Manager must be a Controller.
-
-
-
The Request param 'force' is optional
-
If force is set to true, the leaving member will not contact controller, but shut down local system.
Default value for force is false, in which case leaving member will issue REST request to a remote controller asking for leave.
-
-
If the invoking SDDC Manager is the only member in the federation, do not use leave, but teardown instead.
Steps
-
If ID is the same as FQDN of invoking SDDC Manager and force is false
-
This member will issue rest request to a remote controller asking for leave, if the remote response
is successful, it will then shut down its local system. Persistent store will be archived and cleaned up.
-
-
If ID is the same as FQDN of invoking SDDC Manager and force is true
-
This member will not contact remote controller but shut down its local system directly. Persistent store will be archived and cleaned up.
-
-
If ID is the different from FQDN of invoking SDDC Manager
-
The invoking SDDC Manager will evict the member (specified by ID) from federation and ask the evictee to clean its system.
force variable in this case doesn’t matter.
-
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/members/sddcmgr-newyork.msm.local' -i -X DELETE \
-H 'Authorization: Bearer etYWR....'
HTTP Request
DELETE /v1/sddc-federation/members/sddcmgr-newyork.msm.local HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 202 Accepted
Content-Disposition: inline;filename=f.txt
Content-Type: application/json
Content-Length: 246
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : "592d8232-a852-4af5-8dbd-ce17e1787fac",
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
To Force remove the member use following:
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation/members/sddcmgr-newyork.msm.local?force=true' -i -X DELETE \
-H 'Authorization: Bearer etYWR....'
HTTP Request
DELETE /v1/sddc-federation/members/sddcmgr-newyork.msm.local?force=true HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 202 Accepted
Content-Disposition: inline;filename=f.txt
Content-Type: application/json
Content-Length: 246
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : "d4abc487-e49f-4e06-aa3e-500d90459aef",
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
2.9.8. Tear Down Federation
You can dismantle a federation if you are the last controller member in the federation.
Only members with the controller role can dismantle a federation.
Prerequisites
-
No request body is needed.
-
Invoking SDDC Manager must be of Controller role, and the only one in the federation.
Steps
-
When Teardown API is invoked, it does the following
-
All fabric services previously set up will be shut down.
-
Persistent store will be archived and cleaned up.
-
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-federation' -i -X DELETE \
-H 'Authorization: Bearer etYWR....'
HTTP Request
DELETE /v1/sddc-federation HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWR....
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 246
{
"status" : "SUCCEEDED",
"operation" : null,
"taskId" : "39f2d3a4-db3a-4d2a-8515-f62ccad34726",
"remoteOperationTask" : null,
"progressDetails" : null,
"created" : null,
"lastUpdated" : null,
"errors" : null,
"payload" : null
}
2.10. AVNs
2.10.1. Get the AVNs
This API is used to fetch all configured AVNs
Prerequisites
None
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/avns' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/avns HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 330
[ {
"id" : "vcf-avn-regiona",
"name" : "vcf-avn-regiona",
"regionType" : "REGION_A",
"subnet" : "192.168.20.0",
"subnetMask" : "255.255.255.0",
"gateway" : "192.168.20.1",
"mtu" : 9000,
"portGroupName" : "vcf-avn-regiona-portGroup",
"domainName" : "vmware.vcf.corp",
"routerName" : "vcf-avn-regiona-udlr01"
} ]
2.10.2. Get the AVNs by RegionType
This API is used to fetch all configured AVNs for a given region type
Prerequisites
-
The following data is required
-
RegionType of the AVN
-
Steps
-
Invoke the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/avns?regionType=X_REGION' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/avns?regionType=X_REGION HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 330
[ {
"id" : "vcf-avn-regionx",
"name" : "vcf-avn-regionx",
"regionType" : "X_REGION",
"subnet" : "192.168.30.0",
"subnetMask" : "255.255.255.0",
"gateway" : "192.168.30.1",
"mtu" : 9000,
"portGroupName" : "vcf-avn-regionx-portGroup",
"domainName" : "vmware.vcf.corp",
"routerName" : "vcf-avn-regionx-udlr01"
} ]
2.11. vRealize Suite Lifecycle Manager
2.11.1. vRealize Suite Lifecycle Manager Deployment
To deploy and manage the vRealize Suite products after the initial greenfield deploy of VMware Cloud Foundation, you must first deploy vRealize Suite Lifecycle Manager. To guarantee the success of the vRealize Suite Lifecycle Manager deployment operation, you should pre-validate the deployment input.
Prerequisites
-
The following data is required:
-
Application Virtual Networks are configured
-
Unique vRealize Suite Lifecycle Manager hostname and corresponding IP address from the X-Region Application Virtual Network
-
vRealize Suite Lifecycle Manager API and root passwords
-
-
Additional prerequisites:
-
The vRealize Suite Lifecycle Manager bundle needs to be downloaded and applied on the SDDC Manager
-
Application Virtual Network should have connectivity to the management VLAN
-
Note
|
vRealize Suite Lifecycle Manager deployment is not available if vRealize Suite Lifecycle Manager is successfully deployed as only one instance of it is allowed in the system. In this case, calling the API will produce an error and the user will be provided with information about the allowed HTTP methods for the given endpoint. This information can be found in the "allow" field from the response headers. |
Steps
-
Assemble the vRealize Suite Lifecycle Manager deployment input specification.
Tip
|
Refer to VrslcmDeploymentSpec |
-
Trigger the vRealize Suite Lifecycle Manager deployment input specification validations. For help using the vRealize Suite Lifecycle Manager validation API refer to: Get the status of the validations for vRealize Lifecycle Manager deployment
Warning
|
The triggered validations return a response containing a validation report ID. With that ID, poll the vRealize Suite Lifecycle Manager validations API. While the validations are running, the "executionStatus" is "IN_PROGRESS". You should poll the API until the "executionStatus" is "COMPLETED". |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vrslcms/validations/77c17ee9-7fa6-455f-ace6-602e43c76887' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vrslcms/validations/77c17ee9-7fa6-455f-ace6-602e43c76887 HTTP/1.1
Content-Type: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 170
{
"id" : "9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c",
"description" : "Validating vRealize Suite Lifecycle Manager input parameters",
"executionStatus" : "IN_PROGRESS"
}
-
Once the validations are completed, you can get the overall result of the validations and a detailed list with all checks that have been done and the corresponding status of each check.
-
In case of no errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of only warnings in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED_WITH_WARNINGS".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
-
Tip
|
The validation checks have two severity levels - warning and error. If a failed validation check is marked as an error, the issue must be resolved before proceeding with the deployment. If the issue is marked as a warning, you are advised to look at it and do the best to fix it. You could ignore it and proceed on your own risk without fixing it, but this might affect the deployment and make it fail at a later stage. NOTE: Make changes to the input specification and re-validate using a new API invocation |
-
Once there are no errors and warnings in the validation response, you can proceed with the vRealize Suite Lifecycle Manager deployment. Although the warnings are not forced to be resolved, you should give the best to resolve the uncovered issues by the validations.
-
Trigger the vRealize Suite Lifecycle Manager deployment. This will start a long-running task whose details can be obtained form the HTTP response.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vrslcms' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"networkSpec" : {
"vlanId" : "45",
"subnetMask" : "255.255.252.0",
"gateway" : "10.0.1.250"
},
"fqdn" : "vrslcm.vrack.vsphere.local",
"sshPassword" : "VMware123!",
"apiPassword" : "VMware123!"
}'
HTTP Request
POST /v1/vrslcms HTTP/1.1
Content-Type: application/json
Content-Length: 218
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"networkSpec" : {
"vlanId" : "45",
"subnetMask" : "255.255.252.0",
"gateway" : "10.0.1.250"
},
"fqdn" : "vrslcm.vrack.vsphere.local",
"sshPassword" : "VMware123!",
"apiPassword" : "VMware123!"
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c
Allow: GET
Content-Type: application/json
Content-Length: 131
{
"id" : "9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
Track the task status using the "id" from the previous response. The GET URL is set in the header response and can be used directly. Refer to: Get a Task.
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
Tip
|
Refer to: Retry a Task. |
If the workflow fails after trying to restart the task, perform the vRealize Suite Lifecycle Manager rollback
Tip
|
Refer to: vRealize Suite Lifecycle Manager Rollback. |
2.11.2. vRealize Suite Lifecycle Manager Rollback
When vRealize Suite Lifecycle Manager deployment fails, you can perform rollback to get the environment in a clean state and start a fresh vRealize Suite Lifecycle Manager deployment.
Prerequisites
-
Failed vRealize Suite Lifecycle Manager deployment operation.
Note
|
vRealize Suite Lifecycle Manager rollback is not available if vRealize Suite Lifecycle Manager is successfully deployed. In this case, calling the API will produce an error and the user will be provided with information about the allowed HTTP methods for the given endpoint. This information can be found in the "allow" field from the response headers. |
Steps
-
Trigger the vRealize Suite Lifecycle Manager rollback.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vrslcm' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/vrslcm HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c
Content-Type: application/json
Content-Length: 131
{
"id" : "9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
Track the task status using the "id" from the previous response. The GET URL is set in the header response and can be used directly.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.11.3. vRealize Suite Lifecycle Manager Redeployment
If vRealize Suite Lifecycle Manager becomes corrupted or if you wish to get a fresh vRealize Suite Lifecycle Manager without losing the environment information stored, you can redeploy it.
Prerequisites
-
vRealize Suite Lifecycle Manager in active state in VMware Cloud Foundation inventory
Note
|
As part of the redeployment, all of the vRealize Suite Lifecycle Manager environments created by SDDC Manager will be imported into the new vRealize Suite Lifecycle Manager VM. However, all of the configurations/environments created manually through the vRealize Suite Lifecycle Manager User interface will be lost. |
Steps
-
Trigger the vRealize Suite Lifecycle Manager redeploy.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vrslcm' -i -X PATCH \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
PATCH /v1/vrslcm HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c
Content-Type: application/json
Content-Length: 131
{
"id" : "9b56b98b-ba62-42cb-9ac1-f65e2d20ff9c",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
Track the task status using the "id" from the previous response. The GET URL is set in the header response and can be used directly.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "IN_PROGRESS", the task is still in progress.
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
-
Once the vRealize Suite Lifecycle Manager redeployment succeeds, you can use it to deploy and manage the vRealize Suite products.
2.12. Backup and Restore
Back up and restore solution is provided to backup SDDC manager and configure NSX manager backup.
2.12.1. Configure backup of SDDC manager and NSX manager
It is essential to review the basic principles in a file-based solution for backup. In such a solution, the state of a product is periodically exported to a file that is stored in a domain different than the one where the product is running. If the product needs to be restored, the OVA is re-deployed and a selected backup-file is used to restore the state.
NSX Manager files are backed up by default in the SDDC Manager VM which also has to be backed up. You can configure an external SFTP server as a backup location which is the recommended solution. NSX Manager is backed up every 1 hour
This section provides the steps to configure NSX backup location and the SDDC Manager backup location to an external SFTP server along with encryption configuration for both SDDC Manager and NSX Manager backup.
Backup of SDDC manager can be scheduled by setting the schedule for SDDC Manager in the configuration.
Prerequisites
-
The following data is required
-
Encryption
-
Twelve or more characters.
-
At least one upper-case letter.
-
At least two digits.
-
At least one special character.
-
-
Note
|
SDDC Manager does not store previously-used passphrases. You must store the passphrase in a secure location separate from the backup files and from the Cloud Foundation environment you are protecting. |
-
FTP server details to save the backup file :
-
IP of the server
-
port
-
protocol, which is SFTP
-
username
-
password
-
ssh fingerprint
-
directory path to save the backup file
-
-
SDDC manager schedule details :
-
Frequency of the schedule
-
Schedule details
-
-
The user credentials should have the role of an ADMIN
Tip
|
To get fingerprint execute the below command |
ssh-keygen -lf <(ssh-keyscan -t ssh-rsa -p <port-number> <server-IP-address> 2>/dev/null)
Note
|
Fingerprint should be SHA-256 RSA key. |
Steps
-
Trigger the task using the valid input specification.
Note
|
To trigger the API, the user should have a role of an ADMIN in VCF. |
Note
|
Resource Type allowed for scheduling backup is SDDC_MANAGER. |
Note
|
Only absolute path is accepted for directory path |
Note
|
Scheduling frequency WEEKLY takes the fields daysOfTheWeek, hoursOfTheDay and minuteOfTheHour . Scheduling frequency HOURLY takes the fields hoursOfTheDay and minuteOfTheHour . |
Tip
|
Refer to Security section to set the role as ADMIN for the user. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/backup-configuration' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"encryption" : {
"passphrase" : "VMwareBackup@1"
},
"backupLocations" : [ {
"server" : "10.92.33.23",
"port" : 22,
"protocol" : "SFTP",
"username" : "backup",
"password" : "FTPServer@1",
"directoryPath" : "/vmware/backup",
"sshFingerprint" : "SHA256:w2NgXhG2XXXXXXXX"
} ],
"backupSchedules" : [ {
"frequency" : "WEEKLY",
"daysOfWeek" : [ "SUNDAY", "THURSDAY" ],
"hourOfDay" : 12,
"minuteOfHour" : 34
} ]
}'
Request Body
PUT /v1/system/backup-configuration HTTP/1.1
Content-Type: application/json
Content-Length: 467
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"encryption" : {
"passphrase" : "VMwareBackup@1"
},
"backupLocations" : [ {
"server" : "10.92.33.23",
"port" : 22,
"protocol" : "SFTP",
"username" : "backup",
"password" : "FTPServer@1",
"directoryPath" : "/vmware/backup",
"sshFingerprint" : "SHA256:w2NgXhG2XXXXXXXX"
} ],
"backupSchedules" : [ {
"frequency" : "WEEKLY",
"daysOfWeek" : [ "SUNDAY", "THURSDAY" ],
"hourOfDay" : 12,
"minuteOfHour" : 34
} ]
}
Response Body
HTTP/1.1 202 Accepted
Location: /v1/tasks/604b691b-cc05-450c-8373-5610d91a7a73
Content-Type: application/json
Content-Length: 210
{
"id" : "604b691b-cc05-450c-8373-5610d91a7a73",
"name" : "Configure backup on VCF Components and register backup locations",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Note
|
The SFTP server credentials are saved before configuring any NSX managers. In case configuring the NSX manager failed, an attempt is still made to configure as many NSX managers as possible before failing the task. |
Tip
|
Refer to: Retry a Task. |
2.12.2. Edit the Backup Configuration
Prerequisites
-
The following data is required
-
The configuration which has to be edited (Backup location or Encryption or Backup schedules or all).
-
User credentials with role as an ADMIN in VCF.
-
Note
|
In case you are editing the passphrase, you must store the passphrase in a secure location separate from the backup files and from the Cloud Foundation environment. The encryption passphrase is mapped to the backup file. Editing the passphrase will not update the configured passphrase for previously backed up file. |
Note
|
In case you are editing the backup location, previously collected NSX backups must be manually migrated to the new location. All the parameters of backup location have to be given as input while editing the backup location. |
Note
|
Editing backup configuration updates all the NSX manager’s backup configuration. |
Steps
-
Invoke the API
Tip
|
To get the current backup configuration Refer to: Get the Backup Configuration |
-
The example shown is to edit only the backup location whereas encryption and backup schedule is unchanged.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/backup-configuration' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"backupLocations" : [ {
"server" : "10.92.33.24",
"port" : 22,
"protocol" : "SFTP",
"username" : "backup",
"password" : "FTPServer@2",
"directoryPath" : "/vmware/backup",
"sshFingerprint" : "SHA256:w2NgXhG2XXXXXXXX"
} ]
}'
Request Body
PATCH /v1/system/backup-configuration HTTP/1.1
Content-Type: application/json
Content-Length: 255
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"backupLocations" : [ {
"server" : "10.92.33.24",
"port" : 22,
"protocol" : "SFTP",
"username" : "backup",
"password" : "FTPServer@2",
"directoryPath" : "/vmware/backup",
"sshFingerprint" : "SHA256:w2NgXhG2XXXXXXXX"
} ]
}
Response Body
HTTP/1.1 202 Accepted
Location: /v1/tasks/2c78d42b-1cd9-4ed1-93a6-fc156c25232c
Content-Type: application/json
Content-Length: 210
{
"id" : "2c78d42b-1cd9-4ed1-93a6-fc156c25232c",
"name" : "Configure backup on VCF Components and register backup locations",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
The example shown is to edit only the backup schedule whereas backup location and encryption is unchanged.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/backup-configuration' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"backupSchedules" : [ {
"resourceType" : "SDDC_MANAGER",
"frequency" : "WEEKLY",
"daysOfWeek" : [ "MONDAY" ],
"hourOfDay" : 12,
"minuteOfHour" : 23
} ]
}'
Request Body
PATCH /v1/system/backup-configuration HTTP/1.1
Content-Type: application/json
Content-Length: 179
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"backupSchedules" : [ {
"resourceType" : "SDDC_MANAGER",
"frequency" : "WEEKLY",
"daysOfWeek" : [ "MONDAY" ],
"hourOfDay" : 12,
"minuteOfHour" : 23
} ]
}
Response Body
HTTP/1.1 202 Accepted
Location: /v1/tasks/f5b69afd-b416-46bb-92eb-80f116611c25
Content-Type: application/json
Content-Length: 209
{
"id" : "f5b69afd-b416-46bb-92eb-80f116611c25",
"name" : "Configure backup on VCF Components and register backup schedule",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2019-05-10T11:13:22.551Z"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
2.12.3. Get the Backup Configuration
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/backup-configuration' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/backup-configuration HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 225
{
"backupLocations" : [ {
"server" : "10.92.33.24",
"port" : 22,
"protocol" : "SFTP",
"username" : "backup",
"directoryPath" : "/vmware/backup"
} ],
"backupSchedules" : [ ],
"isConfigured" : true
}
Note
|
"isConfigured" notifies if the backup has been configured. |
Note
|
Encryption details which was configured is not returned due to security reasons. |
2.12.4. Initiate Backup of SDDC Manager
Back up the SDDC Manager VM regularly to avoid downtime and data loss in case of a system failure. If the SDDC Manager VM does fail, you can restore VM to the last backup
In case you need to restore the SDDC Manager VM, you select the backup file to restore and download the appropriate OVA file. You can deploy this OVA either through vCenter Server or the OVF tool. You then load the state on the newly deployed SDDC Manager VM.
Prerequisites
-
The following action needs to be performed
-
Backup must be configured
-
-
Computer that runs the backup automation script (or where you manually run the APIs). This computer may also be used to coordinate and support a restore operation. It can also host the FTP server required to protect the NSX Manager instances.
-
Reliable and secure storage volume on which the backup files are stored. The computer and the storage need to be in a different fault domain.
Note
|
Only resourceType:SDDC_MANAGER is supported currently. |
Tip
|
Refer to: Configure backup of SDDC manager and NSX manager |
Steps
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/backups/tasks' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ]
}'
HTTP Request
POST /v1/backups/tasks HTTP/1.1
Content-Type: application/json
Content-Length: 64
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: 3b48ffc5-fafd-46e5-88ee-ce3ccc4d7a93
Content-Type: application/json
Content-Length: 252
{
"id" : "3b48ffc5-fafd-46e5-88ee-ce3ccc4d7a93",
"name" : "SDDC Manager Backup Operation",
"status" : "IN_PROGRESS",
"resources" : [ {
"type" : "BACKUP",
"name" : "vcf-backup-sddc-manager-vrack-vsphere-local-2019-07-29-12-02-46"
} ]
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
-
The backup files are saved in the /nfs/vmware/vcf/nfs-mount/sddc-manager-backup directory on the SDDC Manager VM.
-
In this example, the full filename of the backup file will be vcf-backup-sddc-manager-vrack-vsphere-local-2019-07-29-12-02-46.tar.gz
Tip
|
To inspect the contents of a backup tar file, use the decrypt command described in Initiate Restore of SDDC Manager |
Note
|
Make sure to copy the backup file to a known location along with the corresponding passphrases. |
2.12.5. Initiate Restore of SDDC Manager
In case of a failure, you can restore SDDC Manager from a saved backup.
Prerequisites
-
The following data is required
-
Backup file name and location of the backup file
-
Encryption passphrase used to encrypt the backup file
-
Note
|
Only resourceType:SDDC_MANAGER is supported currently |
Steps
-
Power off the original SDDC Manager VM.
-
Rename the VM to something like sddc-manager-original using the management domain vCenter Server.
-
Identify the backup file to be used for the restore operation.
Tip
|
In most cases, you should select the most recently taken backup. |
-
The backup file contains sensitive data about your Cloud Foundation instance, including passwords in plain text. It is recommended you control access to the decrypted files and securely delete them when you are done with the restore operation.
-
Using a computer that has access to the secure secondary storage where the backup files are stored, navigate to the backup file and extract the contents of the encrypted tar file using the following command.
openssl enc -d -aes256 -in filename-of-selected-file | tar -xz
-
At the prompt, enter the passphrase that you configured before backing up SDDC Manager.
-
In order to restore SDDC Manager, you need to deploy the SDDC Manager OVA.
-
The link to download the OVA is found in the metadata.json file in the backup file.
-
Download the SDDC Manager OVA from the link provided.
-
Deploy SDDC Manager VM from vCenter Server or with the OVF Tool.
-
Deploy SDDC Manager VM from vCenter server
-
Log in to the management domain vCenter Server using a web browser that is running on a system that has access to the downloaded SDDC Manager OVA.
-
In the vSphere Client, expand SDDC-Datacenter > SDDC-Cluster1.
-
Right-click on Mgmt-ResourcePool and select Deploy OVF Template.
-
The Deploy OVF Template wizard appears.
-
Use the local file option and choose the downloaded SDDC Manager OVA
-
Specify the VM name as sddc-manager.
-
Select the location of the SDDC Manager VM as SDDC-Datacenter > Management VMs and click Next.
-
Specify the compute resource destination. See the metadata.json file for the name of the pool and click Next.
-
Verify the template details and click Next.
-
Read the license terms and click the checkbox at the bottom of the page to accept the license agreements.
-
On the storage page, keep the vSAN datastore selection. The datastore name is in the metadata.json file and click Next.
-
On the networks page:
-
Do not change the default setting for Source Network.
-
In Destination Network, select the port group that is listed in the metadata.json file.
-
Do not change the default setting for IP allocation and IP protocol.
-
-
Click Next.
-
For the fields on the Customize template page, refer to the metadata.json file. Note the following:
-
Specify the backup user password from the security_password_vault.jsonfile.
-
For the other root, vcf, and admin user accounts, you can re-use the passwords for the original
***SDDC Manager or assign new ones. For password considerations, refer to the About the -
Deployment Parameter Sheet section in the VMware Cloud Foundation Architecture and
-
Deployment Guide.
-
Leave the DNS and NTP fields empty
-
Ignore the Brownfield Settings section.
-
-
Click Next.
-
Review the OVF details and click Finish. The OVF deployment begins. You can view the details in the Tasks pane.
-
Power on the newly deployed SDDC Manager VM and wait for the vCenter Server UI to report its IP address has been assigned.
-
SSH in to the SDDC Manager and log in as the vcf user.
-
-
Deploy SDDC Manager VM with the OVF tool
-
Install the OVF tool on a system that has access to the SDDC Manager OVA that you downloaded.
-
Prerequisites
-
Download the OVF tool and install it on a system that has access to the SDDC Manager OVA that you downloaded
-
Retrieve the DNS name or IP address of a host from the management domain.
-
Log into the management domain vCenter Server
-
navigate to the management domain cluster
-
select an active host that is not reporting any vSAN errors
-
-
Retrieve the rRoot password for the selected host. Search for the host’s DNS name in the security_password_vault.json, which displays the root password.
-
-
Run the following command with information from the metadata.json file.
ovftool --noSSLVerify --skipManifestCheck --powerOn --diskMode=thin --acceptAllEulas -- allowExtraConfig --ipProtocol=IPv4 --ipAllocationPolicy=fixedPolicy --datastore=datastoreName -- name=sddc-manager --X:injectOvfEnv --X:waitForIp --prop:ROOT_PASSWORD=Password -- prop:VCF_PASSWORD=Password --prop:BASIC_AUTH_PASSWORD=Password --prop:BACKUP_PASSWORD=Password --prop:vami.gateway.SDDC-Manager=gatewayIP --prop:vami.ip0.SDDC-Manager=SDDC_Manager_IP -- prop:vami.netmask0.SDDC-Manager=networkMask --prop:vami.hostname=hostName -- prop:vami.searchpath.SDDC-Manager=searchPath --prop:vami.domain.SDDC-Manager=domain -- network=portGroupName --X:logFile=./ovftool.log --X:logLevel=verbose OVA_filename vi:// root:password_for_selected_host>@host_DNS_name_or_ IP
OUTPUT: Opening OVA source: VCF-SDDC-Manager-Appliance-3.7.2.0-13774914_OVF10.ova The manifest does not validate Opening VI target: vi://[email protected]:443/ Deploying to VI: vi://[email protected]:443/ Transfer Completed Powering on VM: sddc-manager Task Completed Received IP address: 10.0.0.4 Completed successfully
-
Navigate to the management domain vCenter Server.
-
Move the sddc-manager VM into the Management VM folder.
-
Move the sddc-manager VM into the Management Resource Pool. The name of this pool is available in the metadata.json file.
-
To confirm that SDDC Manager has been deployed correctly, ssh in to the VM as the vcf user.
-
-
-
Take a snapshot of the SDDC Manager VM.
-
Copy the encrypted backup file to the /tmp directory on the SDDC Manager VM.
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/restores/tasks' -i -u 'admin:VMwareInfra@1' -X POST \
-H 'Content-Type: application/json' \
-d '{
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ],
"backupFile" : "/tmp/backup.tar.gz",
"encryption" : {
"passphrase" : "VMwareBackup@1"
}
}'
HTTP Request
POST /v1/restores/tasks HTTP/1.1
Content-Type: application/json
Content-Length: 163
Host: sddc-manager.sfo01.rainpole.local
Authorization: Basic YWRtaW46Vk13YXJlSW5mcmFAMQ==
{
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ],
"backupFile" : "/tmp/backup.tar.gz",
"encryption" : {
"passphrase" : "VMwareBackup@1"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Location: 4b5d3731-899c-4ef5-987a-859e5abe6a60
Content-Type: application/json
Content-Length: 79
{
"id" : "4b5d3731-899c-4ef5-987a-859e5abe6a60",
"status" : "IN_PROGRESS"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED" , perform the following steps to retry.
-
Copy the contents of /var/log/vmware/vcf/sddc-support/ to a filesystem that is external to SDDC Manager. This preserves the restore log file.
-
Revert the SDDC Manager VM to the snapshot taken in step 12.
-
Take a new snapshot.
-
Perform steps 13 - 16.
-
If this attempt fails, contact VSDDC ManagerMware Support.
-
-
Verify SDDC Manager VM operations after restore:
-
SSH in to the SDDC Manager as the vcf user.
-
Run the following command:
sudo /opt/vmware/sddc-support/sos --health-check
-
When prompted, enter the vcf user password.
-
A green status indicates that the health is normal, yellow provides a warning that attention might be required, and red indicates that the component needs immediate attention. Possible reasons for yellow or red status are that you used an SDDC Manager backup with unresolved workflows, you used a backup taken before a workflow was completed successfully, you restored other products in addition to SDDC Manager, or some components are not operational. Call VMware Support if you need help with resolving the yellow or red status
-
If the status was green,
-
Download the applicable install and upgrade bundles.
-
Download the upgrade bundles applicable to your environment.
-
-
2.13. Depot Settings
2.13.1. Get Depot Settings
Online:
-
Get Depot Settings API is used to retrieve the existing My VMware and Dell EMC Support Accounts' information.
Offline:
-
Get Depot Settings API returns account information.
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/depot' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/settings/depot HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 364
{
"vmwareAccount" : {
"username" : "acmeuser",
"password" : "acmepassword",
"status" : "DEPOT_CONNECTION_SUCCESSFUL",
"message" : "Depot Status: Success"
},
"dellEmcSupportAccount" : {
"username" : "vxrailUser",
"password" : "vxrailPassword",
"status" : "DEPOT_CONNECTION_SUCCESSFUL",
"message" : "Depot Status: Success"
}
}
2.13.2. Update Depot Settings
Online:
-
Update Depot Settings API is used to update SDDC Manager with the My VMware and Dell EMC Support Account. This account is used for Downloading Upgrade/Install Bundles(Please refer to Update Bundle for Downloading).
Offline:
-
Use the Bundle Transfer Utility tool(Please refer to the VMware Cloud Foundation documentation for more information) to manually download the bundles from the depot on your local computer and then copy them to SDDC Manager. Once the bundles are available in the SDDC Manager. Use the Upload a Bundle API to upload it to SDDC Manager.
Prerequisites
The following data is required for updating My VMware Account information:
-
Username of My VMware Account.
-
Password of My VMware Account.
The following data is required for updating Dell EMC Support Account information:
-
Username of Dell EMC Support Account.
-
Password of Dell EMC Support Account.
Tip
|
Refer to: DepotSettings and DepotAccount. |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/depot' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"vmwareAccount" : {
"username" : "acmeuser",
"password" : "acmepassword"
},
"dellEmcSupportAccount" : {
"username" : "dellEmcUser",
"password" : "dellEmcPassword"
}
}'
HTTP Request
PUT /v1/system/settings/depot HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 192
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"vmwareAccount" : {
"username" : "acmeuser",
"password" : "acmepassword"
},
"dellEmcSupportAccount" : {
"username" : "dellEmcUser",
"password" : "dellEmcPassword"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 364
{
"vmwareAccount" : {
"username" : "acmeuser",
"password" : "acmepassword",
"status" : "DEPOT_CONNECTION_SUCCESSFUL",
"message" : "Depot Status: Success"
},
"dellEmcSupportAccount" : {
"username" : "vxrailUser",
"password" : "vxrailPassword",
"status" : "DEPOT_CONNECTION_SUCCESSFUL",
"message" : "Depot Status: Success"
}
}
2.14. Prechecks
2.14.1. Perform System Precheck
Precheck System API is used to perform the required system level health checks and upgrade pre-checks for an upgrade to be successful. Make sure to run these checks before performing any upgrade.
Tip
|
Refer to: Get the Upgradables to query for the list of upgradables which can be used for performing Domain, Cluster level checks. |
Prerequisites
The following data is required:
-
Resource ID. Ex: Domain ID, Cluster ID.
-
Resource Type. Ex: DOMAIN, CLUSTER.
Tip
|
Refer to: PrecheckSpec and Resource. |
Note
|
Supported Resource Type’s are DOMAIN, CLUSTER. For Cluster level checks, the Cluster ID’s can be retrieved based on the Host’s that are available for upgrade, Refer to: Get the Hosts and Get the Clusters API’s. |
Steps
-
Invoke the API. This API returns a precheck task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/prechecks' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"resources" : [ {
"resourceId" : "bbd38966-8537-46f1-9a54-06fbfe7079c6",
"type" : "DOMAIN"
} ]
}'
HTTP Request
POST /v1/system/prechecks HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 110
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"resources" : [ {
"resourceId" : "bbd38966-8537-46f1-9a54-06fbfe7079c6",
"type" : "DOMAIN"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/system/prechecks/tasks/a595ed23-ec8f-42d3-88fb-1dcfe830337e
Content-Length: 667
{
"id" : "a595ed23-ec8f-42d3-88fb-1dcfe830337e",
"name" : "Precheck Task",
"type" : "PRECHECK",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:18.684Z",
"completionTimestamp" : "2020-04-10T06:25:18.684Z",
"subTasks" : [ {
"name" : "Upgrade - DOMAIN ",
"description" : "Upgrade - DOMAIN ",
"status" : "PENDING",
"creationTimestamp" : "2020-04-10T06:25:18.684Z",
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ]
} ],
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the precheck task API with the ID from the response of the previous API.
Tip
|
Refer to: Get System Precheck Task. |
2.14.2. Get System Precheck Task
Get Precheck Task by ID API is used to retrieve a precheck task.
Prerequisites
-
The following data is required
-
ID of the precheck task
-
Steps
-
Invoke the API. This API returns a precheck task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/prechecks/tasks/a595ed23-ec8f-42d3-88fb-1dcfe830337e' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 667
{
"id" : "a595ed23-ec8f-42d3-88fb-1dcfe830337e",
"name" : "Precheck Task",
"type" : "PRECHECK",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:19.144Z",
"completionTimestamp" : "2020-04-10T06:25:19.144Z",
"subTasks" : [ {
"name" : "Upgrade - DOMAIN ",
"description" : "Upgrade - DOMAIN ",
"status" : "PENDING",
"creationTimestamp" : "2020-04-10T06:25:19.145Z",
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ]
} ],
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ],
"isCancellable" : false
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 667
{
"id" : "a595ed23-ec8f-42d3-88fb-1dcfe830337e",
"name" : "Precheck Task",
"type" : "PRECHECK",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:19.144Z",
"completionTimestamp" : "2020-04-10T06:25:19.144Z",
"subTasks" : [ {
"name" : "Upgrade - DOMAIN ",
"description" : "Upgrade - DOMAIN ",
"status" : "PENDING",
"creationTimestamp" : "2020-04-10T06:25:19.145Z",
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ]
} ],
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
} ],
"isCancellable" : false
}
2.15. Bundles
2.15.1. Upload a Bundle
Offline:
-
Upload a Bundle API is used to upload Bundles which are downloaded using Bundle Transfer Utility tool.
Tip
|
Please refer to the VMware Cloud Foundation documentation for more information on the Bundle Transfer Utility tool. |
Prerequisites
The following data is required:
-
Bundle file path.
-
Bundle manifest file path.
-
Bundle manifest signature file path.
Tip
|
Refer to: BundleUploadSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
"manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
"signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}'
HTTP Request
POST /v1/bundles HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 198
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"bundleFilePath" : "/home/vcf/bundles/bundle-11237.tar",
"manifestFilePath" : "/home/vcf/bundles/bundle-11237.manifest",
"signatureFilePath" : "/home/vcf/bundles/bundle-11237.manifest.sig"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/fdd90582-cc96-4752-b670-b36110802d5b
Content-Length: 366
{
"id" : "fdd90582-cc96-4752-b670-b36110802d5b",
"name" : "Upload BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
"type" : "BUNDLE_UPLOAD",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:20.055Z",
"resources" : [ {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
2.15.2. Upload a Partner Bundle
Offline:
-
Upload a Bundle API is used to upload partner Bundles.
Tip
|
Please refer to the VMware Cloud Foundation documentation for more information. |
Prerequisites
The following data is required:
-
Partner bundle version.
-
Partner bundle metadata file path.
-
Software compatibility sets file path.
Tip
|
Refer to: BundleUploadSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json",
"partnerExtensionSpec" : {
"partnerBundleVersion" : "4.7.410-26262335",
"partnerBundleMetadataFilePath" : "/home/vcf/bundles/partnerBundleMetadata.json"
}
}'
HTTP Request
POST /v1/bundles HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 254
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json",
"partnerExtensionSpec" : {
"partnerBundleVersion" : "4.7.410-26262335",
"partnerBundleMetadataFilePath" : "/home/vcf/bundles/partnerBundleMetadata.json"
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/fdd90582-cc96-4752-b670-b36110802d5b
Content-Length: 346
{
"id" : "fdd90582-cc96-4752-b670-b36110802d5b",
"name" : "Upload BUNDLE - VXRAIL:6.7.0-13006603",
"type" : "BUNDLE_UPLOAD",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:19.247Z",
"resources" : [ {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
2.15.3. Update Software compatibility sets
Offline:
-
Update software compatibility sets for Bundles API is used to update software compatibility sets for Bundles.
Tip
|
Please refer to the VMware Cloud Foundation documentation for more information. |
Prerequisites
The following data is required:
-
Software compatibility sets file path.
Tip
|
Refer to: BundleUpdateSpec. |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles/' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json"
}'
HTTP Request
PATCH /v1/bundles/ HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 86
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"compatibilitySetsFilePath" : "/home/vcf/bundles/softwareCompatibilitySets.json"
}
HTTP Response
HTTP/1.1 202 Accepted
2.15.4. Get the Bundles
-
Get the Bundles API is used to get all the bundles.
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/bundles HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1840
{
"elements" : [ {
"id" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "VMWARE_SOFTWARE",
"description" : "ESX update bundle - 13004448(67EP7)==>13010696 (vsphere67U2)",
"version" : "253.0.0-111959",
"severity" : null,
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"isCumulative" : false,
"isCompliant" : null,
"sizeMB" : 453.0,
"downloadStatus" : "SUCCESSFUL",
"components" : [ {
"description" : "ESX_HOST Update Bundle",
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"toVersion" : "6.7.0-13006603",
"fromVersion" : "6.7.0-13004448",
"imageType" : "PATCH",
"id" : "a65d9d83-88b9-475f-a2ba-ee5d9be34f8d",
"type" : "HOST"
} ]
}, {
"id" : "fc733693-6ec1-4959-8ed4-615f1ec93dd1",
"type" : "VMWARE_SOFTWARE",
"description" : "PSC-VC -67U2-Update bundle ( 11726888 ==> 13010631)",
"version" : "253.0.0-111959",
"severity" : null,
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"isCumulative" : false,
"isCompliant" : null,
"sizeMB" : 453.0,
"downloadStatus" : "SUCCESSFUL",
"components" : [ {
"description" : "PSC Update Bundle",
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"toVersion" : "6.7.0-13010631",
"fromVersion" : "6.7.0-11726888",
"imageType" : "PATCH",
"id" : "690cbe9e-241b-4086-bbf3-719b40499d6f",
"type" : "PSC"
}, {
"description" : "VCENTER Update Bundle",
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"toVersion" : "6.7.0-13010631",
"fromVersion" : "6.7.0-11726888",
"imageType" : "PATCH",
"id" : "690cbe9e-241b-4086-bbf3-719b40499d6f",
"type" : "VCENTER"
} ]
} ]
}
2.15.5. Get a Bundle
-
Get a Bundle API is used to get a specific bundle.
Prerequisites
-
The following data is required:
-
ID of the Bundle
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles/fd655436-ec3c-4f10-baed-3a3dde5a6bc6' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/bundles/fd655436-ec3c-4f10-baed-3a3dde5a6bc6 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 997
{
"id" : "fc733693-6ec1-4959-8ed4-615f1ec93dd1",
"type" : "VMWARE_SOFTWARE",
"description" : "PSC-VC -67U2-Update bundle ( 11726888 ==> 13010631)",
"version" : "253.0.0-111959",
"severity" : null,
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"isCumulative" : false,
"isCompliant" : null,
"sizeMB" : 453.0,
"downloadStatus" : "SUCCESSFUL",
"components" : [ {
"description" : "PSC Update Bundle",
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"toVersion" : "6.7.0-13010631",
"fromVersion" : "6.7.0-11726888",
"imageType" : "PATCH",
"id" : "690cbe9e-241b-4086-bbf3-719b40499d6f",
"type" : "PSC"
}, {
"description" : "VCENTER Update Bundle",
"vendor" : "VMware",
"releasedDate" : "2019-05-10T10:29:10.645Z",
"toVersion" : "6.7.0-13010631",
"fromVersion" : "6.7.0-11726888",
"imageType" : "PATCH",
"id" : "690cbe9e-241b-4086-bbf3-719b40499d6f",
"type" : "VCENTER"
} ]
}
2.15.6. Update Bundle for Downloading
Online:
-
Update a Bundle for downloading from depot API is used to Download Bundles from the depot.
Tip
|
Refer to: Update Depot Settings to configure My VMware and Dell EMC Support Account in SDDC Manager. |
Prerequisites
-
The following data is required
-
ID of the bundle to be downloaded.
-
Tip
|
Refer to: BundleUpdateSpec and BundleDownloadSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/bundles/fd655436-ec3c-4f10-baed-3a3dde5a6bc6' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"bundleDownloadSpec" : {
"downloadNow" : true
}
}'
HTTP Request
PATCH /v1/bundles/fd655436-ec3c-4f10-baed-3a3dde5a6bc6 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 59
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"bundleDownloadSpec" : {
"downloadNow" : true
}
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/a4c15be0-448a-446c-9a83-8df70c5ef035
Content-Length: 370
{
"id" : "a4c15be0-448a-446c-9a83-8df70c5ef035",
"name" : "Download BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
"type" : "BUNDLE_DOWNLOAD",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:18.916Z",
"resources" : [ {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
2.16. Upgradables
2.16.1. Get the Upgradables
Get the Upgradables API provides the list of upgradables in the system. Each upgradable provides information about the bundle, resource and its associated software components that can be prechecked and upgraded. The upgradables can be of different types ex: AVAILABLE, PENDING, SCHEDULED etc.
Note
|
The Get the Upgradables DOES NOT provide the unassigned hosts which can be upgraded. Refer to: Unassigned Host Upgrade. |
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/upgradables' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/upgradables HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 369
{
"elements" : [ {
"bundleId" : "a7855372-bbf1-4db3-99b8-c4a0458d8317",
"bundleType" : "VXRAIL",
"resource" : {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
},
"softwareComponents" : [ {
"id" : "995a74bb-6b32-4bcb-868f-08ba9d379dfd",
"type" : "VXRAIL"
} ],
"status" : "AVAILABLE"
} ]
}
2.17. Version Aliases
2.17.1. Get Version Aliases
-
Get Version Alias Configuration API is used to get version alias configuration.
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/settings/version-aliases HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 177
{
"elements" : [ {
"bundleComponentType" : "VCENTER",
"versionAliases" : [ {
"version" : "6.7.0-14765156",
"aliases" : [ "6.7.0-14765268" ]
} ]
} ]
}
2.17.2. Update Version Aliases
Update Version Alias Configurations
* Update Version Alias Configurations API is used to update multiple version alias configurations.
Prerequisites
-
The following data is required
-
Bundle component type
-
One or more version aliases
-
Tip
|
Refer to: VersionAliasesForBundleComponentTypeSpec |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"versionAliasesForBundleComponentTypes" : [ {
"bundleComponentType" : "VCENTER",
"versionAliases" : [ {
"version" : "6.7.0-14765156",
"aliases" : [ "6.7.0-14765268" ]
} ]
} ],
"forceUpdate" : true
}'
HTTP Request
PUT /v1/system/settings/version-aliases HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 230
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"versionAliasesForBundleComponentTypes" : [ {
"bundleComponentType" : "VCENTER",
"versionAliases" : [ {
"version" : "6.7.0-14765156",
"aliases" : [ "6.7.0-14765268" ]
} ]
} ],
"forceUpdate" : true
}
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 177
{
"elements" : [ {
"bundleComponentType" : "VCENTER",
"versionAliases" : [ {
"version" : "6.7.0-14765156",
"aliases" : [ "6.7.0-14765268" ]
} ]
} ]
}
Update Version Alias Configuration
* Update Version Alias Configuration API is used to update a specific version alias configuration.
Prerequisites
-
The following data is required
-
Bundle component type
-
Version
-
Alias specification
-
Tip
|
Refer to: AliasSpec |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases/VCENTER/6.7.0-14765156' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"aliases" : [ "6.7.0-14765268" ],
"forceUpdate" : true
}'
HTTP Request
PUT /v1/system/settings/version-aliases/VCENTER/6.7.0-14765156 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 62
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"aliases" : [ "6.7.0-14765268" ],
"forceUpdate" : true
}
HTTP Response
HTTP/1.1 200 OK
Content-Disposition: inline;filename=f.txt
Content-Type: application/json
Content-Length: 177
{
"elements" : [ {
"bundleComponentType" : "VCENTER",
"versionAliases" : [ {
"version" : "6.7.0-14765156",
"aliases" : [ "6.7.0-14765268" ]
} ]
} ]
}
2.17.3. Delete Version Aliases
Delete Version Aliases
* Delete Version Alias Configuration API is used to delete version alias configurations by bundle component type, version and alias version.
Prerequisites
-
The following data is required
-
Bundle component type
-
Bundle component version
-
One or more alias versions to be removed
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases/VCENTER/6.7.0-14765156' -i -X DELETE \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '[ "6.7.0-14765268" ]'
HTTP Request
DELETE /v1/system/settings/version-aliases/VCENTER/6.7.0-14765156 HTTP/1.1
Content-Type: application/json
Content-Length: 20
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
[ "6.7.0-14765268" ]
HTTP Response
HTTP/1.1 204 No Content
Delete Version Alias by Type and Version
* Delete Version Alias Configuration API is used to delete a version alias configuration by bundle component type and version.
Prerequisites
-
The following data is required
-
Bundle component type
-
Bundle component version
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases/VCENTER/6.7.0-14765156' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/system/settings/version-aliases/VCENTER/6.7.0-14765156 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 204 No Content
Delete Version Alias by Type
* Delete Version Alias for a bundle component type API is used to delete a version alias configuration by bundle component type.
Prerequisites
-
The following data is required
-
Bundle component type
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/settings/version-aliases/VCENTER' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/system/settings/version-aliases/VCENTER HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 204 No Content
2.18. Upgrades
2.18.1. Perform Upgrade
Perform Upgrade API is used to perform upgrades. Upgrades are sequential. So in order to upgrade to a release, your environment must be on the version before that release. Upgrades are applied on a workload domain basis. The management domain contains the core infrastructure, so you must upgrade the management domain before upgrading the other workload domains. You must upgrade all required components to keep your system in an optimum state.
Note
|
Performing upgrades are supported on VMware Cloud Foundation 3.5 BOM resources and above. |
Domain Upgrade
Use the Get the Upgradables to query for the list of upgradables(bundle and resource details) which can be used for performing Domain upgrades.
Prerequisites
The following data is required:
-
Bundle ID.
-
Resource Type. Ex: DOMAIN.
-
One or more Resource upgrade specifications.
-
Each Resource upgrade specification should contain.
-
Resource ID. Ex: Domain ID.
-
Upgrade scheduled time or Upgrade now option.
-
Tip
|
Refer to: UpgradeSpec and ResourceUpgradeSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/upgrades' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "DOMAIN",
"resourceUpgradeSpecs" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"scheduledTimestamp" : "2020-04-10T06:25:17.471Z",
"upgradeNow" : false
} ]
}'
HTTP Request
POST /v1/upgrades HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 263
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "DOMAIN",
"resourceUpgradeSpecs" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"scheduledTimestamp" : "2020-04-10T06:25:17.471Z",
"upgradeNow" : false
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/fbf94ee3-dddd-49d4-b4b4-04a51fdf4fbb
Content-Length: 478
{
"id" : "fbf94ee3-dddd-49d4-b4b4-04a51fdf4fbb",
"name" : "Upgrade DOMAIN - [acme-domain] using BUNDLE - PSC:6.7.0-13010631 VCENTER:6.7.0-13010631",
"type" : "UPGRADE",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:17.470Z",
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
}, {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
Cluster Upgrade
Use the Get the Upgradables to query for the list of upgradables(bundle and resource details) which can be used for performing Cluster level upgrades.
Note
|
For Cluster level upgrades, the Cluster ID’s can be retrieved based on the Host’s that are available for upgrade, Refer to: Get the Hosts and Get the Clusters API’s. |
Prerequisites
The following data is required:
-
Bundle ID.
-
Resource Type. Ex: CLUSTER.
-
One or more Resource upgrade specifications.
-
Each Resource upgrade specification should contain.
-
Resource ID. Ex: Cluster ID.
-
Upgrade scheduled time or Upgrade now option.
-
Tip
|
Refer to: UpgradeSpec and ResourceUpgradeSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/upgrades' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "CLUSTER",
"resourceUpgradeSpecs" : [ {
"resourceId" : "fada8a63-4b07-4369-8c74-779cf993f41c",
"scheduledTimestamp" : "2020-04-10T06:25:19.716Z",
"upgradeNow" : false
} ]
}'
HTTP Request
POST /v1/upgrades HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 264
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "CLUSTER",
"resourceUpgradeSpecs" : [ {
"resourceId" : "fada8a63-4b07-4369-8c74-779cf993f41c",
"scheduledTimestamp" : "2020-04-10T06:25:19.716Z",
"upgradeNow" : false
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/fbf94ee3-dddd-49d4-b4b4-04a51fdf4fbb
Content-Length: 456
{
"id" : "fbf94ee3-dddd-49d4-b4b4-04a51fdf4fbb",
"name" : "Upgrade DOMAIN - [acme-domain] using BUNDLE - HOST:6.7.0-13006603",
"type" : "UPGRADE",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:19.716Z",
"resources" : [ {
"resourceId" : "a282507a-7e2c-4335-98b8-1cc66687d5b5",
"type" : "DOMAIN"
}, {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
Unassigned Host Upgrade
The Get the Upgradables DOES NOT provide the unassigned hosts which can be upgraded. These unassigned host details(current version, host ID) needs to be queried using Get the Hosts and Get the Clusters API’s.
Prerequisites
The following data is required:
-
Resource Type. Ex: UNASSIGNED_HOST.
-
One or more Resource upgrade specifications.
-
Each Resource upgrade specification should contain.
-
Resource ID. Ex: UnAssigned Host ID.
-
Upgrade scheduled time or Upgrade now option.
-
Flag denoting whether the VM’s should be shutdown.
-
The version to which the Host should be upgraded to.
-
Tip
|
Refer to: UpgradeSpec and ResourceUpgradeSpec. |
Steps
-
Invoke the API. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/upgrades' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "UNASSIGNED_HOST",
"resourceUpgradeSpecs" : [ {
"resourceId" : "ecbfdb93-d3c1-41a9-9336-1ae22cfbaf70",
"shutdownVms" : true,
"toVersion" : "6.7.0-13006603",
"upgradeNow" : true
} ]
}'
HTTP Request
POST /v1/upgrades HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 278
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"bundleId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"resourceType" : "UNASSIGNED_HOST",
"resourceUpgradeSpecs" : [ {
"resourceId" : "ecbfdb93-d3c1-41a9-9336-1ae22cfbaf70",
"shutdownVms" : true,
"toVersion" : "6.7.0-13006603",
"upgradeNow" : true
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/d103dc85-c223-461b-a974-c6401615b705
Content-Length: 451
{
"id" : "d103dc85-c223-461b-a974-c6401615b705",
"name" : "Upgrade HOST - [10.0.0.100] using BUNDLE - HOST:6.7.0-13006603",
"type" : "UPGRADE",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:25:18.524Z",
"resources" : [ {
"resourceId" : "ecbfdb93-d3c1-41a9-9336-1ae22cfbaf70",
"type" : "HOST"
}, {
"resourceId" : "fd655436-ec3c-4f10-baed-3a3dde5a6bc6",
"type" : "BUNDLE"
} ],
"isCancellable" : false
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
2.19. Credentials
2.19.1. Get the Credentials
This API is used to fetch all credentials known to the system.
Prerequisites
-
The following data is required
-
Resource type, name, IP address or the domain name associated with the resource is required to filter the results. For allowable resource type values
-
Tip
|
Refer to: Get the Credentials |
Get All Credentials
Steps
-
Invoke the API.
Tip
|
For a scaled environment, it is always recommended to provide "resourceType" filter for avoiding timeouts. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2021
{
"elements" : [ {
"id" : "87af835c-3640-4e21-afa7-1cb241de1480",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.678Z",
"modificationTimestamp" : "2020-04-10T06:20:58.678Z",
"resource" : {
"resourceId" : "3cf68f54-72b8-4e1b-aaf7-a0abb5434504",
"resourceName" : "sfo01m01esx01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.100",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.678Z",
"modificationTimestamp" : "2020-04-10T06:20:58.678Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "90fb5d8c-fc9d-4c73-887c-19685d315bf9",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.678Z",
"modificationTimestamp" : "2020-04-10T06:20:58.678Z",
"resource" : {
"resourceId" : "b8f8cac3-532b-4b0c-9d78-cd118ec14ac5",
"resourceName" : "sfo01m01esx03.sfo01.rainpole.local",
"resourceIp" : "10.0.0.102",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "a1ccaf54-7a4e-45e0-964c-d0c2c5bc19df",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.678Z",
"modificationTimestamp" : "2020-04-10T06:20:58.678Z",
"resource" : {
"resourceId" : "29372d8f-b204-4acb-bd0f-65f49ff05ce4",
"resourceName" : "sfo01m01esx04.sfo01.rainpole.local",
"resourceIp" : "10.0.0.103",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
} ]
}
Get Credentials by "resourceName"
This API can be used to fetch the credentials associated with a resource with a specific name.
Steps
-
Invoke the API by specifying the "resourceName".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials?resourceName=sfo01m01esx02.sfo01.rainpole.local' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials?resourceName=sfo01m01esx02.sfo01.rainpole.local HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 521
{
"elements" : [ {
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.147Z",
"modificationTimestamp" : "2020-04-10T06:21:00.147Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
} ]
}
Get Credentials by "resourceIP"
This API can be used to fetch the credentials associated with a resource with a specific IP address.
Steps
-
Invoke the API by specifying the "resourceIP".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials?resourceIP=10.0.0.101' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials?resourceIP=10.0.0.101 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 521
{
"elements" : [ {
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:59.025Z",
"modificationTimestamp" : "2020-04-10T06:20:59.025Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
} ]
}
Get Credentials by "resourceType"
This API can be used to fetch the credentials associated with all the resources with a specific resource type.
Steps
-
Invoke the API by specifying the "resourceType".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials?resourceType=ESXI' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials?resourceType=ESXI HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2021
{
"elements" : [ {
"id" : "82e1260d-d021-45ef-b288-ed188998338a",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.556Z",
"modificationTimestamp" : "2020-04-10T06:20:58.556Z",
"resource" : {
"resourceId" : "114ab7cc-872d-46ea-b6d3-844beb9e7972",
"resourceName" : "sfo01m01esx01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.100",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.556Z",
"modificationTimestamp" : "2020-04-10T06:20:58.556Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "c991c32d-a391-46db-899f-c9635846fb30",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.556Z",
"modificationTimestamp" : "2020-04-10T06:20:58.556Z",
"resource" : {
"resourceId" : "b158c318-31d9-4876-afe6-247f0ff6da72",
"resourceName" : "sfo01m01esx03.sfo01.rainpole.local",
"resourceIp" : "10.0.0.102",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "41f2f950-ece2-431b-8ce8-e3d2acf5e8f7",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:58.556Z",
"modificationTimestamp" : "2020-04-10T06:20:58.556Z",
"resource" : {
"resourceId" : "d4db94ad-15f2-43eb-8e3f-5add22b16c2e",
"resourceName" : "sfo01m01esx04.sfo01.rainpole.local",
"resourceIp" : "10.0.0.103",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
} ]
}
Get Credentials by "domainName"
This API can be used to fetch the credentials associated with all the resources belonging to a specific domain.
Steps
-
Invoke the API by specifying the "domainName".
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials?domainName=MGMT' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials?domainName=MGMT HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 7526
{
"elements" : [ {
"id" : "79f8ff01-8ba9-42a7-bf81-c032f65a5e0b",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "1c975d36-2b80-4bcd-806d-894c5dfe15cb",
"resourceName" : "sfo01m01esx01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.100",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "b8a1b31b-0970-4632-b81b-b9426d6ee8bc",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "42f312db-f72a-4a0a-b71a-26dd4fc163ca",
"resourceName" : "sfo01m01esx03.sfo01.rainpole.local",
"resourceIp" : "10.0.0.102",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "e20d6467-5205-45f6-a922-7148dbb1d105",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "c479eeed-6c88-4193-8e47-9e0658a23d34",
"resourceName" : "sfo01m01esx04.sfo01.rainpole.local",
"resourceIp" : "10.0.0.103",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}, {
"id" : "d948f165-4cd7-47b6-add0-6423615a9d3a",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "84a3a69c-8b38-4fb5-9cad-1e952a6e2d62",
"resourceName" : "sfo01m01vcenter01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.6",
"resourceType" : "VCENTER",
"domainName" : "MGMT"
}
}, {
"id" : "af8c67e9-cbc1-46de-bf76-a1d53c6f2e68",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "7f0f8c53-4165-4b03-92d6-e3cf47514a27",
"resourceName" : "sfo01m01psc01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.5",
"resourceType" : "PSC",
"domainName" : "MGMT"
}
}, {
"id" : "338ef3e8-746e-4c6e-8ea7-5120adc75224",
"credentialType" : "SSO",
"username" : "[email protected]",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "5bdce09a-62e8-4bf7-99ea-a8eca3d043d3",
"resourceName" : "sfo01m01psc01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.5",
"resourceType" : "PSC",
"domainName" : "MGMT"
}
}, {
"id" : "41ce5437-4efd-4d32-b060-df1325979b1c",
"credentialType" : "API",
"username" : "admin",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "13321bea-f3b1-416a-811d-d743dfd62be4",
"resourceName" : "sfo01m01nsx01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.9",
"resourceType" : "NSX_MANAGER",
"domainName" : "MGMT"
}
}, {
"id" : "80caf97e-92b1-4f2a-a2d2-2979bb029613",
"credentialType" : "API",
"username" : "admin",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "113a26e1-d48c-41d1-8485-b6f5d69691d3",
"resourceName" : "sfo01m01nsxc01",
"resourceIp" : "10.0.0.42",
"resourceType" : "NSX_CONTROLLER",
"domainName" : "MGMT"
}
}, {
"id" : "04d20abf-9498-404c-88fd-dbddcfa691c3",
"credentialType" : "API",
"username" : "admin",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "1a815d79-c57d-4891-8faf-12b63149b659",
"resourceName" : "sfo01vrli01.sfo01.rainpole.local",
"resourceIp" : "10.0.0.15",
"resourceType" : "VRLI",
"domainName" : "MGMT"
}
}, {
"id" : "da03a82c-bcfc-4267-ba36-1db69886df84",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "8eb1dbaa-b746-4849-9075-25d80f989b18",
"resourceName" : "sfo01vrli01b.sfo01.rainpole.local",
"resourceIp" : "10.0.0.16",
"resourceType" : "VRLI",
"domainName" : "MGMT"
}
}, {
"id" : "d21b3ca4-43df-40a6-b6d4-1313de968890",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "29857146-c99a-4edb-9ff0-6becd8d3734b",
"resourceName" : "vrops01svr01a.rainpole.local",
"resourceIp" : "10.0.1.33",
"resourceType" : "VROPS",
"domainName" : "MGMT"
}
}, {
"id" : "a8aca43c-d3ad-4be6-9ffb-20909f9a37a4",
"credentialType" : "API",
"username" : "admin",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "3c0154ac-eb0d-4db5-932d-a00f75ea6ef0",
"resourceName" : "vrops01svr01.rainpole.local",
"resourceIp" : "10.0.0.31",
"resourceType" : "VROPS",
"domainName" : "MGMT"
}
}, {
"id" : "06680d3e-80f4-45da-aa60-266d13a63374",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "5a3ed4af-81bc-4e74-95ae-453e5e175625",
"resourceName" : "vrslcm01svr01a.rainpole.local",
"resourceIp" : "10.0.0.32",
"resourceType" : "VRSLCM",
"domainName" : "MGMT"
}
}, {
"id" : "5cf65e32-6258-4c36-9031-bb0ad5510d12",
"credentialType" : "API",
"username" : "admin@localhost",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:21:00.020Z",
"modificationTimestamp" : "2020-04-10T06:21:00.020Z",
"resource" : {
"resourceId" : "6dd4a730-b057-4440-840e-3bb43974c893",
"resourceName" : "vrslcm01svr01a.rainpole.local",
"resourceIp" : "10.0.0.32",
"resourceType" : "VRSLCM",
"domainName" : "MGMT"
}
} ]
}
2.19.2. Get a Credential
This API is used to fetch credential for an ID.
Prerequisites
-
The following data is required
-
ID of the credential
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/00d942ce-8243-41ae-b8cb-8b9709a0ff69' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials/00d942ce-8243-41ae-b8cb-8b9709a0ff69 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 470
{
"id" : "00d942ce-8243-41ae-b8cb-8b9709a0ff69",
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1",
"creationTimestamp" : "2020-04-10T06:20:59.913Z",
"modificationTimestamp" : "2020-04-10T06:20:59.913Z",
"resource" : {
"resourceId" : "68248506-5b46-4efe-9863-26cda95145c4",
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceIp" : "10.0.0.101",
"resourceType" : "ESXI",
"domainName" : "MGMT"
}
}
2.19.3. Update the Passwords
This API is used to update passwords for list of resources by supplying new passwords.
Prerequisites
-
The following data is required
-
Name or ID of the resource
-
Type of the resource
-
Credential type of the resource
-
Username of the resource
-
Tip
|
Refer to: Get the Credentials to get the credential type, username, name, ID and type of the resource. |
-
New password must be in compliance with these password policies.
Password requirements:
-
Length: 8-20 characters
-
Allowed special characters: ! @ # $ ^ *
-
At least 1 small letter, capital letter, number and special character should be present
-
Cannot include: Three same consecutive characters
-
Steps
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "UPDATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1"
} ]
} ]
}'
HTTP Request
PATCH /v1/credentials HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 272
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "UPDATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1"
} ]
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/dbc53b1b-4ee7-4d61-b5a1-b6f5f1fb7bca
Content-Type: application/json
Content-Length: 100
{
"id" : "dbc53b1b-4ee7-4d61-b5a1-b6f5f1fb7bca",
"name" : "UPDATE",
"status" : "IN_PROGRESS"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task or Get a Credentials Task. |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry the Update Passwords Task. |
Warning
|
The password once updated cannot be rolled back. |
Note
|
The password is updated in the order of the input. |
Note
|
The passwords of the dependent resources of the requested resources will also get updated. |
2.19.4. Rotate the Passwords
This API is used to rotate passwords for list of resources using system generated passwords.
Prerequisites
-
The following data is required
-
Name or ID of the resource
-
Type of the resource
-
Credential type of the resource
-
Username of the resource
-
Tip
|
Refer to: Get the Credentials to get the credential type, username, name, ID and type of the resource. |
Steps
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "ROTATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root"
} ]
} ]
}'
HTTP Request
PATCH /v1/credentials HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 236
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "ROTATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root"
} ]
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/b3fba3e1-9dbe-4a6d-a3c9-56700b9edc2f
Content-Type: application/json
Content-Length: 100
{
"id" : "b3fba3e1-9dbe-4a6d-a3c9-56700b9edc2f",
"name" : "ROTATE",
"status" : "IN_PROGRESS"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task or Get a Credentials Task. |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry the Rotate Passwords Task. |
Warning
|
The password once rotated cannot be rolled back. |
Note
|
The password is rotated in the order of the input. |
Note
|
The generated password adheres to the password compliance. Refer to: Password Compliance Guide. |
Note
|
The passwords of the dependent resources of the requested resources will also get rotated. |
2.19.5. Retry the Update Passwords Task
This API is used to retry a failed update passwords task.
Prerequisites
-
The following data is required
-
ID of the last triggered failed update passwords task
-
Name or ID of the resource
-
Type of the resource
-
Credential type of the resource
-
Username of the resource
-
Tip
|
Refer to: Get the Credentials to get the credential type, username, name, ID and type of the resource and ID of the failed task. |
-
New password must be in compliance with the password policies.
Tip
|
Refer to: Password Compliance Guide. |
Steps
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks/43017ca9-54d5-489f-9569-bac96f435191' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "UPDATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1"
} ]
} ]
}'
HTTP Request
PATCH /v1/credentials/tasks/43017ca9-54d5-489f-9569-bac96f435191 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 272
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "UPDATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "VMwareInfra@1"
} ]
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/43017ca9-54d5-489f-9569-bac96f435191
Content-Type: application/json
Content-Length: 100
{
"id" : "43017ca9-54d5-489f-9569-bac96f435191",
"name" : "UPDATE",
"status" : "IN_PROGRESS"
}
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task or Get a Credentials Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed by providing previous credentials rotate specification or by amending the credentials rotate specification for FAILED resources.
Tip
|
Refer to: Retry the Update Passwords Task. |
-
The failed task can be cancelled.
Tip
|
Refer to: Cancel the Update/Rotate Passwords Task. |
Warning
|
The password once updated cannot be rolled back. |
Note
|
The password is updated in the order of the input. |
Note
|
Retry should be performed if updating passwords task has failed. |
Note
|
Retry should be performed on the same list of resources as in the failed operation specification. |
Tip
|
Refer to: Get the Resource Credentials for Credentials Task for the list of resources in the failed task. |
Note
|
The passwords of the dependent resources of the requested resources will also get updated. |
2.19.6. Retry the Rotate Passwords Task
This API is used to retry a failed rotate passwords task.
Prerequisites
-
The following data is required
-
ID of the last triggered failed rotate passwords task
-
Name or ID of the resource
-
Type of the resource
-
Credential type of the resource
-
Username of the resource
-
Tip
|
Refer to: Get the Credentials to get the credential type, username, name, ID and type of the resource and ID of the failed task. |
Steps
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks/a22346ef-8e64-493b-8b22-a69bd0cb5a44' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "ROTATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root"
} ]
} ]
}'
HTTP Request
PATCH /v1/credentials/tasks/a22346ef-8e64-493b-8b22-a69bd0cb5a44 HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 236
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "ROTATE",
"elements" : [ {
"resourceName" : "sfo01m01esx02.sfo01.rainpole.local",
"resourceType" : "ESXI",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root"
} ]
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/a22346ef-8e64-493b-8b22-a69bd0cb5a44
Content-Type: application/json
Content-Length: 100
{
"id" : "a22346ef-8e64-493b-8b22-a69bd0cb5a44",
"name" : "ROTATE",
"status" : "IN_PROGRESS"
}
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task or Get a Credentials Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed by providing previous credentials rotate specification or by amending the credentials rotate specification for FAILED resources.
Tip
|
Refer to: Retry the Rotate Passwords Task. |
-
The failed task can be cancelled.
Tip
|
Refer to: Cancel the Update/Rotate Passwords Task. |
Warning
|
The password once rotated cannot be rolled back. |
Note
|
The password is rotated in the order of the input. |
Note
|
The generated password adheres to the password compliance. Refer to: Password Compliance Guide. |
Note
|
Retry should be performed if some password rotation task has failed. |
Note
|
Retry should be performed on the same list of resources as in the failed operation specification. |
Tip
|
Refer to: Get the Resource Credentials for Credentials Task for the list of resources in the failed task. |
Note
|
The passwords of the dependent resources of the requested resources will also get rotated. |
2.19.7. Cancel the Update/Rotate Passwords Task
-
This API is used to cancel a failed update or rotate passwords task.
Prerequisites
-
The following data is required
-
ID of the last triggered failed update/rotate passwords task
-
Tip
|
Refer to: Get the Credentials Tasks section to get the ID of the failed task. |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks/234f7a60-924b-4ddf-8a4e-881abd4b1377' -i -X DELETE \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
DELETE /v1/credentials/tasks/234f7a60-924b-4ddf-8a4e-881abd4b1377 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 204 No Content
Content-Type: application/json
Content-Length: 103
{
"id" : "234f7a60-924b-4ddf-8a4e-881abd4b1377",
"name" : "USER CANCELLED",
"status" : "FAILED"
}
Warning
|
The password once updated or rotated cannot be rolled back. |
Note
|
The password is updated or rotated in the order of the input. |
Note
|
Cancel should be performed to release the internal global lock held at VCF instance level if some password updation or rotation task has failed after several retries. |
2.19.8. Get the Credentials Tasks
This API is used to fetch all credentials tasks in reverse chronological order.
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials/tasks HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1162
{
"elements" : [ {
"id" : "186d891f-aac3-4501-ae52-afb89eb7e32f",
"name" : "Credentials rotate operation",
"type" : "ROTATE",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"subTasks" : [ {
"name" : "vracafe3.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2019!",
"newPassword" : "EvoSDDC2020!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
}, {
"name" : "vracafe2.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2017!",
"newPassword" : "EvoSDDC2018!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
}, {
"name" : "vracafe1.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2016!",
"newPassword" : "EvoSDDC2017!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
} ]
} ]
}
2.19.9. Get a Credentials Task
This API is used to fetch a credentials task for an ID.
Prerequisites
-
The following data is required
-
ID of the credentials task
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks/186d891f-aac3-4501-ae52-afb89eb7e32f' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials/tasks/186d891f-aac3-4501-ae52-afb89eb7e32f HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1071
{
"id" : "186d891f-aac3-4501-ae52-afb89eb7e32f",
"name" : "Credentials rotate operation",
"type" : "ROTATE",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"subTasks" : [ {
"name" : "vracafe3.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2019!",
"newPassword" : "EvoSDDC2020!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
}, {
"name" : "vracafe2.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2017!",
"newPassword" : "EvoSDDC2018!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
}, {
"name" : "vracafe1.rainpole.local:SSH",
"creationTimestamp" : "2018-11-05T05:15:32.864Z",
"status" : "SUCCESSFUL",
"oldPassword" : "EvoSDDC2016!",
"newPassword" : "EvoSDDC2017!",
"entityType" : "VRA",
"username" : "root",
"credentialType" : "SSH"
} ]
}
2.19.10. Get the Resource Credentials for Credentials Task
This API is used to fetch resource credentials for a credentials task ID.
Prerequisites
-
The following data is required
-
ID of the credentials task
-
Tip
|
Refer to: Get the Credentials Tasks to get the ID of credentials tasks. |
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/credentials/tasks/186d891f-aac3-4501-ae52-afb89eb7e32f/resource-credentials' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/credentials/tasks/186d891f-aac3-4501-ae52-afb89eb7e32f/resource-credentials HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 578
[ {
"resourceName" : "vracafe3.rainpole.local",
"resourceType" : "VRA",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "EvoSDDC2020!"
} ]
}, {
"resourceName" : "vracafe2.rainpole.local",
"resourceType" : "VRA",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "EvoSDDC2018!"
} ]
}, {
"resourceName" : "vracafe1.rainpole.local",
"resourceType" : "VRA",
"credentials" : [ {
"credentialType" : "SSH",
"username" : "root",
"password" : "EvoSDDC2017!"
} ]
} ]
2.20. Certificates
2.20.1. Install Certificates By Online Mode
The following steps have to be followed to install certificates signed by VCF supporting certificate authorities (Microsoft CA and OpenSSL CA).
Prerequisites
-
VCF environment.
Steps
-
Check if certificate authority is configured or not by invoking the API. If certificate authority is configured, proceed directly to step-3.
Note
|
Operations are performed on domain named MGMT. |
Note
|
The following returns the list of all configured cerificate authorities. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/certificate-authorities HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 383
{
"elements" : [ {
"id" : "OpenSSL",
"commonName" : "test.openssl.eng.vmware.com",
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU"
}, {
"id" : "Microsoft",
"username" : "Admin",
"serverUrl" : "https://192.168.110.200/certsrv",
"templateName" : "Vcms"
} ]
}
Tip
|
Refer to: Get certificate authorities information |
-
Configure certificate authority if it is not configured by invoking the API
Configure "Microsoft" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"microsoftCertificateAuthoritySpec" : {
"username" : "Admin",
"secret" : "VMwareInfra@1",
"serverUrl" : "https://192.168.110.200/certsrv",
"templateName" : "Vcms"
}
}'
HTTP Request
PUT /v1/certificate-authorities HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 188
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"microsoftCertificateAuthoritySpec" : {
"username" : "Admin",
"secret" : "VMwareInfra@1",
"serverUrl" : "https://192.168.110.200/certsrv",
"templateName" : "Vcms"
}
}
HTTP Response
HTTP/1.1 200 OK
Configure "OpenSSL" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"openSSLCertificateAuthoritySpec" : {
"commonName" : "test.openssl.eng.vmware.com",
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU"
}
}'
HTTP Request
PUT /v1/certificate-authorities HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 242
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"openSSLCertificateAuthoritySpec" : {
"commonName" : "test.openssl.eng.vmware.com",
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU"
}
}
HTTP Response
HTTP/1.1 200 OK
Tip
|
Refer to: Create a certificate authority |
-
Reconfigure the certificate authority if required by invoking the API
Reconfigure "Microsoft" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"microsoftCertificateAuthoritySpec" : {
"templateName" : "Vcms1"
}
}'
HTTP Request
PATCH /v1/certificate-authorities HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 78
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"microsoftCertificateAuthoritySpec" : {
"templateName" : "Vcms1"
}
}
HTTP Response
HTTP/1.1 200 OK
Reconfigure "OpenSSL" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"openSSLCertificateAuthoritySpec" : {
"commonName" : "test1.openssl.eng.vmware.com"
}
}'
HTTP Request
PATCH /v1/certificate-authorities HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 97
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"openSSLCertificateAuthoritySpec" : {
"commonName" : "test1.openssl.eng.vmware.com"
}
}
HTTP Response
HTTP/1.1 200 OK
Tip
|
Refer to: Configure existing certificate authority |
-
Verify that the certificate authority is successfully configured by invoking the API with type of CA as the ID
Verify configuration for "Microsoft" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities/Microsoft' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/certificate-authorities/Microsoft HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 126
{
"id" : "Microsoft",
"username" : "Admin",
"serverUrl" : "https://192.168.110.200/certsrv",
"templateName" : "Vcms"
}
Verify configuration for "OpenSSL" certificate authority
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/certificate-authorities/OpenSSL' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/certificate-authorities/OpenSSL HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 206
{
"id" : "OpenSSL",
"commonName" : "test.openssl.eng.vmware.com",
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU"
}
Tip
|
Refer to: Get certificate authority information |
-
After the successful certificate authority configuration, generate CSR by invoking the API
Tip
|
If "resources" field is not given then operations are performed on all the resources in the domain. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/csrs' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"csrGenerationSpec" : {
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU",
"email" : "[email protected]",
"keySize" : "2048",
"keyAlgorithm" : "RSA"
},
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}'
HTTP Request
PUT /v1/domains/MGMT/csrs HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 369
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"csrGenerationSpec" : {
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU",
"email" : "[email protected]",
"keySize" : "2048",
"keyAlgorithm" : "RSA"
},
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/7ed5ff10-9e8c-42fa-8d38-ad11e70d3ff2
Content-Type: application/json
Content-Length: 79
{
"id" : "7ed5ff10-9e8c-42fa-8d38-ad11e70d3ff2",
"status" : "IN_PROGRESS"
}
Tip
|
Refer to: Generate CSR(s) |
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", execute the generate CSR request again.
-
If the generation of CSR is successful, fetch the contents of the CSR to check for which resources CSR is generated by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/csrs' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/csrs HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1163
{
"elements" : [ {
"csrEncodedContent" : "-----BEGIN CERTIFICATE REQUEST-----\nMIICtDCCAZwCAQAwbzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQswCQYDVQQH\nEwJQQTEMMAoGA1UECxMDVkNGMQ8wDQYDVQQKEwZWTXdhcmUxJzAlBgNVBAMTHm5z\neE1hbmFnZXIudnJhY2sudnNwaGVyZS5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAKtumknTB1do77E5rCXGRgqT6iqTgW0moiDZS6USGkeTQMvj\nR5JnQjq11xJl0y1meSdA6ufft8xndOr1b8alRs4+FreuJLl/8HBIVLRECrfkfIn0\nImwZzGFih2wwrCD/evb/7paNcdt97+KF2nwqB5ADysyFkjYs0uiJxxE5i8HsST1L\n+AStKeAV0lOk/2n/qgHPUcnjH7KchJAet9DFuKBWUW7QIryQffuiQrdAFqcEPHJC\nubHyqnoBPktosD3SXs1UickNiTyXIRC1NGHK/w7VTTJfBxkXxIdejazVGjCAW8w0\n/N4iW3rCaxSpnggWLGYFbGEkhikgtkpj8zIRjk8CAwEAAaAAMA0GCSqGSIb3DQEB\nCwUAA4IBAQBkxJTuymqggHLhWbtnvtA3mU4freKzF2XDUUP+K5kz43j2IXNbsCJI\nWDpY9OCVj9NHZ+uFTvQLvCb3E+6h0vE4Dw2PVUuOpz/Ag1qmgYIxtC5vzN4gLKih\nUNROG5wYryYKO8YL4MB3XIQdx9b8y8Fxyh3ZHIvdghhUPBooWzeCUXVPD8Le4p52\nD8yMGREtSQL4avLughd+SFd0fvKQq+/K42WOFn7PYVfgLBqdW1YCjEIfAdsG+bhG\n3CIBan84uV3cKFSM4NtxCvHZnuRZmx6+0Frtt1w9sndjKvHrA6ozoHO9O1gl/E9D\nY1rzOB7KFzGiZHAMT2Cf/x/xGo8rTGFZ\n-----END CERTIFICATE REQUEST-----",
"resource" : {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local"
}
} ]
}
Tip
|
Refer to: Get available CSR(s) in json format |
-
After successful CSR generation, generate the certificates signed by supported certificates authorities (either OpenSSL or Microsoft) by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/certificates' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"caType" : "Microsoft",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}'
HTTP Request
PUT /v1/domains/MGMT/certificates HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 133
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"caType" : "Microsoft",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/5b51e5f4-730c-412d-8fd1-8cee0fbdf610
Content-Type: application/json
Content-Length: 79
{
"id" : "5b51e5f4-730c-412d-8fd1-8cee0fbdf610",
"status" : "IN_PROGRESS"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", execute the generate certificate request again.
-
If the generation of certificates is successful, fetch the contents of the generated certificates to check for which resources certificates are generated by invoking the API
Note
|
The following will display the list of generated as well as already installed certificates. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/certificates' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/certificates HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 8566
{
"elements" : [ {
"isInstalled" : true,
"version" : "V3",
"serialNumber" : "ca:0b:5d:6d:07:4e:db:41",
"issuedTo" : "sfo01m01vcenter01.sfo01.rainpole.local",
"issuedBy" : "OU=VMware Engineering, O=sfo01m01psc01.sfo01.rainpole.local, ST=California, C=US, DC=local, DC=vsphere, CN=CA",
"notBefore" : "2019-07-11T10:16:05.000Z",
"notAfter" : "2029-07-06T08:17:24.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01vcenter01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01vcenter01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "35:4B:A5:11:A9:3D:39:0D:B7:95:9B:4D:07:5C:73:40:D0:DF:63:D4:68:97:6E:1B:20:70:87:AE:40:3F:7E:AD",
"numberOfDaysToExpire" : 3644,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
}, {
"isInstalled" : false,
"version" : "V3",
"serialNumber" : "f4:80:33:5f:e5:77:2a:f7",
"issuedTo" : "sfo01m01nsx01.sfo01.rainpole.local",
"issuedBy" : "OU=ISBU, O=VMware, L= Bangalore, ST=Karnataka, C=IN, CN=test1.openssl.eng.vmware.com",
"notBefore" : "2019-07-25T07:38:55.000Z",
"notAfter" : "2020-07-24T07:38:55.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01nsx01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01nsx01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "02:B1:D1:01:18:9F:07:39:E1:7C:94:BC:50:07:64:E8:45:8C:F8:73:3E:A9:23:BC:D2:BD:B1:17:E9:B3:C0:11",
"numberOfDaysToExpire" : 365,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
} ]
}
Tip
|
Refer to: Get latest generated certificate(s) in a domain. |
-
After successful certificate generation, install the signed certificates on remote resources by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/certificates' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "INSTALL",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}'
HTTP Request
PATCH /v1/domains/MGMT/certificates HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 138
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "INSTALL",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/7a621085-4114-4c27-b983-eac64500094c
Content-Type: application/json
Content-Length: 79
{
"id" : "7a621085-4114-4c27-b983-eac64500094c",
"status" : "IN_PROGRESS"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task |
-
Restart all the services as follows:
-
Using SSH, log in to the SDDC Manager VM with the following credentials:
-
Username: vcf
-
Password: use the password specified in the deployment parameter sheet
-
-
Enter su to switch to the root user.
-
Execute the following command:
-
sh /opt/vmware/vcf/operationsmanager/scripts/cli/sddcmanager_restart_services.sh
-
-
-
Fetch the installed certificates by invoking the API
Note
|
The following will display the list of installed certificates. |
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/resource-certificates' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/resource-certificates HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 8513
{
"elements" : [ {
"version" : "V3",
"serialNumber" : "ca:0b:5d:6d:07:4e:db:41",
"issuedTo" : "sfo01m01vcenter01.sfo01.rainpole.local",
"issuedBy" : "OU=VMware Engineering, O=sfo01m01psc01.sfo01.rainpole.local, ST=California, C=US, DC=local, DC=vsphere, CN=CA",
"notBefore" : "2019-07-11T10:16:05.000Z",
"notAfter" : "2029-07-06T08:17:24.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01vcenter01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01vcenter01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "35:4B:A5:11:A9:3D:39:0D:B7:95:9B:4D:07:5C:73:40:D0:DF:63:D4:68:97:6E:1B:20:70:87:AE:40:3F:7E:AD",
"numberOfDaysToExpire" : 3644,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
}, {
"version" : "V3",
"serialNumber" : "f4:80:33:5f:e5:77:2a:f7",
"issuedTo" : "sfo01m01nsx01.sfo01.rainpole.local",
"issuedBy" : "OU=ISBU, O=VMware, L= Bangalore, ST=Karnataka, C=IN, CN=test1.openssl.eng.vmware.com",
"notBefore" : "2019-07-25T07:38:55.000Z",
"notAfter" : "2020-07-24T07:38:55.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01nsx01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01nsx01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "02:B1:D1:01:18:9F:07:39:E1:7C:94:BC:50:07:64:E8:45:8C:F8:73:3E:A9:23:BC:D2:BD:B1:17:E9:B3:C0:11",
"numberOfDaysToExpire" : 365,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
} ]
}
Tip
|
Refer to: View certificate of all the resources in a domain |
Warning
|
Certificate installation will replace the already installed certificates. |
Note
|
The CSRs cannot be fetched after successful certificate installation. |
Note
|
Only singleton object of a particular certificate authority will exist at any point of time in the VCF environment. |
Note
|
Only the latest generated CSRs will exist in the VCF environment after a series of generate CSR operation. |
Note
|
Only the latest generated certificates will exist in the VCF environment after a series of generate certificate operation. |
Related APIs
Create a certificate authority
Get certificate authorities information
Get certificate authority information
Configure existing certificate authority
Generate CSR(s)
Get available CSR(s) in json format
Generate certificate(s) for the selected resource(s) in a domain
Get latest generated certificate(s) in a domain.
Replace certificate(s) for the selected resource(s) in a domain
View certificate of all the resources in a domain
Get the Tasks
Get a Task
2.20.2. Install Certificates By Offline Mode
The following steps have to be followed to install certificates signed by external third party certificate authorities.
Prerequisites
-
VCF environment.
Steps
-
Generate CSR by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/csrs' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"csrGenerationSpec" : {
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU",
"email" : "[email protected]",
"keySize" : "2048",
"keyAlgorithm" : "RSA"
},
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}'
HTTP Request
PUT /v1/domains/MGMT/csrs HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 369
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"csrGenerationSpec" : {
"country" : "India",
"state" : "Karnataka",
"locality" : "Bengaluru",
"organization" : "VMware",
"organizationUnit" : "ISBU",
"email" : "[email protected]",
"keySize" : "2048",
"keyAlgorithm" : "RSA"
},
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/7ed5ff10-9e8c-42fa-8d38-ad11e70d3ff2
Content-Type: application/json
Content-Length: 79
{
"id" : "7ed5ff10-9e8c-42fa-8d38-ad11e70d3ff2",
"status" : "IN_PROGRESS"
}
Tip
|
Refer to: Generate CSR(s) |
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", execute the generate CSR request again.
-
If the generation of CSR is successful, fetch the contents of the CSR to check for which resources CSR is generated by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/csrs' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/csrs HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1163
{
"elements" : [ {
"csrEncodedContent" : "-----BEGIN CERTIFICATE REQUEST-----\nMIICtDCCAZwCAQAwbzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQswCQYDVQQH\nEwJQQTEMMAoGA1UECxMDVkNGMQ8wDQYDVQQKEwZWTXdhcmUxJzAlBgNVBAMTHm5z\neE1hbmFnZXIudnJhY2sudnNwaGVyZS5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQAD\nggEPADCCAQoCggEBAKtumknTB1do77E5rCXGRgqT6iqTgW0moiDZS6USGkeTQMvj\nR5JnQjq11xJl0y1meSdA6ufft8xndOr1b8alRs4+FreuJLl/8HBIVLRECrfkfIn0\nImwZzGFih2wwrCD/evb/7paNcdt97+KF2nwqB5ADysyFkjYs0uiJxxE5i8HsST1L\n+AStKeAV0lOk/2n/qgHPUcnjH7KchJAet9DFuKBWUW7QIryQffuiQrdAFqcEPHJC\nubHyqnoBPktosD3SXs1UickNiTyXIRC1NGHK/w7VTTJfBxkXxIdejazVGjCAW8w0\n/N4iW3rCaxSpnggWLGYFbGEkhikgtkpj8zIRjk8CAwEAAaAAMA0GCSqGSIb3DQEB\nCwUAA4IBAQBkxJTuymqggHLhWbtnvtA3mU4freKzF2XDUUP+K5kz43j2IXNbsCJI\nWDpY9OCVj9NHZ+uFTvQLvCb3E+6h0vE4Dw2PVUuOpz/Ag1qmgYIxtC5vzN4gLKih\nUNROG5wYryYKO8YL4MB3XIQdx9b8y8Fxyh3ZHIvdghhUPBooWzeCUXVPD8Le4p52\nD8yMGREtSQL4avLughd+SFd0fvKQq+/K42WOFn7PYVfgLBqdW1YCjEIfAdsG+bhG\n3CIBan84uV3cKFSM4NtxCvHZnuRZmx6+0Frtt1w9sndjKvHrA6ozoHO9O1gl/E9D\nY1rzOB7KFzGiZHAMT2Cf/x/xGo8rTGFZ\n-----END CERTIFICATE REQUEST-----",
"resource" : {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local"
}
} ]
}
Tip
|
Refer to: Get available CSR(s) in json format |
-
After successful CSR generation, download CSR in ".tar.gz" format by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/csrs/downloads' -i -X GET \
-H 'Accept: application/octet-stream' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/csrs/downloads HTTP/1.1
Accept: application/octet-stream
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/octet-stream
Content-Length: 1012
Content-Disposition: attachment; filename="csrString.txt"
Accept-Ranges: bytes
-----BEGIN CERTIFICATE REQUEST-----
MIICtDCCAZwCAQAwbzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQswCQYDVQQH
EwJQQTEMMAoGA1UECxMDVkNGMQ8wDQYDVQQKEwZWTXdhcmUxJzAlBgNVBAMTHm5z
eE1hbmFnZXIudnJhY2sudnNwaGVyZS5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBAKtumknTB1do77E5rCXGRgqT6iqTgW0moiDZS6USGkeTQMvj
R5JnQjq11xJl0y1meSdA6ufft8xndOr1b8alRs4+FreuJLl/8HBIVLRECrfkfIn0
ImwZzGFih2wwrCD/evb/7paNcdt97+KF2nwqB5ADysyFkjYs0uiJxxE5i8HsST1L
+AStKeAV0lOk/2n/qgHPUcnjH7KchJAet9DFuKBWUW7QIryQffuiQrdAFqcEPHJC
ubHyqnoBPktosD3SXs1UickNiTyXIRC1NGHK/w7VTTJfBxkXxIdejazVGjCAW8w0
/N4iW3rCaxSpnggWLGYFbGEkhikgtkpj8zIRjk8CAwEAAaAAMA0GCSqGSIb3DQEB
CwUAA4IBAQBkxJTuymqggHLhWbtnvtA3mU4freKzF2XDUUP+K5kz43j2IXNbsCJI
WDpY9OCVj9NHZ+uFTvQLvCb3E+6h0vE4Dw2PVUuOpz/Ag1qmgYIxtC5vzN4gLKih
UNROG5wYryYKO8YL4MB3XIQdx9b8y8Fxyh3ZHIvdghhUPBooWzeCUXVPD8Le4p52
D8yMGREtSQL4avLughd+SFd0fvKQq+/K42WOFn7PYVfgLBqdW1YCjEIfAdsG+bhG
3CIBan84uV3cKFSM4NtxCvHZnuRZmx6+0Frtt1w9sndjKvHrA6ozoHO9O1gl/E9D
Y1rzOB7KFzGiZHAMT2Cf/x/xGo8rTGFZ
-----END CERTIFICATE REQUEST-----
Tip
|
Refer to: Download available CSR(s) in tar.gz format |
-
Use the downloaded CSRs to have it manually signed by external certificate authorities.
-
Verify that the certificate authority configuration files have been configured and packaged in the form of
a ".tar.gz" file with the following conditions-
The name of the top-level directory must exactly match the name of the domain to which certificates are to be installed.
-
The PEM-encoded root CA certificate chain file (rootca.crt) must reside inside this top-level directory.
-
This directory must contain one sub-directory for each component resource and the name of each sub-directory must exactly match the resource fqdn.
-
Each sub-directory must contain a corresponding ".csr" file, whose name must exactly match the
resource fqdn followed by ".csr" extension. -
Each sub-directory must contain a corresponding ".crt" file, whose name must exactly match the
resource fqdn followed by ".crt" extension.
-
-
Upload the packaged signed certificates by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/certificates/uploads' -i -X PUT \
-H 'Content-Type: multipart/form-data' \
-H 'Authorization: Bearer etYWRta....' \
-F '[email protected];type=multipart/form-data'
HTTP Request
PUT /v1/domains/MGMT/certificates/uploads HTTP/1.1
Content-Type: multipart/form-data; boundary=6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm
Content-Disposition: form-data; name=file; filename=MGMT.tar.gz
Content-Type: multipart/form-data
-----BEGIN CERTIFICATE-----
MIIC2zCCAcMCAQAwgZUxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlh
MRIwEAYDVQQHEwlQYWxvIEFsdG8xHjAcBgNVBAsTFVZNd2FyZSBJVCAgZGVwYXJ0
bWVudDEUMBIGA1UEChMLVk1XYXJlIEluYy4xJzAlBgNVBAMTHm5zeE1hbmFnZXIu
dnJhY2sudnNwaGVyZS5sb2NhbDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAPgggMHrSsbcC9JYjGQCDiSTsG0LPGjMcTKgEaUi6zcVKWAv7ccpvW7cwFtc
2FqtM4zlETOK0tHZmS17uUg/tsJSWq+nr2VQ541XifvZOVINcIlKnzGJO32d4qxO
3xY3lr8Pj7xZe0xZK3iP+TBiUdtHggSYJ6uWYHoZAJ74Jqp4pVdwQgjm1sINldYm
e1x+txQINQB7MFG2tflQ7iXRaiLGZKXR86xDvw/T1OcPPjtSnwFjYfeHtE2KjuT9
RiCXl4cUuH+pjQTsWSSByK0LyC8U9/tqDGnMiERxBl1g9rBKQMOoZmTCF3gr7hhx
PZ16JlYqU9hbAjPxVkGO0NkI9PsCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQAq
vqrtJ4nQepjbwOmJor2ZHOUaoqwImE3OJaa6PxaikD1c14maMXJ4XQm+ONJooCPx
CL6TVs2DSydxVzRFHj5dyAz7MJ8XIkqijvarxb+gLjhim4+O+MuS7hHaCnVU9KMg
i3QhWFc1SwDuhiHL3RXbf04gOzrbEhIPa9rBKQMOoZmTCF3gr7JiuSqBvKtG3cus
3DjxA1z9CGUgIrYBlOm2/xPDp91AIMGeP9YXh8ue/NVPZ+tlZOCgKGiS05CTK5Wr
cHaC7yQqIyZdKP9EQhv3yhxL4ho9e1xL9f4puv3CBE5VmCb8LZ/5CRIKOHEsIV70
XGKY78p5LoKf4ro2LLQ+
-----END CERTIFICATE-----
--6o2knFse3p53ty9dmcQvWAIx1zInP11uCfbm--
HTTP Response
HTTP/1.1 200 OK
Tip
|
Refer to: Upload certificates to the certificate store |
-
After successful upload operation, install the signed certificates on remote resources by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/certificates' -i -X PATCH \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"operationType" : "INSTALL",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}'
HTTP Request
PATCH /v1/domains/MGMT/certificates HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 138
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"operationType" : "INSTALL",
"resources" : [ {
"fqdn" : "sfo01m01nsx01.sfo01.rainpole.local",
"type" : "NSX_MANAGER"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/7a621085-4114-4c27-b983-eac64500094c
Content-Type: application/json
Content-Length: 79
{
"id" : "7a621085-4114-4c27-b983-eac64500094c",
"status" : "IN_PROGRESS"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task |
-
Poll the task until "status" is not "IN_PROGRESS" with the ID from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task |
-
Restart all the services as follows:
-
Using SSH, log in to the SDDC Manager VM with the following credentials:
-
Username: vcf
-
Password: use the password specified in the deployment parameter sheet
-
-
Enter su to switch to the root user.
-
Execute the following command:
-
sh /opt/vmware/vcf/operationsmanager/scripts/cli/sddcmanager_restart_services.sh
-
-
-
Fetch the installed certificates by invoking the API
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/domains/MGMT/resource-certificates' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/domains/MGMT/resource-certificates HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 8513
{
"elements" : [ {
"version" : "V3",
"serialNumber" : "ca:0b:5d:6d:07:4e:db:41",
"issuedTo" : "sfo01m01vcenter01.sfo01.rainpole.local",
"issuedBy" : "OU=VMware Engineering, O=sfo01m01psc01.sfo01.rainpole.local, ST=California, C=US, DC=local, DC=vsphere, CN=CA",
"notBefore" : "2019-07-11T10:16:05.000Z",
"notAfter" : "2029-07-06T08:17:24.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01vcenter01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01vcenter01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "35:4B:A5:11:A9:3D:39:0D:B7:95:9B:4D:07:5C:73:40:D0:DF:63:D4:68:97:6E:1B:20:70:87:AE:40:3F:7E:AD",
"numberOfDaysToExpire" : 3644,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
}, {
"version" : "V3",
"serialNumber" : "f4:80:33:5f:e5:77:2a:f7",
"issuedTo" : "sfo01m01nsx01.sfo01.rainpole.local",
"issuedBy" : "OU=ISBU, O=VMware, L= Bangalore, ST=Karnataka, C=IN, CN=test1.openssl.eng.vmware.com",
"notBefore" : "2019-07-25T07:38:55.000Z",
"notAfter" : "2020-07-24T07:38:55.000Z",
"signatureAlgorithm" : "SHA256withRSA",
"subject" : "C=US, CN=sfo01m01nsx01.sfo01.rainpole.local",
"subjectAlternativeName" : [ "sfo01m01nsx01.sfo01.rainpole.local" ],
"publicKey" : "BA:16:16:DF:00:B2:88:C9:F9:E0:7F:72:B6:DC:83:1F:87:46:C3:C4:4B:8B:EB:C0:AD:B9:A2:FB:31:75:0A:89:12:25:58:B6:42:B1:78:A3:7F:19:B0:03:19:35:AD:51:5D:08:36:CB:C3:6E:63:B2:CE:89:2D:24:AD:EA:DD:BD:73:0A:06:84:4E:4D:83:AF:B8:EC:F9:E1:98:9F:35:9F:83:11:DD:71:61:5E:CF:DE:9A:BF:0D:A7:8A:64:F2:94:26:5D:A7:E0:20:B9:C2:01:BB:62:F2:7D:C3:A9:9B:91:DE:49:1E:97:B7:E8:CA:38:1C:E9:92:76:07:A8:26:95:5D:C1:89:E7:EA:27:03:57:BE:D2:76:B5:E4:AC:89:10:67:7F:42:DA:5D:52:5C:9F:65:59:A4:42:0B:81:F8:77:B5:F8:2D:18:DA:9B:1A:F4:BD:BD:F2:33:97:7A:EA:64:1B:CE:58:CF:9C:E7:18:60:94:CE:66:C9:57:7E:62:A2:AD:47:3D:29:D2:F8:DB:AB:D7:8F:D1:7D:8A:9A:FC:68:37:48:3C:AD:38:A5:76:D8:4C:E2:64:AE:87:B7:DA:78:3E:EB:2B:C8:70:43:4D:CB:4E:72:80:43:CB:D2:43:A7:71:16:22:27:0F:A1:DB:0A:83:88:2C:09:49:0A:35:8C:76:76:55:E2:3A:1C:7C:74:F0:91:60:A2:45:7F:6C:7A:2B:A5:51:87:25:D0:DB:9C:E0:B8:32:27:83:D6:3F:70:C5:7A:1B:92:09:E7:77:39:3A:C2:28:B1:5C:8A:3F:42:FE:D6:6A:7D:F6:E5:D6:FB:B0:DB:AB:D9:65:29:BE:75:DA:07:E8:38:B2:A0:75:9F:45:8E:FF:6B:AF:27:DB:FA:2E:AB:80:51:09:88:7D:7B:AC:A4:B7:15:41:30:A0:E1:0F:C7:DD:D1:F4:84:7D:D3:F8:B1:B0:F9:55:8F:A6:DC:44:E0:E6:0F:C5:DF:32:93:51:8D:7D:BA:79:4A:3E:72:CA:CB:9A:2E:8B:E6:A0:63:57:C8:CD:92:F8:70:0A:1E:6D:CA:DF:35:D4:91:45:E7:DB:7F:86:32:E9:8C:A3:D2:D0:35:15:70:A9:DA:39:DF:FA:76:9C:EF:5D:B6:A4:58:49:EE:A0:B1:74:33:D2:41:97:F6:FE:0C:07:66:DE:56:5F:3E:15:03:70:3D:56:80:5E:F6:CB:C3:FA:78:CE:14:0C:D7:E1:53:48:8B:5A:61:C0:04:BA:DD:ED:B3:E4:F1:76:AD:FD:03:27:C9:FB:EC:5A:75:0B:22:8F:6A:E8:35:47:FB:04:B7:A7:5F:51:FA:46:EF:00:64:03:27:1C:FB",
"publicKeyAlgorithm" : "RSA",
"keySize" : "2048",
"thumbprintAlgorithm" : "SHA-256",
"thumbprint" : "02:B1:D1:01:18:9F:07:39:E1:7C:94:BC:50:07:64:E8:45:8C:F8:73:3E:A9:23:BC:D2:BD:B1:17:E9:B3:C0:11",
"numberOfDaysToExpire" : 365,
"expirationStatus" : "ACTIVE",
"pemEncoded" : "-----BEGIN CERTIFICATE-----MIIFRDCCBCygAwIBAgIJAOx9cA2cGcUUMA0GCSqGSIb3DQEBCwUAMIGgMQswCQYDVQQDDAJDQTEXMBUGCgmSJomT8ixkARkWB3ZzcGhlcmUxFTATBgoJkiaJk/IsZAEZFgVsb2NhbDELMAkGA1UEBhMCVVMxEzARBgNVBAgMCkNhbGlmb3JuaWExIjAgBgNVBAoMGXBzYy0xLnZyYWNrLnZzcGhlcmUubG9jYWwxGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0xODA3MDIxNDE1NTJaFw0yODA2MjcxMjIyMzlaMIGwMQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTESMBAGA1UEBxMJUGFsbyBBbHRvMQ8wDQYDVQQKEwZWTXdhcmUxGzAZBgNVBAsTElZNd2FyZSBFbmdpbmVlcmluZzEqMCgGA1UEAxMhbG9hZC1iYWxhbmNlci52cmFjay52c3BoZXJlLmxvY2FsMR4wHAYJKoZIhvcNAQkBFg92bWNhQHZtd2FyZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6FhbfALKIyfngf3K23IMfh0bDxEuL68CtuaL7MXUKiRIlWLZCsXijfxmwAxk1rVFdCDbLw25jss6JLSSt6t29cwoGhE5Ng6+47PnhmJ81n4MR3XFhXs/emr8Np4pk8pQmXafgILnCAbti8n3DqZuR3kkel7foyjgc6ZJ2B6gmlV3BiefqJwNXvtJ2teSsiRBnf0LaXVJcn2VZpEILgfh3tfgtGNqbGvS9vfIzl3rqZBvOWM+c5xhglM5myVd+YqKtRz0p0vjbq9eP0X2KmvxoN0g8rTildthM4mSuh7faeD7rK8hwQ03LTnKAQ8vSQ6dxFiInD6HbCoOILAlJCjWMdnZV4jocfHTwkWCiRX9seiulUYcl0Nuc4LgyJ4PWP3DFehuSCed3OTrCKLFcij9C/tZqffbl1vuw26vZZSm+ddoH6DiyoHWfRY7/a68n2/ouq4BRCYh9e6yktxVBMKDhD8fd0fSEfdP4sbD5VY+m3ETg5g/F3zKTUY19unlKPnLKy5oui+agY1fIzZL4cAoebcrfNdSRRefbf4Yy6Yyj0tA1FXCp2jnf+nac7122pFhJ7qCxdDPSQZf2/gwHZt5WXz4VA3A9VoBe9svD+njOFAzX4VNIi1phwAS63e2z5PF2rf0DJ8n77Fp1CyKPaug1R/sEt6dfUfpG7wBkAycc+wIDAQABo28wbTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DAyBgNVHREEKzApgiFsb2FkLWJhbGFuY2VyLnZyYWNrLnZzcGhlcmUubG9jYWyHBAoAAA8wHwYDVR0jBBgwFoAUauWGErq+/JHwQ3qju9Ch8V2097MwDQYJKoZIhvcNAQELBQADggEBAMCvNCQ3KsvncoYK9fI0cfcBYEpFuToB+duK7yztklf8P6PLRSWdU39KaG+xv5768K+xe90riOYs0Mhcs0IuUQW2F6kCnlW3ff2R3pvTeM3kGqXclk4KGKRNnhhsF3Ze8QW3drH0dzD3vNcumdLr+GvG6vF2O/Pl3+Nn9dwE72ZVl7Ai970jJM5CVjI+wST19ZQPpq1E3aad3Bk+AQcQCIGputBGkHFZUGX4T6jPH0uDOcSRjH7v6TXhF2Cury7zme0zpWYwC4RMH/AxqK4z6DlmAwu2zycN097TMM/ZUXePmvgY7JSB5BIiY4ZxlnNbJy4756XDSBt41AaHxqWNcfs=-----END CERTIFICATE-----"
} ]
}
Tip
|
Refer to: View certificate of all the resources in a domain |
Warning
|
Certificate installation will replace the already installed certificates. |
Note
|
The CSRs cannot be fetched or downloaded after successful certificate installation. |
Note
|
Only the latest generated CSRs will exist in the VCF environment after a series of generate CSR operation. |
Note
|
Only the latest uploaded certificates will exist in the VCF environment after a series of upload certificate operation. |
2.21. vCenters
2.21.1. Get a vCenter
Prerequisites
-
The following data is required
-
ID of the vCenter
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vcenters/c0703437-6756-470b-9e1c-f9d3bbc9b1c6' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vcenters/c0703437-6756-470b-9e1c-f9d3bbc9b1c6 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 196
{
"id" : "c0703437-6756-470b-9e1c-f9d3bbc9b1c6",
"fqdn" : "vi-1-vcenter.vrack.vsphere.local",
"ipAddress" : "10.0.0.6",
"domain" : {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}
}
2.21.2. Get the vCenters
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vcenters' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vcenters HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 447
{
"elements" : [ {
"id" : "c0703437-6756-470b-9e1c-f9d3bbc9b1c6",
"fqdn" : "vi-1-vcenter.vrack.vsphere.local",
"ipAddress" : "10.0.0.6",
"domain" : {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}
}, {
"id" : "c0703437-6846-470b-9e1c-f9d3bbc9b1c9",
"fqdn" : "vdi-1-vcenter.vrack.vsphere.local",
"ipAddress" : "10.0.0.20",
"domain" : {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c1"
}
} ]
}
2.21.3. Get vCenters for a domain
Prerequisites
-
The following data is required
-
ID of the Domain
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vcenters?domainId=c0703437-6746-470b-9e1c-f9d3bbc9b1c5' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vcenters?domainId=c0703437-6746-470b-9e1c-f9d3bbc9b1c5 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 233
{
"elements" : [ {
"id" : "c0703437-6756-470b-9e1c-f9d3bbc9b1c6",
"fqdn" : "vi-1-vcenter.vrack.vsphere.local",
"ipAddress" : "10.0.0.6",
"domain" : {
"id" : "c0703437-6746-470b-9e1c-f9d3bbc9b1c5"
}
} ]
}
2.22. NSX-T Clusters
2.22.1. Get an NSX-T Cluster
Prerequisites
-
The following data is required
-
ID of the NSX-T Cluster
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/nsxt-clusters/d77231ad-bf61-4331-88f3-b52534d564ba' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/nsxt-clusters/d77231ad-bf61-4331-88f3-b52534d564ba HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 698
{
"id" : "d77231ad-bf61-4331-88f3-b52534d564ba",
"vipFqdn" : "vip-nsxt-vi-01.sfo01.rainpole.local",
"vip" : "172.19.10.81",
"domains" : [ {
"id" : "5c6e4716-b069-4481-aa6e-4eca8bf5596a",
"name" : "nsxt-vi-01"
} ],
"nodes" : [ {
"fqdn" : "nsx-mgr1-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.84",
"name" : "nsx-mgr1-nsxt-vi-01"
}, {
"fqdn" : "nsx-mgr2-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.83",
"name" : "nsx-mgr2-nsxt-vi-01"
}, {
"fqdn" : "nsx-mgr3-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.82",
"name" : "nsx-mgr3-nsxt-vi-01"
} ],
"isShared" : true,
"isVlcmCompatible" : false
}
2.22.2. Get the NSX-T Clusters
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/nsxt-clusters' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/nsxt-clusters HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 771
{
"elements" : [ [ {
"id" : "d77231ad-bf61-4331-88f3-b52534d564ba",
"vipFqdn" : "vip-nsxt-vi-01.sfo01.rainpole.local",
"vip" : "172.19.10.81",
"domains" : [ {
"id" : "5c6e4716-b069-4481-aa6e-4eca8bf5596a",
"name" : "nsxt-vi-01"
} ],
"nodes" : [ {
"fqdn" : "nsx-mgr1-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.84",
"name" : "nsx-mgr1-nsxt-vi-01"
}, {
"fqdn" : "nsx-mgr2-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.83",
"name" : "nsx-mgr2-nsxt-vi-01"
}, {
"fqdn" : "nsx-mgr3-nsxt-vi-01.sfo01.rainpole.local",
"ipAddress" : "172.19.10.82",
"name" : "nsx-mgr3-nsxt-vi-01"
} ],
"isShared" : true,
"isVlcmCompatible" : false
} ] ]
}
2.23. SDDC Managers
2.23.1. Get an SDDC Manager
Prerequisites
-
The following data is required
-
ID of the Sddc Manager
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-managers/ebb0944f-3b86-4872-9afa-2e80ce814c8f' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/sddc-managers/ebb0944f-3b86-4872-9afa-2e80ce814c8f HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 230
{
"id" : "ebb0944f-3b86-4872-9afa-2e80ce814c8f",
"fqdn" : "sddc-manager.vrack.vsphere.local",
"version" : "3.9.0.0-14713675",
"ipAddress" : "10.0.0.4",
"domain" : {
"id" : "d1f91ef5-dfa2-48e7-adde-cd37b0aa7911"
}
}
2.23.2. Get the SDDC Managers
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/sddc-managers' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/sddc-managers HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 269
{
"elements" : [ {
"id" : "ebb0944f-3b86-4872-9afa-2e80ce814c8f",
"fqdn" : "sddc-manager.vrack.vsphere.local",
"version" : "3.9.0.0-14713675",
"ipAddress" : "10.0.0.4",
"domain" : {
"id" : "d1f91ef5-dfa2-48e7-adde-cd37b0aa7911"
}
} ]
}
2.24. VCF Services
2.24.1. Get a VCF Service
Prerequisites
-
The following data is required
-
ID of the VCF Service
-
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vcf-services/bc0debfe-bd38-453a-822d-fdd012fbd0b2' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vcf-services/bc0debfe-bd38-453a-822d-fdd012fbd0b2 HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 112
{
"id" : "bc0debfe-bd38-453a-822d-fdd012fbd0b2",
"name" : "COMMON_SERVICES",
"version" : "3.8.2-RELEASE"
}
2.24.2. Get the VCF Services
Prerequisites
None
Steps
-
Invoke the API.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/vcf-services' -i -X GET \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/vcf-services HTTP/1.1
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 744
{
"elements" : [ {
"id" : "bc0debfe-bd38-453a-822d-fdd012fbd0b2",
"name" : "COMMON_SERVICES",
"version" : "3.8.2-RELEASE"
}, {
"id" : "174ca011-0f17-48ec-a4cb-8fc3d35149bd",
"name" : "DOMAIN_MANAGER",
"version" : "3.8.2-RELEASE"
}, {
"id" : "8c64a3f9-fa12-4d00-ba19-9fe747e2bda",
"name" : "OPERATIONS_MANAGER",
"version" : "3.8.2-RELEASE"
}, {
"id" : "8bd696dc-958a-482a-9747-4f4e172a3005",
"name" : "LCM",
"version" : "3.8.2-RELEASE"
}, {
"id" : "9294a99d-8755-4298-9fb6-a255ab6a12f4",
"name" : "SDDC_MANAGER_UI",
"version" : "3.8.2-RELEASE"
}, {
"id" : "20f1f50f-8e50-4f19-9fd0-3472330b0fb2",
"name" : "SOLUTIONS_MANAGER",
"version" : "3.8.2-RELEASE"
} ]
}
2.25. DNS Configuration
2.25.1. Configuration of New DNS Server
Prerequisites
-
The new DNS server to be configured should be reachable from SDDC components.
-
DNS resolution (forward and reverse lookup) for all management VMs and ESXi hosts in place
-
All SDDC components should be reachable from SDDC manager.
-
All SDDC components state should be "ACTIVE" in VCF inventory.
Steps
-
Validate the DnsConfiguration input before configuration.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/dns-configuration/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}'
HTTP Request
POST /v1/system/dns-configuration/validations HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 85
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/system/dns-servers/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd
Content-Type: application/json
Content-Length: 407
{
"id" : "71653367-2ea8-49f2-bf72-0e0e1fa57dcd",
"description" : "Validate input specification as new NtpConfiguration to VMware Cloud Foundations",
"executionStatus" : "IN_PROGRESS",
"validationChecks" : [ {
"description" : "Validating NTP input specification",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validating NTP server 10.0.0.250",
"resultStatus" : "UNKNOWN"
} ]
}
-
Poll until "executionStatus" is not "IN_PROGRESS" using the "id" from the previous response.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/dns-configuration/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/dns-configuration/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 407
{
"id" : "71653367-2ea8-49f2-bf72-0e0e1fa57dcd",
"description" : "Validate input specification as new NtpConfiguration to VMware Cloud Foundations",
"executionStatus" : "IN_PROGRESS",
"validationChecks" : [ {
"description" : "Validating NTP input specification",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validating NTP server 10.0.0.250",
"resultStatus" : "UNKNOWN"
} ]
}
-
In case of no errors in the validation , the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
Note
|
Make changes to the input specification and re-validate using a new API invocation. |
-
Trigger the task using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/dns-configuration' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}'
HTTP Request
PUT /v1/system/dns-configuration HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 85
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/f0da79cd-6f5c-4118-95cc-e56af204e4cd
Content-Type: application/json
Content-Length: 131
{
"id" : "f0da79cd-6f5c-4118-95cc-e56af204e4cd",
"name" : "Configuring DNS servers on VCF system",
"status" : "IN_PROGRESS"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
-
Get the DnsConfiguration state.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/dns-configuration' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/dns-configuration HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 85
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
2.26. NTP Configuration
2.26.1. Configuration of New NTP Server
Prerequisites
-
The new NTP server(s) to be configured should be reachable from SDDC components.
-
The new NTP server(s) should be able to do NTP sync from SDDC Manager.
-
All SDDC components should be reachable from SDDC manager.
-
All SDDC components state should be active as per SDDC Manager.
-
The new server should be NTP synced from the SDDC Manager.
Steps
-
Perform the validation step for the desired NTP configuration before applying the same.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ntp-configuration/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}'
HTTP Request
POST /v1/system/ntp-configuration/validations HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 61
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/system/ntp-servers/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd
Content-Type: application/json
Content-Length: 407
{
"id" : "71653367-2ea8-49f2-bf72-0e0e1fa57dcd",
"description" : "Validate input specification as new NtpConfiguration to VMware Cloud Foundations",
"executionStatus" : "IN_PROGRESS",
"validationChecks" : [ {
"description" : "Validating NTP input specification",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validating NTP server 10.0.0.250",
"resultStatus" : "UNKNOWN"
} ]
}
-
Poll until "executionStatus" is not "IN_PROGRESS" using the "id" from the previous response.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ntp-configuration/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/ntp-configuration/validations/71653367-2ea8-49f2-bf72-0e0e1fa57dcd HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 407
{
"id" : "71653367-2ea8-49f2-bf72-0e0e1fa57dcd",
"description" : "Validate input specification as new NtpConfiguration to VMware Cloud Foundations",
"executionStatus" : "IN_PROGRESS",
"validationChecks" : [ {
"description" : "Validating NTP input specification",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validating NTP server 10.0.0.250",
"resultStatus" : "UNKNOWN"
} ]
}
-
In case of no errors in the validation , the "executionStatus" is "COMPLETED" and "resultStatus" is "SUCCEEDED".
-
In case of errors in the input specification, the "executionStatus" is "COMPLETED" and "resultStatus" is "FAILED".
Note
|
Make changes to the input specification and re-validate using a new API invocation. |
-
As the Validation is complete now, perform the NTP configuration using the valid input specification.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ntp-configuration' -i -X PUT \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}'
HTTP Request
PUT /v1/system/ntp-configuration HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 61
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
HTTP Response
HTTP/1.1 202 Accepted
Location: /v1/tasks/28d3f5ae-8072-4b83-ac99-b18d465485bc
Content-Type: application/json
Content-Length: 131
{
"id" : "28d3f5ae-8072-4b83-ac99-b18d465485bc",
"name" : "Configuring NTP servers on VCF system",
"status" : "IN_PROGRESS"
}
-
Poll the task until "status" is not "IN_PROGRESS" using the "id" from the previous response.
Tip
|
Refer to: Get a Task. |
-
If the "status" is "SUCCESSFUL", the task is completed successfully.
-
If the "status" is "FAILED", the task can be re-executed.
Tip
|
Refer to: Retry a Task. |
-
Get the DnsConfiguration state
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/system/ntp-configuration' -i -X GET \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/system/ntp-configuration HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 61
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
2.27. Edge Clusters
2.27.1. Validate Edge Cluster
Prerequisites
Complete the required prerequisites before invoking the API.
-
Are Separate VLANs and subnets available to be used for Host VTEP VLAN and Edge VTEP VLAN.
-
Host VTEP VLAN and Edge VTEP VLAN need to be routed.
-
If dynamic routing is desired, set up two BGP Peers (on TORs or infra ESG) with an interface IP, ASN and BGP password.
-
Reserve an ASN to use for the NSX-T Edge cluster’s T0 interfaces.
-
DNS entries for NSX-T Edge components should be populated in customer managed DNS server.
-
The vSphere clusters hosting the edge clusters should be contained in a Rack.
The following data is required for the Validate an Edge Cluster spec:
-
Edge Cluster name
-
Maximum transmission unit
-
ASN to be used for the edge cluster
-
Edge Cluster profile type. Ex: DEFAULT, CUSTOM
-
Edge Cluster type. Ex: NSX-T, NSX-V
-
Edge Cluster form factor. Ex: LARGE, MEDIUM, SMALL
-
Edge Cluster profile spec. Refer to: NsxTEdgeClusterProfileSpec
-
Edge Node specs. Refer to: NsxTEdgeNodeSpec
-
Name for the T0.
-
Tier 0 Routing type. Ex: EBGP, STATIC
-
High-availability Mode for Tier-0. Ex: ACTIVE_ACTIVE, ACTIVE_STANDBY
-
Name for the T1.
Tip
|
Refer to: EdgeClusterCreationSpec. |
Steps
-
Validate the input specification using Validate an Edge Cluster spec.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/edge-clusters/validations' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"edgeClusterName" : "acme-edge-cluster",
"edgeClusterType" : "NSX-T",
"edgeRootPassword" : "Acme123!Acme123!",
"edgeAdminPassword" : "Acme123!Acme123!",
"edgeAuditPassword" : "Acme123!Acme123!",
"edgeFormFactor" : "MEDIUM",
"tier0ServicesHighAvailability" : "ACTIVE_ACTIVE",
"mtu" : 9000,
"asn" : 65003,
"edgeNodeSpecs" : [ {
"edgeNodeName" : "nsxt-edge-node-1.vrack.vsphere.local",
"managementIP" : "10.0.0.50/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.10/24",
"edgeTep2IP" : "192.168.52.11/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.2/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.2/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
}, {
"edgeNodeName" : "nsxt-edge-node-2.vrack.vsphere.local",
"managementIP" : "10.0.0.51/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.12/24",
"edgeTep2IP" : "192.168.52.13/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.3/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.3/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
} ],
"tier0RoutingType" : "EBGP",
"tier0Name" : "Acme-Tier0",
"tier1Name" : "Acme-Tier1",
"edgeClusterProfileType" : "DEFAULT"
}'
HTTP Request
POST /v1/edge-clusters/validations HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 2005
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"edgeClusterName" : "acme-edge-cluster",
"edgeClusterType" : "NSX-T",
"edgeRootPassword" : "Acme123!Acme123!",
"edgeAdminPassword" : "Acme123!Acme123!",
"edgeAuditPassword" : "Acme123!Acme123!",
"edgeFormFactor" : "MEDIUM",
"tier0ServicesHighAvailability" : "ACTIVE_ACTIVE",
"mtu" : 9000,
"asn" : 65003,
"edgeNodeSpecs" : [ {
"edgeNodeName" : "nsxt-edge-node-1.vrack.vsphere.local",
"managementIP" : "10.0.0.50/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.10/24",
"edgeTep2IP" : "192.168.52.11/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.2/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.2/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
}, {
"edgeNodeName" : "nsxt-edge-node-2.vrack.vsphere.local",
"managementIP" : "10.0.0.51/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.12/24",
"edgeTep2IP" : "192.168.52.13/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.3/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.3/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
} ],
"tier0RoutingType" : "EBGP",
"tier0Name" : "Acme-Tier0",
"tier1Name" : "Acme-Tier1",
"edgeClusterProfileType" : "DEFAULT"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Length: 1947
{
"id" : "4e6904b4-8b64-4bb5-98e0-1d7e906f2911",
"description" : "Validating NSX-T Edge Cluster Creation Spec",
"executionStatus" : "IN_PROGRESS",
"resultStatus" : "UNKNOWN",
"validationChecks" : [ {
"description" : "Distinct edge TEP IPs for edge nodes.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validate that IPs are in same subnet.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for edge management IP to edge node FQDN resolution.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for duplicates : duplicate edge cluster name.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Capacity check for hosting vsphere cluster/s.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for L2 non-uniform and L3 cluster.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Two distinct uplink interfaces per edge node.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that Edge cluster with the same name does not exist in NSX-T manager.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "The vSphere cluster/s hosting the edge cluster belong to the same workload domain.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Edge cluster password/s is not meeting Nsxt paswword policy standard.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Compliance of edge cluster size with tier0 HA mode.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for IP conflict for edge management IP, edge TEP IPs, Tier0 uplink interface IPs.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that Uplink VLANs are valid.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that T0 with the same name does not exist.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that T1 with the same name does not exist.",
"resultStatus" : "UNKNOWN"
} ]
}
-
Poll the status of the validation using the validation API with the ID from the response of the previous API.
Tip
|
Refer to: Validate Edge Cluster. |
2.27.2. Get Edge Cluster Validation
Prerequisites
The following data is required for the Get the Edge Cluster spec validation.
-
ID of the Edge Cluster Validation
Steps
-
Invoke the Get the Edge Cluster spec validation.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/edge-clusters/validations/3b57b387-9e60-4377-8a08-4c5fbfd62307' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/edge-clusters/validations/3b57b387-9e60-4377-8a08-4c5fbfd62307 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1947
{
"id" : "3b57b387-9e60-4377-8a08-4c5fbfd62307",
"description" : "Validating NSX-T Edge Cluster Creation Spec",
"executionStatus" : "IN_PROGRESS",
"resultStatus" : "UNKNOWN",
"validationChecks" : [ {
"description" : "Distinct edge TEP IPs for edge nodes.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Validate that IPs are in same subnet.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for edge management IP to edge node FQDN resolution.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for duplicates : duplicate edge cluster name.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Capacity check for hosting vsphere cluster/s.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for L2 non-uniform and L3 cluster.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Two distinct uplink interfaces per edge node.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that Edge cluster with the same name does not exist in NSX-T manager.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "The vSphere cluster/s hosting the edge cluster belong to the same workload domain.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Edge cluster password/s is not meeting Nsxt paswword policy standard.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Compliance of edge cluster size with tier0 HA mode.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check for IP conflict for edge management IP, edge TEP IPs, Tier0 uplink interface IPs.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that Uplink VLANs are valid.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that T0 with the same name does not exist.",
"resultStatus" : "UNKNOWN"
}, {
"description" : "Check that T1 with the same name does not exist.",
"resultStatus" : "UNKNOWN"
} ]
}
2.27.3. Create Edge Cluster
Prerequisites
Complete the required prerequisites before invoking the API.
-
Are Separate VLANs and subnets available to be used for Host VTEP VLAN and Edge VTEP VLAN.
-
Host VTEP VLAN and Edge VTEP VLAN need to be routed.
-
If dynamic routing is desired, set up two BGP Peers (on TORs or infra ESG) with an interface IP, ASN and BGP password.
-
Reserve an ASN to use for the NSX-T Edge cluster’s T0 interfaces.
-
DNS entries for NSX-T Edge components should be populated in customer managed DNS server.
-
The vSphere clusters hosting the edge clusters should be contained in a Rack.
The following data is required for the Create an Edge Cluster:
-
Edge Cluster name
-
Maximum transmission unit
-
ASN to be used for the edge cluster
-
Edge Cluster profile type. Ex: DEFAULT, CUSTOM
-
Edge Cluster type. Ex: NSX-T, NSX-V
-
Edge Cluster form factor. Ex: LARGE, MEDIUM, SMALL
-
Edge Cluster profile spec. Refer to: NsxTEdgeClusterProfileSpec
-
Edge Node specs. Refer to: NsxTEdgeNodeSpec
-
Name for the T0.
-
Tier 0 Routing type. Ex: EBGP, STATIC
-
High-availability Mode for Tier-0. Ex: ACTIVE_ACTIVE, ACTIVE_STANDBY
-
Name for the T1.
Tip
|
Refer to: EdgeClusterCreationSpec. |
Steps
-
Invoke the Create an Edge Cluster. This API returns a task which can be polled and monitored.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/edge-clusters' -i -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....' \
-d '{
"edgeClusterName" : "acme-edge-cluster",
"edgeClusterType" : "NSX-T",
"edgeRootPassword" : "Acme123!Acme123!",
"edgeAdminPassword" : "Acme123!Acme123!",
"edgeAuditPassword" : "Acme123!Acme123!",
"edgeFormFactor" : "MEDIUM",
"tier0ServicesHighAvailability" : "ACTIVE_ACTIVE",
"mtu" : 9000,
"asn" : 65003,
"edgeNodeSpecs" : [ {
"edgeNodeName" : "nsxt-edge-node-1.vrack.vsphere.local",
"managementIP" : "10.0.0.50/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.10/24",
"edgeTep2IP" : "192.168.52.11/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.2/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.2/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
}, {
"edgeNodeName" : "nsxt-edge-node-2.vrack.vsphere.local",
"managementIP" : "10.0.0.51/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.12/24",
"edgeTep2IP" : "192.168.52.13/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.3/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.3/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
} ],
"tier0RoutingType" : "EBGP",
"tier0Name" : "Acme-Tier0",
"tier1Name" : "Acme-Tier1",
"edgeClusterProfileType" : "DEFAULT"
}'
HTTP Request
POST /v1/edge-clusters HTTP/1.1
Content-Type: application/json
Accept: application/json
Content-Length: 2005
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
{
"edgeClusterName" : "acme-edge-cluster",
"edgeClusterType" : "NSX-T",
"edgeRootPassword" : "Acme123!Acme123!",
"edgeAdminPassword" : "Acme123!Acme123!",
"edgeAuditPassword" : "Acme123!Acme123!",
"edgeFormFactor" : "MEDIUM",
"tier0ServicesHighAvailability" : "ACTIVE_ACTIVE",
"mtu" : 9000,
"asn" : 65003,
"edgeNodeSpecs" : [ {
"edgeNodeName" : "nsxt-edge-node-1.vrack.vsphere.local",
"managementIP" : "10.0.0.50/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.10/24",
"edgeTep2IP" : "192.168.52.11/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.2/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.2/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
}, {
"edgeNodeName" : "nsxt-edge-node-2.vrack.vsphere.local",
"managementIP" : "10.0.0.51/24",
"managementGateway" : "10.0.0.250",
"edgeTepGateway" : "192.168.52.1",
"edgeTep1IP" : "192.168.52.12/24",
"edgeTep2IP" : "192.168.52.13/24",
"edgeTepVlan" : 1252,
"clusterId" : "d1052c9c-6973-4e32-8034-06e7fa71e83c",
"interRackCluster" : false,
"uplinkNetwork" : [ {
"uplinkVlan" : 2081,
"uplinkInterfaceIP" : "192.168.16.3/24",
"peerIP" : "192.168.16.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
}, {
"uplinkVlan" : 2082,
"uplinkInterfaceIP" : "192.168.17.3/24",
"peerIP" : "192.168.17.10/24",
"asnPeer" : 65001,
"bgpPeerPassword" : "Acme1!"
} ]
} ],
"tier0RoutingType" : "EBGP",
"tier0Name" : "Acme-Tier0",
"tier1Name" : "Acme-Tier1",
"edgeClusterProfileType" : "DEFAULT"
}
HTTP Response
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /v1/tasks/93405dfc-59ea-425f-99fe-0af2c796a626
Content-Length: 170
{
"id" : "93405dfc-59ea-425f-99fe-0af2c796a626",
"name" : "Add a NSX-T edge cluster",
"status" : "IN_PROGRESS",
"creationTimestamp" : "2020-04-10T06:33:47.721Z"
}
-
Poll the status of the task using the task API with the ID from the response of the previous API.
Tip
|
Refer to: Get a Task. |
2.27.4. Get the Edge Clusters
-
Get the Edge Clusters API is used to get all the edge clusters.
Prerequisites
None
Steps
-
Invoke the Get the Edge Clusters.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/edge-clusters' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/edge-clusters HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 346
{
"elements" : [ {
"id" : "618eb382-f84f-4f56-b92f-66a1c262d389",
"name" : "acme-edge-cluster",
"clusters" : [ {
"id" : "d1052c9c-6973-4e32-8034-06e7fa71e83c"
} ],
"nsxtCluster" : {
"id" : "84f3c671-bbbe-4b3c-89d8-4600409cb5f9",
"vipFqdn" : "vip-nsxt-mgmt.acme.com",
"vip" : "10.0.0.30"
}
} ]
}
2.27.5. Get Edge Cluster
-
Get an Edge Cluster API is used to get a specific edge cluster.
Prerequisites
-
The following data is required:
-
ID of the Edge Cluster
-
Steps
-
Invoke the Get an Edge Cluster.
cURL Request
$ curl 'https://sddc-manager.sfo01.rainpole.local/v1/edge-clusters/16872ff8-186a-4b0c-a639-5d50c96738e4' -i -X GET \
-H 'Accept: application/json' \
-H 'Authorization: Bearer etYWRta....'
HTTP Request
GET /v1/edge-clusters/16872ff8-186a-4b0c-a639-5d50c96738e4 HTTP/1.1
Accept: application/json
Host: sddc-manager.sfo01.rainpole.local
Authorization: Bearer etYWRta....
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 301
{
"id" : "8f4f3457-24b7-429c-b233-1974f4d25fb3",
"name" : "acme-edge-cluster",
"clusters" : [ {
"id" : "d1052c9c-6973-4e32-8034-06e7fa71e83c"
} ],
"nsxtCluster" : {
"id" : "099162b2-1dfb-420b-a6bb-1c51d953bc40",
"vipFqdn" : "vip-nsxt-mgmt.acme.com",
"vip" : "10.0.0.30"
}
}
2.28. Workload Management
vSphere with Kubernetes transforms vSphere to a platform for running Kubernetes workloads natively on the hypervisor layer.
2.28.1. Deploy Workload Management
Prerequisites
-
Create NSX-T VI workload domain.
-
VUM (vSphere Update Manager) option should be enabled.
-
Tip
|
Refer to: Create a Domain |
-
Deploy an NSX-T Edge cluster with the following properties:
-
Edge Form Factor - Large
-
Tier0 Service High Availability - Active-Active
-
Tip
|
Refer to: Create an Edge Cluster |
-
All hosts in the cluster where you want to deploy Workload Management must have a vSphere with Kubernetes license applied on them.
-
Workload Management supports one Edge cluster per transport zone, so ensure that the overlay transport zone connected to this cluster does not have other Edge clusters connected to it.
-
The following subnets must have been defined:
-
Subnet for pod networking (non-routable), minimum of a /22 subnet.
-
Subnet for Service IP addresses (non-routable), minimum of a /24 subnet.
-
Subnet for Ingress (routable), minimum of a /27 subnet.
-
Subnet for Egress (routable), minimum of a /27 subnet.
-
-
Create OIDC registration using NSX-T API.
Steps
-
Enable Workload Management using vCenter API.
3. Paths
3.1. Trigger backup
POST /v1/backups/tasks
3.1.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
backupsSpec |
backupsSpec |
3.1.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.1.3. Consumes
-
application/json
3.1.4. Produces
-
application/json
3.1.5. Tags
-
BackupRestore
3.1.6. Example HTTP request
Request path
/v1/backups/tasks
Request body
{
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ]
}
3.1.7. Example HTTP response
Response 200
{
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: IN_PROGRESS"
}
Response 202
{
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: IN_PROGRESS"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.2. Upload a Bundle
POST /v1/bundles
3.2.1. Description
Upload Bundle to SDDC Manager. Used when you do not have internet connectivity for downloading bundles from VMWare/VxRail to SDDC Manager. The Bundles are manually downloaded from Depot using Bundle Transfer utility
3.2.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
bundleUploadSpec |
Bundle Upload Specification |
3.2.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.2.4. Consumes
-
application/json
3.2.5. Produces
-
application/json
3.2.6. Tags
-
Bundles
3.2.7. Example HTTP request
Request path
/v1/bundles
Request body
{
"bundleFilePath" : "string",
"compatibilitySetsFilePath" : "string",
"manifestFilePath" : "string",
"partnerExtensionSpec" : {
"partnerBundleMetadataFilePath" : "string",
"partnerBundleVersion" : "string"
},
"signatureFilePath" : "string"
}
3.2.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.3. Get the Bundles
GET /v1/bundles
3.3.1. Description
Get all Bundles i.e uploaded bundles and also bundles available via depot access.
3.3.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
isCompliant |
Is compliant with the current VCF version |
boolean |
Query |
productType |
The type of the product |
string |
3.3.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
500 |
Internal Server Error |
3.3.4. Consumes
-
application/json
3.3.5. Produces
-
application/json
3.3.6. Tags
-
Bundles
3.3.7. Example HTTP request
Request path
/v1/bundles
3.3.8. Example HTTP response
Response 200
{
"elements" : [ {
"components" : [ {
"description" : "string",
"fromVersion" : "string",
"id" : "string",
"imageType" : "One among: PATCH, INSTALL",
"releasedDate" : {
"epochSecond" : 0,
"nano" : 0
},
"toVersion" : "string",
"type" : "string",
"vendor" : "string"
} ],
"description" : "string",
"downloadStatus" : "One among: PENDING, SCHEDULED, IN_PROGRESS, SUCCESSFUL, FAILED",
"id" : "string",
"isCompliant" : true,
"isCumulative" : true,
"releasedDate" : {
"epochSecond" : 0,
"nano" : 0
},
"severity" : "One among: CRITICAL, IMPORTANT, MODERATE, LOW",
"sizeMB" : 0.0,
"type" : "One among: SDDC_MANAGER, VMWARE_SOFTWARE, VXRAIL",
"vendor" : "string",
"version" : "string"
} ]
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.4. Update software compatibility sets for Bundles
PATCH /v1/bundles/
3.4.1. Description
Update software compatibility sets for Bundles
3.4.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
bundleUpdateSpec |
Bundle Update Specification |
3.4.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
No Content |
202 |
Accepted |
No Content |
400 |
Bad Request |
|
409 |
Conflict |
|
500 |
Internal Server Error |
3.4.4. Consumes
-
application/json
3.4.5. Produces
-
*/*
3.4.6. Tags
-
Bundles
3.4.7. Example HTTP request
Request path
/v1/bundles/
Request body
{
"bundleDownloadSpec" : {
"downloadNow" : true,
"scheduledTimestamp" : {
"epochSecond" : 0,
"nano" : 0
}
},
"compatibilitySetsFilePath" : "string"
}
3.4.8. Example HTTP response
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.5. Get a Bundle
GET /v1/bundles/{id}
3.5.1. Description
Get a Bundle
3.5.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Bundle ID |
string |
3.5.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Bundle Not Found |
|
500 |
Internal Server Error |
3.5.4. Consumes
-
application/json
3.5.5. Produces
-
application/json
3.5.6. Tags
-
Bundles
3.5.7. Example HTTP request
Request path
/v1/bundles/string
3.5.8. Example HTTP response
Response 200
{
"components" : [ {
"description" : "string",
"fromVersion" : "string",
"id" : "string",
"imageType" : "One among: PATCH, INSTALL",
"releasedDate" : {
"epochSecond" : 0,
"nano" : 0
},
"toVersion" : "string",
"type" : "string",
"vendor" : "string"
} ],
"description" : "string",
"downloadStatus" : "One among: PENDING, SCHEDULED, IN_PROGRESS, SUCCESSFUL, FAILED",
"id" : "string",
"isCompliant" : true,
"isCumulative" : true,
"releasedDate" : {
"epochSecond" : 0,
"nano" : 0
},
"severity" : "One among: CRITICAL, IMPORTANT, MODERATE, LOW",
"sizeMB" : 0.0,
"type" : "One among: SDDC_MANAGER, VMWARE_SOFTWARE, VXRAIL",
"vendor" : "string",
"version" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.6. Update a Bundle for downloading from depot
PATCH /v1/bundles/{id}
3.6.1. Description
Update a Bundle for scheduling/triggering download. Only one download can triggered for a Bundle.
3.6.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Bundle ID |
string |
Body |
bundleUpdateSpec |
Bundle Update Specification |
3.6.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
409 |
Conflict |
|
500 |
Internal Server Error |
3.6.4. Consumes
-
application/json
3.6.5. Produces
-
application/json
3.6.6. Tags
-
Bundles
3.6.7. Example HTTP request
Request path
/v1/bundles/string
Request body
{
"bundleDownloadSpec" : {
"downloadNow" : true,
"scheduledTimestamp" : {
"epochSecond" : 0,
"nano" : 0
}
},
"compatibilitySetsFilePath" : "string"
}
3.6.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.7. Get certificate authorities information
GET /v1/certificate-authorities
3.7.1. Description
Get certificate authorities information
3.7.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad request |
|
500 |
Internal Server Error |
3.7.3. Consumes
-
application/json
3.7.4. Produces
-
application/json
3.7.5. Tags
-
Certificates
3.7.6. Example HTTP request
Request path
/v1/certificate-authorities
3.7.7. Example HTTP response
Response 200
{
"elements" : [ {
"commonName" : "string",
"country" : "string",
"id" : "One among: OpenSSL, Microsoft",
"locality" : "string",
"organization" : "string",
"organizationUnit" : "string",
"serverUrl" : "string",
"state" : "string",
"templateName" : "string",
"username" : "string"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.8. Create a certificate authority
PUT /v1/certificate-authorities
3.8.1. Description
Creates a certificate authority. This is required to generate signed certificates by supporting CAs.
3.8.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
certificateAuthorityCreationSpec |
certificateAuthorityCreationSpec |
3.8.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
object |
400 |
Bad request |
|
500 |
Internal server error |
3.8.4. Consumes
-
application/json
3.8.5. Produces
-
*/*
3.8.6. Tags
-
Certificates
3.8.7. Example HTTP request
Request path
/v1/certificate-authorities
Request body
{
"microsoftCertificateAuthoritySpec" : {
"secret" : "string",
"serverUrl" : "string",
"templateName" : "string",
"username" : "string"
},
"openSSLCertificateAuthoritySpec" : {
"commonName" : "string",
"country" : "string",
"locality" : "string",
"organization" : "string",
"organizationUnit" : "string",
"state" : "string"
}
}
3.8.8. Example HTTP response
Response 200
{ }
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.9. Configure existing certificate authority
PATCH /v1/certificate-authorities
3.9.1. Description
Configure existing certificate authority
3.9.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
certificateAuthoritySpec |
certificateAuthoritySpec |
3.9.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
object |
400 |
Bad request |
|
404 |
Not Found |
|
500 |
Internal server error |
3.9.4. Consumes
-
application/json
3.9.5. Produces
-
*/*
3.9.6. Tags
-
Certificates
3.9.7. Example HTTP request
Request path
/v1/certificate-authorities
Request body
{
"microsoftCertificateAuthoritySpec" : {
"secret" : "string",
"serverUrl" : "string",
"templateName" : "string",
"username" : "string"
},
"openSSLCertificateAuthoritySpec" : {
"commonName" : "string",
"country" : "string",
"locality" : "string",
"organization" : "string",
"organizationUnit" : "string",
"state" : "string"
}
}
3.9.8. Example HTTP response
Response 200
{ }
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.10. Deletes CA configuration file
DELETE /v1/certificate-authorities/{caType}
3.10.1. Description
Deletes CA configuration file
3.10.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
caType |
The CA type |
string |
3.10.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
object |
204 |
No contet |
object |
404 |
Not Found |
|
500 |
Internal server error |
3.10.4. Consumes
-
application/json
3.10.5. Produces
-
*/*
3.10.6. Tags
-
Certificates
3.10.7. Example HTTP request
Request path
/v1/certificate-authorities/string
3.10.8. Example HTTP response
Response 200
{ }
Response 204
{ }
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.11. Get certificate authority information
GET /v1/certificate-authorities/{id}
3.11.1. Description
Get certificate authority information
3.11.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
CA type |
string |
3.11.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Not Found |
|
500 |
Internal Server Error |
3.11.4. Consumes
-
application/json
3.11.5. Produces
-
application/json
3.11.6. Tags
-
Certificates
3.11.7. Example HTTP request
Request path
/v1/certificate-authorities/string
3.11.8. Example HTTP response
Response 200
{
"commonName" : "string",
"country" : "string",
"id" : "One among: OpenSSL, Microsoft",
"locality" : "string",
"organization" : "string",
"organizationUnit" : "string",
"serverUrl" : "string",
"state" : "string",
"templateName" : "string",
"username" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.12. Create a Cluster and add to an existing Domain
POST /v1/clusters
3.12.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
clusterCreationSpec |
Cluster Creation Spec |
3.12.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.12.3. Consumes
-
application/json
3.12.4. Produces
-
application/json
3.12.5. Tags
-
Clusters
3.12.6. Example HTTP request
Request path
/v1/clusters
Request body
{
"computeSpec" : {
"clusterSpecs" : [ {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
} ]
},
"domainId" : "string"
}
3.12.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.13. Get the Clusters
GET /v1/clusters
3.13.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
isStretched |
isStretched |
boolean |
3.13.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.13.3. Consumes
-
application/json
3.13.4. Produces
-
application/json
3.13.5. Tags
-
Clusters
3.13.6. Example HTTP request
Request path
/v1/clusters
3.13.7. Example HTTP response
Response 200
{
"elements" : [ {
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.14. Validate the input spec for clusters operations
POST /v1/clusters/validations
3.14.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
clusterCreationSpec |
Clusters Operation Spec Validation |
3.14.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.14.3. Consumes
-
application/json
3.14.4. Produces
-
application/json
3.14.5. Tags
-
Clusters
3.14.6. Example HTTP request
Request path
/v1/clusters/validations
Request body
{
"computeSpec" : {
"clusterSpecs" : [ {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
} ]
},
"domainId" : "string"
}
3.14.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.15. Get the status of the validations for cluster deployment
GET /v1/clusters/validations/{id}
3.15.1. Description
Gets the status of given cluster validation workflow by given validation id
3.15.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster validation workflow id |
string |
3.15.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
404 |
Not Found |
3.15.4. Consumes
-
application/json
3.15.5. Produces
-
application/json
3.15.6. Tags
-
Clusters
3.15.7. Example HTTP request
Request path
/v1/clusters/validations/string
3.15.8. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.16. Get query response
GET /v1/clusters/{clusterId}/hosts/queries/{queryId}
3.16.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
clusterId |
Cluster ID |
string |
Path |
queryId |
Query ID |
string |
3.16.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Query Not Found |
|
500 |
Internal Server Error |
3.16.3. Consumes
-
application/json
3.16.4. Produces
-
application/json
3.16.5. Tags
-
Clusters
3.16.6. Example HTTP request
Request path
/v1/clusters/string/hosts/queries/string
3.16.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.17. Get a Cluster
GET /v1/clusters/{id}
3.17.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
3.17.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Cluster not found |
|
500 |
InternalServerError |
3.17.3. Consumes
-
application/json
3.17.4. Produces
-
application/json
3.17.5. Tags
-
Clusters
3.17.6. Example HTTP request
Request path
/v1/clusters/string
3.17.7. Example HTTP response
Response 200
{
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.18. Delete a Cluster from a Domain if it has been previously initialized for deletion
DELETE /v1/clusters/{id}
3.18.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
3.18.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
404 |
Not Found |
|
500 |
InternalServerError |
3.18.3. Consumes
-
application/json
3.18.4. Produces
-
application/json
3.18.5. Tags
-
Clusters
3.18.6. Example HTTP request
Request path
/v1/clusters/string
3.18.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.19. Update a Cluster by adding or removing Hosts, Stretching a standard vSAN cluster, Unstretching a stretched cluster or by marking for deletion
PATCH /v1/clusters/{id}
3.19.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
Body |
clusterUpdateSpec |
Cluster Update Data |
3.19.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
202 |
Accepted |
|
400 |
Bad Request |
|
404 |
Not Found |
|
500 |
InternalServerError |
3.19.3. Consumes
-
application/json
3.19.4. Produces
-
application/json
3.19.5. Tags
-
Clusters
3.19.6. Example HTTP request
Request path
/v1/clusters/string
Request body
{
"clusterCompactionSpec" : {
"force" : true,
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ]
},
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"interRackExpansion" : true,
"vsanNetworkSpecs" : [ {
"vsanCidr" : "string",
"vsanGatewayIP" : "string"
} ],
"witnessSpec" : {
"fqdn" : "string",
"vsanCidr" : "string",
"vsanIp" : "string"
}
},
"clusterStretchSpec" : {
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"isEdgeClusterConfiguredForMultiAZ" : true,
"secondaryAzOverlayVlanId" : 0,
"vsanNetworkSpecs" : [ {
"vsanCidr" : "string",
"vsanGatewayIP" : "string"
} ],
"witnessSpec" : {
"fqdn" : "string",
"vsanCidr" : "string",
"vsanIp" : "string"
}
},
"clusterUnstretchSpec" : { },
"markForDeletion" : true,
"prepareForStretch" : true
}
3.19.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.20. Get all host criteria
GET /v1/clusters/{id}/hosts/criteria
3.20.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
3.20.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
3.20.3. Consumes
-
application/json
3.20.4. Produces
-
application/json
3.20.5. Tags
-
Clusters
3.20.6. Example HTTP request
Request path
/v1/clusters/string/hosts/criteria
3.20.7. Example HTTP response
Response 200
{
"elements" : [ {
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
} ]
}
3.21. Get a criterion to query for host
GET /v1/clusters/{id}/hosts/criteria/{name}
3.21.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
Path |
name |
Criteria Name |
string |
3.21.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Criterion Not Found |
3.21.3. Consumes
-
application/json
3.21.4. Produces
-
application/json
3.21.5. Tags
-
Clusters
3.21.6. Example HTTP request
Request path
/v1/clusters/string/hosts/criteria/string
3.21.7. Example HTTP response
Response 200
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.22. Post a host query
POST /v1/clusters/{id}/hosts/queries
3.22.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
Body |
hostCriterion |
hostCriterion |
3.22.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.22.3. Consumes
-
application/json
3.22.4. Produces
-
application/json
3.22.5. Tags
-
Clusters
3.22.6. Example HTTP request
Request path
/v1/clusters/string/hosts/queries
Request body
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
}
3.22.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.23. Validate the input spec for operations on a cluster
POST /v1/clusters/{id}/validations
3.23.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
Body |
clusterUpdateSpec |
clusterUpdateSpec |
3.23.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Not Found |
|
500 |
InternalServerError |
3.23.3. Consumes
-
application/json
3.23.4. Produces
-
application/json
3.23.5. Tags
-
Clusters
3.23.6. Example HTTP request
Request path
/v1/clusters/string/validations
Request body
{
"clusterCompactionSpec" : {
"force" : true,
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ]
},
"clusterExpansionSpec" : {
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"interRackExpansion" : true,
"vsanNetworkSpecs" : [ {
"vsanCidr" : "string",
"vsanGatewayIP" : "string"
} ],
"witnessSpec" : {
"fqdn" : "string",
"vsanCidr" : "string",
"vsanIp" : "string"
}
},
"clusterStretchSpec" : {
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"isEdgeClusterConfiguredForMultiAZ" : true,
"secondaryAzOverlayVlanId" : 0,
"vsanNetworkSpecs" : [ {
"vsanCidr" : "string",
"vsanGatewayIP" : "string"
} ],
"witnessSpec" : {
"fqdn" : "string",
"vsanCidr" : "string",
"vsanIp" : "string"
}
},
"clusterUnstretchSpec" : { },
"markForDeletion" : true,
"prepareForStretch" : true
}
3.23.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.24. Get the Credentials
GET /v1/credentials
3.24.1. Description
Get the Credentials
3.24.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
domainName |
The name of the domain to which the resource belongs to (may be null in case there is no associated domain) |
string |
Query |
resourceIp |
The IP address of the resource |
string |
Query |
resourceName |
The name of the resource |
string |
Query |
resourceType |
The type of the resource. One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP |
string |
3.24.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
500 |
Internal Server Error |
3.24.4. Consumes
-
application/json
3.24.5. Produces
-
application/json
3.24.6. Tags
-
Credentials
3.24.7. Example HTTP request
Request path
/v1/credentials
3.24.8. Example HTTP response
Response 200
{
"elements" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"id" : "string",
"modificationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"password" : "string",
"resource" : {
"domainName" : "string",
"resourceId" : "string",
"resourceIp" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"serviceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"targetType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
},
"username" : "string"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.25. Update or rotate passwords for a list of resources
PATCH /v1/credentials
3.25.1. Description
Update passwords for given list of resources by supplying new passwords or rotate the passwords using system generated passwords
3.25.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
credentialsUpdateSpec |
credentialsUpdateSpec |
3.25.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
500 |
Internal Server Error |
3.25.4. Consumes
-
application/json
3.25.5. Produces
-
application/json
3.25.6. Tags
-
Credentials
3.25.7. Example HTTP request
Request path
/v1/credentials
Request body
{
"elements" : [ {
"credentials" : [ {
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"password" : "string",
"username" : "string"
} ],
"resourceId" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
} ],
"operationType" : "One among: UPDATE, ROTATE"
}
3.25.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.26. Fetch the credentials tasks
GET /v1/credentials/tasks
3.26.1. Description
Fetch all credentials tasks in reverse chronological order
3.26.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
limit |
The number of elements to be returned in the result |
integer (int32) |
3.26.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.26.4. Consumes
-
application/json
3.26.5. Produces
-
application/json
3.26.6. Tags
-
Credentials
3.26.7. Example HTTP request
Request path
/v1/credentials/tasks
3.26.8. Example HTTP response
Response 200
{
"elements" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"subTasks" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "string",
"dependentSubTasks" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "string",
"dependentSubTasks" : [ "..." ],
"description" : "string",
"entityType" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"newPassword" : "string",
"oldPassword" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"username" : "string"
} ],
"description" : "string",
"entityType" : "string",
"errors" : [ "..." ],
"name" : "string",
"newPassword" : "string",
"oldPassword" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"username" : "string"
} ],
"type" : "One among: UPDATE, ROTATE"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.27. Fetch a credentials task
GET /v1/credentials/tasks/{id}
3.27.1. Description
Fetch credentials task for a given ID
3.27.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The ID of the credentials task |
string |
3.27.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.27.4. Consumes
-
application/json
3.27.5. Produces
-
application/json
3.27.6. Tags
-
Credentials
3.27.7. Example HTTP request
Request path
/v1/credentials/tasks/string
3.27.8. Example HTTP response
Response 200
{
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"subTasks" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "string",
"dependentSubTasks" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "string",
"dependentSubTasks" : [ "..." ],
"description" : "string",
"entityType" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"newPassword" : "string",
"oldPassword" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"username" : "string"
} ],
"description" : "string",
"entityType" : "string",
"errors" : [ "..." ],
"name" : "string",
"newPassword" : "string",
"oldPassword" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, USER_CANCELLED, INCONSISTENT",
"username" : "string"
} ],
"type" : "One among: UPDATE, ROTATE"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.28. Cancel a failed credentials task for a given ID
DELETE /v1/credentials/tasks/{id}
3.28.1. Description
Cancel a failed credentials task for a given ID
3.28.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Task ID of the failed operation required to be cancelled |
string |
3.28.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
204 |
No content |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.28.4. Consumes
-
application/json
3.28.5. Produces
-
application/json
3.28.6. Tags
-
Credentials
3.28.7. Example HTTP request
Request path
/v1/credentials/tasks/string
3.28.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 204
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.29. Retry a failed credentials task for a given ID
PATCH /v1/credentials/tasks/{id}
3.29.1. Description
Retry a failed credentials task for a given ID
3.29.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Task ID of the failed operation that is to be retried |
string |
Body |
credentialsUpdateSpec |
credentialsUpdateSpec |
3.29.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
500 |
Internal Server Error |
3.29.4. Consumes
-
application/json
3.29.5. Produces
-
application/json
3.29.6. Tags
-
Credentials
3.29.7. Example HTTP request
Request path
/v1/credentials/tasks/string
Request body
{
"elements" : [ {
"credentials" : [ {
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"password" : "string",
"username" : "string"
} ],
"resourceId" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
} ],
"operationType" : "One among: UPDATE, ROTATE"
}
3.29.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.30. Fetch resource credentials for a given credentials task ID
GET /v1/credentials/tasks/{id}/resource-credentials
3.30.1. Description
Fetch resource credentials for a given credentials task ID
3.30.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The ID of the credentials task |
string |
3.30.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< ResourceCredentials > array |
400 |
Bad Request |
|
500 |
Internal Server Error |
3.30.4. Consumes
-
application/json
3.30.5. Produces
-
application/json
3.30.6. Tags
-
Credentials
3.30.7. Example HTTP request
Request path
/v1/credentials/tasks/string/resource-credentials
3.30.8. Example HTTP response
Response 200
[ {
"credentials" : [ {
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"password" : "string",
"username" : "string"
} ],
"resourceId" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
} ]
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.31. getCredentials
GET /v1/credentials/ui
3.31.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
domainName |
domainName |
string |
Query |
resourceIp |
resourceIp |
string |
Query |
resourceName |
resourceName |
string |
Query |
resourceType |
resourceType |
string |
3.31.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
3.31.3. Consumes
-
application/json
3.31.4. Produces
-
application/json
3.31.5. Tags
-
Credentials
3.31.6. Example HTTP request
Request path
/v1/credentials/ui
3.31.7. Example HTTP response
Response 200
{
"elements" : [ {
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"id" : "string",
"modificationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"password" : "string",
"resource" : {
"domainName" : "string",
"resourceId" : "string",
"resourceIp" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"serviceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"targetType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
},
"username" : "string"
} ]
}
3.32. Get Credential for the given ID
GET /v1/credentials/{id}
3.32.1. Description
Get Credential for the given ID
3.32.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The ID of the credential |
string |
3.32.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
404 |
Not Found |
|
500 |
Internal Server Error |
3.32.4. Consumes
-
application/json
3.32.5. Produces
-
application/json
3.32.6. Tags
-
Credentials
3.32.7. Example HTTP request
Request path
/v1/credentials/string
3.32.8. Example HTTP response
Response 200
{
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"credentialType" : "One among: SSO, SSH, API, BASIC_AUTH, ADMINISTRATOR, FTP, JDBC, LDAP_DOMAIN_ADMIN, LDAP_READ_WRITE_ACCOUNT, VDI_ADMIN, SQL_SUPER_USER, SQL_DB_OWNER, AUDIT, SERVICE_ACCOUNT",
"id" : "string",
"modificationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"password" : "string",
"resource" : {
"domainName" : "string",
"resourceId" : "string",
"resourceIp" : "string",
"resourceName" : "string",
"resourceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"serviceType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP",
"targetType" : "One among: ESXI, VCENTER, PSC, NSX_MANAGER, NSX_CONTROLLER, NSX_EDGE, NSXT_MANAGER, NSXT_EDGE, VRLI, VROPS, LCM_REPO, VRA, VRSLCM, DEPOT_USER, VXRAIL_MANAGER, AD, BACKUP"
},
"username" : "string"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.33. Create a Domain
POST /v1/domains
3.33.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
domainCreationSpec |
Domain creation data |
3.33.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.33.3. Consumes
-
application/json
3.33.4. Produces
-
application/json
3.33.5. Tags
-
Domains
3.33.6. Example HTTP request
Request path
/v1/domains
Request body
{
"computeSpec" : {
"clusterSpecs" : [ {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
} ]
},
"domainName" : "string",
"nsxTSpec" : {
"licenseKey" : "string",
"nsxManagerAdminPassword" : "string",
"nsxManagerSpecs" : [ {
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
}
} ],
"vip" : "string",
"vipFqdn" : "string"
},
"vcenterSpec" : {
"datacenterName" : "string",
"licenseKey" : "string",
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
},
"rootPassword" : "string"
}
}
3.33.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.34. Get the Domains
GET /v1/domains
3.34.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
type |
The type of the domain |
string |
3.34.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.34.3. Consumes
-
application/json
3.34.4. Produces
-
application/json
3.34.5. Tags
-
Domains
3.34.6. Example HTTP request
Request path
/v1/domains
3.34.7. Example HTTP response
Response 200
{
"clusters" : [ {
"id" : "string"
} ],
"id" : "string",
"name" : "string",
"type" : "string",
"vcenters" : [ {
"fqdn" : "string",
"id" : "string"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.35. Validate the input spec for domains operations
POST /v1/domains/validations
3.35.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
domainCreationSpec |
Domain Creation Spec |
3.35.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.35.3. Consumes
-
application/json
3.35.4. Produces
-
application/json
3.35.5. Tags
-
Domains
3.35.6. Example HTTP request
Request path
/v1/domains/validations
Request body
{
"computeSpec" : {
"clusterSpecs" : [ {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
} ]
},
"domainName" : "string",
"nsxTSpec" : {
"licenseKey" : "string",
"nsxManagerAdminPassword" : "string",
"nsxManagerSpecs" : [ {
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
}
} ],
"vip" : "string",
"vipFqdn" : "string"
},
"vcenterSpec" : {
"datacenterName" : "string",
"licenseKey" : "string",
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
},
"rootPassword" : "string"
}
}
3.35.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.36. Get the status of the validations for domain related operations
GET /v1/domains/validations/{id}
3.36.1. Description
Gets the status of given domain operations validation workflow by given validation id
3.36.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
VxRail Domain validation id |
string |
3.36.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
404 |
Not Found |
3.36.4. Consumes
-
application/json
3.36.5. Produces
-
application/json
3.36.6. Tags
-
Domains
3.36.7. Example HTTP request
Request path
/v1/domains/validations/string
3.36.8. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.37. Get all cluster criteria
GET /v1/domains/{domainId}/clusters/criteria
3.37.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
3.37.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
3.37.3. Consumes
-
application/json
3.37.4. Produces
-
application/json
3.37.5. Tags
-
Domains
3.37.6. Example HTTP request
Request path
/v1/domains/string/clusters/criteria
3.37.7. Example HTTP response
Response 200
{
"elements" : [ {
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: UNMANAGED_CLUSTERS_IN_VCENTER, UNMANAGED_CLUSTER_IN_VCENTER"
} ]
}
3.38. Get a criterion to query for cluster
GET /v1/domains/{domainId}/clusters/criteria/{name}
3.38.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
Path |
name |
Criteria Name |
string |
3.38.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Criterion Not Found |
3.38.3. Consumes
-
application/json
3.38.4. Produces
-
application/json
3.38.5. Tags
-
Domains
3.38.6. Example HTTP request
Request path
/v1/domains/string/clusters/criteria/string
3.38.7. Example HTTP response
Response 200
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: UNMANAGED_CLUSTERS_IN_VCENTER, UNMANAGED_CLUSTER_IN_VCENTER"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.39. Post clusters query
POST /v1/domains/{domainId}/clusters/queries
3.39.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
Body |
clusterCriterion |
clusterCriterion |
3.39.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.39.3. Consumes
-
application/json
3.39.4. Produces
-
application/json
3.39.5. Tags
-
Domains
3.39.6. Example HTTP request
Request path
/v1/domains/string/clusters/queries
Request body
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: UNMANAGED_CLUSTERS_IN_VCENTER, UNMANAGED_CLUSTER_IN_VCENTER"
}
3.39.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.40. Get clusters query response
GET /v1/domains/{domainId}/clusters/queries/{queryId}
3.40.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
Path |
queryId |
Query ID |
string |
3.40.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Query Not Found |
|
500 |
Internal Server Error |
3.40.3. Consumes
-
application/json
3.40.4. Produces
-
application/json
3.40.5. Tags
-
Domains
3.40.6. Example HTTP request
Request path
/v1/domains/string/clusters/queries/string
3.40.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.41. Post a cluster query
POST /v1/domains/{domainId}/clusters/{clusterName}/queries
3.41.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
clusterName |
Cluster Name |
string |
Path |
domainId |
Domain ID |
string |
Body |
clusterCriterion |
clusterCriterion |
3.41.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.41.3. Consumes
-
application/json
3.41.4. Produces
-
application/json
3.41.5. Tags
-
Domains
3.41.6. Example HTTP request
Request path
/v1/domains/string/clusters/string/queries
Request body
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: UNMANAGED_CLUSTERS_IN_VCENTER, UNMANAGED_CLUSTER_IN_VCENTER"
}
3.41.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.42. Get cluster query response
GET /v1/domains/{domainId}/clusters/{clusterName}/queries/{queryId}
3.42.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
clusterName |
Cluster Name |
string |
Path |
domainId |
Domain ID |
string |
Path |
queryId |
Query ID |
string |
3.42.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Query Not Found |
|
500 |
Internal Server Error |
3.42.3. Consumes
-
application/json
3.42.4. Produces
-
application/json
3.42.5. Tags
-
Domains
3.42.6. Example HTTP request
Request path
/v1/domains/string/clusters/string/queries/string
3.42.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"hosts" : [ {
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
} ],
"id" : "string",
"isDefault" : true,
"isStretched" : true,
"name" : "string",
"primaryDatastoreName" : "string",
"primaryDatastoreType" : "One among: VSAN, NFS, FC",
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.43. Get latest generated certificate(s) in a domain.
GET /v1/domains/{domainName}/certificates
3.43.1. Description
Get latest generated certificate(s) in a domain.
3.43.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
3.43.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Not Found |
|
500 |
Internal server error |
3.43.4. Consumes
-
application/json
3.43.5. Produces
-
application/json
3.43.6. Tags
-
Certificates
3.43.7. Example HTTP request
Request path
/v1/domains/string/certificates
3.43.8. Example HTTP response
Response 200
{
"elements" : [ {
"expirationStatus" : "One among: ACTIVE, ABOUT_TO_EXPIRE, EXPIRED",
"getCertificateError" : "string",
"isInstalled" : true,
"issuedBy" : "string",
"issuedTo" : "string",
"keySize" : "One among: 2048, 3072, 4096",
"notAfter" : {
"epochSecond" : 0,
"nano" : 0
},
"notBefore" : {
"epochSecond" : 0,
"nano" : 0
},
"numberOfDaysToExpire" : 0,
"pemEncoded" : "string",
"publicKey" : "string",
"publicKeyAlgorithm" : "One among: RSA",
"serialNumber" : "string",
"signatureAlgorithm" : "string",
"subject" : "string",
"subjectAlternativeName" : [ "string" ],
"thumbprint" : "string",
"thumbprintAlgorithm" : "string",
"version" : "string"
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.44. Generate certificate(s) for the selected resource(s) in a domain
PUT /v1/domains/{domainName}/certificates
3.44.1. Description
Generate certificate(s) for the selected resource(s) in a domain. CA must be configured and CSR must be generated beforehand.
3.44.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
Body |
certificateGenerationSpec |
certificateGenerationSpec |
3.44.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad request |
|
404 |
Not Found |
|
409 |
Conflict |
|
500 |
Internal server error |
3.44.4. Consumes
-
application/json
3.44.5. Produces
-
application/json
3.44.6. Tags
-
Certificates
3.44.7. Example HTTP request
Request path
/v1/domains/string/certificates
Request body
{
"caType" : "One among: OpenSSL, Microsoft",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ]
}
3.44.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.45. Replace certificate(s) for the selected resource(s) in a domain
PATCH /v1/domains/{domainName}/certificates
3.45.1. Description
Replace certificate(s) for the selected resource(s) in a domain
3.45.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
Body |
certificateOperationSpec |
certificateOperationSpec |
3.45.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad request |
|
403 |
Forbidden |
|
404 |
Not Found |
|
409 |
Conflict |
|
500 |
Internal server error |
3.45.4. Consumes
-
application/json
3.45.5. Produces
-
application/json
3.45.6. Tags
-
Certificates
3.45.7. Example HTTP request
Request path
/v1/domains/string/certificates
Request body
{
"operationType" : "One among: INSTALL",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ]
}
3.45.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.46. Upload certificates to the certificate store
PUT /v1/domains/{domainName}/certificates/uploads
3.46.1. Description
Upload certificates to the certificate store
3.46.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
FormData |
file |
file |
file |
3.46.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
object |
400 |
Bad request. |
|
404 |
Not Found |
|
500 |
Internal server error |
3.46.4. Consumes
-
multipart/form-data
3.46.5. Produces
-
application/json
3.46.6. Tags
-
Certificates
3.46.7. Example HTTP request
Request path
/v1/domains/string/certificates/uploads
Request formData
"file"
3.46.8. Example HTTP response
Response 200
{ }
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.47. Get available CSR(s) in json format
GET /v1/domains/{domainName}/csrs
3.47.1. Description
Get available CSR(s) in json format
3.47.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
3.47.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Not Found |
|
500 |
Internal server error |
3.47.4. Consumes
-
application/json
3.47.5. Produces
-
application/json
3.47.6. Tags
-
Certificates
3.47.7. Example HTTP request
Request path
/v1/domains/string/csrs
3.47.8. Example HTTP response
Response 200
{
"elements" : [ {
"csrEncodedContent" : "string",
"resource" : {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
}
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.48. Generate CSR(s)
PUT /v1/domains/{domainName}/csrs
3.48.1. Description
Generate CSR(s) for the selected resource(s) in the domain
3.48.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
Body |
csrsGenerationSpec |
csrsGenerationSpec |
3.48.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad request |
|
404 |
Not Found |
|
409 |
Conflict |
|
500 |
Internal server error |
3.48.4. Consumes
-
application/json
3.48.5. Produces
-
application/json
3.48.6. Tags
-
Certificates
3.48.7. Example HTTP request
Request path
/v1/domains/string/csrs
Request body
{
"csrGenerationSpec" : {
"country" : "string",
"email" : "string",
"keyAlgorithm" : "One among: RSA",
"keySize" : "One among: 2048, 3072, 4096",
"locality" : "string",
"organization" : "string",
"organizationUnit" : "string",
"state" : "string"
},
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ]
}
3.48.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.49. Download available CSR(s) in tar.gz format
GET /v1/domains/{domainName}/csrs/downloads
3.49.1. Description
Download available CSR(s) in tar.gz format
3.49.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
3.49.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
string (byte) |
404 |
Not Found |
|
500 |
Internal server error |
3.49.4. Consumes
-
application/json
3.49.5. Produces
-
application/octet-stream
3.49.6. Tags
-
Certificates
3.49.7. Example HTTP request
Request path
/v1/domains/string/csrs/downloads
3.49.8. Example HTTP response
Response 200
"Ynl0ZQ=="
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.50. View certificate of all the resources in a domain
GET /v1/domains/{domainName}/resource-certificates
3.50.1. Description
View detailed metadata about the certificate(s) of all the resources in a domain
3.50.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainName |
The domain name |
string |
3.50.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Not Found |
|
500 |
Internal server error |
3.50.4. Consumes
-
application/json
3.50.5. Produces
-
application/json
3.50.6. Tags
-
Certificates
3.50.7. Example HTTP request
Request path
/v1/domains/string/resource-certificates
3.50.8. Example HTTP response
Response 200
{
"elements" : [ {
"expirationStatus" : "One among: ACTIVE, ABOUT_TO_EXPIRE, EXPIRED",
"getCertificateError" : "string",
"isInstalled" : true,
"issuedBy" : "string",
"issuedTo" : "string",
"keySize" : "One among: 2048, 3072, 4096",
"notAfter" : {
"epochSecond" : 0,
"nano" : 0
},
"notBefore" : {
"epochSecond" : 0,
"nano" : 0
},
"numberOfDaysToExpire" : 0,
"pemEncoded" : "string",
"publicKey" : "string",
"publicKeyAlgorithm" : "One among: RSA",
"serialNumber" : "string",
"signatureAlgorithm" : "string",
"subject" : "string",
"subjectAlternativeName" : [ "string" ],
"thumbprint" : "string",
"thumbprintAlgorithm" : "string",
"version" : "string"
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.51. Get a Domain
GET /v1/domains/{id}
3.51.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Domain ID |
string |
3.51.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Domain not found |
|
500 |
InternalServerError |
3.51.3. Consumes
-
application/json
3.51.4. Produces
-
application/json
3.51.5. Tags
-
Domains
3.51.6. Example HTTP request
Request path
/v1/domains/string
3.51.7. Example HTTP response
Response 200
{
"clusters" : [ {
"id" : "string"
} ],
"id" : "string",
"name" : "string",
"type" : "string",
"vcenters" : [ {
"fqdn" : "string",
"id" : "string"
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.52. Delete a Domain if it has been previously initialized for deletion
DELETE /v1/domains/{id}
3.52.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Domain ID |
string |
3.52.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
404 |
Not Found |
|
500 |
InternalServerError |
3.52.3. Consumes
-
application/json
3.52.4. Produces
-
application/json
3.52.5. Tags
-
Domains
3.52.6. Example HTTP request
Request path
/v1/domains/string
3.52.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.53. Update a Domain
PATCH /v1/domains/{id}
3.53.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Domain ID |
string |
Body |
domainUpdateSpec |
Domain modification data |
3.53.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.53.3. Consumes
-
application/json
3.53.4. Produces
-
application/json
3.53.5. Tags
-
Domains
3.53.6. Example HTTP request
Request path
/v1/domains/string
Request body
{
"clusterSpec" : {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
},
"markForDeletion" : true,
"nsxTSpec" : {
"licenseKey" : "string",
"nsxManagerAdminPassword" : "string",
"nsxManagerSpecs" : [ {
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
}
} ],
"vip" : "string",
"vipFqdn" : "string"
}
}
3.53.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.54. Get Endpoints of a Domain
GET /v1/domains/{id}/endpoints
3.54.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Domain ID |
string |
3.54.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Domain not found |
|
500 |
InternalServerError |
3.54.3. Consumes
-
application/json
3.54.4. Produces
-
application/json
3.54.5. Tags
-
Domains
3.54.6. Example HTTP request
Request path
/v1/domains/string/endpoints
3.54.7. Example HTTP response
Response 200
{
"type" : "One among: PSC, VCENTER, NSX_MANAGER, NSX_T_MANAGER, VRLI, VRA, VROPS, WSA, VRSLCM",
"url" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.55. Validate the input spec for domain update operations
POST /v1/domains/{id}/validations
3.55.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Cluster ID |
string |
Body |
domainUpdateSpec |
Domain Update Operation Spec Validation |
3.55.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.55.3. Consumes
-
application/json
3.55.4. Produces
-
application/json
3.55.5. Tags
-
Domains
3.55.6. Example HTTP request
Request path
/v1/domains/string/validations
Request body
{
"clusterSpec" : {
"advancedOptions" : {
"evcMode" : "One among: INTEL_MEROM, INTEL_PENRYN, INTEL_NEALEM, INTEL_WESTMERE, INTEL_SANDYBRIDGE, INTEL_IVYBRIDGE, INTEL_HASWELL, INTEL_BROADWELL, INTEL_SKYLAKE, AMD_REV_E, AMD_REV_F, AMD_GREYHOUND_NO3DNOW, AMD_GREYHOUND, AMD_BULLDOZER, AMD_PILEDRIVER, AMD_STREAMROLLER, AMD_ZEN",
"highAvailability" : {
"enabled" : true
}
},
"clusterImageId" : "string",
"datastoreSpec" : {
"nfsDatastoreSpecs" : [ {
"datastoreName" : "string",
"nasVolume" : {
"path" : "string",
"readOnly" : true,
"serverName" : [ "string" ],
"userTag" : "string"
}
} ],
"vmfsDatastoreSpec" : {
"fcSpec" : [ {
"datastoreName" : "string"
} ]
},
"vsanDatastoreSpec" : {
"datastoreName" : "string",
"dedupAndCompressionEnabled" : true,
"failuresToTolerate" : 0,
"licenseKey" : "string"
}
},
"hostSpecs" : [ {
"azName" : "string",
"hostName" : "string",
"hostNetworkSpec" : {
"vmNics" : [ {
"id" : "string",
"moveToNvds" : true,
"vdsName" : "string"
} ]
},
"id" : "string",
"ipAddress" : "string",
"licenseKey" : "string",
"password" : "string",
"username" : "string"
} ],
"name" : "string",
"networkSpec" : {
"nsxClusterSpec" : {
"nsxTClusterSpec" : {
"geneveVlanId" : 0
}
},
"vdsSpecs" : [ {
"isUsedByNsxt" : true,
"name" : "string",
"niocBandwidthAllocationSpecs" : [ {
"niocTrafficResourceAllocation" : {
"limit" : 0,
"reservation" : 0
},
"type" : "string"
} ],
"portGroupSpecs" : [ {
"name" : "string",
"transportType" : "One among: VSAN, VMOTION, MANAGEMENT, PUBLIC, NFS"
} ]
} ]
},
"vxRailDetails" : {
"adminCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
},
"rootCredentials" : {
"credentialType" : "One among: SSH",
"password" : "string",
"username" : "string"
}
}
},
"markForDeletion" : true,
"nsxTSpec" : {
"licenseKey" : "string",
"nsxManagerAdminPassword" : "string",
"nsxManagerSpecs" : [ {
"name" : "string",
"networkDetailsSpec" : {
"dnsName" : "string",
"gateway" : "string",
"ipAddress" : "string",
"subnetMask" : "string"
}
} ],
"vip" : "string",
"vipFqdn" : "string"
}
}
3.55.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.56. Create an Edge Cluster
POST /v1/edge-clusters
3.56.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
edgeCreationSpec |
NSX-T Edge cluster creation data |
3.56.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.56.3. Consumes
-
application/json
3.56.4. Produces
-
application/json
3.56.5. Tags
-
NsxTEdgeClusters
3.56.6. Example HTTP request
Request path
/v1/edge-clusters
Request body
{
"asn" : 0,
"edgeAdminPassword" : "string",
"edgeAuditPassword" : "string",
"edgeClusterName" : "string",
"edgeClusterProfileSpec" : {
"bfdAllowedHop" : 0,
"bfdDeclareDeadMultiple" : 0,
"bfdProbeInterval" : 0,
"edgeClusterProfileName" : "string",
"standbyRelocationThreshold" : 0
},
"edgeClusterProfileType" : "One among: DEFAULT, CUSTOM",
"edgeClusterType" : "One among: NSX-T",
"edgeFormFactor" : "One among: LARGE, MEDIUM, SMALL",
"edgeNodeSpecs" : [ {
"clusterId" : "string",
"edgeNodeName" : "string",
"edgeTep1IP" : "string",
"edgeTep2IP" : "string",
"edgeTepGateway" : "string",
"edgeTepVlan" : 0,
"interRackCluster" : true,
"managementGateway" : "string",
"managementIP" : "string",
"uplinkNetwork" : [ {
"asnPeer" : 0,
"bgpPeerPassword" : "string",
"peerIP" : "string",
"uplinkInterfaceIP" : "string",
"uplinkVlan" : 0
} ]
} ],
"edgeRootPassword" : "string",
"mtu" : 0,
"tier0Name" : "string",
"tier0RoutingType" : "One among: EBGP, STATIC",
"tier0ServicesHighAvailability" : "One among: ACTIVE_ACTIVE, ACTIVE_STANDBY",
"tier1Name" : "string"
}
3.56.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.57. Get the Edge Clusters
GET /v1/edge-clusters
3.57.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.57.2. Consumes
-
application/json
3.57.3. Produces
-
application/json
3.57.4. Tags
-
NsxTEdgeClusters
3.57.5. Example HTTP request
Request path
/v1/edge-clusters
3.57.6. Example HTTP response
Response 200
{
"elements" : [ {
"clusters" : [ {
"id" : "string"
} ],
"id" : "string",
"name" : "string",
"nsxtCluster" : {
"id" : "string",
"vip" : "string",
"vipFqdn" : "string"
}
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.58. Validate an Edge Cluster spec
POST /v1/edge-clusters/validations
3.58.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
edgeCreationSpec |
NSX-T Edge cluster creation data to be validated |
3.58.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.58.3. Consumes
-
application/json
3.58.4. Produces
-
application/json
3.58.5. Tags
-
NsxTEdgeClusters
3.58.6. Example HTTP request
Request path
/v1/edge-clusters/validations
Request body
{
"asn" : 0,
"edgeAdminPassword" : "string",
"edgeAuditPassword" : "string",
"edgeClusterName" : "string",
"edgeClusterProfileSpec" : {
"bfdAllowedHop" : 0,
"bfdDeclareDeadMultiple" : 0,
"bfdProbeInterval" : 0,
"edgeClusterProfileName" : "string",
"standbyRelocationThreshold" : 0
},
"edgeClusterProfileType" : "One among: DEFAULT, CUSTOM",
"edgeClusterType" : "One among: NSX-T",
"edgeFormFactor" : "One among: LARGE, MEDIUM, SMALL",
"edgeNodeSpecs" : [ {
"clusterId" : "string",
"edgeNodeName" : "string",
"edgeTep1IP" : "string",
"edgeTep2IP" : "string",
"edgeTepGateway" : "string",
"edgeTepVlan" : 0,
"interRackCluster" : true,
"managementGateway" : "string",
"managementIP" : "string",
"uplinkNetwork" : [ {
"asnPeer" : 0,
"bgpPeerPassword" : "string",
"peerIP" : "string",
"uplinkInterfaceIP" : "string",
"uplinkVlan" : 0
} ]
} ],
"edgeRootPassword" : "string",
"mtu" : 0,
"tier0Name" : "string",
"tier0RoutingType" : "One among: EBGP, STATIC",
"tier0ServicesHighAvailability" : "One among: ACTIVE_ACTIVE, ACTIVE_STANDBY",
"tier1Name" : "string"
}
3.58.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 202
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.59. Get the Edge Cluster spec validation
GET /v1/edge-clusters/validations/{id}
3.59.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The validation ID |
string |
3.59.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
500 |
Internal server error |
No Content |
3.59.3. Consumes
-
application/json
3.59.4. Produces
-
application/json
3.59.5. Tags
-
NsxTEdgeClusters
3.59.6. Example HTTP request
Request path
/v1/edge-clusters/validations/string
3.59.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.60. Get an Edge Cluster
GET /v1/edge-clusters/{id}
3.60.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Edge Cluster ID |
string |
3.60.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Edge Cluster not found |
|
500 |
InternalServerError |
3.60.3. Consumes
-
application/json
3.60.4. Produces
-
application/json
3.60.5. Tags
-
NsxTEdgeClusters
3.60.6. Example HTTP request
Request path
/v1/edge-clusters/string
3.60.7. Example HTTP response
Response 200
{
"clusters" : [ {
"id" : "string"
} ],
"id" : "string",
"name" : "string",
"nsxtCluster" : {
"id" : "string",
"vip" : "string",
"vipFqdn" : "string"
}
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.61. Get the Hosts
GET /v1/hosts
3.61.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
clusterId |
ID of the Cluster |
string |
Query |
datastoreName |
Name of the datastore |
string |
Query |
domainId |
ID of the Domain |
string |
Query |
networkpoolId |
ID of the Network pool |
string |
Query |
status |
Status of the Host.One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE |
string |
Query |
storageType |
Type of the Storage.VMFS_FC |
string |
3.61.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.61.3. Consumes
-
application/json
3.61.4. Produces
-
application/json
3.61.5. Tags
-
Hosts
3.61.6. Example HTTP request
Request path
/v1/hosts
3.61.7. Example HTTP response
Response 200
{
"elements" : [ {
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.62. Get all criteria
GET /v1/hosts/criteria
3.62.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
3.62.2. Consumes
-
application/json
3.62.3. Produces
-
application/json
3.62.4. Tags
-
Hosts
3.62.5. Example HTTP request
Request path
/v1/hosts/criteria
3.62.6. Example HTTP response
Response 200
{
"elements" : [ {
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
} ]
}
3.63. Get a criterion
GET /v1/hosts/criteria/{name}
3.63.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
name |
name |
string |
3.63.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Criterion Not Found |
3.63.3. Consumes
-
application/json
3.63.4. Produces
-
application/json
3.63.5. Tags
-
Hosts
3.63.6. Example HTTP request
Request path
/v1/hosts/criteria/string
3.63.7. Example HTTP response
Response 200
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.64. Post a query
POST /v1/hosts/queries
3.64.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
hostCriterion |
hostCriterion |
3.64.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.64.3. Consumes
-
application/json
3.64.4. Produces
-
application/json
3.64.5. Tags
-
Hosts
3.64.6. Example HTTP request
Request path
/v1/hosts/queries
Request body
{
"arguments" : {
"string" : "string"
},
"description" : "string",
"name" : "One among: HOST_COMPATIBLE_WITH_CLUSTER_USING_PNICS, UNMANAGED_HOSTS_IN_VCENTER"
}
3.64.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.65. Get query response
GET /v1/hosts/queries/{id}
3.65.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
id |
string |
3.65.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Query Not Found |
|
500 |
Internal Server Error |
3.65.3. Consumes
-
application/json
3.65.4. Produces
-
application/json
3.65.5. Tags
-
Hosts
3.65.6. Example HTTP request
Request path
/v1/hosts/queries/string
3.65.7. Example HTTP response
Response 200
{
"queryInfo" : {
"completed" : true,
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"failure" : true,
"processing" : true,
"status" : "string"
},
"result" : {
"elements" : [ {
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
} ]
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.66. Get a Host
GET /v1/hosts/{id}
3.66.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
id |
string |
3.66.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
404 |
Host Not Found |
|
500 |
Internal Server Error |
3.66.3. Consumes
-
application/json
3.66.4. Produces
-
application/json
3.66.5. Tags
-
Hosts
3.66.6. Example HTTP request
Request path
/v1/hosts/string
3.66.7. Example HTTP response
Response 200
{
"bundleRepoDatastore" : "string",
"cluster" : {
"id" : "string"
},
"compatibleStorageType" : "string",
"cpu" : {
"cores" : 0,
"cpuCores" : [ {
"frequencyMHz" : 0.0,
"manufacturer" : "string",
"model" : "string"
} ],
"frequencyMHz" : 0.0,
"usedFrequencyMHz" : 0.0
},
"domain" : {
"id" : "string",
"name" : "string"
},
"esxiVersion" : "string",
"fqdn" : "string",
"hardwareModel" : "string",
"hardwareVendor" : "string",
"hybrid" : true,
"id" : "string",
"ipAddresses" : [ {
"ipAddress" : "string",
"type" : "One among: MANAGEMENT, VSAN, VMOTION, NFS"
} ],
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
},
"networkpool" : {
"id" : "string",
"name" : "string"
},
"physicalNics" : [ {
"deviceName" : "string",
"macAddress" : "string"
} ],
"status" : "One among: ASSIGNED, UNASSIGNED_USEABLE, UNASSIGNED_UNUSEABLE",
"storage" : {
"disks" : [ {
"capacityMB" : 0.0,
"diskType" : "One among: HDD, FLASH",
"manufacturer" : "string",
"model" : "string"
} ],
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.67. Add a License Key
POST /v1/license-keys
3.67.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
licenseKey |
License key with other attributes |
3.67.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
201 |
Created |
|
500 |
Internal server error |
3.67.3. Consumes
-
application/json
3.67.4. Produces
-
*/*
3.67.5. Tags
-
License Keys
3.67.6. Example HTTP request
Request path
/v1/license-keys
Request body
{
"description" : "string",
"id" : "string",
"isUnlimited" : true,
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX ",
"licenseKeyUsage" : {
"licenseUnit" : "One among: CPUPACKAGE, INSTANCE, VMS, CCU, PLU, DESKTOPVM, SERVERVM, VM, SERVER, CORES, CONCURRENTUSER, NAMEDUSER",
"remaining" : 0,
"total" : 0,
"used" : 0
},
"licenseKeyValidity" : {
"expiryDate" : {
"epochSecond" : 0,
"nano" : 0
},
"licenseKeyStatus" : "One among: EXPIRED, ACTIVE, NEVER_EXPIRES"
}
}
3.67.7. Example HTTP response
Response 200
{
"description" : "string",
"id" : "string",
"isUnlimited" : true,
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX ",
"licenseKeyUsage" : {
"licenseUnit" : "One among: CPUPACKAGE, INSTANCE, VMS, CCU, PLU, DESKTOPVM, SERVERVM, VM, SERVER, CORES, CONCURRENTUSER, NAMEDUSER",
"remaining" : 0,
"total" : 0,
"used" : 0
},
"licenseKeyValidity" : {
"expiryDate" : {
"epochSecond" : 0,
"nano" : 0
},
"licenseKeyStatus" : "One among: EXPIRED, ACTIVE, NEVER_EXPIRES"
}
}
Response 201
{
"description" : "string",
"id" : "string",
"isUnlimited" : true,
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX ",
"licenseKeyUsage" : {
"licenseUnit" : "One among: CPUPACKAGE, INSTANCE, VMS, CCU, PLU, DESKTOPVM, SERVERVM, VM, SERVER, CORES, CONCURRENTUSER, NAMEDUSER",
"remaining" : 0,
"total" : 0,
"used" : 0
},
"licenseKeyValidity" : {
"expiryDate" : {
"epochSecond" : 0,
"nano" : 0
},
"licenseKeyStatus" : "One among: EXPIRED, ACTIVE, NEVER_EXPIRES"
}
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.68. Get the License Keys
GET /v1/license-keys
3.68.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
licenseKeyStatus |
Status of a License Key |
< string > array(multi) |
Query |
productType |
Type of a Product |
< string > array(multi) |
3.68.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Successful |
|
500 |
Internal server error |
3.68.3. Consumes
-
application/json
3.68.4. Produces
-
*/*
3.68.5. Tags
-
License Keys
3.68.6. Example HTTP request
Request path
/v1/license-keys
3.68.7. Example HTTP response
Response 200
{
"elements" : [ {
"description" : "string",
"id" : "string",
"isUnlimited" : true,
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX ",
"licenseKeyUsage" : {
"licenseUnit" : "One among: CPUPACKAGE, INSTANCE, VMS, CCU, PLU, DESKTOPVM, SERVERVM, VM, SERVER, CORES, CONCURRENTUSER, NAMEDUSER",
"remaining" : 0,
"total" : 0,
"used" : 0
},
"licenseKeyValidity" : {
"expiryDate" : {
"epochSecond" : 0,
"nano" : 0
},
"licenseKeyStatus" : "One among: EXPIRED, ACTIVE, NEVER_EXPIRES"
}
} ]
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.69. Get a License Key by key
GET /v1/license-keys/{key}
3.69.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
key |
The 29 alpha numeric character license key with hyphens |
string |
3.69.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Successful |
|
404 |
License key not found |
|
500 |
Internal server error |
3.69.3. Consumes
-
application/json
3.69.4. Produces
-
*/*
3.69.5. Tags
-
License Keys
3.69.6. Example HTTP request
Request path
/v1/license-keys/string
3.69.7. Example HTTP response
Response 200
{
"description" : "string",
"id" : "string",
"isUnlimited" : true,
"key" : "XX0XX-XX0XX-XX0XX-XX0XX-XX0XX ",
"licenseKeyUsage" : {
"licenseUnit" : "One among: CPUPACKAGE, INSTANCE, VMS, CCU, PLU, DESKTOPVM, SERVERVM, VM, SERVER, CORES, CONCURRENTUSER, NAMEDUSER",
"remaining" : 0,
"total" : 0,
"used" : 0
},
"licenseKeyValidity" : {
"expiryDate" : {
"epochSecond" : 0,
"nano" : 0
},
"licenseKeyStatus" : "One among: EXPIRED, ACTIVE, NEVER_EXPIRES"
}
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.70. Delete a License Key
DELETE /v1/license-keys/{key}
3.70.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
key |
The 29 alpha numeric character license key with hyphens |
string |
3.70.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
No Content |
204 |
No content |
No Content |
404 |
License key not found |
No Content |
500 |
Internal server error |
3.70.3. Consumes
-
application/json
3.70.4. Produces
-
*/*
3.70.5. Tags
-
License Keys
3.70.6. Example HTTP request
Request path
/v1/license-keys/string
3.70.7. Example HTTP response
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.71. Get the NSX-T clusters
GET /v1/nsxt-clusters
3.71.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.71.2. Consumes
-
application/json
3.71.3. Produces
-
application/json
3.71.4. Tags
-
NSX-T Clusters
3.71.5. Example HTTP request
Request path
/v1/nsxt-clusters
3.71.6. Example HTTP response
Response 200
{
"domains" : [ {
"id" : "string",
"name" : "string"
} ],
"id" : "string",
"isShared" : true,
"isVlcmCompatible" : true,
"nodes" : [ {
"fqdn" : "string",
"ipAddress" : "string",
"name" : "string"
} ],
"vip" : "string",
"vipFqdn" : "string"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.72. Get a NSX-T cluster
GET /v1/nsxt-clusters/{id}
3.72.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
NSX-T cluster ID |
string |
3.72.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
NSX-T cluster not found |
|
500 |
InternalServerError |
3.72.3. Consumes
-
application/json
3.72.4. Produces
-
application/json
3.72.5. Tags
-
NSX-T Clusters
3.72.6. Example HTTP request
Request path
/v1/nsxt-clusters/string
3.72.7. Example HTTP response
Response 200
{
"domains" : [ {
"id" : "string",
"name" : "string"
} ],
"id" : "string",
"isShared" : true,
"isVlcmCompatible" : true,
"nodes" : [ {
"fqdn" : "string",
"ipAddress" : "string",
"name" : "string"
} ],
"vip" : "string",
"vipFqdn" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.73. Trigger Restore
POST /v1/restores/tasks
3.73.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
restoreSpec |
restoreSpec |
3.73.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.73.3. Consumes
-
application/json
3.73.4. Produces
-
application/json
3.73.5. Tags
-
BackupRestore
3.73.6. Example HTTP request
Request path
/v1/restores/tasks
Request body
{
"backupFile" : "string",
"elements" : [ {
"resourceType" : "SDDC_MANAGER"
} ],
"encryption" : {
"passphrase" : "string"
}
}
3.73.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.74. Fetch the restores task
GET /v1/restores/tasks/{id}
3.74.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The restore task ID |
string |
3.74.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.74.3. Consumes
-
application/json
3.74.4. Produces
-
application/json
3.74.5. Tags
-
BackupRestore
3.74.6. Example HTTP request
Request path
/v1/restores/tasks/string
3.74.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.75. Get all roles
GET /v1/roles
3.75.1. Description
Get a list of all roles
3.75.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad request |
|
401 |
Unauthorized Request |
|
500 |
Internal Server Error |
3.75.3. Consumes
-
application/json
3.75.4. Produces
-
application/json
3.75.5. Tags
-
Users
3.75.6. Example HTTP request
Request path
/v1/roles
3.75.7. Example HTTP response
Response 200
{
"elements" : [ {
"description" : "string",
"id" : "string",
"name" : "string"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.76. Get details of a federation
GET /v1/sddc-federation
3.76.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< MemberInfo > array |
3.76.2. Consumes
-
application/json
3.76.3. Produces
-
application/json
3.76.4. Tags
-
Federation
3.76.5. Example HTTP request
Request path
/v1/sddc-federation
3.76.6. Example HTTP response
Response 200
[ {
"memberDetails" : {
"city" : "string",
"coordinate" : {
"latitude" : 0.0,
"longitude" : 0.0
},
"country" : "string",
"fqdn" : "string",
"role" : "CONTROLLER",
"siteName" : "string",
"siteType" : "DATACENTER",
"state" : "string"
},
"memberHealth" : {
"healthCode" : "GREEN",
"healthDetails" : [ "string" ]
},
"memberInventory" : {
"capacity" : {
"summary" : {
"aggregatedCapacity" : {
"cpu" : {
"free" : 0.0,
"total" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
},
"datastores" : [ {
"capacity" : 0.0,
"datastoreName" : "string",
"datastoreType" : "VSAN",
"freeSpace" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
} ],
"hostCount" : {
"total" : 0,
"unallocated" : 0,
"used" : 0
},
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
},
"domainCount" : 0,
"domainInfo" : [ {
"domainCapacity" : {
"cpu" : {
"free" : 0.0,
"total" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
},
"datastores" : [ {
"capacity" : 0.0,
"datastoreName" : "string",
"datastoreType" : "VSAN",
"freeSpace" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
} ],
"hostCount" : {
"total" : 0,
"unallocated" : 0,
"used" : 0
},
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
},
"domainId" : "string",
"name" : "string",
"status" : "string",
"type" : "string"
} ],
"domainTypeInfo" : [ {
"aggregatedCapacity" : {
"cpu" : {
"free" : 0.0,
"total" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
},
"datastores" : [ {
"capacity" : 0.0,
"datastoreName" : "string",
"datastoreType" : "VSAN",
"freeSpace" : 0.0,
"unallocated" : 0.0,
"unit" : "GHZ",
"used" : 0.0
} ],
"hostCount" : {
"total" : 0,
"unallocated" : 0,
"used" : 0
},
"memory" : {
"totalCapacityMB" : 0.0,
"usedCapacityMB" : 0.0
}
},
"domainCount" : 0,
"type" : "string"
} ]
}
},
"creationTime" : {
"epochSecond" : 0,
"nano" : 0
},
"inventoryInfo" : {
"hostCount" : {
"total" : 0,
"unallocated" : 0,
"used" : 0
}
},
"softwareInfo" : {
"pendingUpdates" : 0
}
},
"memberLiveness" : {
"livelinessCode" : "GREEN",
"livelinessDetails" : [ "string" ]
}
} ]
3.77. Bootstrap a VMware Cloud Foundation to form a federation
PUT /v1/sddc-federation
3.77.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
bootstrapSpec |
Bootstrap Spec |
3.77.2. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted |
3.77.3. Consumes
-
application/json
3.77.4. Produces
-
application/json
3.77.5. Tags
-
Federation
3.77.6. Example HTTP request
Request path
/v1/sddc-federation
Request body
{
"federationName" : "string",
"memberJoinDetail" : {
"city" : "string",
"coordinate" : {
"latitude" : 0.0,
"longitude" : 0.0
},
"country" : "string",
"fqdn" : "string",
"role" : "CONTROLLER",
"siteName" : "string",
"siteType" : "DATACENTER",
"state" : "string"
}
}
3.77.7. Example HTTP response
Response 202
{
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : {
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : "...",
"status" : "NOT_STARTED",
"taskId" : "string"
},
"status" : "NOT_STARTED",
"taskId" : "string"
}
3.78. Teardown a federation
DELETE /v1/sddc-federation
3.78.1. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
ACCEPTED |
3.78.2. Consumes
-
application/json
3.78.3. Produces
-
application/json
3.78.4. Tags
-
Federation
3.78.5. Example HTTP request
Request path
/v1/sddc-federation
3.78.6. Example HTTP response
Response 202
{
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : {
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : "...",
"status" : "NOT_STARTED",
"taskId" : "string"
},
"status" : "NOT_STARTED",
"taskId" : "string"
}
3.79. Join a VMware Cloud Foundation to a federation
POST /v1/sddc-federation/members
3.79.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
joinSpec |
Member Join Spec |
3.79.2. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
ACCEPTED |
3.79.3. Consumes
-
application/json
3.79.4. Produces
-
application/json
3.79.5. Tags
-
Members
3.79.6. Example HTTP request
Request path
/v1/sddc-federation/members
Request body
{
"commonName" : "string",
"controllerFqdn" : "string",
"joinToken" : "string",
"memberJoinDetail" : {
"city" : "string",
"coordinate" : {
"latitude" : 0.0,
"longitude" : 0.0
},
"country" : "string",
"fqdn" : "string",
"role" : "CONTROLLER",
"siteName" : "string",
"siteType" : "DATACENTER",
"state" : "string"
}
}
3.79.7. Example HTTP response
Response 202
{
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : {
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : "...",
"status" : "NOT_STARTED",
"taskId" : "string"
},
"status" : "NOT_STARTED",
"taskId" : "string"
}
3.80. Get fact about a VMware Cloud Foundation
GET /v1/sddc-federation/members
3.80.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
local |
Provide current member fact |
boolean |
3.80.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
3.80.3. Consumes
-
application/json
3.80.4. Produces
-
application/json
3.80.5. Tags
-
Members
3.80.6. Example HTTP request
Request path
/v1/sddc-federation/members
3.80.7. Example HTTP response
Response 200
{
"error" : {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
},
"federationName" : "string",
"memberDetail" : {
"city" : "string",
"coordinate" : {
"latitude" : 0.0,
"longitude" : 0.0
},
"country" : "string",
"fqdn" : "string",
"role" : "CONTROLLER",
"siteName" : "string",
"siteType" : "DATACENTER",
"state" : "string"
},
"permissions" : [ "BOOTSTRAP" ]
}
3.81. Leave a VMware Cloud Foundation from a federation
DELETE /v1/sddc-federation/members/{memberId}
3.81.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
memberId |
Member FQDN |
string |
Query |
force |
force |
boolean |
3.81.2. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
ACCEPTED |
3.81.3. Consumes
-
application/json
3.81.4. Produces
-
application/json
3.81.5. Tags
-
Members
3.81.6. Example HTTP request
Request path
/v1/sddc-federation/members/string
3.81.7. Example HTTP response
Response 202
{
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : {
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : "...",
"status" : "NOT_STARTED",
"taskId" : "string"
},
"status" : "NOT_STARTED",
"taskId" : "string"
}
3.82. Invite a VMware Cloud Foundation to be member of a federation
POST /v1/sddc-federation/membership-tokens
3.82.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
inviteSpec |
Invitation Spec |
3.82.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
3.82.3. Consumes
-
application/json
3.82.4. Produces
-
application/json
3.82.5. Tags
-
Membership Token
3.82.6. Example HTTP request
Request path
/v1/sddc-federation/membership-tokens
Request body
{
"inviteeFqdn" : "string",
"inviteeRole" : "CONTROLLER",
"tokenExpiryHours" : 0.0
}
3.82.7. Example HTTP response
Response 200
{
"controllerFqdn" : [ "string" ],
"error" : {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
},
"invitationToken" : "string",
"inviteeFqdn" : "string",
"inviteeRole" : "CONTROLLER"
}
3.83. Get progress of an invoked operation
GET /v1/sddc-federation/tasks/{taskId}
3.83.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
taskId |
Task ID |
string |
3.83.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
3.83.3. Consumes
-
application/json
3.83.4. Produces
-
application/json
3.83.5. Tags
-
Progress
3.83.6. Example HTTP request
Request path
/v1/sddc-federation/tasks/string
3.83.7. Example HTTP response
Response 200
{
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : {
"created" : {
"dateTime" : "string",
"timestamp" : 0
},
"errors" : [ {
"error" : "string",
"errorPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
},
"suggestedRemedy" : "string",
"suggestedRemedyPack" : {
"arguments" : [ "object" ],
"component" : "string",
"defaultMessage" : "string",
"localBundle" : "string",
"messageKey" : "string"
}
} ],
"lastUpdated" : {
"dateTime" : "string",
"timestamp" : 0
},
"operation" : "BOOTSTRAP",
"payload" : {
"assignedBrokerId" : 0,
"assignedZkId" : 0,
"mbServers" : {
"messageBusServersInfo" : [ {
"brokerId" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"port" : 0
} ]
},
"srServers" : {
"schemaRegistryServersInfo" : [ {
"hostAddress" : "string",
"port" : 0,
"protocol" : "string"
} ]
},
"zkServers" : {
"zookeeperServersInfo" : [ {
"clientPort" : 0,
"electionPort" : 0,
"fqdn" : "string",
"hostAddress" : "string",
"peerPort" : 0,
"securePort" : 0,
"zkId" : 0,
"zkRole" : "string"
} ]
}
},
"progressDetails" : "string",
"remoteOperationTask" : "...",
"status" : "NOT_STARTED",
"taskId" : "string"
},
"status" : "NOT_STARTED",
"taskId" : "string"
}
3.84. Get the Sddc Managers
GET /v1/sddc-managers
3.84.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.84.2. Consumes
-
application/json
3.84.3. Produces
-
application/json
3.84.4. Tags
-
SddcManagers
3.84.5. Example HTTP request
Request path
/v1/sddc-managers
3.84.6. Example HTTP response
Response 200
{
"domain" : {
"id" : "string",
"name" : "string"
},
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string",
"version" : "string"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.85. Get a Sddc Manager
GET /v1/sddc-managers/{id}
3.85.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Sddc Manager ID |
string |
3.85.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Sddc Manager not found |
|
500 |
InternalServerError |
3.85.3. Consumes
-
application/json
3.85.4. Produces
-
application/json
3.85.5. Tags
-
SddcManagers
3.85.6. Example HTTP request
Request path
/v1/sddc-managers/string
3.85.7. Example HTTP response
Response 200
{
"domain" : {
"id" : "string",
"name" : "string"
},
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string",
"version" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.86. Get all SSO domains
GET /v1/sso-domains
3.86.1. Description
Get a list of all SSO domains
3.86.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized Request |
|
403 |
Forbidden request |
|
500 |
Internal Server Error |
3.86.3. Consumes
-
application/json
3.86.4. Produces
-
application/json
3.86.5. Tags
-
Users
3.86.6. Example HTTP request
Request path
/v1/sso-domains
3.86.7. Example HTTP response
Response 200
{
"elements" : [ "string" ]
}
Response 401
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.87. Get all entities of SSO domain
GET /v1/sso-domains/{sso-domain}/entities
3.87.1. Description
Get a list of all entities in the SSO domain
3.87.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
sso-domain |
SSO Domain Name |
string |
3.87.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Unauthorized Request |
|
403 |
Forbidden request |
|
500 |
Internal Server Error |
3.87.4. Consumes
-
application/json
3.87.5. Produces
-
application/json
3.87.6. Tags
-
Users
3.87.7. Example HTTP request
Request path
/v1/sso-domains/string/entities
3.87.8. Example HTTP response
Response 200
{
"elements" : [ {
"id" : "string",
"name" : "string",
"type" : "One among: USER, GROUP"
} ]
}
Response 401
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.88. Get backup configuration used to backup NSX and SDDC manager
GET /v1/system/backup-configuration
3.88.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.88.2. Consumes
-
application/json
3.88.3. Produces
-
application/json
3.88.4. Tags
-
BackupRestore
3.88.5. Example HTTP request
Request path
/v1/system/backup-configuration
3.88.6. Example HTTP response
Response 200
{
"backupLocations" : [ {
"directoryPath" : "string",
"password" : "string",
"port" : 0,
"protocol" : "SFTP",
"server" : "string",
"sshFingerprint" : "string",
"username" : "string"
} ],
"backupSchedules" : [ {
"daysOfWeek" : "One among: SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY",
"frequency" : "One among: WEEKLY, HOURLY",
"hourOfDay" : 0,
"minuteOfHour" : 0,
"resourceType" : "SDDC_MANAGER"
} ],
"encryption" : {
"passphrase" : "string"
},
"isConfigured" : true
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.89. Configure backup settings to backup NSX and SDDC manager
PUT /v1/system/backup-configuration
3.89.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
backupConfigurationSpec |
backupConfigurationSpec |
3.89.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.89.3. Consumes
-
application/json
3.89.4. Produces
-
application/json
3.89.5. Tags
-
BackupRestore
3.89.6. Example HTTP request
Request path
/v1/system/backup-configuration
Request body
{
"backupLocations" : [ {
"directoryPath" : "string",
"password" : "string",
"port" : 0,
"protocol" : "SFTP",
"server" : "string",
"sshFingerprint" : "string",
"username" : "string"
} ],
"backupSchedules" : [ {
"daysOfWeek" : "One among: SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY",
"frequency" : "One among: WEEKLY, HOURLY",
"hourOfDay" : 0,
"minuteOfHour" : 0,
"resourceType" : "SDDC_MANAGER"
} ],
"encryption" : {
"passphrase" : "string"
}
}
3.89.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.90. Edit backup configuration to backup NSX and SDDC manager
PATCH /v1/system/backup-configuration
3.90.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
backupConfigurationSpec |
backupConfigurationSpec |
3.90.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.90.3. Consumes
-
application/json
3.90.4. Produces
-
application/json
3.90.5. Tags
-
BackupRestore
3.90.6. Example HTTP request
Request path
/v1/system/backup-configuration
Request body
{
"backupLocations" : [ {
"directoryPath" : "string",
"password" : "string",
"port" : 0,
"protocol" : "SFTP",
"server" : "string",
"sshFingerprint" : "string",
"username" : "string"
} ],
"backupSchedules" : [ {
"daysOfWeek" : "One among: SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY",
"frequency" : "One among: WEEKLY, HOURLY",
"hourOfDay" : 0,
"minuteOfHour" : 0,
"resourceType" : "SDDC_MANAGER"
} ],
"encryption" : {
"passphrase" : "string"
}
}
3.90.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.91. Get CEIP status
GET /v1/system/ceip
3.91.1. Description
Get CEIP status and instance id
3.91.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
500 |
InternalServerError |
3.91.3. Consumes
-
application/json
3.91.4. Produces
-
application/json
3.91.5. Tags
-
CEIP
3.91.6. Example HTTP request
Request path
/v1/system/ceip
3.91.7. Example HTTP response
Response 200
{
"instanceId" : "3f39d4a1-78d2-11e8-af85-f1cf26258cdc",
"status" : "One among: ENABLED, DISABLED, ENABLING, DISABLING, ENABLING_FAILED, DISABLING_FAILED"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.92. Opt-in or Opt-out of CEIP
PATCH /v1/system/ceip
3.92.1. Description
Opt-in or Opt-out of CEIP
3.92.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
ceipUpdateSpec |
Required action for CEIP. |
3.92.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
409 |
The request could not be completed due to a conflict with the current state |
|
500 |
InternalServerError |
3.92.4. Consumes
-
application/json
3.92.5. Produces
-
application/json
3.92.6. Tags
-
CEIP
3.92.7. Example HTTP request
Request path
/v1/system/ceip
Request body
{
"status" : "One among: ENABLE, DISABLE"
}
3.92.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.93. Get the current DnsConfiguration
GET /v1/system/dns-configuration
3.93.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.93.2. Consumes
-
application/json
3.93.3. Produces
-
application/json
3.93.4. Tags
-
system
3.93.5. Example HTTP request
Request path
/v1/system/dns-configuration
3.93.6. Example HTTP response
Response 200
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.94. Configure the Dns Server
PUT /v1/system/dns-configuration
3.94.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
dnsConfiguration |
dnsConfiguration |
3.94.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.94.3. Consumes
-
application/json
3.94.4. Produces
-
application/json
3.94.5. Tags
-
system
3.94.6. Example HTTP request
Request path
/v1/system/dns-configuration
Request body
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
3.94.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.95. Validate DnsConfiguration input spec and system health before DNS configuration
POST /v1/system/dns-configuration/validations
3.95.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
dnsConfiguration |
dnsConfiguration |
3.95.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
No Content |
3.95.3. Consumes
-
application/json
3.95.4. Produces
-
application/json
3.95.5. Tags
-
system
3.95.6. Example HTTP request
Request path
/v1/system/dns-configuration/validations
Request body
{
"dnsServers" : [ {
"ipAddress" : "10.0.0.250",
"isPrimary" : true
} ]
}
3.95.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 202
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.96. Get the status of the validation of the input DnsConfiguration
GET /v1/system/dns-configuration/validations/{id}
3.96.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The validation ID |
string |
3.96.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
500 |
Internal server error |
No Content |
3.96.3. Consumes
-
application/json
3.96.4. Produces
-
application/json
3.96.5. Tags
-
system
3.96.6. Example HTTP request
Request path
/v1/system/dns-configuration/validations/string
3.96.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.97. Get the current NtpConfiguration
GET /v1/system/ntp-configuration
3.97.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.97.2. Consumes
-
application/json
3.97.3. Produces
-
application/json
3.97.4. Tags
-
system
3.97.5. Example HTTP request
Request path
/v1/system/ntp-configuration
3.97.6. Example HTTP response
Response 200
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.98. Configure the Ntp Server
PUT /v1/system/ntp-configuration
3.98.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
ntpConfiguration |
ntpConfiguration |
3.98.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal server error |
3.98.3. Consumes
-
application/json
3.98.4. Produces
-
application/json
3.98.5. Tags
-
system
3.98.6. Example HTTP request
Request path
/v1/system/ntp-configuration
Request body
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
3.98.7. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.99. Validate NtpConfiguration input spec and system health before Ntp configuration
POST /v1/system/ntp-configuration/validations
3.99.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
ntpConfiguration |
ntpConfiguration |
3.99.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
No Content |
3.99.3. Consumes
-
application/json
3.99.4. Produces
-
application/json
3.99.5. Tags
-
system
3.99.6. Example HTTP request
Request path
/v1/system/ntp-configuration/validations
Request body
{
"ntpServers" : [ {
"ipAddress" : "10.0.0.250"
} ]
}
3.99.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 202
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.100. Get the status of the validation of the input ntpServers to configure new Ntp server
GET /v1/system/ntp-configuration/validations/{id}
3.100.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
The validation ID |
string |
3.100.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
500 |
Internal server error |
No Content |
3.100.3. Consumes
-
application/json
3.100.4. Produces
-
application/json
3.100.5. Tags
-
system
3.100.6. Example HTTP request
Request path
/v1/system/ntp-configuration/validations/string
3.100.7. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.101. Precheck System
POST /v1/system/prechecks
3.101.1. Description
Perform precheck of resource(ex: Domain, Cluster). If only resource is specified, all resources/software components under it are included. If resource(Domain, Cluster etc) and specific resources/software components are provided, only those are included in precheck
3.101.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
precheckSpec |
Precheck System Spec |
3.101.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.101.4. Consumes
-
application/json
3.101.5. Produces
-
application/json
3.101.6. Tags
-
SystemPrechecks
3.101.7. Example HTTP request
Request path
/v1/system/prechecks
Request body
{
"bundleId" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ]
}
3.101.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.102. Get Precheck Task by ID
GET /v1/system/prechecks/tasks/{id}
3.102.1. Description
Monitor the progress of precheck task by the precheck task ID
3.102.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Precheck Task ID |
string |
3.102.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Precheck Task Not Found |
|
500 |
Internal Server Error |
3.102.4. Consumes
-
application/json
3.102.5. Produces
-
application/json
3.102.6. Tags
-
SystemPrechecks
3.102.7. Example HTTP request
Request path
/v1/system/prechecks/tasks/string
3.102.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.103. Get Depot Settings
GET /v1/system/settings/depot
3.103.1. Description
Get the Depot Settings, In a fresh setup, this would be empty
3.103.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
500 |
Internal Server Error |
3.103.3. Consumes
-
application/json
3.103.4. Produces
-
application/json
3.103.5. Tags
-
DepotSettings
3.103.6. Example HTTP request
Request path
/v1/system/settings/depot
3.103.7. Example HTTP response
Response 200
{
"dellEmcSupportAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
},
"vmwareAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
}
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.104. Update Depot Settings
PUT /v1/system/settings/depot
3.104.1. Description
Update Depot Settings. Depot Settings can be updated with VMware Depot Account
3.104.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
depotSettings |
Depot Settings |
3.104.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.104.4. Consumes
-
application/json
3.104.5. Produces
-
application/json
3.104.6. Tags
-
DepotSettings
3.104.7. Example HTTP request
Request path
/v1/system/settings/depot
Request body
{
"dellEmcSupportAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
},
"vmwareAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
}
}
3.104.8. Example HTTP response
Response 200
{
"dellEmcSupportAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
},
"vmwareAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
}
}
Response 202
{
"dellEmcSupportAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
},
"vmwareAccount" : {
"message" : "string",
"password" : "string",
"status" : "One among: DEPOT_UNKNOWN_HOST, DEPOT_NOT_AVAILABLE, DEPOT_USER_NOT_SET, DEPOT_INVALID_CREDENTIAL, UNKNOWN_FAILURE, DEPOT_CONNECTION_SUCCESSFUL",
"username" : "string"
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.105. Get Version Alias Configuration
GET /v1/system/settings/version-aliases
3.105.1. Description
Get the Version Alias Configuration.
3.105.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
500 |
Internal Server Error |
3.105.3. Consumes
-
application/json
3.105.4. Produces
-
application/json
3.105.5. Tags
-
VersionAliasesForBundleComponentType
3.105.6. Example HTTP request
Request path
/v1/system/settings/version-aliases
3.105.7. Example HTTP response
Response 200
{
"elements" : [ {
"bundleComponentType" : "One among: VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE, ",
"versionAliases" : [ {
"aliases" : [ "string" ],
"version" : "string"
} ]
} ]
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.106. Update Version Alias Configurations
PUT /v1/system/settings/version-aliases
3.106.1. Description
Update Version Alias Configurations.
3.106.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
versionAliasesForBundleComponentTypeSpec |
Version Alias Configuration Specification |
3.106.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.106.4. Consumes
-
application/json
3.106.5. Produces
-
application/json
3.106.6. Tags
-
VersionAliasesForBundleComponentType
3.106.7. Example HTTP request
Request path
/v1/system/settings/version-aliases
Request body
{
"forceUpdate" : true,
"versionAliasesForBundleComponentTypes" : [ {
"bundleComponentType" : "One among: VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE, ",
"versionAliases" : [ {
"aliases" : [ "string" ],
"version" : "string"
} ]
} ]
}
3.106.8. Example HTTP response
Response 200
{
"elements" : [ {
"bundleComponentType" : "One among: VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE, ",
"versionAliases" : [ {
"aliases" : [ "string" ],
"version" : "string"
} ]
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.107. Delete Version Alias for a bundle component type
DELETE /v1/system/settings/version-aliases/{bundleComponentType}
3.107.1. Description
Delete Version Alias for a bundle component type.
3.107.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
bundleComponentType |
Bundle Component Type |
enum (VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE) |
3.107.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
No Content |
204 |
No Content |
No Content |
400 |
Bad Request |
|
500 |
Internal Server Error |
3.107.4. Consumes
-
application/json
3.107.5. Produces
-
application/json
3.107.6. Tags
-
VersionAliasesForBundleComponentType
3.107.7. Example HTTP request
Request path
/v1/system/settings/version-aliases/VCENTER
3.107.8. Example HTTP response
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.108. Update Version Alias Configuration
PUT /v1/system/settings/version-aliases/{bundleComponentType}/{version}
3.108.1. Description
Update Version Alias Configuration.
3.108.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
bundleComponentType |
Bundle Component Type |
enum (VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE) |
Path |
version |
Version |
string |
Body |
aliasSpec |
Alias Specification |
3.108.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.108.4. Consumes
-
application/json
3.108.5. Produces
-
application/json
3.108.6. Tags
-
VersionAliasesForBundleComponentType
3.108.7. Example HTTP request
Request path
/v1/system/settings/version-aliases/VCENTER/string
Request body
{
"aliases" : [ "string" ],
"forceUpdate" : true
}
3.108.8. Example HTTP response
Response 200
{
"elements" : [ {
"bundleComponentType" : "One among: VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE, ",
"versionAliases" : [ {
"aliases" : [ "string" ],
"version" : "string"
} ]
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.109. Delete Version Alias Configuration
DELETE /v1/system/settings/version-aliases/{bundleComponentType}/{version}
3.109.1. Description
Delete Version Alias Configuration by bundle component type, version, and aliases.
3.109.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
bundleComponentType |
Bundle Component Type |
enum (VCENTER, PSC, NSX_T_MANAGER, NSX_MANAGER, ESX_HOST, VCF_VRA_UPGRADE, VCF_VRLI_UPGRADE, VCF_VROPS_UPGRADE, VCF_VRSLCM_UPGRADE, SDDC_MANAGER_VCF, LCM, SDDC_MANAGER, SDDC_MANAGER_UI, OPERATIONS_MANAGER, COMMON_SERVICES, SOLUTIONS_MANAGER, MULTI_SITE_SERVICE) |
Path |
version |
Version |
string |
Body |
aliasVersions |
List of alias versions |
< string > array |
3.109.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
No Content |
204 |
No Content |
No Content |
400 |
Bad Request |
|
500 |
Internal Server Error |
3.109.4. Consumes
-
application/json
3.109.6. Tags
-
VersionAliasesForBundleComponentType
3.109.7. Example HTTP request
Request path
/v1/system/settings/version-aliases/VCENTER/string
Request body
[ "string" ]
3.109.8. Example HTTP response
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.110. Get the Upgradables
GET /v1/system/upgradables
3.110.1. Description
Fetches the list of Upgradables in the System. Only one Upgradable becomes AVAILABLE for Upgrade. The Upgradables provides information that can be use for Precheck API and also in the actual Upgrade API call.
3.110.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
500 |
Internal Server Error |
3.110.3. Consumes
-
application/json
3.110.4. Produces
-
application/json
3.110.5. Tags
-
Upgradables
3.110.6. Example HTTP request
Request path
/v1/system/upgradables
3.110.7. Example HTTP response
Response 200
{
"elements" : [ {
"bundleId" : "string",
"bundleType" : "string",
"resource" : {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
},
"softwareComponents" : [ {
"id" : "string",
"type" : "string"
} ],
"status" : "string"
} ]
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.111. Get the Tasks
GET /v1/tasks
3.111.1. Description
Get the Tasks
3.111.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
limit |
The number of elements to be returned in the result |
integer (int32) |
Query |
resourceId |
resourceId |
string |
Query |
resourceType |
resourceType |
string |
Query |
taskStatus |
taskStatus |
string |
Query |
taskType |
taskType |
string |
3.111.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Returns the list of tasks. |
|
500 |
Unexpected error |
3.111.4. Consumes
-
application/json
3.111.5. Produces
-
application/json
3.111.6. Tags
-
Tasks
3.111.7. Example HTTP request
Request path
/v1/tasks
3.111.8. Example HTTP response
Response 200
{
"elements" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
} ]
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.112. Get a Task
GET /v1/tasks/{id}
3.112.1. Description
Get a Task by ID, if it exists
3.112.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Task id to retrieve |
string |
3.112.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
A task object. |
|
404 |
Task not found |
|
500 |
Unexpected error |
3.112.4. Consumes
-
application/json
3.112.5. Produces
-
application/json
3.112.6. Tags
-
Tasks
3.112.7. Example HTTP request
Request path
/v1/tasks/string
3.112.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.113. Cancel a Task
DELETE /v1/tasks/{id}
3.113.1. Description
Cancel a Task by ID, if it exists
3.113.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Task id for cancelling |
string |
3.113.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Task was cancelled successfully. |
No Content |
404 |
Task not found |
|
409 |
Task can not be cancelled. Only a IN_PROGRESS task can be cancelled. |
|
500 |
Unexpected error |
3.113.4. Consumes
-
application/json
3.113.6. Tags
-
Tasks
3.113.7. Example HTTP request
Request path
/v1/tasks/string
3.113.8. Example HTTP response
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.114. Retry a Task
PATCH /v1/tasks/{id}
3.114.1. Description
Retry a failed Task by ID, if it exists
3.114.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
Task id retry |
string |
3.114.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Task was retried successfully. |
No Content |
404 |
Task not found |
|
409 |
Task can not be retried. Only a failed Task can be retried. |
|
500 |
Unexpected error |
3.114.4. Consumes
-
application/json
3.114.6. Tags
-
Tasks
3.114.7. Example HTTP request
Request path
/v1/tasks/string
3.114.8. Example HTTP response
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 409
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.115. Create Token Pair
POST /v1/tokens
3.115.1. Description
Creates access token and refresh token for user access
3.115.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
tokenCreationSpec |
tokenCreationSpec |
3.115.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
201 |
Created |
|
400 |
Bad Request |
|
500 |
Internal Server Error |
3.115.4. Consumes
-
application/json
3.115.5. Produces
-
application/json
3.115.6. Tags
-
Tokens
3.115.7. Example HTTP request
Request path
/v1/tokens
Request body
{
"apiKey" : "string",
"password" : "string",
"username" : "string"
}
3.115.8. Example HTTP response
Response 200
{
"accessToken" : "string",
"refreshToken" : {
"id" : "string"
}
}
Response 201
{
"accessToken" : "string",
"refreshToken" : {
"id" : "string"
}
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.116. Refresh Access Token
PATCH /v1/tokens/access-token/refresh
3.116.1. Description
Refresh the access token associated with the given refresh token
3.116.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
refreshToken |
refreshToken |
string |
3.116.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
string |
400 |
Bad Request |
|
404 |
Not Found |
|
500 |
Internal Server Error |
3.116.4. Consumes
-
application/json
3.116.5. Produces
-
application/json
3.116.6. Tags
-
Tokens
3.116.8. Example HTTP response
Response 200
"string"
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.117. Invalidate Refresh Token
DELETE /v1/tokens/refresh-token
3.117.1. Description
Invalidate the provided refresh token
3.117.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
refreshToken |
refreshToken |
string |
3.117.3. Responses
HTTP Code | Description | Schema |
---|---|---|
204 |
No content |
No Content |
3.117.4. Consumes
-
application/json
3.117.6. Tags
-
Tokens
3.118. refreshToken
PATCH /v1/tokens/refresh-tokens/{id}
3.118.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
id |
string |
3.118.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
string |
3.118.3. Consumes
-
application/json
3.118.4. Produces
-
application/json
3.118.5. Tags
-
Tokens
3.118.6. Example HTTP request
Request path
/v1/tokens/refresh-tokens/string
3.119. Get registered and available HSM details along with Software details
GET /v1/upgradables/domains/{domainId}/clusters
3.119.1. Description
Fetches the list of available hardware support managers and configured hardware support managers for the give resource along with the hardware support packages and Software details.
3.119.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
3.119.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Domain Not Found |
|
500 |
Internal Server Error |
3.119.4. Consumes
-
application/json
3.119.5. Produces
-
application/json
3.119.6. Tags
-
Upgradables
3.119.7. Example HTTP request
Request path
/v1/upgradables/domains/string/clusters
3.119.8. Example HTTP response
Response 200
{
"elements" : [ {
"availableHardwareSupportManagers" : [ {
"name" : "string",
"packages" : [ {
"name" : "string",
"version" : "string"
} ]
} ],
"configuredHardwareSupportManagers" : [ {
"name" : "string",
"pkg" : {
"name" : "string",
"version" : "string"
}
} ],
"primaryCluster" : true,
"resourceId" : "string",
"resourceType" : "CLUSTER",
"softwareInfo" : {
"addOn" : {
"displayName" : "string",
"displayVersion" : "string",
"name" : "DELL-sample-Addon",
"vendor" : "Dell",
"version" : "2.0-1"
},
"baseImage" : {
"details" : {
"displayName" : "7.0.0-0.0.30340198",
"displayVersion" : "string",
"releaseDate" : {
"calendarType" : "string",
"firstDayOfWeek" : 0,
"lenient" : true,
"minimalDaysInFirstWeek" : 0,
"time" : "1970-01-01T00:00:00Z",
"timeInMillis" : 0,
"timeZone" : {
"displayName" : "string",
"dstsavings" : 0,
"id" : "string",
"rawOffset" : 0
},
"weekDateSupported" : true,
"weekYear" : 0,
"weeksInWeekYear" : 0
}
},
"version" : "7.0.0-0.0.30340198"
},
"components" : {
"string" : "<<_componentinfo>>"
},
"hardwareSupport" : {
"packages" : {
"string" : "<<_hardwaresupportpackageinfo>>"
}
}
},
"vlcmEnabled" : true
} ]
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.120. Get NSXT upgradable resources
GET /v1/upgradables/domains/{domainId}/nsxt
3.120.1. Description
Get the list NSXT upgradable reosurce with resource metadata info
3.120.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
domainId |
Domain ID |
string |
Query |
bundleId |
bundle Id of the upgrade bundle applicable on the domain |
string |
3.120.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
Bundle not found |
|
500 |
Internal Server Error |
3.120.4. Consumes
-
application/json
3.120.5. Produces
-
application/json
3.120.6. Tags
-
Upgradables
3.120.7. Example HTTP request
Request path
/v1/upgradables/domains/string/nsxt
3.120.8. Example HTTP response
Response 200
{
"bundleId" : "string",
"domainId" : "string",
"nsxtEdgeClusters" : [ {
"id" : "string",
"name" : "string",
"resourceHealth" : "string",
"upgradeStatus" : "string",
"version" : "string"
} ],
"nsxtHostClusters" : [ {
"availableHardwareSupportManagers" : [ {
"name" : "string",
"packages" : [ {
"name" : "string",
"version" : "string"
} ]
} ],
"configuredHardwareSupportManagers" : [ {
"name" : "string",
"pkg" : {
"name" : "string",
"version" : "string"
}
} ],
"domainId" : "string",
"id" : "string",
"name" : "string",
"primaryCluster" : true,
"resourceHealth" : "string",
"totalUnits" : 0,
"upgradeStatus" : "string",
"upgradedUnits" : 0,
"version" : "string",
"vlcmEnabled" : true
} ],
"nsxtManagerCluster" : {
"id" : "string",
"name" : "string",
"resourceHealth" : "string",
"upgradeStatus" : "string",
"version" : "string"
},
"nsxtUpgradeCoordinator" : {
"enabledOn" : "string",
"id" : "string",
"resourceHealth" : "string",
"upgradeStatus" : "string",
"version" : "string"
}
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.121. Perform Upgrade
POST /v1/upgrades
3.121.1. Description
Schedule/Trigger Upgrade of a Resource. Ex: Resource can be DOMAIN, CLUSTER, UNMANAGED_HOST etc. Performing upgrades are supported on VMware Cloud Foundation 3.5 BOM resources and above.
3.121.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
upgradeSpec |
Upgrade Specification |
3.121.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
202 |
Accepted |
|
400 |
Bad Request |
|
403 |
Operation not allowed |
|
500 |
Internal Server Error |
3.121.4. Consumes
-
application/json
3.121.5. Produces
-
application/json
3.121.6. Tags
-
Upgrades
3.121.7. Example HTTP request
Request path
/v1/upgrades
Request body
{
"bundleId" : "string",
"nsxtUpgradeUserInputSpecs" : [ {
"nsxtEdgeClusterUpgradeSpecs" : [ {
"edgeClusterId" : "string",
"edgeParallelUpgrade" : true
} ],
"nsxtHostClusterUpgradeSpecs" : [ {
"hostClusterId" : "string",
"hostParallelUpgrade" : true,
"liveUpgrade" : true
} ],
"nsxtId" : "string",
"nsxtUpgradeOptions" : {
"isEdgeClustersUpgradeParallel" : true,
"isEdgeOnlyUpgrade" : true,
"isHostClustersUpgradeParallel" : true
}
} ],
"parallelUpgrade" : true,
"resourceType" : "One among: DOMAIN, CLUSTER, UNASSIGNED_HOST",
"resourceUpgradeSpecs" : [ {
"personalitySpec" : {
"hardwareSupportSpecs" : [ {
"name" : "string",
"packageSpec" : {
"name" : "string",
"version" : "string"
}
} ],
"personalityId" : "string"
},
"resourceId" : "string",
"scheduledTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"shutdownVms" : true,
"toVersion" : "string",
"upgradeNow" : true
} ]
}
3.121.8. Example HTTP response
Response 200
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 403
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.122. Get Upgrades
GET /v1/upgrades
3.122.1. Description
Get Upgrades
3.122.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
bundleId |
Bundle Id for the upgrade |
string |
Query |
upgradeStatus |
Status of the upgrades you want to retrieve |
string |
3.122.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
< Upgrade > array |
404 |
Upgrade not found |
|
500 |
Internal Server Error |
3.122.4. Consumes
-
application/json
3.122.5. Produces
-
application/json
3.122.6. Tags
-
Upgrades
3.122.7. Example HTTP request
Request path
/v1/upgrades
3.122.8. Example HTTP response
Response 200
[ {
"bundleId" : "string",
"id" : "string",
"parallelUpgrade" : true,
"resourceType" : "One among: DOMAIN, CLUSTER, UNASSIGNED_HOST",
"resourceUpgradeSpecs" : [ {
"personalitySpec" : {
"hardwareSupportSpecs" : [ {
"name" : "string",
"packageSpec" : {
"name" : "string",
"version" : "string"
}
} ],
"personalityId" : "string"
},
"resourceId" : "string",
"scheduledTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"shutdownVms" : true,
"toVersion" : "string",
"upgradeNow" : true
} ],
"status" : "string",
"taskId" : "string"
} ]
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.123. Get Upgrade By Id
GET /v1/upgrades/{upgradeId}
3.123.1. Description
Get Upgrade By Id
3.123.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
upgradeId |
upgradeId |
string |
3.123.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Upgrade not found |
|
500 |
Internal Server Error |
3.123.4. Consumes
-
application/json
3.123.5. Produces
-
application/json
3.123.6. Tags
-
Upgrades
3.123.7. Example HTTP request
Request path
/v1/upgrades/string
3.123.8. Example HTTP response
Response 200
{
"bundleId" : "string",
"id" : "string",
"parallelUpgrade" : true,
"resourceType" : "One among: DOMAIN, CLUSTER, UNASSIGNED_HOST",
"resourceUpgradeSpecs" : [ {
"personalitySpec" : {
"hardwareSupportSpecs" : [ {
"name" : "string",
"packageSpec" : {
"name" : "string",
"version" : "string"
}
} ],
"personalityId" : "string"
},
"resourceId" : "string",
"scheduledTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"shutdownVms" : true,
"toVersion" : "string",
"upgradeNow" : true
} ],
"status" : "string",
"taskId" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.124. Add users
POST /v1/users
3.124.1. Description
Add list of users
3.124.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
users |
User data collection |
< User > array |
3.124.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
201 |
Created |
|
400 |
Bad request |
|
401 |
Unauthorized Request |
|
500 |
Internal Server Error |
3.124.4. Consumes
-
application/json
3.124.5. Produces
-
application/json
3.124.6. Tags
-
Users
3.124.7. Example HTTP request
Request path
/v1/users
Request body
[ {
"apiKey" : "string",
"creationTimestamp" : "string",
"domain" : "string",
"id" : "string",
"name" : "string",
"role" : {
"id" : "string"
},
"type" : "One among: USER, GROUP, SERVICE"
} ]
3.124.8. Example HTTP response
Response 200
{
"elements" : [ {
"apiKey" : "string",
"creationTimestamp" : "string",
"domain" : "string",
"id" : "string",
"name" : "string",
"role" : {
"id" : "string"
},
"type" : "One among: USER, GROUP, SERVICE"
} ]
}
Response 201
{
"elements" : [ {
"apiKey" : "string",
"creationTimestamp" : "string",
"domain" : "string",
"id" : "string",
"name" : "string",
"role" : {
"id" : "string"
},
"type" : "One among: USER, GROUP, SERVICE"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.125. Get all Users
GET /v1/users
3.125.1. Description
Get a list of all users
3.125.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad request |
|
401 |
Unauthorized Request |
|
500 |
Internal Server Error |
3.125.3. Consumes
-
application/json
3.125.4. Produces
-
application/json
3.125.5. Tags
-
Users
3.125.6. Example HTTP request
Request path
/v1/users
3.125.7. Example HTTP response
Response 200
{
"elements" : [ {
"apiKey" : "string",
"creationTimestamp" : "string",
"domain" : "string",
"id" : "string",
"name" : "string",
"role" : {
"id" : "string"
},
"type" : "One among: USER, GROUP, SERVICE"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 401
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"cause" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.126. Delete a user
DELETE /v1/users/{id}
3.126.1. Description
Delete the user by the ID, if it exists
3.126.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
ID of the user |
string |
3.126.3. Responses
HTTP Code | Description | Schema |
---|---|---|
204 |
No content |
No Content |
404 |
User not found |
|
500 |
Internal server error |
3.126.4. Consumes
-
application/json
3.126.6. Tags
-
Users
3.126.7. Example HTTP request
Request path
/v1/users/string
3.126.8. Example HTTP response
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.127. Get vCenters
GET /v1/vcenters
3.127.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Query |
domainId |
ID of the domain |
string |
3.127.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.127.3. Consumes
-
application/json
3.127.4. Produces
-
application/json
3.127.5. Tags
-
vCenters
3.127.6. Example HTTP request
Request path
/v1/vcenters
3.127.7. Example HTTP response
Response 200
{
"domain" : {
"id" : "string",
"name" : "string"
},
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.128. Get a vCenter
GET /v1/vcenters/{id}
3.128.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
vCenter ID |
string |
3.128.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
vCenter not found |
|
500 |
InternalServerError |
3.128.3. Consumes
-
application/json
3.128.4. Produces
-
application/json
3.128.5. Tags
-
vCenters
3.128.6. Example HTTP request
Request path
/v1/vcenters/string
3.128.7. Example HTTP response
Response 200
{
"domain" : {
"id" : "string",
"name" : "string"
},
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.129. Get the VcfServices
GET /v1/vcf-services
3.129.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
400 |
Bad Request |
|
500 |
InternalServerError |
3.129.2. Consumes
-
application/json
3.129.3. Produces
-
application/json
3.129.4. Tags
-
VcfServices
3.129.5. Example HTTP request
Request path
/v1/vcf-services
3.129.6. Example HTTP response
Response 200
{
"id" : "string",
"name" : "string",
"version" : "string"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.130. Get a VcfService
GET /v1/vcf-services/{id}
3.130.1. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
VcfService ID |
string |
3.130.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Ok |
|
404 |
VcfService not found |
|
500 |
InternalServerError |
3.130.3. Consumes
-
application/json
3.130.4. Produces
-
application/json
3.130.5. Tags
-
VcfServices
3.130.6. Example HTTP request
Request path
/v1/vcf-services/string
3.130.7. Example HTTP response
Response 200
{
"id" : "string",
"name" : "string",
"version" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.131. Get the existing vRealize Suite Lifecycle Manager
GET /v1/vrslcm
3.131.1. Description
Gets the complete information about the existing vRealize Suite Lifecycle Manager instance.
3.131.2. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
404 |
Not Found |
No Content |
3.131.3. Consumes
-
application/json
3.131.4. Produces
-
application/json
3.131.5. Tags
-
vRSLCM
3.131.6. Example HTTP request
Request path
/v1/vrslcm
3.131.7. Example HTTP response
Response 200
{
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string",
"status" : "string",
"version" : "string"
}
3.132. Rollback vRealize Suite Lifecycle Manager after unsuccessful deployment
DELETE /v1/vrslcm
3.132.1. Description
Triggers the vRealize Suite Lifecycle Manager rollback operation and returns an URL in the headers to track the operation status.
3.132.2. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted |
|
405 |
Method Not Allowed |
3.132.3. Consumes
-
application/json
3.132.4. Produces
-
application/json
3.132.5. Tags
-
vRSLCM
3.132.6. Example HTTP request
Request path
/v1/vrslcm
3.132.7. Example HTTP response
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 405
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.133. Redeploy vRealize Suite Lifecycle Manager
PATCH /v1/vrslcm
3.133.1. Description
Triggers the vRealize Suite Lifecycle Manager redeployment operation and returns an URL in the headers to track the operation status.
3.133.2. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted |
|
400 |
Bad Request |
|
405 |
Method Not Allowed |
3.133.3. Consumes
-
application/json
3.133.4. Produces
-
application/json
3.133.5. Tags
-
vRSLCM
3.133.6. Example HTTP request
Request path
/v1/vrslcm
3.133.7. Example HTTP response
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 405
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.134. Deploy vRealize Suite Lifecycle Manager
POST /v1/vrslcms
3.134.1. Description
Triggers the vRealize Suite Lifecycle Manager deployment operation and returns an URL in the headers to track the operation status.
3.134.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
vrslcmPublicDeploymentSpec |
vRealize Suite Lifecycle Manager Deployment Specification |
3.134.3. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted |
|
400 |
Bad Request |
|
405 |
Method Not Allowed |
|
500 |
Internal Server Error |
3.134.4. Consumes
-
application/json
3.134.5. Produces
-
application/json
3.134.6. Tags
-
vRSLCM
3.134.7. Example HTTP request
Request path
/v1/vrslcms
Request body
{
"apiPassword" : "string",
"fqdn" : "vrslcm.vrack.vsphere.local",
"networkSpec" : {
"gateway" : "10.0.1.250",
"subnetMask" : "255.255.252.0",
"vlanId" : "2042"
},
"sshPassword" : "string"
}
3.134.8. Example HTTP response
Response 202
{
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"id" : "string",
"isCancellable" : true,
"name" : "string",
"resolutionStatus" : "Can have only one of the two values: RESOLVED or UNRESOLVED",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED, CANCELLED",
"subTasks" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"errors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"name" : "string",
"resources" : [ {
"fqdn" : "string",
"name" : "string",
"resourceId" : "string",
"type" : "string"
} ],
"stages" : [ {
"completionTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"creationTimestamp" : {
"epochSecond" : 0,
"nano" : 0
},
"description" : "string",
"name" : "string",
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"status" : "One among: PENDING, IN_PROGRESS, SUCCESSFUL, FAILED",
"type" : "string"
} ],
"type" : "Sample values: HOST_COMMISSION, HOST_DECOMMISSION"
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 405
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 500
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.135. Get all existing vRealize Suite Lifecycle Manager instances
GET /v1/vrslcms
3.135.1. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
3.135.2. Consumes
-
application/json
3.135.3. Produces
-
application/json
3.135.4. Tags
-
vRSLCM
3.135.5. Example HTTP request
Request path
/v1/vrslcms
3.135.6. Example HTTP response
Response 200
{
"fqdn" : "string",
"id" : "string",
"ipAddress" : "string",
"status" : "string",
"version" : "string"
}
3.136. Validate the input specification for vRealize Suite Lifecycle Manager deployment
POST /v1/vrslcms/validations
3.136.1. Description
Triggers vRealize Suite Lifecycle Manager deployment specification validation workflow
3.136.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Body |
vrslcmPublicDeploymentSpec |
vRealize Suite Lifecycle Manager Deployment Specification |
3.136.3. Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted |
|
400 |
Bad Request |
3.136.4. Consumes
-
application/json
3.136.5. Produces
-
application/json
3.136.6. Tags
-
vRSLCM
3.136.7. Example HTTP request
Request path
/v1/vrslcms/validations
Request body
{
"apiPassword" : "string",
"fqdn" : "vrslcm.vrack.vsphere.local",
"networkSpec" : {
"gateway" : "10.0.1.250",
"subnetMask" : "255.255.252.0",
"vlanId" : "2042"
},
"sshPassword" : "string"
}
3.136.8. Example HTTP response
Response 202
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
3.137. Get the status of the validations for vRealize Lifecycle Manager deployment
GET /v1/vrslcms/validations/{id}
3.137.1. Description
Gets the status of given vRealize Suite Lifecycle Manager validation workflow by given validation id
3.137.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
id |
vRealize validation id |
string |
3.137.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
400 |
Bad Request |
|
404 |
Not Found |
3.137.4. Consumes
-
application/json
3.137.5. Produces
-
application/json
3.137.6. Tags
-
vRSLCM
3.137.7. Example HTTP request
Request path
/v1/vrslcms/validations/string
3.137.8. Example HTTP response
Response 200
{
"description" : "string",
"executionStatus" : "One among: IN_PROGRESS, FAILED, COMPLETED, SKIPPED, CANCELLED",
"id" : "string",
"resultStatus" : "One among: SUCCEEDED, FAILED, FAILED_WITH_WARNINGS",
"validationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ {
"description" : "string",
"errorResponse" : {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
},
"nestedValidationChecks" : [ "..." ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ],
"resultStatus" : "One among: SUCCEEDED, FAILED",
"severity" : "One among: WARNING, ERROR, INFO"
} ]
}
Response 400
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
Response 404
{
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ {
"arguments" : [ "string" ],
"causes" : [ {
"message" : "string",
"type" : "string"
} ],
"context" : {
"string" : "string"
},
"errorCode" : "string",
"message" : "string",
"nestedErrors" : [ "..." ],
"referenceToken" : "string",
"remediationMessage" : "string"
} ],
"referenceToken" : "string",
"remediationMessage" : "string"
}
4. Definitions
4.1. AddOnInfo
AddOn contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
displayName |
Add On display name |
string |
displayVersion |
Add On display version |
string |
name |
Component name |
string |
vendor |
vendor |
string |
version |
Add on software version |
string |
4.2. AdvancedOptions
Advanced Options used to add Cluster
Name | Description | Schema |
---|---|---|
evcMode |
EVC mode for new cluster, if needed |
string |
highAvailability |
High availability settings for the cluster |
4.3. AliasSpec
Version Alias update Specification. This specification gets used in the Version Alias Update API.
Name | Description | Schema |
---|---|---|
aliases |
Aliases for bundle component type and version. |
< string > array |
forceUpdate |
Flag for force update version alias configuration. |
boolean |
4.4. AuthenticatedResource
Represents the credential resource in the system
Name | Description | Schema |
---|---|---|
domainName |
Domain name |
string |
resourceId |
Resource ID |
string |
resourceIp |
Resource IP address |
string |
resourceName |
Resource name |
string |
resourceType |
Resource type |
string |
serviceType |
Service type |
string |
targetType |
Target type |
string |
4.5. Avn
Defines an Application virtual Network (AVN) and its attributes
Name | Description | Schema |
---|---|---|
domainName |
AVN search domain |
string |
gateway |
Gateway of the AVN subnet |
string |
id |
The UUID of the AVN |
string |
mtu |
MTU for the AVN |
integer (int32) |
name |
User provided name of the AVN |
string |
portGroupName |
Port group name identifying the AVN on the distributed switch |
string |
regionType |
The region type of AVN; X_REGION or REGION_A |
string |
routerName |
Name of routing NSX edge AVN is connected to |
string |
subnet |
Subnet assigned to the AVN |
string |
subnetMask |
Subnet mask for the network assigned to the AVN |
string |
4.6. BackupConfiguration
Backup configuration used to configure backup of NSX and SDDC manager
Name | Description | Schema |
---|---|---|
backupLocations |
List of backup locations |
< BackupLocation > array |
backupSchedules |
List of backup schedules |
< BackupSchedule > array |
encryption |
Encryption passphrase used to encrypt and decrypt backup file |
|
isConfigured |
Backup configuration status of both FTP server and passphrase |
boolean |
4.7. BackupConfigurationSpec
Backup configuration Specification
Name | Description | Schema |
---|---|---|
backupLocations |
List of backup locations |
< BackupLocation > array |
backupSchedules |
List of backup schedules |
< BackupSchedule > array |
encryption |
Encryption passphrase to encrypt and decrypt backup file |
4.8. BackupLocation
Backup location to backup VCF resources
Name | Description | Schema |
---|---|---|
directoryPath |
Full directory path to save the backup files |
string |
password |
Backup server password |
string |
port |
Port number for the backup server to connect |
integer (int32) |
protocol |
Protocol to be used for transferring files |
string |
server |
IP address of the backup server |
string |
sshFingerprint |
SSH fingerprint of the backup server |
string |
username |
Password for backup server username |
string |
4.9. BackupResource
Element specification to trigger backup
Name | Description | Schema |
---|---|---|
resourceType |
Resource type |
string |
4.10. BackupSchedule
Backup schedule configuration
Name | Description | Schema |
---|---|---|
daysOfWeek |
List of days of the week to schedule backup |
< string > array |
frequency |
Backup frequency |
string |
hourOfDay |
Hour of the day to schedule backup |
integer (int32) |
minuteOfHour |
Minute of the hour to schedule backup |
integer (int32) |
resourceType |
Resource type to configure backup schedule |
string |
4.11. BackupSpec
Backup Specification
Name | Description | Schema |
---|---|---|
elements |
List of elements to be backed up |
< BackupResource > array |
4.12. BackupTask
Name | Description | Schema |
---|---|---|
errors |
List of errors in case of a failure |
< Error > array |
id |
Backup task ID |
string |
name |
Backup task name |
string |
resources |
Backup resources, to get the backup details |
< Resource > array |
status |
Backup task status |
string |
4.13. BaseAlias
Base Alias representation
Name | Description | Schema |
---|---|---|
aliases |
List of Alias versions |
< string > array |
version |
Base version |
string |
4.14. BaseCredential
Represents credentials of a resource in the system
Name | Description | Schema |
---|---|---|
credentialType |
Credential type |
string |
password |
Password |
string |
username |
Username |
string |
4.15. BaseImageDetails
BaseImage contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
displayName |
BaseImage display name |
string |
displayVersion |
BaseImage display version |
string |
releaseDate |
BaseImage release date |
4.16. BaseImageInfo
BaseImage contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
details |
BaseImage details |
|
version |
BaseImage Version |
string |
4.17. BgpNeighbour
NSX Edge BGP Neighbour Specification
Name | Description | Schema |
---|---|---|
autonomousSystem |
BGP neighbour autonomous system ID |
integer (int64) |
forwardingIp |
BGP forwarding IP address |
string |
holdDownTimeSeconds |
BGP neighbour hold down time (in seconds) |
integer (int32) |
keepAliveTimeSeconds |
BGP neighbour keep alive time (in seconds) |
integer (int32) |
neighbourIp |
BGP neighbour IP address |
string |
password |
BGP neighbour password |
string |
protocolIp |
BGP protocol IP address |
string |
weight |
BGP neighbour weight |
integer (int32) |
4.18. BootstrapSpec
Name | Description | Schema |
---|---|---|
federationName |
Example : |
string |
memberJoinDetail |
Example : MemberDetail |
4.19. Bundle
Bundle contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
components |
Bundle Components |
< BundleComponent > array |
description |
Bundle Description |
string |
downloadStatus |
Bundle Download Status |
string |
id |
Bundle ID |
string |
isCompliant |
Is compliant with the current VCF version |
boolean |
isCumulative |
Is Bundle Cumulative |
boolean |
releasedDate |
Bundle Release Date |
|
severity |
Bundle Severity |
string |
sizeMB |
Bundle Size in MB |
number (double) |
type |
Bundle Type |
string |
vendor |
Bundle Vendor |
string |
version |
Bundle Version |
string |
4.20. BundleComponent
Bundle Software Component
Name | Description | Schema |
---|---|---|
description |
Bundle Component Description |
string |
fromVersion |
Bundle Component’s from/source version before Upgrade |
string |
id |
ID of Resource/Software Component |
string |
imageType |
Bundle Component Image Type |
string |
releasedDate |
Bundle Component Release Date |
|
toVersion |
Bundle Component’s to/target version after Upgrade |
string |
type |
Type of Resource/Software Component |
string |
vendor |
Bundle Component Vendor |
string |
4.21. BundleDownloadSpec
Bundle Download Specification. This specification gets used in the Bundle Download API
Name | Description | Schema |
---|---|---|
downloadNow |
Flag for enabling Download Now. If true, scheduledTimestamp is ignored |
boolean |
scheduledTimestamp |
Bundle Download Scheduled Time |
4.22. BundleUpdateSpec
Bundle Update Specification.
Name | Description | Schema |
---|---|---|
bundleDownloadSpec |
Bundle Download Specification. |
|
compatibilitySetsFilePath |
Path to the software compatibility sets file |
string |
4.23. BundleUploadSpec
Bundle Upload Specification. This specification is used in the Bundle Upload API
Name | Description | Schema |
---|---|---|
bundleFilePath |
Bundle Upload File Path |
string |
compatibilitySetsFilePath |
Path to the software compatibility sets file |
string |
manifestFilePath |
Bundle Upload Manifest File Path |
string |
partnerExtensionSpec |
Partner extensions for bundle upload |
|
signatureFilePath |
Bundle Upload Signature File Path |
string |
4.24. CPU
Name | Description | Schema |
---|---|---|
free |
Example : |
number (double) |
total |
Example : |
number (double) |
unallocated |
Example : |
number (double) |
unit |
Example : |
enum (GHZ, GB, TB, HZ, KHZ, MHZ, THZ, B, PB) |
used |
Example : |
number (double) |
4.25. Calendar
Name | Description | Schema |
---|---|---|
calendarType |
Example : |
string |
firstDayOfWeek |
Example : |
integer (int32) |
lenient |
Example : |
boolean |
minimalDaysInFirstWeek |
Example : |
integer (int32) |
time |
Example : |
string (date-time) |
timeInMillis |
Example : |
integer (int64) |
timeZone |
Example : TimeZone |
|
weekDateSupported |
Example : |
boolean |
weekYear |
Example : |
integer (int32) |
weeksInWeekYear |
Example : |
integer (int32) |
4.26. CapacitySummary
Name | Description | Schema |
---|---|---|
aggregatedCapacity |
Example : ResourceCapacity |
|
domainCount |
Example : |
integer (int32) |
domainInfo |
Example : |
< DomainInfo > array |
domainTypeInfo |
Example : |
< DomainSummary > array |
4.27. Ceip
Defines VCF CEIP status and instance id
Name | Description | Schema |
---|---|---|
instanceId |
Instance Id of VCF |
string |
status |
CEIP status |
string |
4.28. CeipUpdateSpec
Specification for CEIP state change
Name | Description | Schema |
---|---|---|
status |
User provided CEIP operation |
string |
4.29. Certificate
Represents certificate and its attributes
Name | Description | Schema |
---|---|---|
expirationStatus |
Certificate expiry status |
string |
getCertificateError |
Error if certificate cannot be fetched |
string |
isInstalled |
Whether the certificate is installed or not |
boolean |
issuedBy |
The certificate authority that issued the certificate |
string |
issuedTo |
To whom the certificate is issued |
string |
keySize |
The keysize of the certificate |
string |
notAfter |
The timestamp after which certificate is not valid |
|
notBefore |
The timestamp before which certificate is not valid |
|
numberOfDaysToExpire |
Number of days left for the certificate to expire |
integer (int32) |
pemEncoded |
The PEM encoded certificate content |
string |
publicKey |
The public key of the certificate |
string |
publicKeyAlgorithm |
The public key algorithm of the certificate |
string |
serialNumber |
The serial number of the certificate |
string |
signatureAlgorithm |
Algorithm used to sign the certificate |
string |
subject |
Complete distinguished name to which the certificate is issued |
string |
subjectAlternativeName |
The alternative names to which the certificate is issued |
< string > array |
thumbprint |
Thumbprint generated using certificate content |
string |
thumbprintAlgorithm |
Algorithm used to generate thumbprint |
string |
version |
The X.509 version of the certificate |
string |
4.30. CertificateAuthority
The Certificate Authority (CA) details
Name | Description | Schema |
---|---|---|
commonName |
OpenSSL CA domain name |
string |
country |
ISO 3166 country code where company is legally registered |
string |
id |
CA type. Only supports Microsoft and OpenSSL CAs |
string |
locality |
The city or locality where company is legally registered |
string |
organization |
The name under which company is legally registered |
string |
organizationUnit |
Organization with which the certificate is associated |
string |
serverUrl |
Microsoft CA server url |
string |
state |
The full name of the state where company is legally registered |
string |
templateName |
Microsoft CA server template name |
string |
username |
Microsoft CA server username |
string |
4.31. CertificateAuthorityCreationSpec
This specification contains Certificate Authority (CA) creation details
Name | Description | Schema |
---|---|---|
microsoftCertificateAuthoritySpec |
Microsoft Certificate Authority specification |
|
openSSLCertificateAuthoritySpec |
OpenSSL Certificate Authority specification |
4.32. CertificateOperationSpec
This specification contains certificate operation request details
Name | Description | Schema |
---|---|---|
operationType |
The Certificates operation type |
string |
resources |
Resource(s) in a domain |
< Resource > array |
4.33. CertificatesGenerationSpec
This specification contains certificates generation request details
Name | Description | Schema |
---|---|---|
caType |
CA type. Only supports Microsoft and OpenSSL CAs |
string |
resources |
Resource(s) in a domain |
< Resource > array |
4.34. Cluster
Cluster representation
Name | Description | Schema |
---|---|---|
hosts |
List of hosts associated with the cluster |
< HostReference > array |
id |
ID of the cluster |
string |
isDefault |
Status of the cluster if default or not |
boolean |
isStretched |
Status of the cluster if Stretched or not |
boolean |
name |
Name of the cluster |
string |
primaryDatastoreName |
Name of the primary datastore |
string |
primaryDatastoreType |
Storage type of the primary datastore |
string |
vdsSpecs |
Distributed switches to added to the cluster |
< VdsSpec > array |
4.35. ClusterCompactionSpec
This specification contains the parameters required to remove one or more vSphere hosts from existing cluster in a workload domain
Name | Description | Schema |
---|---|---|
force |
Force removal of vSphere host |
boolean |
hosts |
List of vSphere hosts to be removed |
< HostReference > array |
4.36. ClusterCreationSpec
This specification contains contains the parameters required to add a cluster to an existing workload Domain
Name | Description | Schema |
---|---|---|
computeSpec |
Cluster specification to be added to the domain |
|
domainId |
ID of the domain to which the clusters will be added |
string |
4.37. ClusterCriterion
Represents a criterion for querying the cluster
Name | Description | Schema |
---|---|---|
arguments |
Arguments required for a particular criterion |
< string, string > map |
description |
Description of the criterion |
string |
name |
Name of the criterion |
string |
4.38. ClusterExpansionSpec
This specification contains the parameters required to add one or more vSphere hosts to an existing cluster in a workload domain
Name | Description | Schema |
---|---|---|
hostSpecs |
List of vSphere host information from the free pool to consume in the workload domain |
< HostSpec > array |
interRackExpansion |
Is inter-rack cluster(true for L2 non-uniform and L3 : At least one of management, uplink, Edge and host TEP networks is different for hosts of the cluster, false for L2 uniform :����All hosts in cluster have identical management, uplink, Edge and host TEP networks) expansion. Required, only if Cluster contains NSX-T Edge Cluster |
boolean |
vsanNetworkSpecs |
vSAN Network Pool Spec |
< VSANNetworkSpec > array |
witnessSpec |
Witness host Info |
4.39. ClusterQueryResponse
Represents a cluster query response.
Name | Description | Schema |
---|---|---|
queryInfo |
Query info |
|
result |
Query result |
4.40. ClusterReference
Represents a reference to the cluster
Name | Description | Schema |
---|---|---|
id |
ID of the cluster |
string |
4.41. ClusterSpec
This specification contains the parameters required to add a cluster to a workload domain
Name | Description | Schema |
---|---|---|
advancedOptions |
Advanced options used for cluster creation |
|
clusterImageId |
ID of the Cluster Image to be used with the cluster |
string |
datastoreSpec |
Cluster storage configuration; e.g. VSAN, NFS |
|
hostSpecs |
List of vSphere host information from the free pool to consume in the workload domain |
< HostSpec > array |
name |
Name of the new cluster that will be added to the specified workload domain |
string |
networkSpec |
Network configuration for the cluster |
|
vxRailDetails |
Contains the VxRail Manager details |
4.42. ClusterStretchSpec
This spec contains the parameters required to convert a Standard vSAN cluster to a Stretched cluster
Name | Description | Schema |
---|---|---|
hostSpecs |
List of vSphere host information from the free pool to consume in the workload domain |
< HostSpec > array |
isEdgeClusterConfiguredForMultiAZ |
Edge cluster configured for multi AZ |
boolean |
secondaryAzOverlayVlanId |
Secondary AZ Overlay Vlan Id |
integer (int32) |
vsanNetworkSpecs |
vSAN Network Pool Specs |
< VSANNetworkSpec > array |
witnessSpec |
Witness host information |
4.43. ClusterUnstretchSpec
This spec contains the parameters required to convert a Stretched cluster to a Standard vSAN cluster
4.44. ClusterUpdateSpec
This specification contains the parameters required to perform update operation on cluster
Name | Description | Schema |
---|---|---|
clusterCompactionSpec |
Parameters required to perform cluster compaction, optional otherwise |
|
clusterExpansionSpec |
Parameters required to perform cluster expansion, optional otherwise |
|
clusterStretchSpec |
Parameters required to perform Stretch operation on cluster, optional otherwise |
|
clusterUnstretchSpec |
Parameters required to perform Unstretch operation on cluster, optional otherwise |
|
markForDeletion |
Prepare the cluster for deletion |
boolean |
prepareForStretch |
Prepare the cluster for stretch |
boolean |
4.45. ComponentDetails
Component contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
displayName |
Component display name |
string |
displayVersion |
Component display version |
string |
vendor |
Component vendor |
string |
4.46. ComponentInfo
Component contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
details |
Component details |
|
version |
Component Version |
string |
4.47. ComputeSpec
This specification contains the parameters required to add each cluster to a workload domain
Name | Description | Schema |
---|---|---|
clusterSpecs |
List of clusters to be added to workload domain |
< ClusterSpec > array |
4.48. Cpu
Represents information about CPUs on a host
Name | Description | Schema |
---|---|---|
cores |
Number of CPU cores |
integer (int32) |
cpuCores |
Information about each of the CPU cores |
< CpuCore > array |
frequencyMHz |
Total CPU frequency in MHz |
number (double) |
usedFrequencyMHz |
Used CPU frequency in MHz |
number (double) |
4.49. CpuCore
Represents a CPU core
Name | Description | Schema |
---|---|---|
frequencyMHz |
CPU frequency in MHz |
number (double) |
manufacturer |
Hardware manufacturer of the CPU |
string |
model |
Hardware model of the CPU |
string |
4.50. Credential
Represents a credential and the resource to which it is associated with
Name | Description | Schema |
---|---|---|
creationTimestamp |
The timestamp at which credential was created |
|
credentialType |
Credential type |
string |
id |
Credential ID |
string |
modificationTimestamp |
The timestamp at which credential was last modified |
|
password |
Password |
string |
resource |
The resource which owns the credential |
|
username |
Username |
string |
4.51. CredentialsSubTask
Represents the credentials sub-task in the system
Name | Description | Schema |
---|---|---|
creationTimestamp |
Credential sub-task creation timestamp |
|
credentialType |
Credential sub-task credential type |
string |
dependentSubTasks |
List of dependent sub-tasks of the credential sub-task |
< CredentialsSubTask > array |
description |
Credential sub-task description |
string |
entityType |
Credential sub-task entity type |
string |
errors |
List of errors in case of a failure |
< Error > array |
name |
Credential sub-task name |
string |
newPassword |
Credential sub-task new password |
string |
oldPassword |
Credential sub-task old password |
string |
status |
Credential sub-task status |
string |
username |
Credential sub-task username |
string |
4.52. CredentialsTask
Represents the credentials task in the system
Name | Description | Schema |
---|---|---|
creationTimestamp |
Credential task creation timestamp |
|
errors |
List of errors in case of a failure |
< Error > array |
id |
Credential task ID |
string |
name |
Credential task name |
string |
status |
Credential task status |
string |
subTasks |
List of credential sub-tasks of the credential task |
< CredentialsSubTask > array |
type |
Credential task type |
string |
4.53. CredentialsUpdateSpec
This specification contains password operation request details
Name | Description | Schema |
---|---|---|
elements |
List of resource credentials to be changed |
< ResourceCredentials > array |
operationType |
Operation type |
string |
4.54. Csr
The Certificate Signing Request (CSR) details
Name | Description | Schema |
---|---|---|
csrEncodedContent |
The CSR encoded content |
string |
resource |
Resource associated with CSR |
4.55. CsrGenerationSpec
This specification contains Certificate Signing Request (CSR) details
Name | Description | Schema |
---|---|---|
country |
ISO 3166 country code where company is legally registered |
string |
email |
Contact email address |
string |
keyAlgorithm |
The public key algorithm of the certificate |
string |
keySize |
Certificate public key size |
string |
locality |
The city or locality where company is legally registered |
string |
organization |
The name under which company is legally registered |
string |
organizationUnit |
Organization with which the certificate is associated |
string |
state |
The full name of the state where company is legally registered |
string |
4.56. CsrsGenerationSpec
This specification contains CSR Generation request details
Name | Description | Schema |
---|---|---|
csrGenerationSpec |
The CSR specification to generate CSR for resource(s) |
|
resources |
Resource(s) in a domain |
< Resource > array |
4.57. Datastore
Name | Description | Schema |
---|---|---|
capacity |
Example : |
number (double) |
datastoreName |
Example : |
string |
datastoreType |
Example : |
enum (VSAN, VMFS, NFS) |
freeSpace |
Example : |
number (double) |
unallocated |
Example : |
number (double) |
unit |
Example : |
enum (GHZ, GB, TB, HZ, KHZ, MHZ, THZ, B, PB) |
used |
Example : |
number (double) |
4.58. DatastoreSpec
This specification contains cluster storage configuration
Name | Description | Schema |
---|---|---|
nfsDatastoreSpecs |
Cluster storage configuration for NFS |
< NfsDatastoreSpec > array |
vmfsDatastoreSpec |
Cluster storage configuration for VMFS |
|
vsanDatastoreSpec |
Cluster storage configuration for vSAN |
4.59. DateTimeDetail
Name | Description | Schema |
---|---|---|
dateTime |
Example : |
string |
timestamp |
Example : |
integer (int64) |
4.60. DepotAccount
VMware Depot Account Information
Name | Description | Schema |
---|---|---|
message |
Message explaining depot status |
string |
password |
Depot Password for Access |
string |
status |
Depot Status |
string |
username |
Depot Username for Access |
string |
4.61. DepotSettings
VMware Depot Settings. At least one of vmwareAccount or dellEmcSupportAccount value must be provided
Name | Description | Schema |
---|---|---|
dellEmcSupportAccount |
Dell EMC Support Account |
|
vmwareAccount |
VMware Depot Account |
4.62. Disk
Represents a disk
Name | Description | Schema |
---|---|---|
capacityMB |
Total capacity of the disk in MB |
number (double) |
diskType |
Type of the disk. |
string |
manufacturer |
Hardware manufacturer of the disk |
string |
model |
Hardware model of the disk |
string |
4.63. DnsConfiguration
DNS Configuration
Name | Description | Schema |
---|---|---|
dnsServers |
List of DNS servers |
< DnsServer > array |
4.64. DnsServer
DNS server details
Name | Description | Schema |
---|---|---|
ipAddress |
IP address/FQDN of DNS server |
string |
isPrimary |
Is DNS server primary |
boolean |
4.65. DnsSpec
Spec contains parameters of Domain Name System
Name | Description | Schema |
---|---|---|
domain |
Tenant domain |
string |
nameserver |
Primary nameserver to be configured for vCenter/PSC/ESXi’s/NSX |
string |
secondaryNameserver |
Secondary nameserver to be configured for vCenter/PSC/ESXi’s/NSX |
string |
subdomain |
Tenant Sub domain |
string |
4.66. Domain
Represents a domain
Name | Description | Schema |
---|---|---|
clusters |
List of clusters associated with the workload domain |
< ClusterReference > array |
id |
ID of the workload domain |
string |
name |
Name of the workload domain |
string |
type |
Type of the workload domain |
string |
vcenters |
List of vCenters associated with the workload domain |
< VcenterReference > array |
4.67. DomainCreationSpec
This specification contains the parameters required to create a new workload domain
Name | Description | Schema |
---|---|---|
computeSpec |
Specification representing the clusters to be added to the workload domain |
|
domainName |
Name of the workload domain |
string |
nsxTSpec |
Specification details for NSX-T configuration |
|
vcenterSpec |
Specification details for vCenter |
4.68. DomainInfo
Name | Description | Schema |
---|---|---|
domainCapacity |
Example : ResourceCapacity |
|
domainId |
Example : |
string |
name |
Example : |
string |
status |
Example : |
string |
type |
Example : |
string |
4.69. DomainReference
Represents a domain reference
Name | Description | Schema |
---|---|---|
id |
ID of the domain |
string |
name |
Name of the domain |
string |
4.70. DomainSummary
Name | Description | Schema |
---|---|---|
aggregatedCapacity |
Example : ResourceCapacity |
|
domainCount |
Example : |
integer (int32) |
type |
Example : |
string |
4.71. DomainUpdateSpec
Contains the parameters required to perform update operation on domain
Name | Description | Schema |
---|---|---|
clusterSpec |
Cluster Specification for the domain |
|
markForDeletion |
Enable deletion for the domain |
boolean |
nsxTSpec |
NSX-T Specification for the domain |
4.72. DvsSpec
Spec contains parameters for DVS
Name | Description | Schema |
---|---|---|
dvsName |
DVS Name |
string |
isUsedByNsxt |
Flag indicating whether the DVS is used by NSX-T |
boolean |
mtu |
DVS MTU (default value is 9000) |
integer (int32) |
networks |
Types of networks in this portgroup |
< string > array |
niocSpecs |
List of NIOC specs for networks |
< NiocSpec > array |
vmnics |
Vmnics to be attached to the DVS |
< string > array |
4.73. EdgeCluster
EdgeCluster representation
Name | Description | Schema |
---|---|---|
clusters |
List of clusters associated with the edge cluster |
< ClusterReference > array |
id |
ID of the egde cluster |
string |
name |
Name of the edge cluster |
string |
nsxtCluster |
NSX-T cluster associated with the edge cluster |
4.74. EdgeClusterCreationSpec
This specification contains the parameters required to add a NSX-T edge cluster spanning multiple VI clusters.
Name | Description | Schema |
---|---|---|
asn |
ASN to be used for the edge cluster |
integer (int64) |
edgeAdminPassword |
Edge Password for admin user |
string |
edgeAuditPassword |
Edge Password for audit |
string |
edgeClusterName |
Name for the edge cluster. |
string |
edgeClusterProfileSpec |
Specifications for Edge Node |
|
edgeClusterProfileType |
Type of edge cluster profile |
string |
edgeClusterType |
Type of edge cluster |
string |
edgeFormFactor |
Edge Form Factor |
string |
edgeNodeSpecs |
Specifications for Edge Node |
< NsxTEdgeNodeSpec > array |
edgeRootPassword |
Edge Password for root user. |
string |
mtu |
Maximum transmission unit |
integer (int32) |
tier0Name |
Name for the T0 . |
string |
tier0RoutingType |
Tier 0 Routing type -eg eBGP, Static |
string |
tier0ServicesHighAvailability |
High-availability Mode for Tier-0 |
string |
tier1Name |
Name for the T1 . |
string |
4.75. Encryption
Restore Specification
Name | Description | Schema |
---|---|---|
passphrase |
Passphrase |
string |
4.76. Endpoint
Represents an Endpoint in a Domain
Name | Description | Schema |
---|---|---|
type |
Type of the Endpoint |
string |
url |
Url of the Endpoint |
string |
4.77. Error
Error response containing a minor error code, a localized error message, a localized remediation message and optionally a reference token to correlate the error with the logs
Name | Description | Schema |
---|---|---|
arguments |
The arguments used to localize the message, Can be used by scripts to automate the error processing. |
< string > array |
causes |
The underlying cause exceptions. |
< ErrorCause > array |
context |
The error context (e.g. the component where it occurred). |
< string, string > map |
errorCode |
The minor error code |
string |
message |
The localized error message |
string |
nestedErrors |
The nested errors when the error is a composite one |
< Error > array |
referenceToken |
A reference token correlating the error with the relevant detailed error logs. Should be sent to the service provider when reporting issues. |
string |
remediationMessage |
The localized remediation error message |
string |
4.78. ErrorCause
Describes a single error cause
Name | Description | Schema |
---|---|---|
message |
The message describing the reason for the error |
string |
type |
The type of the error cause |
string |
4.79. ErrorResponse
Name | Description | Schema |
---|---|---|
arguments |
Example : |
< string > array |
cause |
Example : |
< ErrorCause > array |
context |
Example : |
< string, string > map |
errorCode |
Example : |
string |
message |
Example : |
string |
nestedErrors |
Example : |
< ErrorResponse > array |
referenceToken |
Example : |
string |
remediationMessage |
Example : |
string |
4.80. FcSpec
Cluster storage configuration for VMFS on FC
Name | Description | Schema |
---|---|---|
datastoreName |
Datastore name used for cluster creation |
string |
4.81. FederationOperationError
Name | Description | Schema |
---|---|---|
error |
Example : |
string |
errorPack |
Example : LocalizableErrorCodePack |
|
suggestedRemedy |
Example : |
string |
suggestedRemedyPack |
Example : LocalizableErrorCodePack |
4.82. FederationTask
Name | Description | Schema |
---|---|---|
created |
Example : DateTimeDetail |
|
errors |
Example : |
< FederationOperationError > array |
lastUpdated |
Example : DateTimeDetail |
|
operation |
Example : |
enum (BOOTSTRAP, START, STOP, TEARDOWN, INVITE_MEMBER, EVICT_MEMBER, JOIN, HANDLE_JOIN, HANDLE_CONTROLLER_JOIN, LEAVE, HANDLE_LEAVE, HANDLE_CONTROLLER_LEAVE, HANDLE_CERT_ROTATION) |
payload |
Example : RemoteResponsePayload |
|
progressDetails |
Example : |
string |
remoteOperationTask |
Example : FederationTask |
|
status |
Example : |
enum (NOT_STARTED, SUCCEEDED, FAILED, IN_PROGRESS, UNKNOWN) |
taskId |
Example : |
string |
4.83. HardwareSupportInfo
Hardware support contains base os, components, hardware support, addOn metadata to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
packages |
Hardware support packages |
< string, HardwareSupportPackageInfo > map |
4.84. HardwareSupportPackage
Configured Hardware Support Manager details
Name | Description | Schema |
---|---|---|
name |
Hardware Support Manager Name |
string |
pkg |
Hardware Support Package |
4.85. HardwareSupportPackageInfo
Hardware Support Package contains metadata regarding the package, version to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
pkg |
Hardware support package name |
string |
version |
Hardware support package version |
string |
4.86. HardwareSupportPackages
Available Hardware Support Manager details
Name | Description | Schema |
---|---|---|
name |
Hardware Support Manager Name |
string |
packages |
Hardware Support Packages |
< PackageSpec > array |
4.87. HardwareSupportSpec
Hardware Support Specification for Firmware Upgrade
Name | Description | Schema |
---|---|---|
name |
Hardware Support Manager name |
string |
packageSpec |
Package for Hardware Support Managers |
4.88. HighAvailability
This specification contains high availability settings
Name | Description | Schema |
---|---|---|
enabled |
Example : |
boolean |
4.89. Host
Represents an Esxi host in the system
Name | Description | Schema |
---|---|---|
bundleRepoDatastore |
Bundle repositry datastore for this host |
string |
cluster |
Information about the cluster this host is part of |
|
compatibleStorageType |
Information about the host compatible storage type |
string |
cpu |
Information about CPUs on the host |
|
domain |
Information about the domain this host is part of |
|
esxiVersion |
ESXi software version of the host |
string |
fqdn |
FQDN of the host |
string |
hardwareModel |
Hardware model of the host |
string |
hardwareVendor |
Hardware vendor of the host |
string |
hybrid |
Information about the storage type of the host, true if the host is hybrid. |
boolean |
id |
ID of the host |
string |
ipAddresses |
Information about IP addresses assigned to the host |
< IpAddress > array |
memory |
Information about memory on the host |
|
networkpool |
Information about the network pool this host is part of |
|
physicalNics |
Information about physical NICs on the host |
< PhysicalNic > array |
status |
Status of the host |
string |
storage |
Information about storage on the host |
4.90. HostCommissionSpec
This specification contains the input to commission a host to VMware Cloud Foundation
Name | Description | Schema |
---|---|---|
fqdn |
FQDN of the host |
string |
networkPoolId |
ID of the network pool to associate the host with |
string |
networkPoolName |
Name of the network pool to associate the host with |
string |
password |
Password of the host |
string |
storageType |
Storage Type |
string |
username |
Username of the host |
string |
4.91. HostCount
Name | Description | Schema |
---|---|---|
total |
Example : |
integer (int32) |
unallocated |
Example : |
integer (int32) |
used |
Example : |
integer (int32) |
4.92. HostCriterion
Represents a criterion for querying the host
Name | Description | Schema |
---|---|---|
arguments |
Arguments required for a particular criterion |
< string, string > map |
description |
Description of the criterion |
string |
name |
Name of the criterion |
string |
4.93. HostDecommissionSpec
This specification contains host details required to decommission a host from VMware Cloud Foundation
Name | Description | Schema |
---|---|---|
fqdn |
FQDN of the host |
string |
4.94. HostNetworkSpec
This specification contains network details required when adding a vSphere host to a cluster
Name | Description | Schema |
---|---|---|
vmNics |
List of the vSphere host vmNics |
< VmNic > array |
4.95. HostQueryResponse
Represents a host query response.
Name | Description | Schema |
---|---|---|
queryInfo |
Query info |
|
result |
Query result |
4.96. HostReference
Represents an ESXi host reference
Name | Description | Schema |
---|---|---|
fqdn |
FQDN of the host |
string |
id |
ID of the host |
string |
ipAddress |
IP address of the host |
string |
4.97. HostSpec
This specification contains information required to add vSphere host to a cluster
Name | Description | Schema |
---|---|---|
azName |
Availability Zone Name |
string |
hostName |
Host name of the vSphere host |
string |
hostNetworkSpec |
Network Details of the vSphere host |
|
id |
ID of a vSphere host in the free pool |
string |
ipAddress |
IP address of the vSphere host |
string |
licenseKey |
License key of a vSphere host in the free pool |
string |
password |
SSH password of the vSphere host |
string |
username |
Username of the vSphere host |
string |
4.98. HostVmknicSpec
Spec contains parameters for ESXi Host Vmknic
Name | Description | Schema |
---|---|---|
ipAddress |
Vmknic IP address |
string |
macAddress |
Vmknic mac address |
string |
portgroup |
Portgroup |
string |
4.99. Instant
Name | Description | Schema |
---|---|---|
epochSecond |
Example : |
integer (int64) |
nano |
Example : |
integer (int32) |
4.100. InventoryInfo
Name | Description | Schema |
---|---|---|
hostCount |
Example : HostCount |
4.101. InvitationSpec
Name | Description | Schema |
---|---|---|
inviteeFqdn |
Example : |
string |
inviteeRole |
Example : |
enum (CONTROLLER, MANAGER, MEMBER, NOT_JOINED) |
tokenExpiryHours |
Example : |
number (float) |
4.102. IpAddress
Represents IP address
Name | Description | Schema |
---|---|---|
ipAddress |
IP address |
string |
type |
Type of IP addresss |
string |
4.103. IpAllocation
Defines an IP address with gateway and subnet
Name | Description | Schema |
---|---|---|
cidr |
Classless Inter-Domain Routing (CIDR) |
string |
gateway |
Gateway |
string |
ipAddress |
IP Address |
string |
subnet |
Subnet |
string |
4.104. IpPool
Represents an IP Pool of a network in a network pool
Name | Description | Schema |
---|---|---|
end |
End IP address of the IP pool |
string |
start |
Start IP address of the IP pool |
string |
4.105. IpRange
Spec contains parameters for range of IP addresses
Name | Description | Schema |
---|---|---|
endIpAddress |
End IP Address |
string |
startIpAddress |
Start IP Address |
string |
4.106. LicenseKey
Defines a license key and its attributes
Name | Description | Schema |
---|---|---|
description |
Description of the license key |
string |
id |
The ID of the license key |
string |
isUnlimited |
Indicates if the license key has unlimited usage |
boolean |
key |
The 29 alpha numeric character license key with hyphens |
string |
licenseKeyUsage |
License key usage details |
|
licenseKeyValidity |
License key validity details |
4.107. LicenseKeyUsage
Defines license key usage
Name | Description | Schema |
---|---|---|
licenseUnit |
Units of the license key |
string |
remaining |
The remaining/free units of the license key |
integer (int32) |
total |
The total units of the license key |
integer (int32) |
used |
The consumed/used units of the license key |
integer (int32) |
4.108. LicenseKeyValidity
Defines license key validity details
Name | Description | Schema |
---|---|---|
expiryDate |
The license key expiry date |
|
licenseKeyStatus |
The validity status of the license key |
string |
4.109. LocalizableErrorCodePack
Name | Description | Schema |
---|---|---|
arguments |
Example : |
< object > array |
component |
Example : |
string |
defaultMessage |
Example : |
string |
localBundle |
Example : |
string |
messageKey |
Example : |
string |
4.110. MapOfstringAndComponentInfo
Type : < string, ComponentInfo > map
4.111. MapOfstringAndHardwareSupportPackageInfo
Type : < string, HardwareSupportPackageInfo > map
4.112. MapOfstringAndstring
Type : < string, string > map
4.113. MemberCapacityInfo
Name | Description | Schema |
---|---|---|
summary |
Example : CapacitySummary |
4.114. MemberDetail
Name | Description | Schema |
---|---|---|
city |
Example : |
string |
coordinate |
Example : PositionCoordinate |
|
country |
Example : |
string |
fqdn |
Example : |
string |
role |
Example : |
enum (CONTROLLER, MANAGER, MEMBER, NOT_JOINED) |
siteName |
Example : |
string |
siteType |
Example : |
enum (DATACENTER, ROBO, EDGE) |
state |
Example : |
string |
4.115. MemberFact
Name | Description | Schema |
---|---|---|
error |
Example : FederationOperationError |
|
federationName |
Example : |
string |
memberDetail |
Example : MemberDetail |
|
permissions |
Example : |
< enum (BOOTSTRAP, TEARDOWN, INVITE_MEMBER, EVICT, LIST_INVENTORY, JOIN, LEAVE) > array |
4.116. MemberHealth
Name | Description | Schema |
---|---|---|
healthCode |
Example : |
enum (GREEN, YELLOW, RED) |
healthDetails |
Example : |
< string > array |
4.117. MemberInfo
Name | Description | Schema |
---|---|---|
memberDetails |
Example : MemberDetail |
|
memberHealth |
Example : MemberHealth |
|
memberInventory |
Example : MemberInventory |
|
memberLiveness |
Example : MemberLiveliness |
4.118. MemberInventory
Name | Description | Schema |
---|---|---|
capacity |
Example : MemberCapacityInfo |
|
creationTime |
Example : Instant |
|
inventoryInfo |
Example : InventoryInfo |
|
softwareInfo |
Example : MemberSoftwareInfo |
4.119. MemberJoinSpec
Name | Description | Schema |
---|---|---|
commonName |
Example : |
string |
controllerFqdn |
Example : |
string |
joinToken |
Example : |
string |
memberJoinDetail |
Example : MemberDetail |
4.120. MemberLiveliness
Name | Description | Schema |
---|---|---|
livelinessCode |
Example : |
enum (GREEN, YELLOW, RED) |
livelinessDetails |
Example : |
< string > array |
4.121. MemberSoftwareInfo
Name | Description | Schema |
---|---|---|
pendingUpdates |
Example : |
integer (int32) |
4.122. MembershipInvitation
Name | Description | Schema |
---|---|---|
controllerFqdn |
Example : |
< string > array |
error |
Example : FederationOperationError |
|
invitationToken |
Example : |
string |
inviteeFqdn |
Example : |
string |
inviteeRole |
Example : |
enum (CONTROLLER, MANAGER, MEMBER, NOT_JOINED) |
4.123. Memory
Represents information about memory on a host
Name | Description | Schema |
---|---|---|
totalCapacityMB |
Total memory in MB |
number (double) |
usedCapacityMB |
Used memory in MB |
number (double) |
4.124. MessageBusServerInfo
Name | Description | Schema |
---|---|---|
brokerId |
Example : |
integer (int32) |
fqdn |
Example : |
string |
hostAddress |
Example : |
string |
port |
Example : |
integer (int32) |
4.125. MessageBusServerInfoList
Name | Description | Schema |
---|---|---|
messageBusServersInfo |
Example : |
< MessageBusServerInfo > array |
4.126. MessagePack
A messasge pack representing a localizable message and suitable for machine processing. Contains a message key unique in the scope of the specified component, as well as the arguments needed to generate the localized message.
Name | Description | Schema |
---|---|---|
arguments |
The arguments used to localize the message. Can be used by scripts to automate the response processing. |
< string > array |
component |
The component the message belongs to |
string |
message |
The localized message (if not provided by another property) |
string |
messageKey |
The machine-readable key of the message |
string |
4.127. MicrosoftCertificateAuthoritySpec
This specification contains Microsoft CA configuration details
Name | Description | Schema |
---|---|---|
secret |
CA server password |
string |
serverUrl |
CA server url |
string |
templateName |
CA server template name |
string |
username |
CA server username |
string |
4.128. NasVolumeSpec
NAS configuration for NFS based cluster
Name | Description | Schema |
---|---|---|
path |
Shared directory path used for NFS based cluster creation |
string |
readOnly |
Readonly is used to identify whether to mount the directory as readOnly or not |
boolean |
serverName |
NFS Server name used for cluster creation |
< string > array |
userTag |
User tag used to annotate NFS share |
string |
4.129. Network
Represents a network in a network pool
Name | Description | Schema |
---|---|---|
freeIps |
List of free IPs to use |
< string > array |
gateway |
Gateway for the network |
string |
id |
The ID of the network |
string |
ipPools |
List of IP pool ranges to use |
< IpPool > array |
mask |
Subnet mask for the subnet of the network |
string |
mtu |
MTU of the network |
integer (int32) |
subnet |
Subnet associated with the network |
string |
type |
Network Type of the network |
string |
usedIps |
List of used IPs |
< string > array |
vlanId |
VLAN ID associated with the network |
integer (int32) |
4.130. NetworkDetailsSpec
This specification contains network parameters required for new virtual machines being added to a workload domain
Name | Description | Schema |
---|---|---|
dnsName |
DNS name of the virtual machine, e.g., vc-1.domain1.vsphere.local |
string |
gateway |
IPv4 gateway the VM can use to connect to the outside world |
string |
ipAddress |
IPv4 address of the virtual machine |
string |
subnetMask |
Subnet mask |
string |
4.131. NetworkPool
Represents a network pool in the system
Name | Description | Schema |
---|---|---|
id |
The ID of the network pool |
string |
name |
User specified name of the network pool |
string |
networks |
Representing the networks associated with the network pool |
< Network > array |
4.132. NetworkPoolReference
Represents a network pool reference
Name | Description | Schema |
---|---|---|
id |
ID of the network pool |
string |
name |
Name of the network pool |
string |
4.133. NetworkSpec
This specification contains cluster network configuration
Name | Description | Schema |
---|---|---|
nsxClusterSpec |
NSX configuration to add to the cluster |
|
vdsSpecs |
Distributed switches to add to the cluster |
< VdsSpec > array |
4.134. NfsDatastoreSpec
This specification contains cluster storage configuration for NFS
Name | Description | Schema |
---|---|---|
datastoreName |
Datastore name used for cluster creation |
string |
nasVolume |
NAS volume configuration for NFS based cluster |
4.135. NiocBandwidthAllocationSpec
This specification contains network traffic per resource type
Name | Description | Schema |
---|---|---|
niocTrafficResourceAllocation |
DvsHostInfrastructureTrafficResourceAllocation |
|
type |
DvsHostInfrastructureTrafficResource resource type |
string |
4.136. NiocSpec
Spec contains parameters for Network IO Control
Name | Description | Schema |
---|---|---|
trafficType |
Traffic Type |
string |
value |
NIOC Value |
string |
4.137. NiocTrafficResourceAllocation
Specify network traffic for a resource
Name | Description | Schema |
---|---|---|
limit |
Example : |
integer (int64) |
reservation |
Example : |
integer (int64) |
4.138. NsxClusterSpec
This specification contains NSX configuration for cluster
Name | Description | Schema |
---|---|---|
nsxTClusterSpec |
NSX-T spec for the new cluster, required for NSX-T based workload domains, optional otherwise |
4.139. NsxManagerSpec
This specification contains the parameters required to install and configure NSX Manager in a workload domain
Name | Description | Schema |
---|---|---|
name |
Name of the NSX Manager virtual machine |
string |
networkDetailsSpec |
Network speciication details of the NSX Manager virtual machine |
4.140. NsxTCluster
NSX-T Cluster representation
Name | Description | Schema |
---|---|---|
domains |
Information about the domains associated with the cluster |
< DomainReference > array |
id |
ID of the cluster |
string |
isShared |
Boolean to identify if the NSX-T cluster can be shared among workload domains |
boolean |
isVlcmCompatible |
Boolean to identify if the NSX-T cluster is compatible with Vlcm |
boolean |
nodes |
Information about the NSX-T managers associated with the cluster |
< NsxTManager > array |
vip |
VIP (Virtual IP Address) of the cluster |
string |
vipFqdn |
FQDN for VIP of the cluster |
string |
4.141. NsxTClusterReference
Represents an NSX-T Cluster reference
Name | Description | Schema |
---|---|---|
id |
ID of the NSX-T cluster |
string |
vip |
VIP (Virtual IP Address) of the NSX-T cluster |
string |
vipFqdn |
FQDN for VIP of the NSX-T cluster |
string |
4.142. NsxTClusterSpec
This specification contains NSX-T configuration for a new cluster.
Name | Description | Schema |
---|---|---|
geneveVlanId |
Vlan id of Geneve |
integer (int32) |
4.143. NsxTEdgeClusterProfileSpec
This specification contains edge cluster profile configurations
Name | Description | Schema |
---|---|---|
bfdAllowedHop |
BFD allowed Hop |
integer (int64) |
bfdDeclareDeadMultiple |
BFD Declare Dead Multiple |
integer (int64) |
bfdProbeInterval |
BFD Probe |
integer (int64) |
edgeClusterProfileName |
Name for the edge cluster profile. |
string |
standbyRelocationThreshold |
Standby Relocation Threshold |
integer (int64) |
4.144. NsxTEdgeNodeSpec
This specification contains configuration inputs required to deploy and configure an edge node
Name | Description | Schema |
---|---|---|
clusterId |
Cluster on which the edge needs to be deployed |
string |
edgeNodeName |
Edge Node Name |
string |
edgeTep1IP |
Edge TEP 1 IP |
string |
edgeTep2IP |
Edge TEP 2 IP |
string |
edgeTepGateway |
Edge TEP Gateway IP |
string |
edgeTepVlan |
Edge TEP VLAN |
integer (int32) |
interRackCluster |
Is inter-rack cluster(true for L2 non-uniform and L3 : At least one of management, uplink, Edge and host TEP networks is different for hosts of the cluster, false for L2 uniform :����All hosts in cluster have identical management, uplink, Edge and host TEP networks) |
boolean |
managementGateway |
Management Gateway IP |
string |
managementIP |
Management Interface IP |
string |
uplinkNetwork |
Specifications of uplinks for the Edge Node |
< NsxTEdgeUplinkNetwork > array |
4.145. NsxTEdgeUplinkNetwork
This specification contains input parameters required to configure uplink network for NSX-T edge node VM
Name | Description | Schema |
---|---|---|
asnPeer |
ASN of Peer |
integer (int64) |
bgpPeerPassword |
BGP Peer Password |
string |
peerIP |
BGP Peer IP |
string |
uplinkInterfaceIP |
Uplink IP |
string |
uplinkVlan |
Uplink Vlan |
integer (int32) |
4.146. NsxTManager
NSX-T Manager representation
Name | Description | Schema |
---|---|---|
fqdn |
FQDN of the manager |
string |
ipAddress |
IP address of the manager |
string |
name |
NSX-T Manager VM name in vCenter |
string |
4.147. NsxTSpec
This specification contains the parameters required to install and configure NSX-T in a workload domain
Name | Description | Schema |
---|---|---|
licenseKey |
NSX license value |
string |
nsxManagerAdminPassword |
NSX manager admin password (basic auth and SSH) |
string |
nsxManagerSpecs |
Specification details of the NSX Manager virtual machine |
< NsxManagerSpec > array |
vip |
Virtual IP address which would act as proxy/alias for NSX-T Managers |
string |
vipFqdn |
FQDN for VIP so that common SSL certificates can be installed across all managers |
string |
4.148. NsxtEdgeCluster
Nsxt Edge Cluster Upgrade Resource
Name | Description | Schema |
---|---|---|
id |
Edge cluster id |
string |
name |
Edge cluster name |
string |
resourceHealth |
Current resource health status |
string |
upgradeStatus |
Upgrade status with respect to the bundle |
string |
version |
The current version of the edge cluster.If a partial upgrade is done, this will be the least version among the edges in the edge cluster |
string |
4.149. NsxtEdgeClusterUpgradeSpec
Host transport node cluster upgrade input
Name | Description | Schema |
---|---|---|
edgeClusterId |
Resource ID of the edge transport node cluster |
string |
edgeParallelUpgrade |
disable/enable parallel upgrade of edges within the cluster |
boolean |
4.150. NsxtEdgeSpec
NSX-T edge specification
Name | Description | Schema |
---|---|---|
asn |
NSX-T edge asn |
integer (int64) |
bgpNeighbours |
NSX-T edge bgp neighbour |
< BgpNeighbour > array |
edgeAdminPassword |
NSX-T edge admin password |
string |
edgeAuditPassword |
NSX-T edge audit password |
string |
edgeClusterName |
NSX-T edge cluster name |
string |
edgeFormFactor |
NSX-T edge form factor |
enum (Oneamong:compact, large, quadlarge, xlarge) |
edgeNodeSpecs |
NSX-T edge node specification |
< SddcNsxtEdgeNodeSpec > array |
edgeRootPassword |
NSX-T edge root password |
string |
edgeServicesSpecs |
NSX-T Edge Services specification |
|
tier0ServicesHighAvailability |
NSX-T tier0 service high availability |
string |
4.151. NsxtHostCluster
Nsxt Host Cluster Upgrade Resource
Name | Description | Schema |
---|---|---|
availableHardwareSupportManagers |
Available Hardware Support Managers for Firmware upgrade |
< HardwareSupportPackages > array |
configuredHardwareSupportManagers |
Configured Hardware Support Managers for Firmware upgrade |
< HardwareSupportPackage > array |
domainId |
Id of the domain the Host cluster belongs to |
string |
id |
Host cluster VCF cluster id |
string |
name |
Cluster name |
string |
primaryCluster |
Flag to determine if primary cluster for vLCM |
boolean |
resourceHealth |
Current resource health status |
string |
totalUnits |
Total number of hosts in the Host cluster |
integer (int32) |
upgradeStatus |
Upgrade status with respect to the bundle |
string |
upgradedUnits |
Number of hosts which are already upgraded |
integer (int32) |
version |
The current version of the host node cluster.If a partial upgrade is done, this will be the least version among the hosts |
string |
vlcmEnabled |
Example : |
boolean |
4.152. NsxtHostClusterUpgradeSpec
Host trnasport node cluster upgrade input
Name | Description | Schema |
---|---|---|
hostClusterId |
Resource ID of the host transport node cluster |
string |
hostParallelUpgrade |
Flag for disabling/enabling parallel upgrade within the cluster |
boolean |
liveUpgrade |
Flag for disabling/enabling live upgrade of hosts in the transportnode clusters |
boolean |
4.153. NsxtInterface
NSX-T edge node interface specification
Name | Description | Schema |
---|---|---|
interfaceCidr |
NSX-T edge node interface CIDR |
string |
name |
NSX-T edge node interface name |
string |
4.154. NsxtLogicalSegment
NSX-T edge node logical segment specification
Name | Description | Schema |
---|---|---|
name |
NSX-T edge node logical switch name |
string |
networkType |
NSX-T edge node logical segment network type |
enum (Oneamong:X_REGION, REGION_SPECIFIC) |
4.155. NsxtManagerCluster
Nsxt Manager Cluster Upgrade Resource
Name | Description | Schema |
---|---|---|
id |
Manager cluster id |
string |
name |
Manager cluster name |
string |
resourceHealth |
Current resource health status |
string |
upgradeStatus |
Upgrade status with respect to the bundle |
string |
version |
The current version of the manager cluster.If a partial upgrade is done, this will be the least version among the managers in the manager cluster |
string |
4.156. NsxtManagerSpec
Spec contains parameters for NSX-T manager
Name | Description | Schema |
---|---|---|
hostname |
NSX-T Manager hostname |
string |
ip |
NSX-T Manager IP Address |
string |
4.157. NsxtResources
Nsxt Upgrade Resources for an NSXT instance
Name | Description | Schema |
---|---|---|
bundleId |
Bundle id used to compute the upgradability |
string |
domainId |
Domain id associated with the NSX-T cluster |
string |
nsxtEdgeClusters |
List of edge clusters that are candidates for upgrade |
< NsxtEdgeCluster > array |
nsxtHostClusters |
List of host clusters that are candidates for upgrade |
< NsxtHostCluster > array |
nsxtManagerCluster |
Manager cluster that is a candidate for upgrade |
|
nsxtUpgradeCoordinator |
Upgrade coordinator pertaining to the NSX-T instance |
4.158. NsxtTransportZone
Spec contains required parameters for NSX-T Transport Zone
Name | Description | Schema |
---|---|---|
networkName |
Transport zone network name |
string |
zoneName |
Transport zone name |
string |
4.159. NsxtUpgradeCoordinator
NSXT Upgrade coordinator Upgrade Resource
Name | Description | Schema |
---|---|---|
enabledOn |
The IP of the manager on which UC is enabled |
string |
id |
Upgrade coordinator id |
string |
resourceHealth |
Current resource health status |
string |
upgradeStatus |
Upgrade status with respect to the bundle |
string |
version |
The current version of the UC |
string |
4.160. NsxtUpgradeOptions
NSXT Upgrade options
Name | Description | Schema |
---|---|---|
isEdgeClustersUpgradeParallel |
Flag for disabling/enabling parallel upgrade of edge transportnode clusters |
boolean |
isEdgeOnlyUpgrade |
Flag for performing edge-only upgrade |
boolean |
isHostClustersUpgradeParallel |
Flag for disabling/enabling parallel upgrade of host transportnode clusters |
boolean |
4.161. NsxtUpgradeUserInputSpec
Nsxt Upgrade User Input Specification
Name | Description | Schema |
---|---|---|
nsxtEdgeClusterUpgradeSpecs |
List of edge clusters information if explicit selection is to be made |
< NsxtEdgeClusterUpgradeSpec > array |
nsxtHostClusterUpgradeSpecs |
List of host clusters information if explicit selection is to be made |
< NsxtHostClusterUpgradeSpec > array |
nsxtId |
Identifier of the NSXT instance |
string |
nsxtUpgradeOptions |
List of host clusters information if explicit selection is to be made |
4.162. NtpConfiguration
NTP Configuration
Name | Description | Schema |
---|---|---|
ntpServers |
List of NTP servers |
< NtpServer > array |
4.163. NtpServer
NTP server details
Name | Description | Schema |
---|---|---|
ipAddress |
IP address/FQDN of NTP server |
string |
4.164. OpenSSLCertificateAuthoritySpec
This specification contains OpenSSL CA configuration details
Name | Description | Schema |
---|---|---|
commonName |
OpenSSL CA domain name |
string |
country |
ISO 3166 country code where company is legally registered |
string |
locality |
The city or locality where company is legally registered |
string |
organization |
The name under which company is legally registered |
string |
organizationUnit |
Organization with which the certificate is associated |
string |
state |
The full name of the state where company is legally registered |
string |
4.165. Package
Hardware Support Package Specification
Name | Description | Schema |
---|---|---|
name |
Package name |
string |
version |
Package version |
string |
4.166. PackageSpec
Hardware Support Package Specification
Name | Description | Schema |
---|---|---|
name |
Package name |
string |
version |
Package version |
string |
4.167. Page
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< object > array |
4.168. PageOfBundle
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Bundle > array |
4.169. PageOfCertificate
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Certificate > array |
4.170. PageOfCertificateAuthority
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< CertificateAuthority > array |
4.171. PageOfCluster
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Cluster > array |
4.172. PageOfClusterCriterion
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< ClusterCriterion > array |
4.173. PageOfCredential
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Credential > array |
4.174. PageOfCredentialsTask
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< CredentialsTask > array |
4.175. PageOfCsr
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Csr > array |
4.176. PageOfDomain
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Domain > array |
4.177. PageOfEdgeCluster
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< EdgeCluster > array |
4.178. PageOfEndpoint
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Endpoint > array |
4.179. PageOfHost
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Host > array |
4.180. PageOfHostCriterion
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< HostCriterion > array |
4.181. PageOfLicenseKey
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< LicenseKey > array |
4.182. PageOfNetwork
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Network > array |
4.183. PageOfNetworkPool
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< NetworkPool > array |
4.184. PageOfNsxTCluster
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< NsxTCluster > array |
4.185. PageOfPsc
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Psc > array |
4.186. PageOfRole
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Role > array |
4.187. PageOfSddcManager
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< SddcManager > array |
4.188. PageOfSddcTask
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< SddcTask > array |
4.189. PageOfSsoDomainEntity
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< SsoDomainEntity > array |
4.190. PageOfTask
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Task > array |
4.191. PageOfUpgradable
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Upgradable > array |
4.192. PageOfUpgradablesClusterResource
Represents a page of elements of a Upgradables Cluster Resource
Name | Description | Schema |
---|---|---|
elements |
The list of Upgradables Cluster Resource elements included in this page |
< UpgradablesClusterResource > array |
4.193. PageOfUser
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< User > array |
4.194. PageOfValidation
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Validation > array |
4.195. PageOfVcenter
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Vcenter > array |
4.196. PageOfVcfService
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< VcfService > array |
4.197. PageOfVersionAliasesForBundleComponentType
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< VersionAliasesForBundleComponentType > array |
4.198. PageOfVrslcm
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< Vrslcm > array |
4.199. PageOfstring
Represents a page of elements of a single type
Name | Description | Schema |
---|---|---|
elements |
The list of elements included in this page |
< string > array |
4.200. PartnerExtensionSpec
Specification for partner extensions. This specification is used in the Bundle Upload API
Name | Description | Schema |
---|---|---|
partnerBundleMetadataFilePath |
Path to the bundle metadata file. The metadata file can have details of multiple bundles |
string |
partnerBundleVersion |
Version of partner bundle to be uploaded. Should match one of the bundle versions available in the partner bundle metadata file |
string |
4.201. Personality
Personality contains bits to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
createdBy |
Personality created by |
string |
description |
Personality description |
string |
displayName |
Personality displayName |
string |
imageChecksum |
Personality image checksum |
string |
imageSize |
Personality image size |
string |
kbArticles |
Personality kb articles |
|
personalityId |
Personality id |
string |
personalityName |
Personality name |
string |
releaseDate |
Personality Release date |
integer (int64) |
softwareInfo |
Personality software spec |
|
tags |
Personality tags |
< string > array |
version |
Personality Version |
string |
vsphereExportedIsoPath |
Personality depot path |
string |
vsphereExportedJsonPath |
Personality depot path |
string |
vsphereExportedZipPath |
Personality depot path |
string |
4.202. PersonalitySpec
Personality Specification for vLCM based upgrade
Name | Description | Schema |
---|---|---|
hardwareSupportSpecs |
Hardware Support Specifications for Firmware upgrade |
< HardwareSupportSpec > array |
personalityId |
Personality ID for vLCM based Upgrade |
string |
4.203. PersonalityUploadSpec
Personality upload specification. This spec is used in personality upload API.
Name | Description | Schema |
---|---|---|
name |
Personality name |
string |
uploadMode |
Personality upload mode |
string |
uploadSpecRawMode |
Personality upload spec for upload from RAW files |
|
uploadSpecRawWithFileUploadIdMode |
Personality upload spec for upload using file upload id |
|
uploadSpecReferredMode |
Personality upload spec for upload from REFERRED vcenter cluster |
4.204. PersonalityUploadSpecRaw
Personality upload specification for uploading the personality from raw files exported from avCenter cluster. This mode of uplaoding personality is useful when the source vCenter cluster isoutside the target VCF deployment.
Name | Description | Schema |
---|---|---|
personalityISOFilePath |
Personality ISO File Path |
string |
personalityInfoJSONFilePath |
Personality Info JSON File Path |
string |
personalityJSONFilePath |
Personality JSON File Path |
string |
personalityZIPFilePath |
Personality Zip File Path |
string |
4.205. PersonalityUploadSpecRawWithFileUploadId
Personality upload specification for uploading the personality from raw files exported from a vCenter cluster. This mode of uploading personality is useful when the source vCenter cluster is outside the target VCF deployment. User can upload files from a source location to SDDC Manager using v1/personalities/files API, which returns a file upload id. The id is then passed in this spec with Personality Upload Mode RAW_WITH_FILE_UPLOAD_ID.
Name | Description | Schema |
---|---|---|
fileUploadId |
Personality file upload id. This id is obtained by calling v1/personalities/files and uploading files into SDDC Manager |
string |
4.206. PersonalityUploadSpecReferred
Personality upload specification for uploading the personality from a referred vCentercluster. This mode of uplaoding personality is useful when the source vCenter cluster isinternal to the target VCF deployment.
Name | Description | Schema |
---|---|---|
clusterId |
Source cluster UUID from VCF inventory |
string |
vCenterId |
Example : |
string |
vcenterId |
Example : |
string |
4.207. PhysicalNic
Represents a physical NIC
Name | Description | Schema |
---|---|---|
deviceName |
Device name of the physical NIC |
string |
macAddress |
Mac address of the physical NIC |
string |
4.208. PortgroupSpec
This specification contains vCenter port group configurations
Name | Description | Schema |
---|---|---|
name |
Port group name |
string |
transportType |
Port group transport type |
string |
4.209. PositionCoordinate
Name | Description | Schema |
---|---|---|
latitude |
Example : |
number (double) |
longitude |
Example : |
number (double) |
4.210. PrecheckSpec
Precheck Specification. This specification gets used in the Precheck API
Name | Description | Schema |
---|---|---|
bundleId |
If specified, indicate the bundle applicability in the result |
string |
resources |
List of resources for Precheck supported type DOMAIN, CLUSTER |
< Resource > array |
4.211. Psc
Psc representation
Name | Description | Schema |
---|---|---|
domain |
Information about the domain this PSC is part of |
|
fqdn |
FQDN of the Psc |
string |
id |
ID of the Psc |
string |
ipAddress |
IP Address of the Psc |
string |
isReplica |
Indicates if the Psc is a replica |
boolean |
ssoDomainName |
SSO Domain name of the Psc |
string |
ssoSubDomainName |
SSO sub domain name of the Psc |
string |
4.212. PscSpec
Spec contains parameters for deployment/configuration of Platform Services Controller
Name | Description | Schema |
---|---|---|
adminUserSsoPassword |
Admin user sso passwordPassword needs to be a strong password with at least one Uppercase alphabet, one lowercase alphabet, one digit and one special character specified in braces [!$%^] and 8-20 characters in length,and 3 maximum identical adjacent characters! |
string |
pscId |
PSC Name |
string |
pscSsoSpec |
PSC SSO Domain |
4.213. PscSsoSpec
Spec contains parameters for Platform Services Controller SSO
Name | Description | Schema |
---|---|---|
replicationPartner |
PSC Replication Partner, Its mandatory for secondary regionIf deploying 2 PSC’s, For 2nd PSC in Primary Region/Secondary Region - Its hostname of first PSCFor Secondary Region 1st PSC - User specified |
string |
ssoDomain |
PSC SSO Domain,its mandatory for secondary region and if deploying 2 PSC’s |
string |
4.214. QueryInfo
Represents the query info.
Name | Description | Schema |
---|---|---|
completed |
Example : |
boolean |
errorResponse |
Error response if the query has failed |
|
failure |
Example : |
boolean |
processing |
Example : |
boolean |
status |
Status of the query |
string |
4.215. RefreshToken
This contains refresh token id for the user API access.
Name | Description | Schema |
---|---|---|
id |
Refresh token id that can be used to request new access token |
string |
4.216. RemoteResponsePayload
Name | Description | Schema |
---|---|---|
assignedBrokerId |
Example : |
integer (int32) |
assignedZkId |
Example : |
integer (int32) |
mbServers |
Example : MessageBusServerInfoList |
|
srServers |
Example : SchemaRegistryServerInfoList |
|
zkServers |
Example : ZookeeperServerInfoList |
4.217. RemoteSiteSpec
Spec contains parameters for Remote site products
Name | Description | Schema |
---|---|---|
clusterName |
Remote region cluster name for mapping |
string |
datacenterName |
Remote region datacenter name for mapping |
string |
logicalSwitchNames |
Logical switch names for network mapping |
< string > array |
nsxCredentials |
Remote region NSX credentials |
|
nsxIp |
Remote region NSX IP address |
string |
placeholderDatastore |
Remote region placeholder datastore |
string |
pscAddress |
Remote region PSC address |
string |
remoteRegionVmFolders |
Remote region VM folders for explicit mapping |
< string, string > map |
vcCredentials |
Remote region VC/PSC credentials |
|
vcMgmtIp |
Remote region vC IP address |
string |
4.218. Resource
Represents the resource in the system
Name | Description | Schema |
---|---|---|
fqdn |
Resource FQDN |
string |
name |
Name of the resource |
string |
resourceId |
Resource ID |
string |
type |
Resource type |
string |
4.219. ResourceCapacity
Name | Description | Schema |
---|---|---|
cpu |
Example : CPU |
|
datastores |
Example : |
< Datastore > array |
hostCount |
Example : HostCount |
|
memory |
Example : Memory |
4.220. ResourceCredentials
Represents a resource along with its list of credentials to be changed.
Name | Description | Schema |
---|---|---|
credentials |
Credentials of the resource |
< BaseCredential > array |
resourceId |
Resource ID |
string |
resourceName |
Resource name |
string |
resourceType |
Authenticated Resource Type |
string |
4.221. ResourcePoolSpec
Spec contains parameters for Resource Pool
Name | Description | Schema |
---|---|---|
cpuLimit |
CPU limit, default -1 (unlimited) |
integer (int64) |
cpuReservationExpandable |
Is CPU reservation expandable, default true |
boolean |
cpuReservationMhz |
CPU reservation in Mhz |
integer (int64) |
cpuReservationPercentage |
CPU reservation percentage, from 0 to 100, default 0 |
integer (int32) |
cpuSharesLevel |
CPU shares level, default 'normal' |
enum (custom, high, low, normal) |
cpuSharesValue |
CPU shares value, only required when shares level is 'normal' |
integer (int32) |
memoryLimit |
Memory limit, default -1 (unlimited) |
integer (int64) |
memoryReservationExpandable |
Is Memory reservation expandable, default true |
boolean |
memoryReservationMb |
Memory reservation in MB |
integer (int64) |
memoryReservationPercentage |
Memory reservation percentage, from 0 to 100, default 0 |
integer (int32) |
memorySharesLevel |
Memory shares level. default 'normal' |
enum (custom, high, low, normal) |
memorySharesValue |
Memory shares value, only required when shares level is '0' |
integer (int32) |
name |
Resource Pool name |
string |
type |
Type of resource pool |
enum (management, compute, network) |
4.222. ResourceUpgradeSpec
Resource Upgrade Specification
Name | Description | Schema |
---|---|---|
personalitySpec |
Personality Specifications for vLCM based upgrade |
|
resourceId |
Resource ID for Upgrade |
string |
scheduledTimestamp |
Upgrade Scheduled Time |
|
shutdownVms |
If Resource Type is UNASSIGNED_HOST, set flag for enabling shutting down VM’s before Upgrade |
boolean |
toVersion |
If Resource Type is UNASSIGNED_HOST, set the target version for Upgrade |
string |
upgradeNow |
Flag for enabling Upgrade Now. If true, scheduledTimestamp is ignored |
boolean |
4.223. RestoreSpec
Restore Specification
Name | Description | Schema |
---|---|---|
backupFile |
Backup file name |
string |
elements |
List of elements to be restored |
< BackupResource > array |
encryption |
Encryption |
4.224. Role
Represents role and its attributes
Name | Description | Schema |
---|---|---|
description |
The description of the role |
string |
id |
The ID of the role |
string |
name |
The name of the role |
string |
4.225. RoleReference
Represents a role reference
Name | Description | Schema |
---|---|---|
id |
ID of the role |
string |
4.226. SchemaRegistryServerInfo
Name | Description | Schema |
---|---|---|
hostAddress |
Example : |
string |
port |
Example : |
integer (int32) |
protocol |
Example : |
string |
4.227. SchemaRegistryServerInfoList
Name | Description | Schema |
---|---|---|
schemaRegistryServersInfo |
Example : |
< SchemaRegistryServerInfo > array |
4.228. SddcClusterSpec
Spec contains parameters for vCenter Cluster
Name | Description | Schema |
---|---|---|
clusterEvcMode |
vCenter cluster EVC mode |
string |
clusterName |
vCenter Cluster Name |
string |
hostFailuresToTolerate |
Host failures to tolerate |
integer (int32) |
hostProfileComplianceCheckHour |
Hour at which the scheduled compliance check runs |
integer (int32) |
hostProfileComplianceCheckMinute |
Minute at which the scheduled compliance check runs |
integer (int32) |
hosts |
vCenter Cluster Host IDs |
< string > array |
personalityName |
Cluster Personality Name |
string |
resourcePoolSpecs |
Resource Pool Specs |
< ResourcePoolSpec > array |
vmFolders |
Virtual Machine folders map |
< string, string > map |
4.229. SddcCredentials
Credentials contains the username and password
Name | Description | Schema |
---|---|---|
password |
Password |
string |
username |
Username |
string |
4.230. SddcHostSpec
Spec contains parameters for Host
Name | Description | Schema |
---|---|---|
association |
Host Association: Location/Datacenter |
string |
credentials |
Host Credentials |
|
hostname |
Host Hostname |
string |
ipAddressPrivate |
Host Private Management IP |
|
key |
Host key |
string |
serverId |
Host server ID |
string |
sshThumbprint |
Host SSH thumbprint |
string |
sslThumbprint |
Host SSL thumbprint |
string |
vSwitch |
Example : |
string |
vmknicSpecs |
List of Host Vmknic Spec |
< HostVmknicSpec > array |
vswitch |
Example : |
string |
4.231. SddcManager
Sddc Manager representation
Name | Description | Schema |
---|---|---|
domain |
Information about the domain this Sddc Manager is part of |
|
fqdn |
FQDN of the Sddc Manager |
string |
id |
ID of the Sddc Manager |
string |
ipAddress |
IP Address of the Sddc Manager |
string |
version |
Version of the Sddc Manager |
string |
4.232. SddcManagerSpec
Client input parameters for SDDC Manager Virtual Machine
Name | Description | Schema |
---|---|---|
hostname |
SddcManager Hostname |
string |
ipAddress |
Sddc manager ip address |
string |
licenseKey |
Sddc manager license key |
string |
netmask |
Sddc manager netmask |
string |
restApiCredentials |
Basic Auth Credentials for authenticating into SDDC Manager API, UserName must be adminPassword needs to be a strong password with at least one alphabet and one special character and at least 8 characters in length. |
|
rootUserCredentials |
Root user credentials for the SddcManager VM, UserName must be rootPassword needs to be a strong password with at least one alphabet and one special character and at least 8 characters in length. |
|
secondUserCredentials |
Second user credentials for the SddcManager VM, UserName must be vrackPassword needs to be a strong password with at least one alphabet and one special character and at least 8 characters in length. |
4.233. SddcNetworkSpec
Defines a network spec
Name | Description | Schema |
---|---|---|
activeUplinks |
Active Uplinks for teaming policy, specify uplink1 for failover_explicit VSAN Teaming Policy |
< string > array |
excludeIpAddressRanges |
IP Addresse ranges to be excluded |
< string > array |
excludeIpaddresses |
IP Addresses to be excluded |
< string > array |
gateway |
Gateway |
string |
includeIpAddress |
IP Addresses to be included |
< string > array |
includeIpAddressRanges |
IP Addresse ranges to be included |
< IpRange > array |
mtu |
MTU size |
string |
networkType |
Network Type |
string |
portGroupKey |
Portgroup key name |
string |
standbyUplinks |
Standby Uplinks for teaming policy, specify uplink2 for failover_explicit VSAN Teaming Policy |
< string > array |
subnet |
Subnet |
string |
subnetMask |
Subnet Mask |
string |
teamingPolicy |
Teaming Policy for VSAN and VMOTION network types, Default is loadbalance_loadbased |
string |
vlanId |
VLAN Id |
string |
4.234. SddcNsxtEdgeNodeSpec
NSX-T edge node specification
Name | Description | Schema |
---|---|---|
edgeNodeHostname |
NSX-T edge node fqdn |
string |
edgeNodeName |
NSX-T edge node name |
string |
edgeVtep1Cidr |
NSX-T edge node vtep 1 cidr |
string |
edgeVtep2Cidr |
NSX-T edge node vtep 2 cidr |
string |
interfaces |
NSX-T edge node interfaces |
< NsxtInterface > array |
managementCidr |
NSX-T edge node management cidr |
string |
4.235. SddcNsxtEdgeServicesSpec
NSX-T Edge Services Specification
Name | Description | Schema |
---|---|---|
tier0GatewayName |
NSX-T Edge Tier-0 Gateway Name |
string |
tier1GatewayName |
NSX-T Edge Tier-1 Gateway Name |
string |
4.236. SddcNsxtSpec
Spec contains parameters for NSX-T deployment and configurations
Name | Description | Schema |
---|---|---|
logicalSegments |
NSX-T logical segment |
< NsxtLogicalSegment > array |
nsxtAdminPassword |
NSX-T admin password. The password must be at least 12 characters long. Must contain at-least 1 uppercase, 1 lowercase, 1 special character and 1 digit. In addition, a character cannot be repeated 3 or more times consectively. |
string |
nsxtAuditPassword |
NSX-T audit password. The password must be at least 12 characters long. Must contain at-least 1 uppercase, 1 lowercase, 1 special character and 1 digit. In addition, a character cannot be repeated 3 or more times consectively. |
string |
nsxtEdgeSpec |
NSX-T edge specification |
|
nsxtLicense |
NSX-T Manager license |
string |
nsxtManagerSize |
NSX-T Manager size |
string |
nsxtManagers |
NSX-T Managers |
< NsxtManagerSpec > array |
overLayTransportZone |
NSX-T OverLay Transport zone |
|
rootLoginEnabledForNsxtManager |
If true, allow root login for NSX-T Manager and deny if false |
boolean |
rootNsxtManagerPassword |
NSX-T Manager root password. Password should have 1) At least eight characters, 2) At least one lower-case letter, 3) At least one upper-case letter 4) At least one digit 5) At least one special character, 6) At least five different characters , 7) No dictionary words, 6) No palindromes |
string |
sshEnabledForNsxtManager |
If true, enable SSH for NSX-T Manager and disable if false |
boolean |
transportVlanId |
Transport VLAN ID |
integer (int32) |
vip |
Virtual IP address which would act as proxy/alias for NSX-T Managers |
string |
vipFqdn |
FQDN for VIP so that common SSL certificates can be installed across all managers |
string |
vlanTransportZone |
NSX-T VLAN transport zone |
4.237. SddcSpec
Spec contains parameters for creating/bringing up an SDDC
Name | Description | Schema |
---|---|---|
ceipEnabled |
Enable VCF Customer Experience Improvement Program |
boolean |
certificatesPassphrase |
Passphrase for the vCenter / NSX certificates |
string |
clusterSpec |
Cluster Spec |
|
dnsSpec |
DNS Spec |
|
dvSwitchVersion |
The version of the distributed virtual switches to be used |
string |
dvsSpecs |
List of Dvs Specs |
< DvsSpec > array |
esxLicense |
License for the ESXi hosts |
string |
excludedComponents |
Components to be excluded |
< string > array |
hostSpecs |
List of Host Specs |
< SddcHostSpec > array |
managementPoolName |
A String identifying the network pool associated with the management domain |
string |
networkSpecs |
List of Network Specs |
< SddcNetworkSpec > array |
nsxtSpec |
NSX-T Spec |
|
ntpServers |
List of NTP servers |
< string > array |
pscSpecs |
PSC VM spec |
< PscSpec > array |
remoteSiteSpec |
Remote site spec |
|
sddcId |
Client string that identifies an SDDC by name or instance name. . Used for management domain name. |
string |
sddcManagerSpec |
Sddc Manager Virtual Machine spec |
|
shouldCleanupVsan |
Flag indicating whether cleanup vSAN should be ran |
boolean |
skipEsxThumbprintValidation |
Skip ESXi thumbprint validation |
boolean |
taskName |
Name of the task to execute |
string |
vcenterSpec |
vCenter Spec |
|
vsanSpec |
VSAN Spec |
|
vxManagerSpec |
VxManager Spec |
|
vxRailSpec |
VxRail environment details |
4.238. SddcSubTask
Represents a SDDC sub-task
Name | Description | Schema |
---|---|---|
creationTimestamp |
Sub-Task Creation Time |
|
description |
Sub-Task Description |
string |
errors |
List of errors in case of a failure |
< Error > array |
localizableDescriptionPack |
Localizable SDDC Task description |
|
localizableNamePack |
Localizable SDDC Task name |
|
name |
Sub-Task Name |
string |
processingStateDescription |
Processing category description, e.g., VC Deployment, VSAN configuration etc |
string |
processingStateName |
Processing category name, e.g., VC Deployment, VSAN configuration etc |
string |
sddcId |
SDDC ID |
string |
status |
Task Status |
string |
updateTimestamp |
Last Update Time of Sub-Task |
4.239. SddcTask
Represents a SDDC task
Name | Description | Schema |
---|---|---|
creationTimestamp |
SDDC Task creation timestamp |
|
id |
SDDC ID |
string |
localizableNamePack |
Localizable SDDC Task name |
|
name |
Task name |
string |
sddcSubTasks |
All SDDC Sub-Tasks |
< SddcSubTask > array |
status |
SDDC Task status |
string |
4.240. SddcVcenterSpec
Spec contains parameters for vCenter
Name | Description | Schema |
---|---|---|
licenseFile |
License File |
string |
rootVcenterPassword |
vCenter root password. The password must be between 8 characters and 20 characters long. It must also contain at least one uppercase and lowercase letter, one number, and one character from '! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { Ι } ~' and all characters must be ASCII. Space is not allowed in password. |
string |
vcenterHostname |
vCenter hostname address |
string |
vcenterIp |
vCenter IP address |
string |
vcenterNetmask |
vCenter Netmask |
string |
vmSize |
vCenter VM size |
string |
4.241. SoftwareComponent
Name | Description | Schema |
---|---|---|
id |
ID of Resource/Software Component |
string |
type |
Type of Resource/Software Component |
string |
4.242. SoftwareInfo
SoftwareSpec contains base os, components, hardware support, addOn metadata to install/update the appropriate Cloud Foundation software components in your management domain or workload domain.
Name | Description | Schema |
---|---|---|
addOn |
Personality addOn |
|
baseImage |
Personality base image |
|
components |
Personality components |
< string, ComponentInfo > map |
hardwareSupport |
Personality hardware support |
4.243. SsoDomainEntity
Represents SSO domain entity
Name | Description | Schema |
---|---|---|
id |
The ID of the SSO domain entity |
string |
name |
The name of the SSO domain entity |
string |
type |
The type of the SSO domain entity |
string |
4.244. StackTraceElement
Name | Description | Schema |
---|---|---|
className |
Example : |
string |
fileName |
Example : |
string |
lineNumber |
Example : |
integer (int32) |
methodName |
Example : |
string |
nativeMethod |
Example : |
boolean |
4.245. Stage
Represents a Stage
Name | Description | Schema |
---|---|---|
completionTimestamp |
Example : Instant |
|
creationTimestamp |
Example : Instant |
|
description |
Stage description |
string |
name |
Stage name |
string |
status |
Stage status |
string |
type |
Stage type |
string |
4.246. Storage
Represents information about storage on a host
Name | Description | Schema |
---|---|---|
disks |
Information about disks |
< Disk > array |
totalCapacityMB |
Total storage capacity in MB |
number (double) |
usedCapacityMB |
Used storage capacity in MB |
number (double) |
4.247. SubTask
Represents a sub-task
Name | Description | Schema |
---|---|---|
completionTimestamp |
Sub-task completion timestamp |
|
creationTimestamp |
Sub-task creation timestamp |
|
description |
Sub-task description |
string |
errors |
List of errors in case of a failure |
< Error > array |
name |
Sub-task name |
string |
resources |
List of resources associated with sub-task |
< Resource > array |
stages |
List of stages of the sub-task |
< Stage > array |
status |
Sub-task status |
string |
type |
Sub-task type |
string |
4.248. Task
Represents a task
Name | Description | Schema |
---|---|---|
completionTimestamp |
Task completion timestamp |
|
creationTimestamp |
Task creation timestamp |
|
errors |
List of errors in case of a failure |
< Error > array |
id |
Task ID |
string |
isCancellable |
Represents task can be cancellable or not. |
boolean |
name |
Task name |
string |
resolutionStatus |
Resolution state |
string |
resources |
List of resources associated with task |
< Resource > array |
status |
Task status |
string |
subTasks |
List of sub-tasks of the task |
< SubTask > array |
type |
Operation that is represented by the Task in machine readable format. The value is controlled by the owners/producers of the Task. The convention is <resource>_<operation> |
string |
4.249. Throwable
Name | Description | Schema |
---|---|---|
localizedMessage |
Example : |
string |
message |
Example : |
string |
stackTrace |
Example : |
< StackTraceElement > array |
suppressed |
Example : |
< Throwable > array |
4.250. TimeZone
Name | Description | Schema |
---|---|---|
displayName |
Example : |
string |
dstsavings |
Example : |
integer (int32) |
id |
Example : |
string |
rawOffset |
Example : |
integer (int32) |
4.251. TokenCreationSpec
This specification contains user details to create authentication token.
Name | Description | Schema |
---|---|---|
apiKey |
API Key |
string |
password |
User Password |
string |
username |
Username |
string |
4.252. TokenPair
This contains the access token and the refresh token for the user API access.
Name | Description | Schema |
---|---|---|
accessToken |
Bearer token that can be used to make public API calls |
string |
refreshToken |
Refresh token that can be used to request new access token |
4.253. URL
Name | Description | Schema |
---|---|---|
authority |
Example : |
string |
content |
Example : |
object |
defaultPort |
Example : |
integer (int32) |
file |
Example : |
string |
host |
Example : |
string |
path |
Example : |
string |
port |
Example : |
integer (int32) |
protocol |
Example : |
string |
query |
Example : |
string |
ref |
Example : |
string |
userInfo |
Example : |
string |
4.254. UnmanagedResourceCredential
Represents credentials of am unmanaged resource (i.e a resource that is not managed by VCF)
Name | Description | Schema |
---|---|---|
credentialType |
Credential type |
string |
password |
Password |
string |
username |
Username |
string |
4.255. Upgradable
Upgradable represents the upgrade capability of resources. It contains the bundle(using what), resource(on which) and its associated resources/software components that can be upgraded.
Name | Description | Schema |
---|---|---|
bundleId |
Bundle ID |
string |
bundleType |
Bundle Type |
string |
resource |
Resource which is upgradable |
|
softwareComponents |
Software Components which are Upgradable |
< SoftwareComponent > array |
status |
Upgradable Status |
string |
4.256. UpgradablesClusterResource
Upgradables clusters details with hardware support managers
Name | Description | Schema |
---|---|---|
availableHardwareSupportManagers |
Available Hardware Support Managers for Firmware upgrade |
< HardwareSupportPackages > array |
configuredHardwareSupportManagers |
Configured Hardware Support Managers for Firmware upgrade |
< HardwareSupportPackage > array |
primaryCluster |
Flag for primary cluster |
boolean |
resourceId |
Resource Id |
string |
resourceType |
Resource Type |
string |
softwareInfo |
Software Spec contains base image, addOn, and components details |
|
vlcmEnabled |
Flag to determine if vLCM enabled on the cluster |
boolean |
4.257. Upgrade
Upgrade object which contain details regarding the upgrade
Name | Description | Schema |
---|---|---|
bundleId |
Bundle ID for Upgrade |
string |
id |
ID for Upgrade |
string |
parallelUpgrade |
Boolean to represent components will be upgraded in parallel on not |
boolean |
resourceType |
Resource Type for Upgrade |
string |
resourceUpgradeSpecs |
Resource Upgrade Specifications |
< ResourceUpgradeSpec > array |
status |
Overall upgrade status |
string |
taskId |
Task ID associated with upgrade |
string |
4.258. UpgradeSpec
Upgrade Specification
Name | Description | Schema |
---|---|---|
bundleId |
Bundle ID for Upgrade |
string |
nsxtUpgradeUserInputSpecs |
Resource Upgrade Specifications for NSXT upgrade |
< NsxtUpgradeUserInputSpec > array |
parallelUpgrade |
Boolean to represent components will be upgraded in parallel on not |
boolean |
resourceType |
Resource Type for Upgrade |
string |
resourceUpgradeSpecs |
Resource Upgrade Specifications |
< ResourceUpgradeSpec > array |
4.259. User
Represents user and its attributes
Name | Description | Schema |
---|---|---|
apiKey |
The API key of the user |
string |
creationTimestamp |
The timestamp at which the user was created |
string |
domain |
The domain of the user |
string |
id |
The ID of the user |
string |
name |
The name of the user |
string |
role |
The role of the user |
|
type |
The type of the user |
string |
4.260. VSANNetworkSpec
Contains the vSAN Network details
Name | Description | Schema |
---|---|---|
vsanCidr |
vSAN subnet cidr of the ESXi host |
string |
vsanGatewayIP |
vSAN Gateway IP of the ESXi host |
string |
4.261. Validation
Represents a validation with a list of one or more validation checks that are performed as part of the validation
Name | Description | Schema |
---|---|---|
description |
Description of the validation |
string |
executionStatus |
Execution status of the validation |
string |
id |
ID of the validation |
string |
resultStatus |
Result status of the validation after it has completed its execution |
string |
validationChecks |
List of one or more validation checks that are performed as part of the validation |
< ValidationCheck > array |
4.262. ValidationCheck
Represents a validation check
Name | Description | Schema |
---|---|---|
description |
Description of the validation check |
string |
errorResponse |
Error response associated with the validation check |
|
nestedValidationChecks |
List of one or more validation checks that are performed as part of the validation |
< ValidationCheck > array |
resultStatus |
Result status of the validation check after it has completed its execution |
string |
severity |
Severity of the validation check |
string |
4.263. Vcenter
vCenter representation
Name | Description | Schema |
---|---|---|
domain |
Information about the domain this vCenter is part of |
|
fqdn |
FQDN of the vCenter |
string |
id |
ID of the vCenter |
string |
ipAddress |
IP address of the vCenter |
string |
4.264. VcenterReference
Represents a vCenter reference
Name | Description | Schema |
---|---|---|
fqdn |
FQDN of the vCenter |
string |
id |
ID of the vCenter |
string |
4.265. VcenterSpec
This specification contains the installation and configuration of vCenter in a workload domain
Name | Description | Schema |
---|---|---|
datacenterName |
vCenter datacenter name |
string |
licenseKey |
vCenter license key |
string |
name |
Name of the vCenter virtual machine |
string |
networkDetailsSpec |
Network spec details of the vCenter virtual machine |
|
rootPassword |
vCenter root shell password |
string |
4.266. VcfService
VCF service representation
Name | Description | Schema |
---|---|---|
id |
ID of the service |
string |
name |
Name of the service |
string |
version |
Version of the service |
string |
4.267. VdsSpec
This specification contains vSphere distributed switch configurations
Name | Description | Schema |
---|---|---|
isUsedByNsxt |
Boolean to identify if the vSphere distributed switch is used by NSX-T |
boolean |
name |
vSphere Distributed Switch name |
string |
niocBandwidthAllocationSpecs |
List of Network I/O Control Bandwidth Allocations for System Traffic |
< NiocBandwidthAllocationSpec > array |
portGroupSpecs |
List of portgroups to be associated with the vSphere Distributed Switch |
< PortgroupSpec > array |
4.268. VersionAliasesForBundleComponentType
Version Alias representation
Name | Description | Schema |
---|---|---|
bundleComponentType |
Bundle Component Type |
string |
versionAliases |
Version Aliases |
< BaseAlias > array |
4.269. VersionAliasesForBundleComponentTypeSpec
Version Alias update Specification. This specification gets used in the Version Alias Update API.
Name | Description | Schema |
---|---|---|
forceUpdate |
Flag for force update version alias configuration. |
boolean |
versionAliasesForBundleComponentTypes |
List of version aliases for bundle component types. |
< VersionAliasesForBundleComponentType > array |
4.270. VmNic
This specification contains vmnic configurations for vSphere host
Name | Description | Schema |
---|---|---|
id |
VmNic ID of vSphere host to be associated with VDS, once added to cluster |
string |
moveToNvds |
This flag determines if the vmnic must be on N-VDS |
boolean |
vdsName |
VDS name to associate with vSphere host |
string |
4.271. VmfsDatastoreSpec
Cluster storage configuration for VMFS
Name | Description | Schema |
---|---|---|
fcSpec |
Cluster storage configuration for VMFS on FC |
< FcSpec > array |
4.272. VrealizeNetworkSpec
This specification contains input parameters for a vRealize network.
Name | Description | Schema |
---|---|---|
gateway |
The gateway address for a vRealize network |
string |
subnetMask |
The subnet mask for a vRealize network |
string |
vlanId |
The VLAN ID for a vRealize network |
string |
4.273. Vrslcm
This specification contains information related to the existing vRealize Suite Lifecycle Manager instance deployment
Name | Description | Schema |
---|---|---|
fqdn |
Fully Qualified Domain Name |
string |
id |
The ID of the vRealize Suite Lifecycle Manager instance |
string |
ipAddress |
IP Address of vRealize Suite Lifecycle Manager appliance |
string |
status |
The state of the current product instance |
string |
version |
Version of the product that is currently running on the environment |
string |
4.274. VrslcmDeploymentSpec
Spec contains parameters for creating a new vRealize Suite Lifecycle Manager instance
Name | Description | Schema |
---|---|---|
apiPassword |
The password for an admin API/UI user of vRealize Suite Lifecycle Manager |
string |
fqdn |
Fully Qualified Domain Name |
string |
networkSpec |
Deprecated: Specification for the vRealize Network that will be used for the deployment. |
|
sshPassword |
The password for a root user of vRealize Suite Lifecycle Manager appliance |
string |
4.275. VsanDatastoreSpec
This specification contains cluster storage configuration for vSAN
Name | Description | Schema |
---|---|---|
datastoreName |
Datastore name used for cluster creation |
string |
dedupAndCompressionEnabled |
Enable vSAN deduplication and compression |
boolean |
failuresToTolerate |
Number of vSphere host failures to tolerate in the vSAN cluster |
integer (int32) |
licenseKey |
License key for the vSAN data store to be applied in vCenter |
string |
4.276. VsanSpec
Spec contains parameters of Virtual SAN
Name | Description | Schema |
---|---|---|
datastoreName |
Datastore Name |
string |
hclFile |
HCL File |
string |
licenseFile |
License File |
string |
vsanDedup |
VSAN feature Deduplication and Compression flag, one flag for both features |
boolean |
vsanName |
Virtual SAN config name |
string |
4.277. VxManagerSpec
Spec contains parameters for VxManager
Name | Description | Schema |
---|---|---|
defaultAdminUserCredentials |
Default admin credentials VxManager |
|
defaultRootUserCredentials |
Default root credentials VxManager |
|
vxManagerHostName |
VxManager host name |
string |
4.278. VxRailDetails
Contains the VxRail Manager details
Name | Description | Schema |
---|---|---|
adminCredentials |
VxRail Manager admin credentials |
|
rootCredentials |
VxRail Manager root credentials |
4.279. VxRailSpec
Spec contains parameters for VxRail
Name | Description | Schema |
---|---|---|
vxRailObjectNames |
Map of VxRail object types and names |
< string, string > map |
4.280. WitnessSpec
Spec contains the Witness host parameters that are part of each stretched cluster
Name | Description | Schema |
---|---|---|
fqdn |
Management ip of the witness host |
string |
vsanCidr |
vSAN subnet cidr of the witness host |
string |
vsanIp |
vSAN IP of the witness host |
string |
4.281. ZookeeperServerInfo
Name | Description | Schema |
---|---|---|
clientPort |
Example : |
integer (int32) |
electionPort |
Example : |
integer (int32) |
fqdn |
Example : |
string |
hostAddress |
Example : |
string |
peerPort |
Example : |
integer (int32) |
securePort |
Example : |
integer (int32) |
zkId |
Example : |
integer (int32) |
zkRole |
Example : |
string |
4.282. ZookeeperServerInfoList
Name | Description | Schema |
---|---|---|
zookeeperServersInfo |
Example : |
< ZookeeperServerInfo > array |
5. Troubleshooting Guide
5.1. Error codes and messages
Messages having {} indicate dynamic values being set.
5.1.1. Hosts
Error code | Description |
---|---|
POST_INTERNAL_SERVER_ERROR |
Internal server error |
HOST_TASK_REGISTRATION_FAILED |
Failed to register task to task aggregator |
HOST_TASK_REGISTRATION_FAILED.remedy |
Please make sure that commonsvcs service is up and running. |
FAIL_DECOMMISSION_HOST |
Failed to decommission host. |
HOST_VALIDATION_FOR_DECOMMISSION_FAILED |
Failed to validate the host for decommission. |
HOST_VALIDATION_FOR_DECOMMISSION_FAILED.remedy |
Make sure that the host is not part of any cluster. |
HOST_NFS_MOUNT_CLEAN_FAILED |
Failed to remove NFS configuration of the host. |
HOST_NFS_MOUNT_CLEAN_FAILED.remedy |
Retry decommission once this issue gets resolved. |
KNOWN_HOST_ENTRY_CLEANUP_FAILED |
Failed to remove known hosts configuration entry of the host. |
KNOWN_HOST_ENTRY_CLEANUP_FAILED.remedy |
Retry decommission once this issue gets resolved. |
HOST_CREDENTIAL_DELETION_FAILED |
Failed to delete credentials of the host {0}. |
HOST_CREDENTIAL_DELETION_FAILED.remedy |
Retry decommission once this issue gets resolved. |
HOST_STORAGE_SAVE_ERROR |
Failed to save input data to persistent storage |
REMOVE_HOST_NOT_INITIALIZED |
Removal for host {0} is not initialized. |
REMOVE_HOST_GET_DATA_ERROR |
Failed to get data for remove host. Reason: {0} |
REMOVE_HOST_UPDATE_DATA_ERROR |
Failed to update data for remove host. Reason: {0} |
DECOMMISSION_HOST_GET_DATA_ERROR |
Failed to get data for decommission host. Reason: {0} |
DECOMMISSION_HOST_UPDATE_DATA_ERROR |
Failed to update data for decommission host. Reason: {0} |
PMM_UPDATE_ALERT_FILTER_ERROR |
Failed to update alert-suppression filter for {0} to {1} |
SERIALIZATION_ERROR |
Failed to serialize the add host uber spec |
DM_HOST_NOT_REACHABLE |
Cannot connect to host with IP address {0} |
DM_HOST_NOT_REACHABLE.remedy |
Please check the connectivity to host with IP address {0}. |
DM_HOST_DNS_CONFIGURATION_FAILED |
Cannot configure DNS {0} on host {1} |
DM_HOST_DNS_CONFIGURATION_FAILED.remedy |
Please check the DNS {0} configuration on the host. |
DM_HOST_NTP_CONFIGURATION_FAILED |
Cannot configure NTP servers {0} for host {1} |
DM_HOST_NTP_CONFIGURATION_FAILED.remedy |
Please check the connectivity to host with IP address {0}. |
NTP_SERVERS_NOT_REACHABLE |
NTP Servers {0} are not reachable from host {1} |
NTP_SERVERS_NOT_REACHABLE.remedy |
Please check the connectivity of NTP servers {0} from host {1} |
BLANK_PRIMARY_DNS_IP |
Cannot find primary DNS IP in the inventory. |
BLANK_PRIMARY_DNS_IP.remedy |
Please make sure that primary DNS IP is available in the inventory (DB). |
BLANK_NTP_IP |
Cannot find any NTP IP in the inventory. |
BLANK_NTP_IP.remedy |
Please make sure that at least one NTP IP is available in the inventory (DB). |
FAILED_TO_GET_DNS_NTP_IP |
Failed to fetch DNS and NTP IPs from inventory. |
FAILED_TO_GET_DNS_NTP_IP.remedy |
Please make sure that commonsvcs service is up and running. |
FAILED_TO_UPDATE_ESXIs |
Failed to update given hosts : {0} into DB. |
FAILED_TO_UPDATE_ESXIs.remedy |
Please make sure that commonsvcs service is up and running. |
FAILED_TO_UPDATE_ESXI |
Failed to update given host into DB. |
FAILED_TO_UPDATE_ESXI.remedy |
Please make sure that commonsvcs service is up and running. |
NOT_FREE_HOSTS |
Hosts : {0} are still part of a cluster. |
HOST_STATUS_UPDATE_FAILED |
Failed to update the status of the host |
HOST_STATUS_UPDATE_FAILED.remedy |
Please make sure that commonsvcs service is up and running. |
HOSTS_DELETE_FAILED |
Failed to delete host(s) : {0} |
HOST_DELETE_FAILED.remedy |
Retry decommission |
HOSTS_IN_DIFFERENT_CLUSTERS_ERROR |
Hosts are in different clusters |
NOT_ALL_HOSTS_IN_INVENTIORY_ERROR |
Some ESXi hosts are not known to VCF |
VDSS_SIZE_ERROR |
Expected maximum {0}, but found {1} Virtual Distributed Switches. |
COMMISSION_HOST_INVALID_SPEC_DUPLICATE_HOSTS |
Invalid commission spec duplicate hosts - {0}:{1}. |
COMMISSION_HOST_INVALID_SPEC_DUPLICATE_HOSTS.remedy |
Please remove duplicate hosts - {0}:{1} from the commission spec. |
COMMISSION_HOST_INVENTORY_VALIDATION_FAILED |
Host {0} already present in inventory, validation failed. |
COMMISSION_HOST_INVENTORY_VALIDATION_FAILED.remedy |
Please make sure that you have gone through the validation check-list. |
COMMISSION_HOST_INVALID_SPEC |
Commission Hosts invalid spec |
COMMISSION_HOST_INVALID_SPEC.remedy |
Please pass a valid Commission Hosts spec. |
ROTATE_HOST_SSH_KEYS_FAILED |
Error rotating SSH key for the Host - [{0}]. |
ROTATE_HOST_SSH_KEYS_FAILED.remedy |
Please make sure that commonsvcs service is up and running. |
FAILED_TO_GET_SDDCMANAGER_KNOWNHOSTS |
Failed to get SDDC Manager known hosts. |
FAILED_TO_GET_SDDCMANAGER_KNOWNHOSTS.remedy |
Please make sure that commonsvcs service is up and running. |
FAILED_TO_UPDATE_SDDCMANAGER_KNOWNHOSTS |
Error updating SDDC Manager known hosts. |
FAILED_TO_UPDATE_SDDCMANAGER_KNOWNHOSTS.remedy |
Please make sure that commonsvcs service is up and running. |
HOSTS_NOT_FOUND_IN_SDDCMANAGER_KNOWNHOSTS |
Post validation failed as Host(s) - {0} not found in SDDC Manager known hosts. |
HOSTS_NOT_FOUND_IN_SDDCMANAGER_KNOWNHOSTS.remedy |
Please initiate a fresh decommisioning workflow for these host(s) - {0}. |
FAILED_TO_POST_KNOWNHOSTS_TO_APPLIANCEMANAGER |
Error posting known hosts to SDDC Manager. Status: {0} |
FAILED_TO_POST_KNOWNHOSTS_TO_APPLIANCEMANAGER.remedy |
Please make sure that commonsvcs service is up and running. |
CLUSTER_FTT_UNKNOWN_ERROR |
Null value for FTT for cluster {0}. |
FAILED_TO_MOUNT_NFS_DATASTORE_ON_HOST |
Failed to mount NFS datastore - {0}:{1} on Host - {2}. |
NFS_DATASTORE_NOT_MOUNTED_ON_HOSTS |
NFS datastore - {0}:{1}:{2} not mounted on Host(s) - {3}. |
VCF_HOST_CONNECTIVITY_TO_HOST_FAILED |
Could not connect to Host - [{0}]. |
FAILED_TO_UPDATE_NFS_CONFIGURATION_ON_SDDC_MANAGER |
Failed to update NFS configuration for Hosts - {0} |
FAILED_TO_REFRESH_NFS_CONFIGURATION_ON_SDDC_MANAGER |
Refreshing NFS configuration on SDDC Manager failed. |
FAILED_TO_DETERMINE_SDDC_MANAGER_IPADDRESS |
Failed to determine SDDC Manager IP address. |
FAILED_TO_FETCH_HOST_ATTRIBUTES |
Failed to fetch attributes from Host - {0}. |
FAILED_TO_FETCH_HOST_ATTRIBUTES.remedy |
Please make sure that commonsvcs service is up and running. |
REMOVE_HOSTS_FROM_NOT_ACTIVE_DOMAIN_ERROR |
Removal for hosts {0} from not active domain is not allowed. |
REMOVE_HOSTS_FROM_NOT_ACTIVE_CLUSTER_ERROR |
Removal for hosts {0} from not active cluster is not allowed. |
HOSTS_ALREADY_BEING_REMOVED |
Host(s) {0} already being removed. |
REMOVE_HOSTS_NOT_ACTIVE_VCENTER_ERROR |
Removal for hosts {0} from domain with not active vCenter is not allowed. |
REMOVE_HOSTS_NOT_ACTIVE_NSX_MANAGER_ERROR |
Not attempting to remove hosts {0} from cluster {1} when the NSX Manager is in a bad state. Retry after confirming NSX Manager is not reporting any errors. |
REMOVE_HOSTS_NOT_ACTIVE_NSX_T_MANAGER_ERROR |
Not attempting to remove hosts {0} from cluster {1} when the NSX-T Manager is in a bad state. Retry after confirming NSX-T Manager is not reporting any errors. |
REMOVE_HOSTS_NOT_ACTIVE_NSX_MANAGER_ERROR.remedy |
Retry after confirming NSX Manager is not reporting any errors. |
COMM_FAILED_DUE_TO_MISSING_HOSTS |
Failed because hosts {0} are no more in the inventory. |
COMM_FAILED_DUE_TO_MISSING_HOSTS.remedy |
Please initiate a new workflow with the hosts {0}. |
DECOMM_FAILED_DUE_TO_MISSING_HOSTS |
Failed because host(s) : {0} are no more in the inventory. |
DECOMM_FAILED_DUE_TO_MISSING_HOSTS.remedy |
Please verify if correct set of hosts are being decommissioned. |
HOSTS_NOT_IN_EXPECTED_CLUSTERS_ERROR |
Hosts {0} are not in expected cluster {1} anymore. |
DECOMMISSIONING_FAILED |
Decommissioning failed. Reason : {0} |
SSH_LOGIN_FAILED |
SSH login failed for the host: {0} |
FAILED_TO_EXECUTE_COMMAND |
Command {0} execution failed on the host: {1}. |
DM_NTP_SYNC_FAILED |
Time synchronization of the NTP servers {0} failed on the host {1}. |
DM_NTP_SYNC_FAILED.remedy |
Please check the connectivity of NTP servers {0} from host {1}. |
HOSTS_COMMISSION_SPEC_VALIDATION_FAILED |
Hosts commission spec validation failed. errors: {0}. |
HOSTS_VALIDATION_FOR_COMMISSION_FAILED |
Hosts validation for commission failed. errors: {0}. |
FAILED_TO_RAISE_EVENT |
Failed to raise event. |
FQDN_NULL_OR_EMPTY |
FQDN cannot be null, empty or blank |
HOST_USERNAME_NULL_OR_EMPTY |
Host username cannot be null, empty or blank |
HOST_PASSWORD_NULL_OR_EMPTY |
Host password cannot be null, empty or blank |
STORAGE_TYPE_NULL |
Storage type cannot be null or blank |
NETWORKPOOL_ID_NULL_OR_EMPTY |
Network pool ID cannot be null, empty or blank |
NETWORKPOOL_ID_INVALID |
Invalid Network pool ID |
STORAGE_TYPE_INVALID |
Storage type is invalid. Allowable values: {0} |
HOST_SPEC_EMPTY |
Input specification must not be empty |
WCP_LICENSE_VALIDATION_FAILED |
Workload Management is not inactive for cluster {0} and provided host license {1} has no Workload Management feature |
5.1.2. Common
Error code | Description |
---|---|
CLUSTERSPEC_VALIDATION_FAILED |
Failed to validate cluster spec |
CLUSTEREXPANSION_SPEC_VALIDATION_FAILED |
Failed to validate cluster expansion spec |
CLUSTERSTRETCH_SPEC_VALIDATION_FAILED |
Failed to validate stretch cluster spec |
INTERNAL_SERVER_ERROR |
InternalServerError |
UNSUPPORTED_OPERATION |
This operation is not supported for this SKU type |
BAD_REQUEST |
Bad Request |
DOMAINSPEC_VALIDATION_FAILED |
Failed to validate domain spec |
HOST_IN_SPEC_VALIDATION_FAILED |
Failed to validate hosts in given spec with errors {0} |
SKUTYPE_NOT_SUPPORTED |
Given SKU type is not supported |
OPERATION_NOT_SUPPORTED |
Operation not supported for current environment |
EDGESPEC_VALIDATION_FAILED |
Failed to validate edge cluster creation spec. {0} |
CRITERIA_NOT_FOUND |
Criteria with name {0} does not exist |
VALIDATION_IN_PROGRESS |
Validation is still in progess for the task {0} |
NULL_CRITERIA |
Criteria cannot be an empty or null value |
INVALID_INPUT_FOR_CRITERIA |
Invalid input for critera with name {0}, please correct and retry the operation |
UNSTRETCH_NOT_SUPPORTED |
Unstretch operation not supported |
CLUSTER_INVENTORY_VALIDATION_FAILED |
The cluster inventory validation workflow failed with status {0} |
CLUSTER_INVENTORY_VALIDATION_FAILED.remedy |
Please make sure your system is in stable state with the domainmanager app running and retry workflow |
5.1.3. Domains
Error code | Description |
---|---|
REMOVE_VI_NOT_INITIALIZED |
Vi removal for domain {0} is not initialized |
HOST_CRITERION_DOES_NOT_EXIST |
Host criteria with name {0} does not exist |
CLUSTER_CRITERION_DOES_NOT_EXIST |
Cluster criteria with name {0} does not exist |
DOMAIN_NOT_FOUND_FOR_ID |
Domain not found for id {0} |
VALIDATION_TASK_NOT_FOUND |
Task not found for the validation id {0} |
5.1.4. Clusters
Error code | Description |
---|---|
CLUSTER_NOT_FOUND_FOR_ID |
Cluster with ID {0} not found. |
HOST_CRITERION_DOES_NOT_EXIST |
Host criterion {0} does not exist. |
CRITERIA_NOT_FOUND |
No host criteria found. |
VALIDATION_TASK_NOT_FOUND |
No validation task found. |
REMOVE_CLUSTER_WCP_ENABLED_ERROR |
Can’t remove WCP enabled cluster {0}. |
5.1.5. Credentials
Error code | Description |
---|
5.1.6. License keys
Error code | Description |
---|---|
LICENSE_KEY_ALREADY_EXISTS |
Unable to add license key since license key {0} already exists. |
LICENSE_KEY_ALREADY_EXISTS.remedy |
Add a different license key since identical license key already exists. |
LICENSE_KEY_NOT_FOUND |
License key with UUID {0} does not exist. |
LICENSE_KEY_NOT_FOUND.remedy |
Try again with proper license key |
LICENSE_KEY_NOT_FOUND_FOR_RESOURCE |
Failed to fetch license key for resource with UUID {0} for version {1}. |
LICENSE_KEY_NOT_FOUND_FOR_RESOURCE.remedy |
Try again with product version compatible with the existing licenses. |
LICENSE_KEY_DOES_NOT_EXIST |
License key {0} does not exist. |
LICENSE_KEY_DOES_NOT_EXIST.remedy |
Try again with existing license key |
ADD_DLF_FAILED |
Error while adding DLF |
ADD_DLF_FAILED.remedy |
Make sure you are passing required details, (1) Error while writing a file, may be permission issues. |
LICENSE_KEY_INCORRECT_FORMAT_ERROR |
License key is not in correct format. |
LICENSE_KEY_INCORRECT_FORMAT_ERROR.remedy |
Make sure you are adhering to License key format (1) Key should be 29 character in length. (2) Key should be hyphenated at each 5 letter word. |
DLF_INVALID_PATH |
Invalid DLF path |
DLF_INVALID_PATH.remedy |
1.Make sure you have correct DLF path. |
LICENSE_KEY_CORRUPTED |
License key is corrupted. |
LICENSE_KEY_CORRUPTED.remedy |
1. Make sure you use correct license key. |
NO_VALID_DLFS_FOUND |
No valid DLF found in system. |
NO_VALID_DLFS_FOUND.remedy |
1.Make sure you have correct licensekey 2. Use add DLF rest api to add one valid DLF in system. |
LICENSE_KEY_EXPIRED |
License key has expired. |
LICENSE_KEY_EXPIRED.remedy |
1. Make sure you use correct license key. |
NO_ACTIVE_LICENSE_KEY_FOUND |
Active license key not found. |
NO_ACTIVE_LICENSE_KEY_FOUND.remedy |
1. Make sure you add an active license key. |
EXCESS_ACTIVE_LICENSE_KEYS_FOUND |
More number of active license keys found. |
EXCESS_ACTIVE_LICENSE_KEYS_FOUND.remedy |
1. Make sure you specify the license key which needs to be used. |
LICENSE_KEY_NOT_COMPATIBLE |
The license key is not compatible with the current licensing mode and cannot be used. |
LICENSE_KEY_NOT_COMPATIBLE.remedy |
Make sure you use compatible license key for the action. |
DLF_UNREADABLE_PROPERTIES |
DLFs Unable to read properties. |
DLF_UNREADABLE_PROPERTIES.remedy |
1. Make sure you use correct license key. |
DLFSERVICE_READ_FILE_AS_STRING_FAILED |
Error while reading DLF file {0} |
DLFSERVICE_READ_FILE_AS_STRING_FAILED.remedy |
Make sure you have correct dlf stored prior attempt to read. |
INVALID_LICENSE_KEY |
Invalid licensekey |
INVALID_LICENSE_KEY.remedy |
1. Make sure you use correct license key. |
NULL_LICENSE_KEY |
The license key is null |
NULL_LICENSE_KEY.remedy |
Make sure the input is correct and the license exists. |
LICENSE_KEY_NOT_SUPPORTED |
Licensekey is not supported, contact administrator. |
LICENSE_KEY_NOT_SUPPORTED.remedy |
1.Make sure you have valid DLF in system. |
LICENSE_MODE_NOT_SET |
Licensing mode is not set. |
LICENSE_MODE_NOT_SET.remedy |
Make sure the licensing mode is set. |
PSC_OR_CREDS_NOT_AVAILABLE |
PSC or credential service not accessible. |
PSC_OR_CREDS_NOT_AVAILABLE.remedy |
1. Make sure the PSC/credential service are accessible. |
INVALID_UUID |
Invalid UUID given |
INVALID_UUID.remedy |
1.Make sure a valid UUID is given |
RESOURCE_MISMATCH |
Resource provided in url and payload are not matching. |
RESOURCE_MISMATCH.remedy |
Make sure you are passing correct and same resource details in URL and payload. |
RESOURCE_NOT_FOUND |
Resource with UUID {0} does not exist. |
RESOURCE_NOT_FOUND.remedy |
Try again with proper resource UUID. |
OPERATION_NOT_SUPPORTED |
Operation is not supported. |
OPERATION_NOT_SUPPORTED.remedy |
None. |
OPERATION_NOT_SUPPORTED_WITH_CURRENT_LICENSING_MODE |
Operation is not supported in current licensing mode. |
OPERATION_NOT_SUPPORTED_WITH_CURRENT_LICENSING_MODE.remedy |
Make sure the system is in subscription licensing mode. |
LICENSE_KEY_CANNOT_BE_DELETED |
The license key is in use and cannot be deleted. |
LICENSE_KEY_CANNOT_BE_DELETED.remedy |
Make sure that the license key is not used for licensing any resource. |
LICENSE_KEY_NOT_SPECIFIED |
Atleast one license key must be specified in the input. |
LICENSE_KEY_NOT_SPECIFIED.remedy |
Specify one or more license keys in the input. |
LICENSING_MODE_SWITCH_FAILED |
Failed to switch the licensing mode. |
LICENSING_MODE_SWITCH_FAILED.remedy |
None. |
LM_TASK_REGISTRATION_FAILED |
Registering task with Task aggregator failed. |
LM_TASK_REGISTRATION_FAILED.remedy |
None. |
LOCK_NOT_AVAILABLE |
Lock not available. |
LOCK_NOT_AVAILABLE.remedy |
None. |
FAILED_TO_ACQUIRE_LOCK |
Failed to acquire lock. |
FAILED_TO_ACQUIRE_LOCK.remedy |
None. |
FAILED_TO_RELEASE_LOCK |
Failed to release lock. |
FAILED_TO_RELEASE_LOCK.remedy |
None. |
DOMAIN_IN_USE |
Domain {0} is being used in system. |
DOMAIN_IN_USE.remedy |
Make sure that the domain is deleted from the system. |
DOMAIN_NOT_LICENSED |
Domain {0} is not licensed. |
DOMAIN_NOT_LICENSED.remedy |
Make sure to use a domain that has been licensed. |
DOMAIN_NOT_SPECIFIED |
Atleast one domain must be specified in the input. |
DOMAIN_NOT_SPECIFIED.remedy |
Specify one or more domains in the input. |
RELICENSING_DOMAINS_FAILED |
Relicensing of the domains {0} failed. |
RELICENSING_DOMAINS_FAILED.remedy |
Retry the operation. |
EXCESS_LICENSE_KEYS_FOUND |
More than one license key found for {0} in the input. |
EXCESS_LICENSE_KEYS_FOUND.remedy |
Retry with a single or no license key. |
DOMAIN_NOT_ACTIVE |
Domain(s) {0} not in active state. |
DOMAIN_NOT_ACTIVE.remedy |
Retry the operation after the domain(s) are in active state. |
PRODUCT_TYPE_NOT_SUPPORTED |
Product type {0} is not supported. |
PRODUCT_TYPE_NOT_SUPPORTED.remedy |
1.Make sure you add the license key for only supported product types. |
LICENSING_DATA_UNKNOWN_VERSION |
Licensing data version {0} not supported. |
LICENSING_DATA_UNKNOWN_VERSION.remedy |
Please pass the correct version of data. |
LICENSING_DATA_HANDLER_NOT_FOUND |
Licensing data handler not found for version {0}. |
LICENSING_DATA_HANDLER_NOT_FOUND.remedy |
Please pass the supported version to get data handler. |
FAILED_TO_CONNECT_TO_HOST |
Failed to connect to resource {0} |
FAILED_TO_CONNECT_TO_HOST.remedy |
Please check connection to host {0} with accurate credentials |
INVALID_PRODUCT_TYPE |
Product type is invalid. Allowable values: {0} |
INVALID_PRODUCT_TYPE.remedy |
Make sure that the product type is one among {0} |
LICENSE_KEY_USAGE_NOT_FOUND_PSC_DOES_NOT_EXIST |
Unable to get license usage as PSC does not exist. |
LICENSE_KEY_USAGE_NOT_FOUND_PSC_CREDENTIALS_NOT_FOUND |
Unable to get license usage as credentials for PSC is not found. |
LICENSE_IS_MISSING_FEATURES |
License key on host {0} is missing the following features: {1} |
5.1.7. Network pools
Error code | Description |
---|---|
SUCCESS |
Success |
NETWORKPOOL_NOT_FOUND |
The network pool with ID {0} does not exist |
NETWORK_NOT_FOUND |
The network with ID {1} does not exist |
NETWORKPOOL_IPADDRESSES_IN_USE |
Deletion of network pool {0} prevented. IP Addresses in use |
NETWORK_NOT_FOUND_IN_NETWORKPOOL |
Specified network {0} not part of networkpool {1} |
NETWORKPOOL_SPEC_VALIDATION_FAILED |
Error while validating network pool parameters |
NETWORKPOOL_CREATE_FAILED |
Failed to create the network pool |
NETWORKPOOL_GET_FAILED |
Failed to get the network pool {0} with id {1} |
IPPOOL_ADD_VALIDATION_FAILED |
Invalid IP Pool parameters specified or overlapping IP Pool found |
IPPOOL_REMOVE_VALIDATION_FAILED |
No IP Pool found or IP Pool in use |
IPPOOL_ADD_FAILED |
Error when adding IP Pool to network |
IPPOOL_REMOVE_FAILED |
Error removing IP Pool from network |
NOT_ENOUGH_IP_ADDRESSES_AVAILABLE |
Not enough free IP addresses {2} available in chosen network {0} |
IP_ADDRESS_RESERVATION_FAILED |
Request to reserve {2} IP addresses not successful |
UNUSED_IP_ADDRESSES_LISTED_FOR_RELEASE |
Not all IP addresses are in the used IP list for this network |
IP_ADDRESS_RELEASE_FAILED |
The IP addresses cannot be released |
INVALID_IP_COUNT_SPECIFIED |
Invalid count: {2} IP addresses requested from chosen network {0} |
UNKNOWN_NETWORK_SPECIFIED |
Unknown Network Type specified to release IP address |
INVALID_NETWORK_SPECIFIED |
Invalid Network ID specified |
INVENTORY_ERROR |
Failed to fetch ESXi hosts associated with network pool {0} from inventory |
HOSTS_ASSOCIATED_WITH_NETWORKPOOL |
Deletion of network pool {0} prevented. Hosts associated with Network Pool |
DUPLICATE_NETWORKPOOL_FOUND |
Another networkpool {0} with the same name found |
NETWORKPOOL_WITH_OVERLAPPING_NETWORK_FOUND |
A network in the pool overlaps with one of the existing networks already present |
INTERNAL_SERVER_ERROR |
Internal Server Error |
MISSING_NETWORK |
The networks of type VMOTION is mandatory but was not provided. |
MISSING_NETWORKPOOL_NAME |
A valid network pool name must be specified |
MINIMUM_NETWORKS_MISSING |
At least one network should be present in the network pool |
MALFORMED_NETWORK_SPEC |
Malformed subnet data received |
NETWORK_PARAMS_INVALID |
One of VLAN ID, Subnet IP address, MTU or IP pools is invalid |
DUPLICATE_NETWORKS_IN_NETWORKPOOL |
The networkpool {0} has multiple networks of the same type |
SUBNET_OVERLAP_IN_NETWORK |
Subnet Range Overlap within same VLAN |
DELETE_NETWORK_WITH_SINGLE_IPPOOL_FAILED |
Ip Pool cannot be removed from a network with a single Ip Pool |
DELETE_MISSING_IPPOOL_FAILED |
No IP Pool {0} found in the network |
DELETE_IPPOOL_IN_USE_FAILED |
Ip Addresses are allocated from the IpPool {0} |
NETWORKPOOL_WITH_OVERLAPPING_IPPOOLS_FOUND |
Overlapping IP Pools found across networkpools |
5.1.8. Tasks
Error code | Description |
---|
5.1.9. Inventory
Error code | Description |
---|---|
RESOURCE_VALIDATION_ERRORS |
{0} validation failed with errors {1} |
RESOURCE_VALIDATION_FAILED |
{0} validation failed |
RESOURCE_NULL |
Null value found in {0} |
RESOURCE_ID_NULL |
{0} ID is null/empty |
RESOURCE_NULL_FIELDS |
{0} contains null fields |
RESOURCE_NOT_FOUND |
{0} not found |
RESOURCE_NOT_FOUND_WITH_ID |
Resource ID: {1} not found in {0} |
RESOURCE_NOT_FOUND_FOR_RESOURCE |
{0} not found for {1} {2} |
RESOURCE_PROPERTY_NOT_FOUND |
{0} {1} property not found |
RESOURCE_ALREADY_EXISTS |
{0} {1} already exists |
RESOURCE_ASSOCIATION_ALREADY_EXISTS |
{0} {1} association already exists with {2} {3} |
RESOURCE_ASSOCIATION_DOES_NOT_EXIST |
{0} {1} association does not exist with {2} {3} |
NETWORK_TYPE_NOT_SUPPORTED |
Network Type {0} is not supported |
ESXI_ATTACHED_TO_CLUSTER |
Esxi {1} is attached to Cluster {1} |
INVALID_DATA |
VCF service ID in request payload not equal to URL parameter |
SERVER_ERROR |
Server error, contact administrator or check logs |
5.1.10. Certificates
Error code | Description |
---|---|
CERTIFICATE_RESOURCE_DATA_NOT_FOUND |
Resource data not found. |
CERTIFICATE_CSR_GENERATION_FAILED |
Generate CSR failed. |
CERTIFICATE_GET_CSR_FAILED |
Unable to get CSR. |
CERTIFICATE_GENERATE_CERTIFICATE_FAILED |
Generate certificate operation failed. |
CERTIFICATE_GET_CERT_FAILED |
Unable to get certificate. |
CERTIFICATE_CSR_DOWNLOAD_FAILED |
CSR download operation failed. |
CERTIFICATE_GET_CA_CONFIGURATION_FAILED |
Failed to get CA configuration. |
CERTIFICATE_CA_CREATION_FAILED |
Unable to create CA. |
CERTIFICATE_CA_DELETION_FAILED |
Unable to delete {0} CA configuration. |
CERTIFICATE_CA_IS_INVALID |
Invalid CA type {0} |
CERTIFICATE_CA_NOT_CONFIGURED |
Unable to configure CA settings. |
CERTIFICATE_REPLACE_CERT_FAILED |
Replace certificate operation failed. |
CERTIFICTE_PRIVATE_KEY_NOT_FOUND |
Failed to fetch Private key. |
CERTIFICATE_GENERAL_EXCEPTION |
{0} |
CERTIFICATE_PLUGIN_NOT_FOUND |
No plugin found for {0}. |
CERTIFICATE_SERVICE_RESTART_FAILED |
Service restart failed for {0} |
5.1.11. Backup and Restore
Error code | Description |
---|---|
RETRIEVE_BACKUP_CONFIGURATION_FAILED |
Failed to retrieve backup configuration. |
RETRIEVE_BACKUP_CONFIGURATION_FAILED.remedy |
Retry after a few minutes. |
INVALID_BACKUP_CONFIGURATION |
Provided backup configuration is invalid. |
BACKUP_FAILED |
Backup failed : {0} |
RESTORE_FAILED |
Restore failed : {0} |
INVALID_ENCRYPTION_PASSPHRASE |
Provided encryption passphrase {0} is invalid. |
INVALID_ENCRYPTION_PASSPHRASE.remedy |
Provide a valid encryption passphrase. Criteria for passphrase: min length: 12; max length: 32; min special characters: 1, special characters allowed: [~, !, @, ^, -, _, +]; min numbers: 2; min capital letters: 2; max consecutive characters: 2. |
BACKUP_LOCATION_INVALID_PROTOCOL |
Backup location protocol is not supported. |
BACKUP_LOCATION_INVALID_PROTOCOL.remedy |
Provide Backup Location protocol as SFTP. |
BACKUP_LOCATION_PORT_NULL |
Backup location port cannot be null. |
BACKUP_LOCATION_USERNAME_BLANK |
Backup location username cannot be null or blank. |
BACKUP_LOCATION_PASSWORD_BLANK |
Backup location password cannot be null or blank. |
BACKUP_LOCATION_DIRECTORY_PATH_BLANK |
Backup location directory path cannot be null or blank. |
BACKUP_LOCATION_SERVER_BLANK |
Backup location server cannot be null or blank. |
BACKUP_RESOURCE_TYPES_EMPTY |
Backup schedule resource types cannot be empty. |
BACKUP_SSH_FINGERPRINT_PATH_BLANK |
Backup location SSH fingerprint cannot be null or blank. |
INVALID_BACKUP_RESOURCE_INPUT |
Backup input specification must contain at least one backup resource. |
INVALID_BACKUP_RESOURCE |
The backup specification contains an invalid backup resource {0}. |
INVALID_NUMBER_OF_BACKUP_RESOURCE |
Backup input specification cannot have more than one backup resource. |
INVALID_ENCRYPTION_PASSPHRASE_INPUT |
Backup input specification must contain encryption passphrase. |
INVALID_BACKUP_SCHEDULE |
Backup schedule input {0} is invalid. |
INVALID_BACKUP_SCHEDULE_FOR_HOURLY_SCHEDULE |
Backup schedule for HOURLY schedule requires minutes field. |
INVALID_BACKUP_SCHEDULE_FOR_WEEKLY_SCHEDULE |
Backup schedule for WEEKLY schedule requires daysOfTheWeek, hourOfTheDay and minutes fields. |
INVALID_BACKUP_SCHEDULE_FREQUENCY |
Provided backup schedule frequency type {0} is invalid.Supported schedule frequencies are {1}. |
INVALID_BACKUP_SCHEDULE_FOR_INVALID_DAYS_OF_WEEK |
Backup schedule for WEEKLY schedule requires valid Days of the week, {0} are invalid. Supported Days of the week are {1}. |