Cloud Providers¶
Overview¶
This document describes the API to list, create, modify and delete cloud providers.
REST Endpoint: /mgmt/cm/cloud/providers¶
Requests¶
GET /mgmt/cm/cloud/providers/<id>¶
Request Parameters¶
None
Query Parameters¶
None
Response¶
HTTP/1.1 200 OK
Name | Type | Description |
---|---|---|
name | string | Name of the provider. |
description | string | A brief description of the provider. |
providerType | string | The type of cloud provider (e.g. VMware, AWS, Azure). |
awsProperties | object | Fields associated with AWS providers. |
accessKeyId | string | The AWS access key ID that BIG-IQ should use. |
secretAccessKey | string | The AWS secret access key that BIG-IQ should use. |
vmwProperties | object | Fields associated with VMware providers. |
vCenterHostname | string | The vCenter host. |
azureProperties | object | Fields associated with Azure providers. |
azureCloud | string | The Azure Cloud environment. The default is Azure. |
clientId | string | The Client GUID. |
servicePrincipalSecret | string | Service Principal Secret. |
subscriptionId | string | The subscripton GUID. |
tenantId | string | The Tenant GUID. |
Permissions¶
Role | Allow |
---|---|
admin | Yes |
POST /mgmt/cm/cloud/providers¶
Request Parameters¶
Name | Type | Required | Description |
---|---|---|---|
name | string | True | Name of the provider. |
description | string | False | A brief description of the provider. |
providerType | string | True | The type of cloud provider (e.g. VMware, AWS, Azure). |
awsProperties | object | False | Fields associated with AWS providers. |
accessKeyId | string | True | The AWS access key ID that BIG-IQ should use. |
secretAccessKey | string | True | The AWS secret access key that BIG-IQ should use. |
vmwProperties | object | False | Fields associated with VMware providers. |
vCenterHostname | string | True | The vCenter host. |
azureProperties | object | False | Fields associated with Azure providers. |
azureCloud | string | False | The Azure Cloud environment. The default is Azure. |
clientId | string | Ture | The Client GUID. |
servicePrincipalSecret | string | True | Service Principal Secret. |
subscriptionId | string | False | The subscripton GUID. |
tenantId | string | True | The Tenant GUID. |
Query Parameters¶
None
Response¶
Same as GET above.
Permissions¶
Role | Allow |
---|---|
admin | Yes |
PATCH /mgmt/cm/cloud/providers/<id>¶
Request Parameters¶
Name | Type | Required | Description |
---|---|---|---|
description | string | False | A brief description of the provider. |
awsProperties | object | False | Fields associated with AWS providers. |
accessKeyId | string | True | The AWS access key ID that BIG-IQ should use. |
secretAccessKey | string | True | The AWS secret access key that BIG-IQ should use. |
vmwProperties | object | False | Fields associated with VMware providers. |
vCenterHostname | string | True | The vCenter host. |
azureProperties | object | False | Fields associated with Azure providers. |
azureCloud | string | False | The Azure Cloud environment. The default is Azure. |
clientId | string | True | The Client GUID. |
servicePrincipalSecret | string | True | Service Principal Secret. |
subscriptionId | string | False | The subscripton GUID. |
tenantId | string | False | The Tenant GUID. |
Query Parameters¶
None
Response¶
Same as GET above.
Permissions¶
Role | Allow |
---|---|
admin | Yes |
DELETE /mgmt/cm/cloud/providers/<id>¶
Request Parameters¶
None
Query Parameters¶
None
Response¶
Same as GET above.
Permissions¶
Role | Allow |
---|---|
admin | Yes |
Examples¶
List a cloud provider¶
GET /mgmt/cm/cloud/providers/<id>
Response¶
HTTP/1.1 200 OK
{
{
"description": "Oregon data center",
"generation": 3,
"id": "afc0cec4-f72b-37f2-a817-6a997207da9c",
"kind": "cm:cloud:providers:providerstate",
"lastUpdateMicros": 1529955940652153,
"name": "vmw",
"providerType": "VMware",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/afc0cec4-f72b-37f2-a817-6a997207da9c",
"vmwProperties": {
"vCenterHostname": "192.0.2.1"
}
}
}
List all cloud providers¶
GET /mgmt/cm/cloud/providers
Response¶
HTTP/1.1 200 OK
{
"items": [
{
"description": "VMware #2",
"generation": 3,
"id": "0f98dedb-ee3c-3c75-a3d3-1169e2167134",
"kind": "cm:cloud:providers:providerstate",
"lastUpdateMicros": 1529956384829220,
"name": "vmw2",
"providerType": "VMware",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/0f98dedb-ee3c-3c75-a3d3-1169e2167134",
"vmwProperties": {
"vCenterHostname": "198.51.100.1"
}
},
{
"description": "VMware #1",
"generation": 4,
"id": "afc0cec4-f72b-37f2-a817-6a997207da9c",
"kind": "cm:cloud:providers:providerstate",
"lastUpdateMicros": 1529956333856240,
"name": "vmw",
"providerType": "VMware",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/afc0cec4-f72b-37f2-a817-6a997207da9c",
"vmwProperties": {
"vCenterHostname": "192.0.2.1"
}
}
]
}
Create a VMware cloud provider¶
POST /mgmt/cm/cloud/providers
{
"providerType": "VMware",
"name": "vmw_alt",
"description": "VMware #3",
"vmwProperties": {
"vCenterHostname": "203.0.113.1"
}
}
Response¶
HTTP/1.1 200 OK
{
"id": "237486bd-0618-341a-8375-3250ed6f120f",
"providerType": "VMware",
"name": "vmw_alt",
"description": "VMware #3",
"vmwProperties": {
"vCenterHostname": "203.0.113.1"
},
"generation": 1,
"lastUpdateMicros": 1529956930907778,
"kind": "cm:cloud:providers:providerstate",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/237486bd-0618-341a-8375-3250ed6f120f"
}
Create an AWS cloud provider¶
POST /mgmt/cm/cloud/providers
{
"providerType": "AWS",
"name": "aws1",
"description": "AWS #1",
"awsProperties": {
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"secretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY"
}
}
Response¶
HTTP/1.1 200 OK
{
"id": "c5086529-d58e-3218-b3ad-1ac25bce03b8",
"providerType": "AWS",
"name": "aws1",
"description": "AWS #1",
"awsProperties": {
"accessKeyId": "j1jToj/CgMPHy3+dR6N8NLQsz7cx4fcs9YXSwvjmkhJNUjm5TcQL+HEHe81HdMSA",
"secretAccessKey": "UnlwHFgF1NiEUwNU+aJ9axwca9vYvem6XebmpLQ68JPlqM2ZD8Ib3vtWv1rTBsjuqPgDLFswb8h2Cb0w/OYPXQ=="
},
"generation": 1,
"lastUpdateMicros": 1529957228775612,
"kind": "cm:cloud:providers:providerstate",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/c5086529-d58e-3218-b3ad-1ac25bce03b8"
}
Modify a cloud provider¶
PATCH /mgmt/cm/cloud/providers/<id>
{
"description": "VMware test provider",
"vmwProperties": {
"vCenterHostname": "198.51.100.2"
}
}
Response¶
HTTP/1.1 200 OK
{
"id": "0f98dedb-ee3c-3c75-a3d3-1169e2167134",
"providerType": "VMware",
"name": "vmw2",
"description": "VMware test provider",
"vmwProperties": {
"vCenterHostname": "198.51.100.2"
},
"generation": 4,
"lastUpdateMicros": 1529957605337464,
"kind": "cm:cloud:providers:providerstate",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/0f98dedb-ee3c-3c75-a3d3-1169e2167134"
}
Delete a cloud provider¶
DELETE /mgmt/cm/cloud/providers/<id>
Response¶
HTTP/1.1 200 OK
{
"id": "237486bd-0618-341a-8375-3250ed6f120f",
"providerType": "VMware",
"name": "vmw_alt",
"description": "VMware #3",
"vmwProperties": {
"vCenterHostname": "203.0.113.1"
},
"generation": 1,
"lastUpdateMicros": 1529957720061184,
"kind": "cm:cloud:providers:providerstate",
"selfLink": "https://localhost/mgmt/cm/cloud/providers/237486bd-0618-341a-8375-3250ed6f120f"
}