Introduction
End of Marketing: As of 31 October 2025, new deployments of VMware Solutions offerings are no longer available for new customers. Existing customers can still use and expand their active VMware® workloads on IBM Cloud®. For more information, see End of Marketing for VMware on IBM Cloud.
With the IBM Cloud® for VMware Cloud Foundation as a Service API, you can quickly and seamlessly integrate or migrate your on-premises VMware® workloads to IBM Cloud®. This is done by using the scalable, secure, and high-performance IBM Cloud infrastructure and the industry-leading VMware hybrid virtualization technology. You can easily deploy your VMware virtual environments and manage the infrastructure resources on IBM Cloud. At the same time, you can still use your familiar native VMware product console to manage the VMware workloads. For more information, see the VCF as a Service documentation.
By using the IBM Cloud for VMware Cloud Foundation as a Service REST API, you acknowledge that you have read and accepted the following third-party agreements:
Endpoint URLs
The API is available at:
https://api.{region}.vmware.cloud.ibm.com/v1
Not all regions support VCF as a Service. For more information, see IBM Cloud data center availability.
To successfully invoke an API, the endpoint URL must be qualified with a method and authentication credential through an IAM token in the request header.
For VMware licenses and Usage Meter registrations, the APIs are available at https://licensing.vmware.cloud.ibm.com/v1
Authentication
Authentication to the API is managed by IBM Cloud Identity and Access Management (IAM). To work with the API, you must add an IBM Cloud IAM access token in the API request authentication header:
-H 'Authorization: Bearer <IAM_TOKEN>'
To call each method, you'll need to be assigned a role that includes the required IAM actions. Each method lists the associated action. For more information about IAM actions and how they map to roles, see Managing IAM access for VCF as a Service.
You can build your API request by pairing a service endpoint with your authentication credentials. For example, if you list the Cloud Director site service instances for the us-south region, use the following endpoint and API headers to retrieve instances in your service:
curl -X GET \
https://api.us-south.vmware.cloud.ibm.com/v1/director_sites \
-H "authorization: Bearer <access_token>"
Replace <access_token> with your Cloud IAM token.
You can retrieve an IBM Cloud IAM access token by using the IBM Cloud CLI or by creating an API key and then exchanging the API key for an IBM Cloud IAM access token. For more information, see Generating an IBM Cloud IAM token by using an API key.
When you use the SDK, configure an IAM authenticator with the IAM API key. The authenticator automatically obtains the IAM access token for the API key and includes it with each request. You can construct an authenticator in the following ways:
- Programmatically, by constructing an IAM authenticator instance and supplying your IAM API key.
- Externally, in configuration options that are then used by the SDK to construct an IAM authenticator at run time.
Provide external configuration options by either:
- Storing the configuration options in environment variables. When you initialize the service client, the SDK constructs the authenticator by reading the configuration properties directly from the environment variables.
- Saving the configuration options in a file. When you initialize the service client, the SDK constructs the authenticator by reading the configuration properties from the file that is specified by the
IBM_CREDENTIALS_FILEenvironment variable.
In this example of using external configuration properties, an IAM authenticator instance is created with the configured API key, and then the service client is constructed with this authenticator instance and the configured service URL.
For more information, see the Authentication section in the IBM Cloud SDK Common documentation.
Outside of development and testing, never hardcode secrets (such as IAM API keys) into a client application.
Setting client options programmatically
Construct the service client programmatically, where {api_key} is your hardcoded IAM API key:
import {
"github.com/IBM/go-sdk-core/v5/core"
"github.com/IBM/vmware-go-sdk/vmwarev1"
}
// Create an IAM authenticator.
authenticator := &core.IamAuthenticator{
ApiKey: "{api_key}",
}
// Construct an "options" struct for creating the service client.
options := &vmwarev1.VmwareV1Options{
Authenticator: authenticator, // required
URL: "https://api.us-south.vmware.cloud.ibm.com/v1", // optional
}
// Construct the service client.
vmwareService, err := vmwarev1.NewVmwareV1(options)
if err != nil {
panic(err)
}
Service operations can now be invoked by using the vmwareService variable.
Setting client options through environment variables
Export environment variables to implement service client options, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.
export VMWARE_URL={service_url}
export VMWARE_AUTH_TYPE=iam
export VMWARE_APIKEY={api_key}
export VMWARE_AUTH_URL=https://iam.cloud.ibm.com
Construct the service client by using external configuration. vmwarev1.NewVmwareV1UsingExternalConfig() initializes the client with the environment variables and it uses them for subsequent authentication.
vmwareService, err := vmwarev1.NewVmwareV1UsingExternalConfig()
Setting client options through a credentials file
Store credentials in a file such as my-credentials.env, where {service_url} is an endpoint URL for the service and {api_key} is an IAM API key.
VMWARE_URL={service_url}
VMWARE_AUTH_TYPE=iam
VMWARE_APIKEY={api_key}
VMWARE_AUTH_URL=https://iam.cloud.ibm.com
Export the name of the file with an environment variable, where {credential_file_path} is the absolute path to your credentials file, such as "$HOME/secrets/vmware-credentials.env".
export IBM_CREDENTIALS_FILE={credential_file_path}
Construct the service client by using external configuration. vmwarev1.NewVmwareV1UsingExternalConfig() initializes with the defined credential file, and it uses it for subsequent authentication.
vmwareService, err := vmwarev1.NewVmwareV1UsingExternalConfig()
Auditing
You can monitor API activity within your account. Whenever an API method is called, an event is generated that you can then track and audit. The specific event type is listed for each method that generates auditing events. For methods that don't list any events, no events are generated.
For more information about how to track VCF as a Service activity, see Activity tracking events for VCF as a Service.
Error handling
This API uses standard HTTP response codes to indicate whether a method completed successfully. A 200 type response indicates success. A 400 type response indicates a failure. A 500 type response indicates an internal system error.
| HTTP error code | Description | Recovery |
|---|---|---|
200 |
Success | The request was successful. |
202 |
Success | The request was submitted successfully. |
400 |
Bad request | The input parameters in the request body are either incomplete or in the wrong format. Be sure to include all required parameters in your request. |
401 |
Unauthorized | You are not authorized to make this request because of missing or bad authentication token. |
403 |
Forbidden | The supplied authentication is not authorized to make this request. Contact the account owner to check your permissions. |
409 |
Conflict | The request cannot be completed because of a conflict with the current state of the target resource. |
500 |
Internal server error | Your request cannot be processed. Wait a few minutes and try again. If the error persists, contact IBM Support. |
When an API operation fails, detailed information about the failure is provided in the response. In addition, in every response there is a header named x-global-transaction-id, which is a unique ID for the API operation. When contacting IBM Support on API operation failures, you can provide the x-global-transaction-id for better debugging.
Methods
Create a Cloud Director site instance
Create an instance of a Cloud Director site with specified configurations. The Cloud Director site instance is the infrastructure and associated VMware software stack, which consists of VMware vCenter Server, VMware NSX-T, and VMware Cloud Director. VMware platform management and operations are performed with Cloud Director. The minimum initial order size is 2 hosts (2-Socket 32 Cores, 192 GB RAM) with 24 TB of 2.0 IOPS/GB storage.
POST /director_sites
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Create VMware Cloud Director site request body
{
"name": "WorkloadDomain_1",
"private_only": true,
"console_connection_type": "private",
"ip_allow_list": [
"1.1.1.1/24",
"2.2.2.2/24"
],
"resource_group": {
"id": "example_resource_group_id"
},
"services": [
{
"name": "veeam"
},
{
"name": "vcda"
}
],
"pvdcs": [
{
"name": "pvdc-1",
"data_center_name": "dal10",
"clusters": [
{
"name": "cluster_1",
"host_count": 3,
"file_shares": {
"STORAGE_POINT_TWO_FIVE_IOPS_GB": 0,
"STORAGE_TWO_IOPS_GB": 24000,
"STORAGE_FOUR_IOPS_GB": 24000,
"STORAGE_TEN_IOPS_GB": 8000
},
"host_profile": "BM_2S_20_CORES_192_GB"
}
]
}
]
}Name of the Cloud Director site instance. Use a name that is unique to your region and meaningful. Names cannot be changed after initial creation.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
my_director_siteList of VMware resource pools to deploy on the instance.
Possible values: 1 ≤ number of items ≤ 16
The resource group to associate with the resource instance. If not specified, the default resource group in the account is used.
List of services to deploy on the instance.
Possible values: 1 ≤ number of items ≤ 25
Indicates whether the site is private only.
Type of console connection.
Allowable values: [
private,public]List of allowed IP addresses.
Possible values: 0 ≤ length ≤ 256
Examples:[ "1.1.1.1/24", "2.2.2.2/24" ]
curl -X POST 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "name": "my_director_site", "private_only": True, "console_connection_type": "private", "ip_allow_list": ['1.1.1.1/24', '2.2.2.2/24'], "resource_group": {"id": "some_resourcegroupid"}, "services": [ { "name": "veeam" }, { "name": "vcda" } ] "pvdcs": [ { "name": "pvdc-1", "data_center_name": "dal10", "clusters": [ { "name": "cluster_1", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ] } ] }'
package main import ( "encoding/json" "fmt" "github.com/IBM/go-sdk-core/v5/core" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { fileSharesPrototypeModel := &vmwarev1.FileSharesPrototype{} clusterPrototypeModel := &vmwarev1.ClusterPrototype{ Name: core.StringPtr("cluster_1"), HostCount: core.Int64Ptr(int64(2)), HostProfile: core.StringPtr("BM_2S_20_CORES_192_GB"), FileShares: fileSharesPrototypeModel, } pvdcPrototypeModel := &vmwarev1.PVDCPrototype{ Name: core.StringPtr("pvdc-1"), DataCenterName: core.StringPtr("dal10"), Clusters: []vmwarev1.ClusterPrototype{*clusterPrototypeModel}, } createDirectorSitesOptions := vmwareService.NewCreateDirectorSitesOptions( "my_director_site", []vmwarev1.PVDCPrototype{*pvdcPrototypeModel}, ) createDirectorSitesOptions.SetAcceptLanguage("en-us") createDirectorSitesOptions.SetXGlobalTransactionID("transaction1") directorSite, response, err := vmwareService.CreateDirectorSites(createDirectorSitesOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSite, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A Cloud Director site resource. The Cloud Director site instance is the infrastructure and the associated VMware software stack, which consists of VMware vCenter Server, VMware NSX-T, and VMware Cloud Director.
A unique ID for the Cloud Director site in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The hyperlink of the Cloud Director site resource.
ID of the Cloud Director site.
The time that the Cloud Director site is ordered.
The name of Cloud Director site. The name of the Cloud Director site cannot be changed after creation.
The status of Cloud Director site.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]The resource group information to associate with the resource instance.
List of VMware resource pools to deploy on the instance.
Possible values: 1 ≤ number of items ≤ 10
Director site type.
Possible values: [
single_tenant,multitenant]Services on the Cloud Director site.
Possible values: number of items = 1
Type of director console connection.
Possible values: [
public,private]Status of director console connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]Director console IP allowlist.
Possible values: number of items = 1
The time that the Cloud Director site is provisioned and available to use.
RHEL activation key. This property is applicable when type is multitenant.
Possible values: 0 ≤ length ≤ 150
Status Code
OK
Bad Request
Unauthorized
{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid001", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001", "id": "directorsiteuuid001", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "name": "MyInstance", "status": "creating", "console_connection_type": "private", "console_connection_status": "creating", "ip_allow_list": [ "1.1.1.1/24" ], "type": "multitenant", "rhel_vm_activation_key": "xxxxxxxxxxxxxxxxxxx", "services": [ { "name": "veeam", "id": "ed5372b9-c67a-4b4d-a43f-3ac01a6e191e", "provisioned_at": "2022-12-06T20:06:59.137069+00:00", "ordered_at": "2022-12-06T20:06:59.137069+00:00", "status": "creating", "console_url": "https://sdirw.jp-tok.vmware.test.cloud.ibm.com:9443/vCloud/1" } ], "resource_group": { "name": "default", "id": "a_resource_group_id", "crn": "crn:v1:bluemix:public:resource-controller::a/accuntid::resource-group:resourcegroupid" }, "pvdcs": [ { "id": "pvdcuuid001", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001", "status": "creating", "data_center_name": "dal10", "clusters": [ { "id": "clusteruuid001", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001/clusters/clusteruuid001", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
List Cloud Director site instances
List all VMware Cloud Director site instances that the user can access in the cloud account.
GET /director_sites
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/go-sdk-core/v5/core" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listDirectorSitesOptions := vmwareService.NewListDirectorSitesOptions() listDirectorSitesOptions.SetAcceptLanguage("en-us") listDirectorSitesOptions.SetXGlobalTransactionID("transaction1") directorSiteCollection, response, err := vmwareService.ListDirectorSites(listDirectorSitesOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSiteCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Return all Cloud Director site instances.
List of Cloud Director site instances.
Possible values: 0 ≤ number of items ≤ 256
Status Code
OK
Unauthorized
Not found
{ "director_sites": [ { "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid004", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid004", "id": "directorsiteuuid004", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "name": "MyInstance", "type": "multitenant", "rhel_vm_activation_key": "xxxxxxxxxxxxxxxxxxx", "console_connection_type": "private", "console_connection_status": "creating", "ip_allow_list": [ "1.1.1.1/24" ], "services": [ { "name": "veeam", "id": "ed5372b9-c67a-4b4d-a43f-3ac01a6e191e", "provisioned_at": "2022-12-06T20:06:59.137069+00:00", "ordered_at": "2022-12-06T20:06:59.137069+00:00", "status": "creating", "console_url": "https://sdirw.jp-tok.vmware.test.cloud.ibm.com:9443/vCloud/1" } ], "status": "ready_to_use", "resource_group": { "name": "default", "id": "b_resource_group_id", "crn": "crn:v1:bluemix:public:resource-controller::a/accuntid::resource-group:resourcegroupid" }, "pvdcs": [ { "id": "pvdcuuid005", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid004/pvdcs/pvdcuuid005", "data_center_name": "dal10", "status": "creating", "clusters": [ { "id": "clusteruuid007", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid004/pvdcs/pvdcuuid005/clusters/clusteruuid007", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Get a Cloud Director site instance
Get a Cloud Director site instance by specifying the instance ID.
GET /director_sites/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { getDirectorSiteOptions := vmwareService.NewGetDirectorSiteOptions( "site_id", ) getDirectorSiteOptions.SetAcceptLanguage("en-us") getDirectorSiteOptions.SetXGlobalTransactionID("transaction1") directorSite, response, err := vmwareService.GetDirectorSite(getDirectorSiteOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSite, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A Cloud Director site resource. The Cloud Director site instance is the infrastructure and the associated VMware software stack, which consists of VMware vCenter Server, VMware NSX-T, and VMware Cloud Director.
A unique ID for the Cloud Director site in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The hyperlink of the Cloud Director site resource.
ID of the Cloud Director site.
The time that the Cloud Director site is ordered.
The name of Cloud Director site. The name of the Cloud Director site cannot be changed after creation.
The status of Cloud Director site.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]The resource group information to associate with the resource instance.
List of VMware resource pools to deploy on the instance.
Possible values: 1 ≤ number of items ≤ 10
Director site type.
Possible values: [
single_tenant,multitenant]Services on the Cloud Director site.
Possible values: number of items = 1
Type of director console connection.
Possible values: [
public,private]Status of director console connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]Director console IP allowlist.
Possible values: number of items = 1
The time that the Cloud Director site is provisioned and available to use.
RHEL activation key. This property is applicable when type is multitenant.
Possible values: 0 ≤ length ≤ 150
Status Code
OK
Unauthorized
Not found
{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid001", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001", "id": "directorsiteuuid001", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "name": "MyInstance", "status": "creating", "console_connection_type": "private", "console_connection_status": "creating", "ip_allow_list": [ "1.1.1.1/24" ], "type": "multitenant", "rhel_vm_activation_key": "xxxxxxxxxxxxxxxxxxx", "services": [ { "name": "veeam", "id": "ed5372b9-c67a-4b4d-a43f-3ac01a6e191e", "provisioned_at": "2022-12-06T20:06:59.137069+00:00", "ordered_at": "2022-12-06T20:06:59.137069+00:00", "status": "creating", "console_url": "https://sdirw.jp-tok.vmware.test.cloud.ibm.com:9443/vCloud/1" } ], "resource_group": { "name": "default", "id": "a_resource_group_id", "crn": "crn:v1:bluemix:public:resource-controller::a/accuntid::resource-group:resourcegroupid" }, "pvdcs": [ { "id": "pvdcuuid001", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001", "status": "creating", "data_center_name": "dal10", "clusters": [ { "id": "clusteruuid001", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001/clusters/clusteruuid001", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Delete a Cloud Director site instance
Delete a Cloud Director site instance by specifying the instance ID.
DELETE /director_sites/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
curl -X DELETE 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { deleteDirectorSiteOptions := vmwareService.NewDeleteDirectorSiteOptions( "site_id", ) deleteDirectorSiteOptions.SetAcceptLanguage("en-us") deleteDirectorSiteOptions.SetXGlobalTransactionID("transaction1") directorSite, response, err := vmwareService.DeleteDirectorSite(deleteDirectorSiteOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSite, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A Cloud Director site resource. The Cloud Director site instance is the infrastructure and the associated VMware software stack, which consists of VMware vCenter Server, VMware NSX-T, and VMware Cloud Director.
A unique ID for the Cloud Director site in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The hyperlink of the Cloud Director site resource.
ID of the Cloud Director site.
The time that the Cloud Director site is ordered.
The name of Cloud Director site. The name of the Cloud Director site cannot be changed after creation.
The status of Cloud Director site.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]The resource group information to associate with the resource instance.
List of VMware resource pools to deploy on the instance.
Possible values: 1 ≤ number of items ≤ 10
Director site type.
Possible values: [
single_tenant,multitenant]Services on the Cloud Director site.
Possible values: number of items = 1
Type of director console connection.
Possible values: [
public,private]Status of director console connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]Director console IP allowlist.
Possible values: number of items = 1
The time that the Cloud Director site is provisioned and available to use.
RHEL activation key. This property is applicable when type is multitenant.
Possible values: 0 ≤ length ≤ 150
Status Code
OK
Bad Request
Not found
{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid001", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001", "id": "directorsiteuuid001", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "name": "MyInstance", "status": "creating", "console_connection_type": "private", "console_connection_status": "creating", "ip_allow_list": [ "1.1.1.1/24" ], "type": "multitenant", "rhel_vm_activation_key": "xxxxxxxxxxxxxxxxxxx", "services": [ { "name": "veeam", "id": "ed5372b9-c67a-4b4d-a43f-3ac01a6e191e", "provisioned_at": "2022-12-06T20:06:59.137069+00:00", "ordered_at": "2022-12-06T20:06:59.137069+00:00", "status": "creating", "console_url": "https://sdirw.jp-tok.vmware.test.cloud.ibm.com:9443/vCloud/1" } ], "resource_group": { "name": "default", "id": "a_resource_group_id", "crn": "crn:v1:bluemix:public:resource-controller::a/accuntid::resource-group:resourcegroupid" }, "pvdcs": [ { "id": "pvdcuuid001", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001", "status": "creating", "data_center_name": "dal10", "clusters": [ { "id": "clusteruuid001", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid001/pvdcs/pvdcuuid001/clusters/clusteruuid001", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Enable or disable Veeam on a Cloud Director site
Enable or disable Veeam on a Cloud Director site.
POST /director_sites/{site_id}/action/enable_veeamRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
Enable or Disable service request body
{
"enable": true
}Indicates whether it is required to enable or disable a service.
Response
Enable Service response for accepted request
Request status.
Example:
The request has been accepted.
Status Code
Ok
Bad Request
Unauthorized_Error
{ "message": "The request has been accepted." }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Enable or disable VCDA on a Cloud Director site
Enable or disable VMware Cloud Director Availability (VCDA) on a Cloud Director site.
POST /director_sites/{site_id}/action/enable_vcdaRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
Enable or Disable service request body
{
"enable": true
}Indicates whether it is required to enable or disable a service.
Response
Enable Service response for accepted request
Request status.
Example:
The request has been accepted.
Status Code
Ok
Bad Request
Unauthorized_Error
{ "message": "The request has been accepted." }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Create a VCDA connection
Create a VMware Cloud Director Availability (VCDA) connection in the Cloud Director site identified by {site_id}.
POST /director_sites/{site_id}/vcda/connection_endpointsRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
Create VCDA connection request body
{
"name": "Providervdc_1",
"data_center_name": "dal10",
"type": "private",
"allow_list": [
"1.1.1.1"
]
}Connection type.
Allowable values: [
private,public]Where to deploy the cluster.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$Example:
dal10List of IP addresses allowed in the public connection.
Possible values: number of items = 1, 1 ≤ length ≤ 32, Value must match regular expression
^[0-9\.]+$Examples:[ "1.1.1.1" ]
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { createDirectorSitesVcdaConnectionEndpointsOptions := vmwareService.NewCreateDirectorSitesVcdaConnectionEndpointsOptions( "site_id", "private", "dal10", ) createDirectorSitesVcdaConnectionEndpointsOptions.SetAcceptLanguage("en-us") createDirectorSitesVcdaConnectionEndpointsOptions.SetXGlobalTransactionID("transaction1") vcdaConnection, response, err := vmwareService.CreateDirectorSitesVcdaConnectionEndpoints(createDirectorSitesVcdaConnectionEndpointsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vcdaConnection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Created VCDA connection
ID of the VCDA connection on the Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Status of the VCDA connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]Connection type.
Possible values: [
private,public]Connection speed.
Possible values: [
speed_20g]Where to deploy the cluster.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$List of IP addresses allowed in the public connection.
Possible values: number of items = 1
Status Code
Ok
Bad Request
Unauthorized_Error
{ "name": "Providervdc_1", "data_center_name": "dal10", "status": "ready_to_use", "id": "testx", "type": "private", "speed": "speed_20g", "allow_list": [ "1.1.1.1" ] }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Delete a VCDA connection
Delete a VMware Cloud Director Availability (VCDA) connection in the Cloud Director site identified by {site_id} and {vcda_connections_id}.
DELETE /director_sites/{site_id}/services/vcda/connection_endpoints/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the VCDA connections in the relationship Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Example:
vcda_connections_id
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { deleteDirectorSitesVcdaConnectionEndpointsOptions := vmwareService.NewDeleteDirectorSitesVcdaConnectionEndpointsOptions( "site_id", "vcda_connections_id", ) deleteDirectorSitesVcdaConnectionEndpointsOptions.SetAcceptLanguage("en-us") deleteDirectorSitesVcdaConnectionEndpointsOptions.SetXGlobalTransactionID("transaction1") vcdaConnection, response, err := vmwareService.DeleteDirectorSitesVcdaConnectionEndpoints(deleteDirectorSitesVcdaConnectionEndpointsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vcdaConnection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Created VCDA connection
ID of the VCDA connection on the Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Status of the VCDA connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]Connection type.
Possible values: [
private,public]Connection speed.
Possible values: [
speed_20g]Where to deploy the cluster.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$List of IP addresses allowed in the public connection.
Possible values: number of items = 1
Status Code
Ok
Bad Request
Unauthorized_Error
{ "name": "Providervdc_1", "data_center_name": "dal10", "status": "ready_to_use", "id": "testx", "type": "private", "speed": "speed_20g", "allow_list": [ "1.1.1.1" ] }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Update VCDA connection allowlist
Update the allowlist for a private connection to a specific VCDA instance.
PATCH /director_sites/{site_id}/services/vcda/connection_endpoints/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the VCDA connections in the relationship Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Example:
vcda_connections_id
Data to update a private connection.
{
"allow_list": [
"1.1.1.1/24",
"2.2.2.2/24"
]
}List of allowed IP addresses.
Possible values: 0 ≤ number of items ≤ 256
Examples:[ "1.1.1.1/24", "2.2.2.2/24" ]
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { updateDirectorSitesVcdaConnectionEndpointsOptions := vmwareService.NewUpdateDirectorSitesVcdaConnectionEndpointsOptions( "site_id", "vcda_connections_id", ) updateDirectorSitesVcdaConnectionEndpointsOptions.SetAcceptLanguage("en-us") updateDirectorSitesVcdaConnectionEndpointsOptions.SetXGlobalTransactionID("transaction1") updatedVcdaConnection, response, err := vmwareService.UpdateDirectorSitesVcdaConnectionEndpoints(updateDirectorSitesVcdaConnectionEndpointsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(updatedVcdaConnection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Update private connection
ID of the VCDA connection.
Example:
9165a9a4-cb70-4248-99ce-661106d89b83Status of the VCDA connection after accepting the request.
Example:
updating
Status Code
Task to update the connection created.
Bad Request
Unauthorized Error
Not found
{ "id": "9165a9a4-cb70-4248-99ce-661106d89b83", "status": "updating" }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Create a VCDA cloud-to-cloud connection
Create a VCDA cloud-to-cloud connection in the Cloud Director site identified by {site_id}.
POST /director_sites/{site_id}/services/vcda/c2c_connectionsRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
Create VCDA cloud-to-cloud connection request body.
{
"local_data_center_name": "dal10",
"local_site_name": "ddirw002-gr80d10vcda",
"peer_site_name": "dirw274t02vcda",
"peer_region": "jp-tok",
"note": "Text of the note..."
}Local data center name.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$Example:
dal10Local site name.
Example:
ddirw002-gr80d10vcdaPeer site name.
Example:
dirw274t02vcdaPeer region.
Example:
jp-tokNote
Example:
Text of the note...
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { createDirectorSitesVcdaC2cConnectionOptions := vmwareService.NewCreateDirectorSitesVcdaC2cConnectionOptions( "site_id", "dal10", "ddirw002-gr80d10vcda", "dirw274t02vcda", "jp-tok", ) createDirectorSitesVcdaC2cConnectionOptions.SetAcceptLanguage("en-us") createDirectorSitesVcdaC2cConnectionOptions.SetXGlobalTransactionID("transaction1") vcdaC2c, response, err := vmwareService.CreateDirectorSitesVcdaC2cConnection(createDirectorSitesVcdaC2cConnectionOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vcdaC2c, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Response to create cloud-to-cloud connection.
ID of VCDA connection on the workload domain.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Status of the VCDA connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]The offering name of the peer site, "vmware_aas" or "vmware_shared".
Where to deploy the cluster.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$Example:
dal10Site name.
Peer site name.
Peer region.
Note
Status Code
Ok
Bad Request
Unauthorized_Error
{ "id": "4b8d2641-5e1b-48c4-bd03-dd66edc824d7", "status": "creating", "peer_offering": "gen2", "local_data_center_name": "dal10", "local_site_name": "ddirw002-gr80d10vcda", "peer_site_name": "dirw274t02vcda", "peer_region": "jp-tok", "note": "Text of the note..." }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Delete a VCDA cloud-to-cloud connection
Delete a VCDA cloud-to-cloud connection in the Cloud Director site identified by {site_id}.
DELETE /director_sites/{site_id}/services/vcda/c2c_connections/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the cloud-to-cloud connections in the relationship Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Example:
connection_id
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { deleteDirectorSitesVcdaC2cConnectionOptions := vmwareService.NewDeleteDirectorSitesVcdaC2cConnectionOptions( "site_id", "connection_id", ) deleteDirectorSitesVcdaC2cConnectionOptions.SetAcceptLanguage("en-us") deleteDirectorSitesVcdaC2cConnectionOptions.SetXGlobalTransactionID("transaction1") vcdaC2c, response, err := vmwareService.DeleteDirectorSitesVcdaC2cConnection(deleteDirectorSitesVcdaC2cConnectionOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vcdaC2c, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Response to create cloud-to-cloud connection.
ID of VCDA connection on the workload domain.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Status of the VCDA connection.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]The offering name of the peer site, "vmware_aas" or "vmware_shared".
Where to deploy the cluster.
Possible values: 1 ≤ length ≤ 32, Value must match regular expression
^[a-zA-Z0-9-_ ]+$Example:
dal10Site name.
Peer site name.
Peer region.
Note
Status Code
Ok
Bad Request
Unauthorized_Error
{ "id": "4b8d2641-5e1b-48c4-bd03-dd66edc824d7", "status": "creating", "peer_offering": "gen2", "local_data_center_name": "dal10", "local_site_name": "ddirw002-gr80d10vcda", "peer_site_name": "dirw274t02vcda", "peer_region": "jp-tok", "note": "Text of the note..." }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Update note in the cloud-to-cloud connection
Update the note in the VCDA cloud-to-cloud connection in the Cloud Director site identified by {site_id}.
PATCH /director_sites/{site_id}/services/vcda/c2c_connections/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the cloud-to-cloud connections in the relationship Cloud Director site.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Example:
connection_id
Update VCDA cloud-to-cloud connection note.
{
"note": "New text of the note..."
}Note
Example:
Text of the note...
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { updateDirectorSitesVcdaC2cConnectionOptions := vmwareService.NewUpdateDirectorSitesVcdaC2cConnectionOptions( "site_id", "connection_id", "Text of the note...", ) updateDirectorSitesVcdaC2cConnectionOptions.SetAcceptLanguage("en-us") updateDirectorSitesVcdaC2cConnectionOptions.SetXGlobalTransactionID("transaction1") updatedVcdaC2c, response, err := vmwareService.UpdateDirectorSitesVcdaC2cConnection(updateDirectorSitesVcdaC2cConnectionOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(updatedVcdaC2c, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Updated VCDA cloud-to-cloud connection note.
ID of VCDA connection on the workload domain.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$Note
Status Code
Ok
Bad Request
Unauthorized_Error
{ "id": "4b8d2641-5e1b-48c4-bd03-dd66edc824d7", "note": "New text of the note..." }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Get an OIDC configuration
Return the details of an OpenID Connect (OIDC) configuration on a Cloud Director site.
GET /director_sites/{site_id}/oidc_configurationRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/oidc_configuration' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { getOidcConfigurationOptions := vmwareService.NewGetOidcConfigurationOptions( "site_id", ) getOidcConfigurationOptions.SetAcceptLanguage("en-us") oidc, response, err := vmwareService.GetOidcConfiguration(getOidcConfigurationOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(oidc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Details of the OIDC configuration on a Cloud Director site.
Status of the OIDC configuration on a Cloud Director site.
Possible values: [
pending,ready_to_use,deleted]The time after which the OIDC configuration is considered enabled.
Status Code
The request to get the OIDC configuration is successful.
The input data is either incomplete or in the wrong format.
The request cannot be completed at this time. Try again later.
{ "status": "ready_to_use", "last_set_at": "2022-01-01T12:00:00.000Z" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Set an OIDC configuration
Request to configure OpenID Connect (OIDC) on a Cloud Director site.
PUT /director_sites/{site_id}/oidc_configurationRequest
Custom Headers
Size of the message body in bytes.
Allowable values: [
0]Possible values: value = 0
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
curl -X PUT 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/oidc_configuration' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json' -H 'Content-Length: 0'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { setOidcConfigurationOptions := vmwareService.NewSetOidcConfigurationOptions( "site_id", int64(0), ) setOidcConfigurationOptions.SetAcceptLanguage("en-us") oidc, response, err := vmwareService.SetOidcConfiguration(setOidcConfigurationOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(oidc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Details of the OIDC configuration on a Cloud Director site.
Status of the OIDC configuration on a Cloud Director site.
Possible values: [
pending,ready_to_use,deleted]The time after which the OIDC configuration is considered enabled.
Status Code
The request to create an OIDC configuration is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The request cannot be completed because of a conflict.
The request cannot be completed at this time. Try again later.
{ "status": "pending", "last_set_at": "2022-01-01T12:00:00.000Z" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
List the resource pools in a Cloud Director site instance
List the resource pools in a specified Cloud Director site.
GET /director_sites/{site_id}/pvdcsRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listDirectorSitesPvdcsOptions := vmwareService.NewListDirectorSitesPvdcsOptions( "site_id", ) listDirectorSitesPvdcsOptions.SetAcceptLanguage("en-us") listDirectorSitesPvdcsOptions.SetXGlobalTransactionID("transaction1") pvdcCollection, response, err := vmwareService.ListDirectorSitesPvdcs(listDirectorSitesPvdcsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(pvdcCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Return all resource pool instances.
List of resource pool instances.
Possible values: 0 ≤ number of items ≤ 256
Status Code
OK
Unauthorized
Not found
{ "pvdcs": [ { "id": "pvdcuuid004", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid004", "data_center_name": "dal10", "status": "creating", "clusters": [ { "id": "clusteruuid005", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid004/clusters/clusteruuid005", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Create a resource pool instance in a specified Cloud Director site
Create an instance of a resource pool with specified configurations. The Cloud Director site instance is the infrastructure and associated VMware software stack, which consists of VMware vCenter Server, VMware NSX-T, and VMware Cloud Director. VMware platform management and operations are performed with Cloud Director. The minimum initial order size is 2 hosts (2-Socket 32 Cores, 192 GB RAM) with 24 TB of 2.0 IOPS/GB storage.
POST /director_sites/{site_id}/pvdcsRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_id
VMware resource pool order information.
{
"name": "pvdc-1",
"data_center_name": "dal10",
"clusters": [
{
"name": "cluster_1",
"host_count": 3,
"file_shares": {
"STORAGE_POINT_TWO_FIVE_IOPS_GB": 0,
"STORAGE_TWO_IOPS_GB": 24000,
"STORAGE_FOUR_IOPS_GB": 24000,
"STORAGE_TEN_IOPS_GB": 8000
},
"host_profile": "BM_2S_20_CORES_192_GB"
}
]
}Name of the resource pool. Resource pool names must be unique per Cloud Director site instance and they cannot be changed after creation.
Possible values: 1 ≤ length ≤ 50, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
pvdc-1Data center location to deploy the cluster. See
GET /director_site_regionsfor supported data center locations.Possible values: 1 ≤ length ≤ 25, Value must match regular expression
^[0-9a-zA-Z-\_]{1,25}$Example:
dal10List of VMware clusters to deploy on the instance. Clusters form VMware workload availability boundaries.
Possible values: number of items = 1
curl -X POST 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "name": "pvdc-1", "data_center_name": "dal10", "clusters": [ { "name": "cluster_1", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ] }'
package main import ( "encoding/json" "fmt" "github.com/IBM/go-sdk-core/v5/core" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { fileSharesPrototypeModel := &vmwarev1.FileSharesPrototype{} clusterPrototypeModel := &vmwarev1.ClusterPrototype{ Name: core.StringPtr("cluster_1"), HostCount: core.Int64Ptr(int64(2)), HostProfile: core.StringPtr("BM_2S_20_CORES_192_GB"), FileShares: fileSharesPrototypeModel, } createDirectorSitesPvdcsOptions := vmwareService.NewCreateDirectorSitesPvdcsOptions( "site_id", "pvdc-1", "dal10", []vmwarev1.ClusterPrototype{*clusterPrototypeModel}, ) createDirectorSitesPvdcsOptions.SetAcceptLanguage("en-us") createDirectorSitesPvdcsOptions.SetXGlobalTransactionID("transaction1") pvdc, response, err := vmwareService.CreateDirectorSitesPvdcs(createDirectorSitesPvdcsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(pvdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
VMware resource pool information.
Name of the resource pool. Resource pool names must be unique per Cloud Director site instance and they cannot be changed after creation.
Possible values: 1 ≤ length ≤ 50, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
pvdc-1Data center location to deploy the cluster. See
GET /director_site_regionsfor supported data center locations.Possible values: 1 ≤ length ≤ 25, Value must match regular expression
^[0-9a-zA-Z-\_]{1,25}$Example:
dal10The resource pool ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$The hyperlink of the resource pool resource.
List of VMware clusters to deploy on the instance. Clusters form VMware workload availability boundaries.
Possible values: number of items = 1
The status of the resource pool.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]List of resource pool types.
Possible values: 1 ≤ number of items ≤ 30
Status Code
OK
Bad Request
Unauthorized
{ "id": "pvdcuuid003", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid003", "data_center_name": "dal10", "status": "creating", "clusters": [ { "id": "clusteruuid004", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid003/clusters/clusteruuid004", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Get the specified resource pool in a Cloud Director site instance
Get the specified resource pools in a specified Cloud Director site.
GET /director_sites/{site_id}/pvdcs/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc-id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/go-sdk-core/v5/core" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { getDirectorSitesPvdcsOptions := vmwareService.NewGetDirectorSitesPvdcsOptions( "site_id", "pvdc_id", ) getDirectorSitesPvdcsOptions.SetAcceptLanguage("en-us") getDirectorSitesPvdcsOptions.SetXGlobalTransactionID("transaction1") pvdc, response, err := vmwareService.GetDirectorSitesPvdcs(getDirectorSitesPvdcsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(pvdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
VMware resource pool information.
Name of the resource pool. Resource pool names must be unique per Cloud Director site instance and they cannot be changed after creation.
Possible values: 1 ≤ length ≤ 50, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
pvdc-1Data center location to deploy the cluster. See
GET /director_site_regionsfor supported data center locations.Possible values: 1 ≤ length ≤ 25, Value must match regular expression
^[0-9a-zA-Z-\_]{1,25}$Example:
dal10The resource pool ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$The hyperlink of the resource pool resource.
List of VMware clusters to deploy on the instance. Clusters form VMware workload availability boundaries.
Possible values: number of items = 1
The status of the resource pool.
Possible values: [
creating,ready_to_use,deleting,deleted,updating]List of resource pool types.
Possible values: 1 ≤ number of items ≤ 30
Status Code
OK
Unauthorized
Not found
{ "id": "pvdcuuid003", "name": "pvdc-1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid003", "data_center_name": "dal10", "status": "creating", "clusters": [ { "id": "clusteruuid004", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid003/clusters/clusteruuid004", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" } ], "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
List clusters
List all VMware clusters of a Cloud Director site instance by specifying the instance ID.
GET /director_sites/{site_id}/pvdcs/{pvdc_id}/clustersRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc_id>/clusters' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listDirectorSitesPvdcsClustersOptions := vmwareService.NewListDirectorSitesPvdcsClustersOptions( "site_id", "pvdc_id", ) listDirectorSitesPvdcsClustersOptions.SetAcceptLanguage("en-us") listDirectorSitesPvdcsClustersOptions.SetXGlobalTransactionID("transaction1") clusterCollection, response, err := vmwareService.ListDirectorSitesPvdcsClusters(listDirectorSitesPvdcsClustersOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(clusterCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Return all clusters instances.
List of cluster objects.
Possible values: 0 ≤ number of items ≤ 256
Status Code
OK
Unauthorized
Not found
{ "clusters": [ { "id": "clusteruuid008", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid005/pvdcs/pvdcuuid/clusters/clusteruuid008", "data_center_name": "dal10", "director_site": { "id": "directorsiteuuid005", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid005", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid005" }, "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "instance_deleted": "2022-12-12 12:12:12Z", "host_count": 4, "name": "Cluster instance Name", "status": "creating", "host_profile": "bx2-metal-20x128", "billing_plan": "monthly", "storage_type": "nfs", "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 24000 } } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Create a cluster
Create a VMware cluster under a specified resource pool in a Cloud Director site instance.
POST /director_sites/{site_id}/pvdcs/{pvdc_id}/clustersRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
VMware Cluster order information. Clusters form VMware workload availability boundaries.
{
"name": "cluster_1",
"host_count": 3,
"file_shares": {
"STORAGE_TWO_IOPS_GB": 24000,
"STORAGE_FOUR_IOPS_GB": 24000,
"STORAGE_TEN_IOPS_GB": 8000
},
"host_profile": "BM_2S_20_CORES_192_GB"
}Name of the VMware cluster. Cluster names must be unique per Cloud Director site instance. Cluster names cannot be changed after creation.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
cluster_1Number of hosts in the VMware cluster.
Possible values: 2 ≤ value ≤ 25
The host type. IBM Cloud offers several different host types. Typically, the host type is selected based on the properties of the workload to be run in the VMware cluster.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[0-9a-zA-Z-\_]{1,128}$Example:
BM_2S_20_CORES_192_GBChosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }
curl -X POST 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc_id>/clusters' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "name": "cluster_1", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" }'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { fileSharesPrototypeModel := &vmwarev1.FileSharesPrototype{} createDirectorSitesPvdcsClustersOptions := vmwareService.NewCreateDirectorSitesPvdcsClustersOptions( "site_id", "pvdc_id", "cluster_1", int64(2), "BM_2S_20_CORES_192_GB", fileSharesPrototypeModel, ) createDirectorSitesPvdcsClustersOptions.SetAcceptLanguage("en-us") createDirectorSitesPvdcsClustersOptions.SetXGlobalTransactionID("transaction1") cluster, response, err := vmwareService.CreateDirectorSitesPvdcsClusters(createDirectorSitesPvdcsClustersOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(cluster, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A cluster resource
The cluster ID.
The cluster name.
The hyperlink of the cluster resource.
The time that the cluster is ordered.
The number of hosts in the cluster.
Possible values: 2 ≤ value ≤ 100
The status of the Cloud Director site cluster.
The location of deployed cluster.
Back link to associated Cloud Director site resource.
Examples:{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid002", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid002", "id": "directorsiteuuid002" }The name of the host profile.
The storage type of the cluster.
Possible values: [
nfs]The billing plan for the cluster.
Possible values: [
monthly]Chosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }The time that the cluster is provisioned and available to use.
Status Code
Ok
Bad Request
Unauthorized_Error
{ "id": "clusteruuid006", "data_center_name": "dal10", "director_site": { "id": "directorsiteuuid003", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid003", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid003" }, "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid003/pvdcs/pvdcuuid/clusters/clusteruuid006", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "instance_deleted": "2022-12-12 12:12:12Z", "host_count": 4, "name": "Cluster name", "status": "creating", "host_profile": "bx2-metal-20x128", "billing_plan": "monthly", "storage_type": "nfs", "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 24000 } }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }
Get a cluster
Get a specific VMware cluster from the resource pool in a Cloud Director site instance.
GET /director_sites/{site_id}/pvdcs/{pvdc_id}/clusters/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idThe cluster to query.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
cluster_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/{pvdc_id}/clusters/<cluster_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { getDirectorInstancesPvdcsClusterOptions := vmwareService.NewGetDirectorInstancesPvdcsClusterOptions( "site_id", "cluster_id", "pvdc_id", ) getDirectorInstancesPvdcsClusterOptions.SetAcceptLanguage("en-us") getDirectorInstancesPvdcsClusterOptions.SetXGlobalTransactionID("transaction1") cluster, response, err := vmwareService.GetDirectorInstancesPvdcsCluster(getDirectorInstancesPvdcsClusterOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(cluster, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A cluster resource
The cluster ID.
The cluster name.
The hyperlink of the cluster resource.
The time that the cluster is ordered.
The number of hosts in the cluster.
Possible values: 2 ≤ value ≤ 100
The status of the Cloud Director site cluster.
The location of deployed cluster.
Back link to associated Cloud Director site resource.
Examples:{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid002", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid002", "id": "directorsiteuuid002" }The name of the host profile.
The storage type of the cluster.
Possible values: [
nfs]The billing plan for the cluster.
Possible values: [
monthly]Chosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }The time that the cluster is provisioned and available to use.
Status Code
OK
Unauthorized
Not found
{ "id": "clusteruuid006", "data_center_name": "dal10", "director_site": { "id": "directorsiteuuid003", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid003", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid003" }, "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid003/pvdcs/pvdcuuid/clusters/clusteruuid006", "ordered_at": "2022-12-12 12:12:12Z", "provisioned_at": "2022-12-12 12:12:12Z", "instance_deleted": "2022-12-12 12:12:12Z", "host_count": 4, "name": "Cluster name", "status": "creating", "host_profile": "bx2-metal-20x128", "billing_plan": "monthly", "storage_type": "nfs", "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 24000 } }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Delete a cluster
Delete a cluster from a resource pool in a Cloud Director site instance by specifying the instance ID.
DELETE /director_sites/{site_id}/pvdcs/{pvdc_id}/clusters/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idThe cluster to query.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
cluster_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
curl -X DELETE 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc_id>/clusters/<cluster_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { deleteDirectorSitesPvdcsClusterOptions := vmwareService.NewDeleteDirectorSitesPvdcsClusterOptions( "site_id", "cluster_id", "pvdc_id", ) deleteDirectorSitesPvdcsClusterOptions.SetAcceptLanguage("en-us") deleteDirectorSitesPvdcsClusterOptions.SetXGlobalTransactionID("transaction1") clusterSummary, response, err := vmwareService.DeleteDirectorSitesPvdcsCluster(deleteDirectorSitesPvdcsClusterOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(clusterSummary, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
VMware Cluster basic information.
The cluster name.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_-]{0,49}$Example:
cluster_1Number of hosts in the VMware cluster.
Possible values: 2 ≤ value ≤ 25
The host type. IBM Cloud offers several different host types. Typically, the host type is selected based on the properties of the workload to be run in the VMware cluster.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[0-9a-zA-Z-\_]{1,128}$Example:
BM_2S_20_CORES_192_GBThe cluster ID.
The location of the deployed cluster.
The status of the cluster.
The hyperlink of the cluster resource.
Chosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }
Status Code
OK
Bad Request
Not found
{ "id": "clusteruuid003", "name": "cluster_1", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid/pvdcs/pvdcuuid/clusters/clusteruuid003", "status": "creating", "data_center_name": "dal10", "host_count": 3, "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 0, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 24000, "STORAGE_TEN_IOPS_GB": 8000 }, "host_profile": "BM_2S_20_CORES_192_GB" }{ "trace": "trace id", "status_code": 400, "errors": [ { "code": "m010_cannot_delete_workload_domain", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b is already deleting." } ] }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
Update a cluster
Update the number of hosts or file storage shares of a specific cluster in a specific Cloud Director site instance. VMware clusters must have between [2-25] hosts.
PATCH /director_sites/{site_id}/pvdcs/{pvdc_id}/clusters/{id}Auditing
Calling this method generates the following auditing events, depending on any listed conditions.
The event that is generated depends on whether the count passed in the request is larger than the existing number of hosts.
vmware.directorsite-host.addGenerated if
countis larger than existing number of hosts.vmware.directorsite-host.removeGenerated if
countis less than existing number of hosts.vmware.directorsite-nfs-storage.addGenerated if the storage size that is passed in the request is larger than the current storage size.
vmware.directorsite-nfs-storage.removeGenerated if the storage size that is passed in the request is smaller than the current storage size.
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique ID for the Cloud Director site in which the virtual data center was created.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
site_idThe cluster to query.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
cluster_idA unique ID for the resource pool in a Cloud Director site.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
pvdc_id
The cluster patch. Currently, specifying both file_shares and host_count in one call is not supported.
{
"host_count": 2
}Chosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }Number of hosts to add to or remove from the cluster.
Possible values: 2 ≤ value ≤ 25
curl -X PATCH 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc_id>/clusters/<cluster_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "host_count": 2 }'curl -X PATCH 'https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/<site_id>/pvdcs/<pvdc_id>/clusters/<cluster_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "file_shares": { "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 } }'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { clusterPatchModel := &vmwarev1.ClusterPatch{} clusterPatchModelAsPatch, asPatchErr := clusterPatchModel.AsPatch() updateDirectorSitesPvdcsClusterOptions := vmwareService.NewUpdateDirectorSitesPvdcsClusterOptions( "site_id", "cluster_id", "pvdc_id", clusterPatchModelAsPatch, ) updateDirectorSitesPvdcsClusterOptions.SetAcceptLanguage("en-us") updateDirectorSitesPvdcsClusterOptions.SetXGlobalTransactionID("transaction1") updateCluster, response, err := vmwareService.UpdateDirectorSitesPvdcsCluster(updateDirectorSitesPvdcsClusterOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(updateCluster, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Response of cluster update
The cluster ID.
The cluster name.
The hyperlink of the cluster resource.
The time that the cluster is ordered.
The number of hosts in the cluster.
Possible values: 2 ≤ value ≤ 100
The status of the Cloud Director site cluster.
The location of deployed cluster.
Back link to associated Cloud Director site resource.
Examples:{ "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::directorsite:directorsiteuuid002", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid002", "id": "directorsiteuuid002" }The name of the host profile.
The storage type of the cluster.
Possible values: [
nfs]The billing plan for the cluster.
Possible values: [
monthly]Chosen storage policies and their sizes.
Examples:{ "STORAGE_POINT_TWO_FIVE_IOPS_GB": 24000, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 48000, "STORAGE_TEN_IOPS_GB": 72000 }Information of request accepted.
Example:
The request has been accepted.ID to track the update operation of the cluster.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$The time that the cluster is provisioned and available to use.
Status Code
OK
Unauthorized
Not found
{ "id": "3b51c519-de2a-47d3-8a69-edf70e52097b", "director_site": { "id": "4b8d2641-5e1b-48c4-bd03-dd66edc824d8", "crn": "crn:v1:staging:public:vmware:us-south:a/3886cae42be94f6a89c4b7c282708f34::directorsite: 4b8d2641-5e1b-48c4-bd03-dd66edc824d8", "href": "https://api.us-south.vmware.cloud.ibm.com/director_sites/4b8d2641-5e1b-48c4-bd03-dd66edc824d8" }, "ordered_at": "2021-08-26T23:15:55.682215+00:00", "provisioned_at": "2021-08-26T23:15:55.682215+00:00", "host_count": 4, "name": "cluster_instance_1", "status": "creating", "data_center_name": "dal10", "deduplication_and_compression": true, "host_profile": "BM_2S_20_CORES_192_GB", "billing_plan": "hourly", "storage_type": "vsan", "file_shares": { "STORAGE_POINT_TWO_FIVE_IOPS_GB": 200, "STORAGE_TWO_IOPS_GB": 24000, "STORAGE_FOUR_IOPS_GB": 3, "STORAGE_TEN_IOPS_GB": 1 }, "message": "The request has been accepted.", "operation_id": "4b8d2641-5e1b-48c4-bd03-dd66edc824d7", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/director_sites/directorsiteuuid003/pvdcs/pvdcuuid/clusters/clusteruuid006", "instance_deleted": "2022-12-12 12:12:12Z" }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "trace": "a736a57f-0584-474f-8411-55dc7d9dc811", "status_code": 404, "errors": [ { "code": "m013_no_datacenters_found", "message": "The requested Cloud Director site instance acfb9e70-99ac-47fb-9fbc-38ce7f716e5b was not found." } ] }
List regions
List all IBM Cloud regions enabled for users to create a new Cloud Director site instance.
GET /director_site_regions
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_site_regions' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listDirectorSiteRegionsOptions := vmwareService.NewListDirectorSiteRegionsOptions() listDirectorSiteRegionsOptions.SetAcceptLanguage("en-us") listDirectorSiteRegionsOptions.SetXGlobalTransactionID("transaction1") directorSiteRegionCollection, response, err := vmwareService.ListDirectorSiteRegions(listDirectorSiteRegionsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSiteRegionCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Success. The request was successfully processed.
Regions of Cloud Director sites.
Possible values: 1 ≤ number of items ≤ 30
Status Code
Enabled regions found.
{ "director_site_regions": [ { "name": "us-south", "data_centers": [ { "display_name": "Dallas 10", "name": "dal10", "uplink_speed": "25GB" }, { "display_name": "Dallas 12", "name": "dal12", "uplink_speed": "25GB" }, { "display_name": "Dallas 13", "name": "dal13", "uplink_speed": "25GB" } ], "endpoint": "https://us-south.managed.vmware.cloud.ibm.com" } ] }
Get all multitenant Cloud Director sites
Retrieve a collection of multitenant Cloud Director sites.
GET /multitenant_director_sites
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/multitenant_director_sites' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listMultitenantDirectorSitesOptions := vmwareService.NewListMultitenantDirectorSitesOptions() listMultitenantDirectorSitesOptions.SetAcceptLanguage("en-us") listMultitenantDirectorSitesOptions.SetXGlobalTransactionID("transaction1") multitenantDirectorSiteCollection, response, err := vmwareService.ListMultitenantDirectorSites(listMultitenantDirectorSitesOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(multitenantDirectorSiteCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
List of multitenant Cloud Director sites.
Multitenant Cloud Director sites.
Possible values: 1 ≤ number of items ≤ 30
Status Code
Multitenant Cloud Director sites found.
{ "multitenant_director_sites": [ { "display_name": "Dallas Multitenant", "name": "dal_multi-tenant", "id": "123456789", "private_only": false, "services": [ "veeam", "vcda" ], "region": "us-south", "pvdcs": [ { "name": "Pvdc_1", "id": "123456789", "private_only": false, "data_center_name": "dal12", "provider_types": [ { "name": "on_demand" }, { "name": "reserved" } ] } ] } ] }
List host profiles
List available host profiles that can be used when you create a Cloud Director site instance. IBM Cloud offers several different host types. Typically, the host type is selected based on the properties of the workload to be run in the VMware cluster.
GET /director_site_host_profiles
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/director_site_host_profiles' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listDirectorSiteHostProfilesOptions := vmwareService.NewListDirectorSiteHostProfilesOptions() listDirectorSiteHostProfilesOptions.SetAcceptLanguage("en-us") listDirectorSiteHostProfilesOptions.SetXGlobalTransactionID("transaction1") directorSiteHostProfileCollection, response, err := vmwareService.ListDirectorSiteHostProfiles(listDirectorSiteHostProfilesOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(directorSiteHostProfileCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Success. The request was successfully processed.
The list of available host profiles.
Possible values: 2 ≤ number of items ≤ 25
Status Code
Host profiles found.
{ "director_site_host_profiles": [ { "cpu": 32, "family": "cascade", "features": [ "UEFI", "NVMe" ], "id": "BM_2S_32_CORES_192_GB", "manufacturer": "intel", "processor": "Dual Intel 5218 Xeon", "ram": 192, "socket": 2, "speed": "2.3 GHz" }, { "cpu": 48, "family": "cascade", "features": [ "UEFI", "NVMe" ], "id": "BM_2S_48_CORES_384_GB", "manufacturer": "intel", "processor": "Dual Intel 8260 Xeon", "ram": 384, "socket": 2, "speed": "2.4 GHz" }, { "cpu": 48, "family": "cascade", "features": [ "UEFI", "NVMe" ], "id": "BM_2S_48_CORES_768_GB", "manufacturer": "intel", "processor": "Dual Intel 8260 Xeon", "ram": 768, "socket": 2, "speed": "2.4 GHz" }, { "cpu": 96, "family": "cascade", "features": [ "UEFI", "NVMe" ], "id": "BM_4S_96_CORES_1536_GB", "manufacturer": "intel", "processor": "Quad Intel 8260 Xeon", "ram": 1536, "socket": 4, "speed": "2.4 GHz" } ] }
List virtual data centers
List all virtual data centers (VDCs) that user has access to in the cloud account.
GET /vdcs
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { listVdcsOptions := vmwareService.NewListVdcsOptions() listVdcsOptions.SetAcceptLanguage("en-us") vdcCollection, response, err := vmwareService.ListVdcs(listVdcsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vdcCollection, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A list of virtual data centers (VDCs).
A list of virtual data centers (VDCs).
Possible values: 0 ≤ number of items ≤ 128
Status Code
The request to list virtual data centers (VDCs) completed successfully.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
{ "vdcs": [ { "id": "id", "provisioned_at": "2022-12-12 12:12:12Z", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::vdc:vdcuuid", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/id", "director_site": { "id": "directorsiteuuid010", "pvdc": { "id": "pvdcuuid010", "provider_type": { "name": "paygo" } }, "url": "https://sdaldir04.vmware-solutions.cloud.ibm.com/tenant/org" }, "edges": [ { "id": "edge-id-1", "public_ips": [ "192.168.0.2", "192.168.0.3", "192.168.0.4", "192.168.0.5", "192.168.0.6", "192.168.0.7" ], "private_ips": [], "size": "medium", "status": "ready_to_use", "transit_gateways": [ { "id": "id", "status": "ready_to_use", "region": "us-south", "connections": [ { "name": "connection", "transit_gateway_connection_name": "transit_gateway_connection", "local_gateway_ip": "192.168.1.1", "remote_gateway_ip": "192.168.1.2", "local_tunnel_ip": "192.168.2.1", "remote_tunnel_ip": "192.168.2.2", "local_bgp_asn": 987654321, "remote_bgp_asn": 987654321, "status": "ready_to_use", "network_account_id": "28e4d90ac7504be694471ee66e70d0d5", "network_type": "unbound_gre_tunnel", "base_network_type": "classic", "zone": "us-south-1" } ] } ], "type": "performance", "version": "2.0", "private_only": false } ], "status_reasons": [], "name": "vdc", "ordered_at": "2022-12-12 12:12:12Z", "org_href": "https://api.us-south.vmware.cloud.ibm.com/api/org/id", "org_name": "org", "rhel_activation_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "resource_group": { "id": "default" }, "status": "ready_to_use", "type": "single_tenant", "fast_provisioning_enabled": false, "rhel_byol": false, "windows_byol": false } ] }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Create a virtual data center
Create a virtual data center (VDC) with specified configurations.
POST /vdcs
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Information required to create a virtual data center (VDC).
{
"edge": {
"size": "medium",
"type": "performance"
},
"name": "sampleVDC",
"resource_group": {
"id": "resourcegroupid"
},
"fast_provisioning_enabled": false,
"director_site": {
"id": "directorsiteuuid006",
"pvdc": {
"id": "pvdcuuid006"
}
}
}A human readable ID for the virtual data center (VDC). Use a name that is unique to your region.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[a-zA-Z][A-Za-z0-9_\-]{1,128}$Example:
sampleVDCThe Cloud Director site in which to deploy the virtual data center (VDC).
The networking edge to be deployed on the virtual data center (VDC).
Indicates whether to enable or not fast provisioning.
The resource group to associate with the resource instance. If not specified, the default resource group in the account is used.
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is required when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is required when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
Indicates if the RHEL VMs will be using the license from IBM or the customer will use their own license (BYOL).
Default:
falseIndicates if the Microsoft Windows VMs will be using the license from IBM or the customer will use their own license (BYOL).
Default:
false
curl -X POST 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json' -d '{ "edge": { "size": "medium", "type": "performance" }, "name": "sampleVDC", "fast_provisioning_enabled": false, "director_site": { "id": "directorsiteuuid", "pvdc": { "id": "pvdc_uuid" } } }'
package main import ( "encoding/json" "fmt" "github.com/IBM/go-sdk-core/v5/core" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { directorSitePvdcModel := &vmwarev1.DirectorSitePVDC{ ID: core.StringPtr("pvdc_id"), } vdcDirectorSitePrototypeModel := &vmwarev1.VDCDirectorSitePrototype{ ID: core.StringPtr("site_id"), Pvdc: directorSitePvdcModel, } createVdcOptions := vmwareService.NewCreateVdcOptions( "sampleVDC", vdcDirectorSitePrototypeModel, ) createVdcOptions.SetAcceptLanguage("en-us") vdc, response, err := vmwareService.CreateVdc(createVdcOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A VMware virtual data center (VDC). VMware VDCs are used to deploy and run VMware virtualized networking and run VMware workloads. VMware VDCs form loose boundaries of networking and workload where networking and workload can be shared or optionally isolated between VDCs. You can deploy one or more VDCs in an instance except when you are using the minimal instance configuration, which consists of 2 hosts (2-Socket 32 Cores, 192 GB RAM). With the minimal instance configuration, you can start with just one VDC and a performance network edge of medium size until additional hosts are added to the cluster.
The URL of this virtual data center (VDC).
A unique ID for the virtual data center (VDC).
A unique ID for the virtual data center (VDC) in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The Cloud Director site in which to deploy the virtual data center (VDC).
The VMware NSX-T networking edges deployed on the virtual data center (VDC). NSX-T edges are used for bridging virtualization networking to the physical public-internet and IBM private networking.
Possible values: 0 ≤ number of items ≤ 128
Information about why the request to create the virtual data center (VDC) cannot be completed.
Possible values: 0 ≤ number of items ≤ 128
A human readable ID for the virtual data center (VDC).
The time that the virtual data center (VDC) is ordered.
The URL of the organization that owns the VDC.
The name of the VMware Cloud Director organization that contains this virtual data center (VDC). VMware Cloud Director organizations are used to create strong boundaries between VDCs. There is a complete isolation of user administration, networking, workloads, and VMware Cloud Director catalogs between different Director organizations.
The resource group to associate with the VDC.
Determines the state of the virtual data center.
Possible values: [
creating,ready_to_use,modifying,deleting,deleted,failed]Determines whether this virtual data center is in a single-tenant or multitenant Cloud Director site.
Possible values: [
single_tenant,multitenant]Determines whether this virtual data center has fast provisioning enabled or not.
Indicates if the RHEL VMs will be using the license from IBM or the customer will use their own license (BYOL).
Indicates if the Microsoft Windows VMs will be using the license from IBM or the customer will use their own license (BYOL).
The time that the virtual data center (VDC) is provisioned and available to use.
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
The time that the virtual data center (VDC) is deleted.
Indicates if the VDC is HA-enabled for compute only, compute and network, or network only. If not present, the VDC is not HA-enabled.
Red Hat Enterprise Linux activation key.
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
Status Code
The request to create a virtual data center (VDC) is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "id", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::vdc:vdcuuid", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/id", "director_site": { "id": "directorsiteuuid007", "pvdc": { "id": "pvdcuuid007", "provider_type": { "name": "paygo" } }, "url": "https://sdaldir04.vmware-solutions.cloud.ibm.com/tenant/org" }, "edges": [], "status_reasons": [], "name": "vdc", "ordered_at": "2022-12-12 12:12:12Z", "org_href": "https://api.us-south.vmware.cloud.ibm.com/api/org/id", "org_name": "org", "rhel_activation_key": "xxxxxxx-xxx-xxxx-xxxx-xxxxxxxxxx", "resource_group": { "id": "default" }, "status": "creating", "type": "single_tenant", "fast_provisioning_enabled": false, "rhel_byol": false, "windows_byol": false }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Get a virtual data center
Get details about a virtual data center (VDC) by specifying the VDC ID.
GET /vdcs/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a specified virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_id
curl -X GET 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { getVdcOptions := vmwareService.NewGetVdcOptions( "vdc_id", ) getVdcOptions.SetAcceptLanguage("en-us") vdc, response, err := vmwareService.GetVdc(getVdcOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A VMware virtual data center (VDC). VMware VDCs are used to deploy and run VMware virtualized networking and run VMware workloads. VMware VDCs form loose boundaries of networking and workload where networking and workload can be shared or optionally isolated between VDCs. You can deploy one or more VDCs in an instance except when you are using the minimal instance configuration, which consists of 2 hosts (2-Socket 32 Cores, 192 GB RAM). With the minimal instance configuration, you can start with just one VDC and a performance network edge of medium size until additional hosts are added to the cluster.
The URL of this virtual data center (VDC).
A unique ID for the virtual data center (VDC).
A unique ID for the virtual data center (VDC) in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The Cloud Director site in which to deploy the virtual data center (VDC).
The VMware NSX-T networking edges deployed on the virtual data center (VDC). NSX-T edges are used for bridging virtualization networking to the physical public-internet and IBM private networking.
Possible values: 0 ≤ number of items ≤ 128
Information about why the request to create the virtual data center (VDC) cannot be completed.
Possible values: 0 ≤ number of items ≤ 128
A human readable ID for the virtual data center (VDC).
The time that the virtual data center (VDC) is ordered.
The URL of the organization that owns the VDC.
The name of the VMware Cloud Director organization that contains this virtual data center (VDC). VMware Cloud Director organizations are used to create strong boundaries between VDCs. There is a complete isolation of user administration, networking, workloads, and VMware Cloud Director catalogs between different Director organizations.
The resource group to associate with the VDC.
Determines the state of the virtual data center.
Possible values: [
creating,ready_to_use,modifying,deleting,deleted,failed]Determines whether this virtual data center is in a single-tenant or multitenant Cloud Director site.
Possible values: [
single_tenant,multitenant]Determines whether this virtual data center has fast provisioning enabled or not.
Indicates if the RHEL VMs will be using the license from IBM or the customer will use their own license (BYOL).
Indicates if the Microsoft Windows VMs will be using the license from IBM or the customer will use their own license (BYOL).
The time that the virtual data center (VDC) is provisioned and available to use.
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
The time that the virtual data center (VDC) is deleted.
Indicates if the VDC is HA-enabled for compute only, compute and network, or network only. If not present, the VDC is not HA-enabled.
Red Hat Enterprise Linux activation key.
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
Status Code
The request to get a virtual data center (VDC) completed successfully.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "id", "provisioned_at": "2022-12-12 12:12:12Z", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::vdc:vdcuuid", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/id", "director_site": { "id": "directorsiteuuid008", "pvdc": { "id": "pvdcuuid008", "provider_type": { "name": "paygo" } }, "url": "https://sdaldir04.vmware-solutions.cloud.ibm.com/tenant/org" }, "edges": [ { "id": "edge-id-1", "public_ips": [ "192.168.0.2", "192.168.0.3", "192.168.0.4", "192.168.0.5", "192.168.0.6", "192.168.0.7" ], "private_ips": [], "size": "medium", "status": "ready_to_use", "transit_gateways": [ { "id": "id", "region": "us-south", "status": "ready_to_use", "connections": [ { "name": "connection", "transit_gateway_connection_name": "transit_gateway_connection", "local_gateway_ip": "192.168.1.1", "remote_gateway_ip": "192.168.1.2", "local_tunnel_ip": "192.168.2.1", "remote_tunnel_ip": "192.168.2.2", "local_bgp_asn": 987654321, "remote_bgp_asn": 987654321, "status": "ready_to_use", "network_account_id": "28e4d90ac7504be694471ee66e70d0d5", "network_type": "unbound_gre_tunnel", "base_network_type": "classic", "zone": "us-south-1" } ] } ], "type": "performance", "version": "2.0", "private_only": false } ], "status_reasons": [], "name": "vdc", "ordered_at": "2022-12-12 12:12:12Z", "org_href": "https://api.us-south.vmware.cloud.ibm.com/api/org/id", "org_name": "org", "rhel_activation_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "resource_group": { "id": "resourcegroupuuid008" }, "status": "ready_to_use", "type": "single_tenant", "fast_provisioning_enabled": false, "rhel_byol": false, "windows_byol": false }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Delete a virtual data center
Delete a virtual data center (VDC) by specifying the VDC ID.
DELETE /vdcs/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a specified virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_id
curl -X DELETE 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>' -H 'authorization: Bearer <IAM_token>' -H 'Content-Type:application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { deleteVdcOptions := vmwareService.NewDeleteVdcOptions( "vdc_id", ) deleteVdcOptions.SetAcceptLanguage("en-us") vdc, response, err := vmwareService.DeleteVdc(deleteVdcOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A VMware virtual data center (VDC). VMware VDCs are used to deploy and run VMware virtualized networking and run VMware workloads. VMware VDCs form loose boundaries of networking and workload where networking and workload can be shared or optionally isolated between VDCs. You can deploy one or more VDCs in an instance except when you are using the minimal instance configuration, which consists of 2 hosts (2-Socket 32 Cores, 192 GB RAM). With the minimal instance configuration, you can start with just one VDC and a performance network edge of medium size until additional hosts are added to the cluster.
The URL of this virtual data center (VDC).
A unique ID for the virtual data center (VDC).
A unique ID for the virtual data center (VDC) in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The Cloud Director site in which to deploy the virtual data center (VDC).
The VMware NSX-T networking edges deployed on the virtual data center (VDC). NSX-T edges are used for bridging virtualization networking to the physical public-internet and IBM private networking.
Possible values: 0 ≤ number of items ≤ 128
Information about why the request to create the virtual data center (VDC) cannot be completed.
Possible values: 0 ≤ number of items ≤ 128
A human readable ID for the virtual data center (VDC).
The time that the virtual data center (VDC) is ordered.
The URL of the organization that owns the VDC.
The name of the VMware Cloud Director organization that contains this virtual data center (VDC). VMware Cloud Director organizations are used to create strong boundaries between VDCs. There is a complete isolation of user administration, networking, workloads, and VMware Cloud Director catalogs between different Director organizations.
The resource group to associate with the VDC.
Determines the state of the virtual data center.
Possible values: [
creating,ready_to_use,modifying,deleting,deleted,failed]Determines whether this virtual data center is in a single-tenant or multitenant Cloud Director site.
Possible values: [
single_tenant,multitenant]Determines whether this virtual data center has fast provisioning enabled or not.
Indicates if the RHEL VMs will be using the license from IBM or the customer will use their own license (BYOL).
Indicates if the Microsoft Windows VMs will be using the license from IBM or the customer will use their own license (BYOL).
The time that the virtual data center (VDC) is provisioned and available to use.
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
The time that the virtual data center (VDC) is deleted.
Indicates if the VDC is HA-enabled for compute only, compute and network, or network only. If not present, the VDC is not HA-enabled.
Red Hat Enterprise Linux activation key.
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
Status Code
The request to delete a virtual data center (VDC) is accepted.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "id", "provisioned_at": "2022-12-12 12:12:12Z", "crn": "crn:v1:bluemix:public:vmware:us-south:a/accuntid::vdc:vdcuuid", "deleted_at": "2022-01-02 12:00:00+00", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/id", "director_site": { "id": "directorsiteuuid009", "pvdc": { "id": "pvdcuuid009", "provider_type": { "name": "paygo" } }, "url": "https://sdaldir04.vmware-solutions.cloud.ibm.com/tenant/org" }, "edges": [ { "id": "edge-id-1", "public_ips": [ "192.168.0.2", "192.168.0.3", "192.168.0.4", "192.168.0.5", "192.168.0.6", "192.168.0.7" ], "private_ips": [], "size": "medium", "status": "ready_to_use", "transit_gateways": [], "type": "performance", "version": "1.0", "private_only": false } ], "status_reasons": [], "name": "vdc", "ordered_at": "2022-12-12 12:12:12Z", "org_href": "https://api.us-south.vmware.cloud.ibm.com/api/org/id", "org_name": "org", "resource_group": { "id": "default" }, "rhel_activation_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "status": "deleting", "type": "single_tenant", "fast_provisioning_enabled": false, "rhel_byol": false, "windows_byol": false }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a specified virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_id
Information required to update a virtual data center (VDC).
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is required when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
Indicates whether to enable or not fast provisioning.
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is required when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
curl -X PATCH 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json' -d '{ "fast_provisioning_enabled": true }'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { vdcPatchModel := &vmwarev1.VDCPatch{} vdcPatchModelAsPatch, asPatchErr := vdcPatchModel.AsPatch() updateVdcOptions := vmwareService.NewUpdateVdcOptions( "vdc_id", vdcPatchModelAsPatch, ) updateVdcOptions.SetAcceptLanguage("en-us") vdc, response, err := vmwareService.UpdateVdc(updateVdcOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(vdc, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
A VMware virtual data center (VDC). VMware VDCs are used to deploy and run VMware virtualized networking and run VMware workloads. VMware VDCs form loose boundaries of networking and workload where networking and workload can be shared or optionally isolated between VDCs. You can deploy one or more VDCs in an instance except when you are using the minimal instance configuration, which consists of 2 hosts (2-Socket 32 Cores, 192 GB RAM). With the minimal instance configuration, you can start with just one VDC and a performance network edge of medium size until additional hosts are added to the cluster.
The URL of this virtual data center (VDC).
A unique ID for the virtual data center (VDC).
A unique ID for the virtual data center (VDC) in IBM Cloud.
Possible values: length ≤ 512, Value must match regular expression
^crn:v[0-9](:([A-Za-z0-9-._~!$&'()*+,;=@/]|%[0-9A-Z]{2})*){8}$The Cloud Director site in which to deploy the virtual data center (VDC).
The VMware NSX-T networking edges deployed on the virtual data center (VDC). NSX-T edges are used for bridging virtualization networking to the physical public-internet and IBM private networking.
Possible values: 0 ≤ number of items ≤ 128
Information about why the request to create the virtual data center (VDC) cannot be completed.
Possible values: 0 ≤ number of items ≤ 128
A human readable ID for the virtual data center (VDC).
The time that the virtual data center (VDC) is ordered.
The URL of the organization that owns the VDC.
The name of the VMware Cloud Director organization that contains this virtual data center (VDC). VMware Cloud Director organizations are used to create strong boundaries between VDCs. There is a complete isolation of user administration, networking, workloads, and VMware Cloud Director catalogs between different Director organizations.
The resource group to associate with the VDC.
Determines the state of the virtual data center.
Possible values: [
creating,ready_to_use,modifying,deleting,deleted,failed]Determines whether this virtual data center is in a single-tenant or multitenant Cloud Director site.
Possible values: [
single_tenant,multitenant]Determines whether this virtual data center has fast provisioning enabled or not.
Indicates if the RHEL VMs will be using the license from IBM or the customer will use their own license (BYOL).
Indicates if the Microsoft Windows VMs will be using the license from IBM or the customer will use their own license (BYOL).
The time that the virtual data center (VDC) is provisioned and available to use.
The vCPU usage limit on the virtual data center (VDC). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 10000
The time that the virtual data center (VDC) is deleted.
Indicates if the VDC is HA-enabled for compute only, compute and network, or network only. If not present, the VDC is not HA-enabled.
Red Hat Enterprise Linux activation key.
The RAM usage limit on the virtual data center (VDC) in GB (1024^3 bytes). Supported for VDCs deployed on a multitenant Cloud Director site. This property is applicable when the resource pool type is reserved.
Possible values: 0 ≤ value ≤ 40960
Status Code
The request to update a virtual data center (VDC) is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
The request cannot be completed at this time. Try again later.
{ "id": "id", "crn": "crn:v1:bluemix:public:vmware:us-south:a/account_id::vdc:id", "href": "https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/id", "director_site": { "ha": "compute_only", "id": "12345678-9abc-defg-ijkl-mnopqrstuvwx", "pvdc": { "id": "12345678-9abc-defg-ijkl-mnopqrstuvwx", "provider_type": { "name": "paygo" } }, "url": "https://sdaldir04.vmware-solutions.cloud.ibm.com/tenant/org" }, "edges": [ { "id": "edge-id-1", "public_ips": [ "192.168.0.2", "192.168.0.3", "192.168.0.4", "192.168.0.5", "192.168.0.6", "192.168.0.7" ], "private_ips": [], "size": "medium", "status": "ready_to_use", "type": "performance", "transit_gateways": [], "version": "1.0", "private_only": false } ], "status_reasons": [], "name": "vdc", "ordered_at": "2022-01-01 12:00:00+00", "org_href": "https://api.us-south.vmware.cloud.ibm.com/api/org/id", "org_name": "org", "provisioned_at": "2022-01-01 12:00:00+00", "resource_group": { "id": "default" }, "rhel_activation_key": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "status": "modifying", "type": "single_tenant", "fast_provisioning_enabled": false, "rhel_byol": false, "windows_byol": false }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Add IBM Transit Gateway connections to edge
Add IBM Transit Gateway connections to an edge and virtual data center.
PUT /vdcs/{vdc_id}/edges/{edge_id}/transit_gateways/{id}Request
Custom Headers
Size of the message body in bytes.
Allowable values: [
0]Possible values: value = 0
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_idA unique ID for an edge.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
edge_idA unique ID for an IBM Transit Gateway.
Possible values: length = 36, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Example:
transit_gateway_id
The region where the IBM Transit Gateway is deployed. If not specified, the IBM Transit Gateway is assumed to be in the same region as the Cloud Director site where the VDC is deployed.
The region where the IBM Transit Gateway is deployed.
Possible values: 1 ≤ length ≤ 25, Value must match regular expression
^(?!\s*$).+Example:
jp-tok
curl -X PUT 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>/edges/<edge_id>/transit_gateways/<transit_gateway_id>' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json' -H 'Content-Length: 0'curl -X PUT 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>/edges/<edge_id>/transit_gateways/<transit_gateway_id>' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json' -d '{ "region": "jp-tok" }'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { addTransitGatewayConnectionsOptions := vmwareService.NewAddTransitGatewayConnectionsOptions( "vdc_id", "edge_id", "transit_gateway_id", int64(0), ) addTransitGatewayConnectionsOptions.SetAcceptLanguage("en-us") transitGateway, response, err := vmwareService.AddTransitGatewayConnections(addTransitGatewayConnectionsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(transitGateway, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
An IBM Transit Gateway.
A unique ID for an IBM Transit Gateway.
IBM Transit Gateway connections.
Possible values: 1 ≤ number of items ≤ 128
Determines the state of the IBM Transit Gateway based on its connections.
Possible values: [
pending,creating,ready_to_use,deleting]The region where the IBM Transit Gateway is deployed.
Status Code
The request to connect to an IBM Transit Gateway is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "20bcbdac-27ed-4186-a1da-de6f28de401e", "region": "jp-tok", "connections": [ { "name": "connection", "status": "pending", "network_account_id": "28e4d90ac7504be694471ee66e70d0d5", "network_type": "unbound_gre_tunnel", "base_network_type": "classic", "zone": "jp-tok-1" } ], "status": "pending" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Remove IBM Transit Gateway connections from edge
Remove IBM Transit Gateway connections from an edge and virtual data center.
DELETE /vdcs/{vdc_id}/edges/{edge_id}/transit_gateways/{id}Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_idA unique ID for an edge.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
edge_idA unique ID for an IBM Transit Gateway.
Possible values: length = 36, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$Example:
transit_gateway_id
curl -X DELETE 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>/edges/<edge_id>/transit_gateways/<transit_gateway_id>' -H 'Authorization: Bearer <IAM_token>' -H 'Content-Type: application/json'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { removeTransitGatewayConnectionsOptions := vmwareService.NewRemoveTransitGatewayConnectionsOptions( "vdc_id", "edge_id", "transit_gateway_id", ) removeTransitGatewayConnectionsOptions.SetAcceptLanguage("en-us") transitGateway, response, err := vmwareService.RemoveTransitGatewayConnections(removeTransitGatewayConnectionsOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(transitGateway, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
An IBM Transit Gateway.
A unique ID for an IBM Transit Gateway.
IBM Transit Gateway connections.
Possible values: 1 ≤ number of items ≤ 128
Determines the state of the IBM Transit Gateway based on its connections.
Possible values: [
pending,creating,ready_to_use,deleting]The region where the IBM Transit Gateway is deployed.
Status Code
The request to disconnect from an IBM Transit Gateway is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "20bcbdac-27ed-4186-a1da-de6f28de401e", "region": "us-south", "connections": [ { "name": "connection", "transit_gateway_connection_name": "transit_gateway_connection", "local_gateway_ip": "192.168.1.1", "remote_gateway_ip": "192.168.1.2", "local_tunnel_ip": "192.168.2.1", "remote_tunnel_ip": "192.168.2.2", "local_bgp_asn": 987654321, "remote_bgp_asn": 987654321, "status": "ready_to_use", "network_account_id": "28e4d90ac7504be694471ee66e70d0d5", "network_type": "unbound_gre_tunnel", "base_network_type": "classic", "zone": "us-south-1" } ], "status": "ready_to_use" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Swap primary and secondary locations for network regional HA edges
Swap the primary and secondary locations for network regional high availability (HA) edges.
PATCH /vdcs/{vdc_id}/edges/{edge_id}/swap_primary_and_secondary_network_locationsRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-us
Path Parameters
A unique ID for a virtual data center.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
vdc_idA unique ID for an edge.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
edge_id
curl -X PATCH 'https://api.us-south.vmware.cloud.ibm.com/v1/vdcs/<vdc_id>/edges/<edge_id>/swap_primary_and_secondary_network_locations' -H 'Authorization: Bearer <IAM_token>'
package main import ( "encoding/json" "fmt" "github.com/IBM/vmware-go-sdk/vmwarev1" ) var ( vmwareService *vmwarev1.VmwareV1 ) func main() { swapHaEdgePrimaryAndSecondarySiteOptions := vmwareService.NewSwapHaEdgePrimaryAndSecondarySiteOptions( "vdc_id", "edge_id" ) swapHaEdgePrimaryAndSecondarySiteOptions.SetAcceptLanguage("en-us") swapHaEdgeSite, response, err := vmwareService.SwapHaEdgePrimaryAndSecondarySite(swapHaEdgePrimaryAndSecondarySiteOptions) if err != nil { panic(err) } b, _ := json.MarshalIndent(swapHaEdgeSite, "", " ") fmt.Println(string(b)) fmt.Println(response) }
Response
Example:
The request to swap the locations of the network regional HA edge is accepted
Status Code
The request to swap the locations of the network regional HA edge is accepted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "message": "The request to swap the locations of the network regional HA edge is accepted" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
List VMware licenses
List the VMware licenses provided by IBM if you are entitled to them.
GET /licenses
Request
No Request Parameters
curl -X GET 'https://licensing.vmware.cloud.ibm.com/v1/licenses' -H 'Authorization: Bearer <IAM_TOKEN>'
Response
Collection of licenses.
Licenses array.
Possible values: 0 ≤ number of items ≤ 512
Status Code
The collection of VMware licenses was returned.
You are not allowed to make this request because of a missing or bad authentication token.
{ "licenses": [ { "license_keys": [ { "value": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX", "name": "VMware NSX 4 Networking" } ], "version": "8" }, { "license_keys": [ { "value": "YYYYY-YYYYY-YYYYY-YYYYY-YYYYY", "name": "VMware vSphere 8 Enterprise Plus for VCF" }, { "value": "ZZZZZ-ZZZZZ-ZZZZZ-ZZZZZ-ZZZZZ", "name": "VMware vSAN 8 for Foundation (Supports vCenter Server 8.0.0a and later)" } ], "version": "8.0u2b" } ] }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
List Usage Meter registrations
List all your Usage Meter registrations.
GET /usage_meter_registrations
Request
No Request Parameters
curl -X GET 'https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations' -H 'Authorization: Bearer <IAM_TOKEN>'
Response
Collection of Usage Meter registrations.
List of Usage Meter registrations.
Possible values: 0 ≤ number of items ≤ 512
Status Code
The collection of Usage Meter registrations was returned.
{ "usage_meter_registrations": [ { "id": "04588250-131a-41d6-ac8c-671f768aaa18", "crn": "crn:v1:bluemix:public:vmware:global:a/a16bedb7571f43f8920a49e037f598d7::usage-meter:04588250-131a-41d6-ac8c-671f768aaa18", "name": "name", "status": "active", "usage_meter": { "id": "4242b01d-2db2-4d7b-ad5d-0792c61295a8", "health": "ok" }, "locked": false, "created_at": "2024-11-18T17:24:37.720474+00:00", "href": "https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations/04588250-131a-41d6-ac8c-671f768aaa18" } ] }
Create a Usage Meter registration
Register your Usage Meter to start reporting usage.
POST /usage_meter_registrations
Request
Details for creating a Usage Meter registration.
Default
{
"name": "string",
"usage_meter": {
"id": "4242b01d-2db2-4d7b-ad5d-0792c61295a8"
}
}Human readable identifier.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$Details to identify a Usage Meter.
curl -X POST 'https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations' -H 'Authorization: Bearer <IAM_TOKEN>' -H 'Content-Type: application/json' -d '{ "name": "string", "usage_meter": { "id": "4242b01d-2db2-4d7b-ad5d-0792c61295a8" } }'
Response
Details of a Usage Meter registration.
Unique identifier.
Possible values: 36 ≤ length ≤ 128, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$The Cloud Resource Name (CRN) for this registration.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$Human readable identifier.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$Indicates if a Usage Meter registration is active. If the value is "active", then the Usage Meter is currently registered and in use.
Possible values: [
active]Details of a Usage Meter.
Indicates if a Usage Meter registration is locked and cannot be deleted.
The date and time when the Usage Meter registration was created.
Possible values: 25 ≤ length ≤ 32
The URL with ID as parameter.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^((http(s)?):\/\/)?[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?$Used to activate your Usage Meter after registration so that it can start to report usage.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$
Status Code
The Usage Meter registration was created.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The request cannot be completed because the service is not available.
{ "id": "04588250-131a-41d6-ac8c-671f768aaa18", "crn": "crn:v1:bluemix:public:vmware:global:a/a16bedb7571f43f8920a49e037f598d7::usage-meter:04588250-131a-41d6-ac8c-671f768aaa18", "name": "name", "status": "active", "usage_meter": { "id": "4242b01d-2db2-4d7b-ad5d-0792c61295a8", "health": "ok" }, "locked": false, "created_at": "2024-11-18T17:24:37.720474+00:00", "href": "https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations/04588250-131a-41d6-ac8c-671f768aaa18" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Request
Path Parameters
Identifier for a Usage Meter registration.
Possible values: 36 ≤ length ≤ 128, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
curl -X GET 'https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations/<id>' -H 'Authorization: Bearer <IAM_TOKEN>'
Response
Details of a Usage Meter registration.
Unique identifier.
Possible values: 36 ≤ length ≤ 128, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$The Cloud Resource Name (CRN) for this registration.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$Human readable identifier.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$Indicates if a Usage Meter registration is active. If the value is "active", then the Usage Meter is currently registered and in use.
Possible values: [
active]Details of a Usage Meter.
Indicates if a Usage Meter registration is locked and cannot be deleted.
The date and time when the Usage Meter registration was created.
Possible values: 25 ≤ length ≤ 32
The URL with ID as parameter.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^((http(s)?):\/\/)?[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?$Used to activate your Usage Meter after registration so that it can start to report usage.
Possible values: 1 ≤ length ≤ 512, Value must match regular expression
^[^\s]+.*$
Status Code
The Usage Meter registration was returned.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
{ "id": "04588250-131a-41d6-ac8c-671f768aaa18", "crn": "crn:v1:bluemix:public:vmware:global:a/a16bedb7571f43f8920a49e037f598d7::usage-meter:04588250-131a-41d6-ac8c-671f768aaa18", "name": "name", "status": "active", "usage_meter": { "id": "4242b01d-2db2-4d7b-ad5d-0792c61295a8", "health": "ok" }, "locked": false, "created_at": "2024-11-18T17:24:37.720474+00:00", "href": "https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations/04588250-131a-41d6-ac8c-671f768aaa18" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Delete a Usage Meter registration
Unregister your Usage Meter to stop reporting usage.
DELETE /usage_meter_registrations/{id}Request
Path Parameters
Identifier for a Usage Meter registration.
Possible values: 36 ≤ length ≤ 128, Value must match regular expression
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
curl -X DELETE 'https://licensing.vmware.cloud.ibm.com/v1/usage_meter_registrations/<id>' -H 'Authorization: Bearer <IAM_TOKEN>'
Response
Status Code
The Usage Meter registration was deleted.
The input data is either incomplete or in the wrong format.
You are not allowed to make this request because of a missing or bad authentication token.
You are not allowed to make this request because you do not have enough permissions to perform this operation.
The requested resource cannot be found.
The request cannot be completed because the service is not available.
{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }{ "errors": [ { "code": "bad_request_problem", "message": "The service encountered an unexpected error", "more_info": "/link/to/error/doc" } ], "status_code": 400, "trace": "some trace info" }
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Response
List of VCF on VPC regions
List of VCF on VPC Regions
Possible values: 1 ≤ number of items ≤ 30
- regions
region id
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$region name
Possible values: 3 ≤ length ≤ 15
region display name
Possible values: 3 ≤ length ≤ 15
geography
Possible values: 3 ≤ length ≤ 15
is region default?
list of zones supported for this region
Possible values: 1 ≤ number of items ≤ 4
- zones
zone id
Possible values: 3 ≤ length ≤ 15
zone name
Possible values: 3 ≤ length ≤ 21
zone display name
Possible values: 3 ≤ length ≤ 30
is zone default?
Status Code
OK
Internal Server error
{ "regions": [ { "id": "region-001", "name": "us-east-1", "display_name": "US East 1", "geography": "North America", "default": true, "zones": [ { "id": "zone-001", "name": "us-east-1a", "display_name": "US East 1a", "default": true }, { "id": "zone-002", "name": "us-east-1b", "display_name": "US East 1b", "default": false } ] } ] }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
List VPC host-profiles supported for VCF on VPC
List VPC host-profiles supported for VCF on VPC per region
GET /vcfs/hostprofiles
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Response
Success. The request was successfully processed.
List of VCF on VPC Host Profiles
Possible values: 0 ≤ number of items ≤ 21
- hostprofiles
hostprofile id
Possible values: 3 ≤ length ≤ 20
hostprofile name
Possible values: 3 ≤ length ≤ 20
hostprofile planid
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$hostprofile category
Possible values: 3 ≤ length ≤ 30
hostprofile core
hostprofile amount of RAM
hostprofile vcpu
list of bandwidth supported for this profile
Possible values: 1 ≤ number of items ≤ 4
- bandwidth
bandwidth value
is default bandwidth?
list of localdisk supported for this profile
Possible values: 1 ≤ number of items ≤ 16
is hostprofile enabled?
is default hostprofile?
Status Code
OK
Internal Server error
{ "hostprofiles": [ { "id": "hostprofile-001", "name": "test-metal-64x512", "bandwidth": [ { "default": true, "display_value": 100 } ], "category": "Balanced", "core": 32, "localdisk": [ "1x480", "4x7680" ], "planid": "46fba1c7-621e-451e-9925-b5eb7218d42e", "processor": "x86_64", "ram": 512, "vcpu": 64, "region_id": "region-001", "region_name": "us-east-1", "default": true } ] }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
List VCF on VPC pricing metrics per region
List VCF on VPC pricing metrics per region
GET /vcfs/pricing
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Response
Success. The request was successfully processed.
List Pricing info of VCF on VPC Private Path
Possible values: 0 ≤ number of items ≤ 30
- privatepath_pricing
Region name
Possible values: 3 ≤ length ≤ 20
Pricing description
Possible values: 3 ≤ length ≤ 100
Metrics name
Possible values: 3 ≤ length ≤ 30
list of prices
Possible values: 0 ≤ number of items ≤ 30
- price_list
Country name
Possible values: 3 ≤ length ≤ 20
Currency value
Possible values: 3 ≤ length ≤ 30
Price info per location
Possible values: 0 ≤ number of items ≤ 30
- prices
Price value
Quantity value
List Pricing info of VCF on VPC NLB
Possible values: 0 ≤ number of items ≤ 30
- nlb_pricing
Region name
Possible values: 3 ≤ length ≤ 20
Pricing description
Possible values: 3 ≤ length ≤ 100
Metrics name
Possible values: 3 ≤ length ≤ 30
list of prices
Possible values: 0 ≤ number of items ≤ 30
- price_list
Country name
Possible values: 3 ≤ length ≤ 20
Currency value
Possible values: 3 ≤ length ≤ 30
Price info per location
Possible values: 0 ≤ number of items ≤ 30
- prices
Price value
Quantity value
List Pricing info of VCF on VPC VSI
Possible values: 0 ≤ number of items ≤ 30
- vsi_pricing
Region name
Possible values: 3 ≤ length ≤ 20
Pricing description
Possible values: 3 ≤ length ≤ 100
Metrics name
Possible values: 3 ≤ length ≤ 30
list of prices
Possible values: 0 ≤ number of items ≤ 30
- price_list
Country name
Possible values: 3 ≤ length ≤ 20
Currency value
Possible values: 3 ≤ length ≤ 30
Price info per location
Possible values: 0 ≤ number of items ≤ 30
- prices
Price value
Quantity value
List Pricing info of VCF on VPC DNS
Possible values: 0 ≤ number of items ≤ 30
- dns_pricing
Region name
Possible values: 3 ≤ length ≤ 20
Pricing description
Possible values: 3 ≤ length ≤ 100
Metrics name
Possible values: 3 ≤ length ≤ 30
list of prices
Possible values: 0 ≤ number of items ≤ 30
- price_list
Country name
Possible values: 3 ≤ length ≤ 20
Currency value
Possible values: 3 ≤ length ≤ 30
Price info per location
Possible values: 0 ≤ number of items ≤ 30
- prices
Price value
Quantity value
List Pricing info of VCF on VPC Host Profiles
Possible values: 0 ≤ number of items ≤ 30
- hostprofile_pricing
Region name
Possible values: 3 ≤ length ≤ 20
Pricing description
Metrics name
Possible values: 3 ≤ length ≤ 30
list of prices
Possible values: 0 ≤ number of items ≤ 30
- price_list
Country name
Possible values: 3 ≤ length ≤ 20
Currency value
Possible values: 3 ≤ length ≤ 30
Price info per location
Possible values: 0 ≤ number of items ≤ 30
- prices
Price value
Quantity value
HostProfile name
HostProfile ID
Possible values: 3 ≤ length ≤ 20
Status Code
OK
Internal Server error
{ "privatepath_pricing": [ { "description": "Instance", "metric": "INSTANCES", "price_list": [ { "country": "USA", "currency": "USD", "prices": [ { "price": 7.3, "quantity_tier": 1 } ] }, { "country": "USD", "currency": "USD", "prices": [ { "price": 7.3, "quantity_tier": 1 } ] } ], "region": "us-east-1" } ], "nlb_pricing": [ { "description": "GB per Month", "metric": "GB_MONTH", "price_list": [ { "country": "USA", "currency": "USD", "prices": [ { "price": 3.3, "quantity_tier": 1 } ] }, { "country": "USD", "currency": "USD", "prices": [ { "price": 3.3, "quantity_tier": 1 } ] } ], "region": "us-east-1" } ], "vsi_pricing": [ { "description": "Memory per hr", "metric": "MEMORY_HOURS", "price_list": [ { "country": "USA", "currency": "USD", "prices": [ { "price": 3.3, "quantity_tier": 1 } ] }, { "country": "USD", "currency": "USD", "prices": [ { "price": 3.3, "quantity_tier": 1 } ] } ], "region": "us-east-1" } ], "dns_pricing": [ { "description": "DNS-ZONES", "metric": "ITEMS", "price_list": [ { "country": "USA", "currency": "USD", "prices": [ { "price": 9.3, "quantity_tier": 1 } ] }, { "country": "USD", "currency": "USD", "prices": [ { "price": 9.3, "quantity_tier": 1 } ] } ], "region": "global" } ], "hostprofile_pricing": [ { "description": "BMS Hour", "hostprofile": "test-metal-64x512", "hostprofile_id": "hostprofile-001", "metric": "BMS_SERVER_HOURS", "price_list": [ { "country": "USA", "currency": "USD", "prices": [ { "price": 5.3, "quantity_tier": 1 } ] }, { "country": "USD", "currency": "USD", "prices": [ { "price": 5.3, "quantity_tier": 1 } ] } ], "region": "us-east-1" } ] }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Calculate estimated usable vSAN storage based on local host storage
Based on the host profiles local disk storage and the quantity of hosts this API estimates the usable ammount of VMware vSAN storage
POST /vcfs/vsan/calculatestorage
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Required info to calculate resources
Number of hosts (Min 4 - Max 25)
specifications for customized order
- customized_hardware
Bare metal local disk size and count
- disks
Size of requested disk, in GB (1024 - 10240)
Number of local disks in each bare metal server
Use Optane cache (true or false)
Default:
false
Response
VCF on VPC vSAN storage estimation
vSAN storage estimated information
- storage
vSAN storage assumptions
Possible values: 0 ≤ number of items ≤ 20, 3 ≤ length ≤ 100
vSAN storage result
Status Code
OK
Internal Server error
{ "storage": { "assumptions": [ "vSAN type: All Flash" ], "result": { "available_storage": { "hint": "If vSAN deduplication and compression is enabled, a ratio of 2.0 is assumed", "unit": "TB", "value": 80.5 }, "total_raw_storage": { "unit": "TB", "value": 76.5 } } } }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Response
List of VCF on VPC Instances
List of VCF on VPC Instances
Possible values: 0 ≤ number of items ≤ 10
- vcfs
vcf_id
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$
Status Code
Ok
Unauthorized_Error
Internal Server Error
{ "vcfs": [ { "created_at": "2025-04-24T05:17:55.677602Z", "id": "bdd6f4d1-b635-4340-ac99-ec1b7911c7ab", "location": "US South (us-south)", "name": "example-vcf", "status": "Creating" }, { "created_at": "2024-04-24T05:17:55.677602Z", "id": "asd6f4yt-1234-9874-85ds-ec1b7911c7ab", "location": "US South (us-south)", "name": "example-vcf2", "status": "Creating" } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Request
Custom Headers
User's Refresh Token
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Order Specification
{
"instance_name": "vcf-instance-001",
"resource_group": "string",
"tags": "test",
"consolidated_cluster_name": "consolidated-cluster-01",
"zone": "us-south-3",
"host_profile": "HP-BM-100G",
"host_count": 4,
"bm_uplink_speed": "100 Gbps",
"domain_name": "corp.example.com",
"management_nsx_edge_vm_size": "large",
"vpc_network": "10.100.0.0/22",
"hostname_prefix": "host",
"hostname_list": [
"host-000",
"host-001",
"host-002",
"host-003"
],
"network_type": "public"
}Name of the instance
Resource Group
Consolidated cluster name
Takes Zone id
Host profile for the selected region and zone
Number of hosts (Min 4 - Max 25)
Possible values: 4 ≤ value ≤ 25
Baremetal uplink speed (50 Gbps, 100 Gbps, 200 Gbps)
Domain name
Management NSX Edge VM size
Allowable values: [
medium,large,xl]IP Range (e.g., 10.100.0.0/24)
Tags used for Resource Controller
Must start with a lowercase letter, end with a lowercase letter or digit, \ contain only lowercase letters, digits, or hyphens, and cannot contain \ consecutive hyphens.
Possible values: 1 ≤ length ≤ 10, Value must match regular expression
^[a-z](?:[a-z0-9]|-(?!-))*[a-z0-9]$List of hostnames customized by user.
Possible values: 4 ≤ number of items ≤ 25, 1 ≤ length ≤ 13, Value must match regular expression
^[a-z](?:[a-z0-9]|-(?!-))*[a-z0-9]$Indicates a public or private network type
Allowable values: [
private,public]
Response
List of VCF on VPC Instances
instance uuid
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$vcf name
Possible values: 3 ≤ length ≤ 20
account id
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$resource group id
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$tags
Possible values: 0 ≤ length ≤ 256
crn
date of creation
Possible values: 20 ≤ length ≤ 29
Status Code
Order accepted
Unauthorized_Error
Unauthorized_Error_Required_Role
Internal Server Error
{ "id": "abcd", "name": "vcf1", "account_id": "account123", "resource_group_id": "resource_grp_1", "tags": "", "crn": "crn_1", "created_at": "2024-02-22T18:12:10.878203+00:00" }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
Response
VCF on VPC Instance
Core details of the VCF deployment
- vcf
ID of the IBM Cloud account
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Creation timestamp of the instance
Cloud Resource Name of the VCF instance
Unique ID of the VCF instance
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$ID of the VPC associated with this VCF
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Root domain used for DNS configuration
Possible values: 3 ≤ length ≤ 100
Version of the VCF platform deployed
Possible values: 3 ≤ length ≤ 250
Name of the VCF instance
Possible values: 3 ≤ length ≤ 50
Current status of the VCF instance
Possible values: 8 ≤ length ≤ 30
Physical location of the deployment
Possible values: 3 ≤ length ≤ 30
Email of the user who requested the deployment
Possible values: 4 ≤ length ≤ 50
Name of the associated resource group
Possible values: 1 ≤ length ≤ 100
UUID of the associated resource group
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$List of tags associated with the instance
Possible values: 0 ≤ number of items ≤ 30
Availability zone for the deployment
Possible values: 1 ≤ length ≤ 30
Geographic region details
- region_data
Friendly name for the region
Possible values: 1 ≤ length ≤ 100
Continent or region category (e.g., North America)
Possible values: 1 ≤ length ≤ 100
Internal region identifier
Possible values: 5 ≤ length ≤ 100
Canonical region name (e.g., us-south)
Possible values: 1 ≤ length ≤ 30
VMware Aria configuration details
- vmware_aria
Fully qualified domain name of the Aria instance
Possible values: 3 ≤ length ≤ 250
IP address of the Aria instance
Possible values: 7 ≤ length ≤ 15
Username for the admin user
Possible values: 3 ≤ length ≤ 20
Password for the admin user
Possible values: 3 ≤ length ≤ 25
Password for the root user
Possible values: 3 ≤ length ≤ 25
Configuration for VMware Usage Meter
- usage_meter
Name of the usage meter server
Possible values: 3 ≤ length ≤ 25
IP address of the usage meter
Possible values: 7 ≤ length ≤ 15
Admin user for the usage meter
Possible values: 3 ≤ length ≤ 20
Password for the admin user
Possible values: 3 ≤ length ≤ 25
NSX-T manager configuration
- vmware_nsxt
NSX-T manager hostname
Possible values: 8 ≤ length ≤ 50
IP address of the NSX-T manager
Possible values: 7 ≤ length ≤ 15
Root password for NSX-T manager
Configuration of the SDDC deployment
- sddc_info
Unique ID of the SDDC
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Name of the SDDC
Possible values: 7 ≤ length ≤ 25
IP address of the SDDC
Possible values: 7 ≤ length ≤ 15
Username of the root user
Possible values: 3 ≤ length ≤ 20
Password for the root user
Possible values: 3 ≤ length ≤ 25
Automated configuration user
Possible values: 3 ≤ length ≤ 20
Password for the automated user
Possible values: 3 ≤ length ≤ 25
Local admin user
Possible values: 3 ≤ length ≤ 20
Password for the local admin user
Possible values: 3 ≤ length ≤ 25
User for Day 2 operations
Possible values: 3 ≤ length ≤ 20
Password for Day 2 operations
Possible values: 3 ≤ length ≤ 25
Information about vCenter configuration
- vcenter_info
ID of the vCenter instance
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Name of the vCenter
Possible values: 7 ≤ length ≤ 25
IP address of the vCenter
Possible values: 7 ≤ length ≤ 15
Root account for vCenter
Possible values: 3 ≤ length ≤ 20
Admin username
Possible values: 3 ≤ length ≤ 20
Admin password
Possible values: 3 ≤ length ≤ 25
NSX-T cluster information
- nsxt_info
ID of the NSX-T cluster
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Name of the NSX-T cluster
Possible values: 7 ≤ length ≤ 25
Virtual IP of the NSX-T cluster
Possible values: 7 ≤ length ≤ 15
List of the hosts for the NSX-T
Possible values: 4 ≤ number of items ≤ 25
- hosts
Hostname
Possible values: 5 ≤ length ≤ 35
Host IP address
Possible values: 7 ≤ length ≤ 15
Root account name
Possible values: 7 ≤ length ≤ 25
Admin account name
Possible values: 7 ≤ length ≤ 25
Audit account name
Possible values: 7 ≤ length ≤ 25
DNS configuration details
- dns
CRN of the DNS instance
URL for the DNS dashboard
Possible values: 7 ≤ length ≤ 200
DNS name
Possible values: 3 ≤ length ≤ 30
DNS domain
Possible values: 3 ≤ length ≤ 50
Metadata for delete operations
- vcf_metadata
Timestamp of the latest delete attempt
List of delete error messages
Possible values: 3 ≤ length ≤ 100
List of domains in the VCF instance
Possible values: 1 ≤ number of items ≤ 10
- domains
Unique identifier for the domain
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Name of the domain
Possible values: 5 ≤ length ≤ 56
Type of the domain (e.g., management)
Possible values: 5 ≤ length ≤ 56
Type of network used by the domain
Possible values: 5 ≤ length ≤ 56
Cluster configuration
- cluster
Name of the cluster
Possible values: 5 ≤ length ≤ 56
Current status of the cluster
Possible values: 5 ≤ length ≤ 56
Type of the cluster
Possible values: 5 ≤ length ≤ 56
Number of hosts in the cluster
Possible values: 4 ≤ value ≤ 25
Network type of the cluster
Possible values: 5 ≤ length ≤ 56
List of subnets for the cluster
Possible values: 6 ≤ number of items ≤ 128
- subnets
URL of the subnet
Possible values: 5 ≤ length ≤ 512
Name of the subnet
Possible values: 5 ≤ length ≤ 56
IP range of the subnet
Possible values: 7 ≤ length ≤ 512
Hosts associated with the domain
Possible values: 4 ≤ number of items ≤ 25
- hosts
Host ID
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$Creation timestamp
IP address of the host
Possible values: 7 ≤ length ≤ 15
Hostname
Possible values: 7 ≤ length ≤ 56
Host password
Possible values: 7 ≤ length ≤ 21
Host profile
Possible values: 4 ≤ length ≤ 21
Host status
Possible values: 4 ≤ length ≤ 56
Host user account
Possible values: 4 ≤ length ≤ 21
Delete metadata for the host
- host_metadata
Timestamp of latest delete attempt
List of delete error messages
Possible values: 4 ≤ length ≤ 512
Host storage configuration
- storage
Type of storage
Possible values: 4 ≤ length ≤ 56
Total disk size
Possible values: 2 ≤ length ≤ 56
Disk quantity and layout
Possible values: 4 ≤ length ≤ 128
Disk technology used
Possible values: 4 ≤ length ≤ 128
Uplink speed for the storage
Possible values: 4 ≤ length ≤ 21
NSX-T edge node configurations
- edge_nodes
Size of the edge nodes
Possible values: 3 ≤ length ≤ 30
Primary edge node configuration
- edge_node_0
Hostname of the edge node
Possible values: 4 ≤ length ≤ 56
IP of the edge node
Possible values: 7 ≤ length ≤ 15
Password for edge node account
Possible values: 4 ≤ length ≤ 21
Secondary edge node configuration
- edge_node_1
Hostname of the edge node
Possible values: 4 ≤ length ≤ 56
IP of the edge node
Possible values: 7 ≤ length ≤ 15
Password for edge node account
Possible values: 7 ≤ length ≤ 21
Uplink configurations for the NSX-T edge cluster
Possible values: 1 ≤ number of items ≤ 10
- nsxt_edge_cluster_uplinks
Name of the uplink
Possible values: 3 ≤ length ≤ 56
IP address of the uplink
Possible values: 7 ≤ length ≤ 15
VLAN ID used by the uplink
Possible values: 1 ≤ length ≤ 15
VLAN name used by the uplink
Possible values: 3 ≤ length ≤ 128
Single Sign-On domain configured for the VCF
Possible values: 0 ≤ length ≤ 250
Status Code
OK
Unauthorized_Error
Unauthorized_Error_Required_Role
VCF instance not found
Internal Server Error
{ "vcf": { "account_id": "3881def42de43t9a89c4b7c282708f34", "created_at": "2025-04-24T05:17:55.677602Z", "crn": "crn:v1:bluemix:vcf::...", "id": "bdd6f4d1-b635-4340-ac99-ec1b7911c7ab", "vpc_id": "vpc_id_123", "root_domain": "ibm.zone.priv", "vcf_version": "vcf_version_no", "name": "example-vcf", "vmware_aria": { "name": "xint-vrslcm01.ibmcloud.priv", "ip": "172.27.17.20", "admin_user": "vcfadmin@local", "admin_password": "***", "root_password": "***" }, "usage_meter": { "name": "usage-meter.ibmcloud.priv", "ip": "10.100.1.135", "admin_user": "usagemeter", "admin_password": "***" }, "vmware_nsxt": { "name": "fqdn.ibmcloud.priv", "ip": "10.100.0.150", "root_password": "***" }, "region_data": { "display_name": "US South", "geography": "North America", "id": "region-us-south-001", "name": "us-south" }, "requester": "user@example.com", "resource_group_id": "d1586ff2-215b-486d-8767-1c57598f0ef0", "resource_group": "Default", "sso_domain": "example.com", "status": "Creating", "tags_list": [ "tag1", "tag2" ], "zone": "us-south-1", "location": "Dallas (us-south)", "sddc_info": { "id": "d1586ff2-215b-486d-8767-1c57598f0ef0", "name": "sddc-mock", "ip_address": "192.168.100.10", "root_user": "root", "root_password": "***", "auto_user": "vcf", "auto_password": "***", "local_user": "admin@local", "local_account_password": "***", "day2_user": "ibm_admin", "day2_password": "***" }, "vcenter_info": { "id": "48c8a1e1-6429-4d7d-84b4-c9c976d46e33", "name": "vsphere-mock", "ip_address": "10.0.0.5", "root_account": "mocked_password", "admin_username": "administrator@vsphere.local", "admin_password": "***" }, "nsxt_info": { "id": "48c8a1e1-6429-4d7d-84b4-c9c976d46e33", "name": "nsx_mock", "virtual_ip_address": "10.0.0.2", "hosts": [ { "name": "mgmt-nsx-t-0", "ip": "192.168.1.1" }, { "name": "mgmt-nsx-t-1", "ip": "192.168.1.2" }, { "name": "mgmt-nsx-t-2", "ip": "192.168.1.3" } ], "root_account": "mocked_password", "admin_account": "mocked_password", "audit_account": "mocked_password" }, "dns": { "crn": "mock_crn", "dashboard_url": "mock_dns_url", "name": "mock_crn_name", "domain": "mock_domain" }, "vcf_metadata": { "latest_operation_attempt_date": "2025-04-24T05:17:55.677602Z", "delete_error": [ "sddc_password_incorrect", "nsx_password_incorrect" ] }, "domains": [ { "id": "5167c692-821d-4d53-bed1-672b66a347f5", "name": "my domain", "domain_type": "management", "network_type": "private", "cluster": { "name": "br-sao-2-m1", "status": "Available", "cluster_type": "Consolidated", "host_count": 2, "network_type": "private", "subnets": [ { "url": "vni-large-y86vpc-br-sao-2-host.ibm.priv", "name": "vni-large-y86vpc-br-sao-2-host", "ip_range": "10.100.0.0/25" }, { "url": "vni-large-y86vpc-br-sao-2-host.ibm.priv", "name": "vni-large-y86vpc-br-sao-3-host", "ip_range": "10.100.10.0/25" } ] }, "hosts": [ { "id": "random-hostname-id", "created_at": "2025-05-15T20:33:59.356315+00:00", "ip": "10.100.1.4", "name": "vcfvpc-fvt-esx001", "password": "******", "profile": "mx3d-metal-192x2048", "status": "Available", "user": "root", "host_metadata\"": { "latest_operation_attempt_date": "2025-04-24T05:17:55.677602Z", "delete_error": [ "sddc_password_incorrect", "nsx_password_incorrect" ] }, "storage": { "storage_type": "vSAN OSA", "disk_size": "3200 GB", "disk_number": "8 X 4 GB", "disk_type": "NVMe U.2 SSDs", "uplink_speed": "100 Gbps" } } ], "edge_nodes": { "edge_node_size": "Extra large", "edge_node_0": { "name": "mgmt-edge-0.ibm.cloud.priv", "ip": "10.100.0.144", "account_password": "***" }, "edge_node_1": { "name": "mgmt-edge-1.ibm.cloud.priv", "ip": "10.100.0.145", "account_password": "***" } }, "nsxt_edge_cluster_uplinks": [ { "name": "edge_0", "ip": "172.198.61.2", "vlan_id": "2712", "vlan_name": "vlan-nic-mgmt10-uplink-private-edge-0" }, { "name": "edge_1", "ip": "172.198.61.3", "vlan_id": "2712", "vlan_name": "vlan-nic-mgmt10-uplink-private-edge-1" }, { "name": "edge_2", "ip": "172.198.61.4", "vlan_id": "2712", "vlan_name": "vlan-nic-mgmt10-uplink-private-edge-2" } ] } ] } }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "exceptionvcfnotfound", "message": "“VCF Not found”", "more_info": "Traceback (): raise ExceptionVCFNotFound" } ], "status_code": 404, "trace": "b04971ed-a782-4289-8e77-efa1fdfc40cb" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Delete VCF on VPC instance with the given id
Delete VCF on VPC instance with the given id
DELETE /vcfs/{vcf_id}Request
Custom Headers
User's Refresh Token
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
Response
delete vcf instance for given account_id
Id of the deleted vcf instance
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$id of the task gorup to delete the vcf
trace id of the tasks to delete the vcf
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$
Status Code
Instance deleted
Unauthorized_Error
Unauthorized_Error_Required_Role
VCF on VPC instance not found
Internal Server error
{ "id": "87b6c8b2-108b-419a-8562-5dfe2df01edd", "task_group_id": 1598, "trace_id": "6452f6a2-793a-463d-b7ed-f4d14a06763d" }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "exceptionvcfnotfound", "message": "“VCF Not found”", "more_info": "Traceback (): raise ExceptionVCFNotFound" } ], "status_code": 404, "trace": "b04971ed-a782-4289-8e77-efa1fdfc40cb" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
Response
Response of transaction
Status of transaction
Status Code
Ok
Unauthorized_Error
Unauthorized_Error_Required_Role
VCF on VPC instance not found
Internal server error
{ "status_success": true }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "exceptionvcfnotfound", "message": "“VCF Not found”", "more_info": "Traceback (): raise ExceptionVCFNotFound" } ], "status_code": 404, "trace": "b04971ed-a782-4289-8e77-efa1fdfc40cb" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Add one or more hosts to a VCF on VPC instance
Add one or more hosts to a VCF on VPC instance
POST /vcfs/{vcf_id}/domain/{domain_id}/hostRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$A unique identifier for the Domain.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
Order Specification
{
"host_profile": "HP-BM-100G",
"host_count": 1,
"bm_uplink_speed": "100 Gbps",
"hostname_prefix": "host",
"hostname_list": [
"host004"
]
}Host profile for the selected region and zone
Possible values: 3 ≤ length ≤ 20
Number of hosts (Min 1 - Max 25)
Possible values: 1 ≤ value ≤ 25
Baremetal uplink speed (50 Gbps, 100 Gbps, 200 Gbps)
Possible values: 2 ≤ length ≤ 10
Must start with a lowercase letter, end with a lowercase letter or digit, \ contain only lowercase letters, digits, or hyphens, and cannot contain \ consecutive hyphens.
Possible values: 1 ≤ length ≤ 10, Value must match regular expression
^[a-z](?:[a-z0-9]|-(?!-))*[a-z0-9]$List of hostnames customized by user.
Possible values: 1 ≤ number of items ≤ 25, 1 ≤ length ≤ 13, Value must match regular expression
^[a-z](?:[a-z0-9]|-(?!-))*[a-z0-9]$
Response
VCF on VPC Add host
vcf-vpc instance status
Possible values: 8 ≤ length ≤ 30
uuid for tracking
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$
Status Code
Add host accepted
Unauthorized_Error
Unauthorized_Error_Required_Role
Internal Server Error
{ "status": "Modifying", "trace_id": "db484d3d-23fb-4eae-8364-9c5d4205af6a" }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Remove one or more hosts from a VCF on VPC instance
Remove one or more hosts from a VCF on VPC instance
PATCH /vcfs/{vcf_id}/domain/{domain_id}/hostRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$A unique identifier for the Domain.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
Remove host Specification
{
"hosts": [
"host-1"
]
}List of Hosts
Possible values: 4 ≤ number of items ≤ 25
Response
VCF on VPC Remove host
list of host with its status
Possible values: 4 ≤ number of items ≤ 25
- hosts
name of the host to be deleted
Possible values: 3 ≤ length ≤ 20
host status
Possible values: 8 ≤ length ≤ 30
any error conditions encountered while executing the remove operation
Possible values: 3 ≤ length ≤ 100
vcf-vpc instance status
Possible values: 3 ≤ length ≤ 20
id of the task group to remove host from the vcf
uuid for tracking
Possible values: length ≤ 128, Value must match regular expression
^[-0-9a-z]+$
Status Code
Removing host accepted
Unauthorized_Error
Unauthorized_Error_Required_Role
Internal Server Error
{ "hosts": [ { "host": "host-1", "status": "Deleting", "error_message": "" }, { "host": "host-2", "status": "Failed", "error_message": "The host is still assigned to a cluster" } ], "status": "Modifying", "task_group_id": 25, "trace_id": "d3ddb484-23fb-4eae-8364-9c5d4205af6a" }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Change password for sddc manager: ibm_admin
Change password for sddc manager: ibm_admin
PATCH /vcfs/{vcf_id}/sddcmgr/ibm_admin/passwordRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
New password
{
"password": "Ab1@Cd2?Ef3%Gh4^"
}A strong password that must meet the following criteria: - At least 16 characters long - Starts with a letter or digit - Contains only letters (A–Z, a–z), digits (0–9), and special characters: @ ? % ^ - Includes at least 2 lowercase letters - Includes at least 2 uppercase letters - Includes at least 2 digits - Includes at least 2 of the special characters: @ ? % ^ - Must not contain the same character repeated 3 or more times in a row
Possible values: Value must match regular expression
^(?=[A-Za-z0-9])(?=[A-Za-z0-9@?%^]{16,}$)[A-Za-z0-9@?%^]+$
Response
Response of transaction
Status of transaction
Status Code
Status of transaction
Unauthorized_Error
Internal Server Error
{ "status_success": true }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Change password for nsx manager: ibm_admin
Change password for nsx manager: ibm_admin
PATCH /vcfs/{vcf_id}/nsxmgr/ibm_admin/passwordRequest
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Path Parameters
A unique identifier for the VCF on VPC Instance.
Possible values: 1 ≤ length ≤ 64, Value must match regular expression
^[-0-9a-z_]+$
New password
{
"password": "Ab1@Cd2?Ef3%Gh4^"
}A strong password that must meet the following criteria: - At least 16 characters long - Starts with a letter or digit - Contains only letters (A–Z, a–z), digits (0–9), and special characters: @ ? % ^ - Includes at least 2 lowercase letters - Includes at least 2 uppercase letters - Includes at least 2 digits - Includes at least 2 of the special characters: @ ? % ^ - Must not contain the same character repeated 3 or more times in a row
Possible values: Value must match regular expression
^(?=[A-Za-z0-9])(?=[A-Za-z0-9@?%^]{16,}$)[A-Za-z0-9@?%^]+$
Response
Response of transaction
Status of transaction
Status Code
Status of transaction
Unauthorized_Error
Internal Server Error
{ "status_success": true }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Verify if the VCFon VPC name exists under same cloud account and region
Verify if the VCFon VPC name exists under same cloud account with in the same region
POST /vcfs/name
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Order Specification
Name of the instance
Example:
vcf-instance-001
Response
Flag to confirm if name exist or not
Flag to confirm if name exist or not
Status Code
Order accepted
Unauthorized_Error
Internal Server Error
{ "existing_name": true }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Retrieve List of hostnames for VPC hosts used in VCF on VPC.
Retrieve List of hostnames
GET /vcfs/hostnames
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Query Parameters
Number of hostnames to generate
Optional prefix for the hostnames
Possible values: 1 ≤ length ≤ 13
Response
List of hostnames
Array of generated hostnames
Possible values: 1 ≤ number of items ≤ 25
Status Code
OK
Unauthorized_Error
Unauthorized_Error_Required_Role
VCF instance not found
Internal Server Error
{ "hostnames": [ "host-000", "host-001", "host-002" ] }{ "hostnames": [ "custom_prefix-000", "custom_prefix-001", "custom_prefix-002" ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "exception_resource_group", "message": "There are not enough permisions for the selected resource group", "more_info": "Traceback (): raise Exception(f\"No resource group crn was found for {account_id}" } ], "status_code": 403, "trace": "90fe9b8f-0cb7-4747-9e12-03e8ce868051" }{ "errors": [ { "code": "exceptionvcfnotfound", "message": "“VCF Not found”", "more_info": "Traceback (): raise ExceptionVCFNotFound" } ], "status_code": 404, "trace": "b04971ed-a782-4289-8e77-efa1fdfc40cb" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }
Verifies if the list of hostnames are unique and valid
Verifies if the list of hostnames are valid
POST /vcfs/hostnames
Request
Custom Headers
Language.
Possible values: 1 ≤ length ≤ 256, Value must match regular expression
^[A-Za-z0-9-,;=\.\*\s]{1,256}$Example:
en-usTransaction ID.
Possible values: 1 ≤ length ≤ 128, Value must match regular expression
^[A-Za-z0-9_-]{1,128}$Example:
transaction1
Order Specification
List of hostnames
Possible values: 1 ≤ number of items ≤ 25
Examples:[ "host1", "host2", "host3" ]
Response
Indicates whether each hostname in the list is valid or not
List of hostnames to validate
Possible values: 1 ≤ number of items ≤ 25
- hostnames
The hostname being validated
Indicates if the hostname is valid
Status Code
Order accepted
Unauthorized_Error
Internal Server Error
{ "hostnames": [ { "hostname": "vcf-node-001", "is_valid": true }, { "hostname": "invalid_host_#1", "is_valid": false } ] }{ "errors": [ { "code": "unauthorized", "message": "The server could not verify that you are authorized to access the URL requested. You either supplied the wrong credentials (e.g. a bad password), or your browser doesn't understand how to supply the credentials required.", "more_info": "NoneType: None\n" } ], "status_code": 401, "trace": "26578124-d72c-465c-8b8d-f7098e39250c" }{ "errors": [ { "code": "internal_server_error", "message": "Internal server error. Your request cannot be processed.", "more_info": "Traceback (...), raise IntrenalServerError: Unexpected error occured" } ], "status_code": 500, "trace": "request_tracing_uuid" }