Cloud Accounts
Contents
Cloud Accounts
A cloud account stores the credentials needed to access a cloud provider. A cloud account allows the platform to commission and control servers on behalf of the user.
List Cloud Accounts
GET /v3/settings/cloud_accounts
Lists the cloud accounts of the customer.
Inputs
None
Returns
An array of cloud accounts of the following format:
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
Show Cloud Account
GET /v3/settings/cloud_accounts/:id
Shows information about a specific cloud account.
Inputs
None
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
Create Cloud Account
POST /v3/settings/subscriptions/:subscription_id/cloud_accounts
Creates a cloud account.
Inputs
Field | Type | Description |
---|---|---|
name | String | The logical name for the cloud account. |
credentials | String | Credentials of the cloud account. |
cloud_provider_id | String | Identifier of the cloud account. |
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
Update Cloud Account
PUT /v3/settings/cloud_accounts/:id
Modifies information about a specific cloud account.
Inputs
Field | Type | Description |
---|---|---|
name | String | The logical name for the cloud account. |
credentials | String | Credentials of the cloud account. Only applicable if the subscription of the cloud account is standalone. |
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
Delete Cloud Account
DELETE /v3/settings/cloud_accounts/:id
Deletes a specific cloud account.
Inputs
Field | Type | Description |
---|---|---|
force | Boolean | Flag indicating whether the cloud account must be destroyed even if it is not destroyable. |
Returns
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
List policy assignments by cloud account
GET /v3/settings/cloud_accounts/:cloud_account_id/policy_assignments
Shows information about policy assignments applied in a cloud account, given its id.
Inputs
None
Returns
An array of policy assignments, with the following fields:
Field | Type | Description | Deprecation notices | Notes |
---|---|---|---|---|
id | String | Identifier of the policy assignment. | ||
name | String | Logical name of the policy assignment. | ||
description | String | Description of the policy definition. | ||
definition_id | String | Identifier of the policy definition which the policy assignment belongs. | ||
remote_id | String | Identifier of the assignment on the cloud provider. | ||
desired_remote_id | String | Identifier that the user wants to have as Identifier of the resource on the cloud. | Available from version 10.3 onwards. | |
state | String | State of the assignment. It can be one of these values: start, applying, applied, decommissioning, application_error, decommission_error, end. | ||
cloud_account_id | String | Identifier of the cloud account where the assignment belongs. | ||
parameter_values | Object | An object with the parameters of the policy definition of the policy assignment with the values given to each one of them. | ||
reseller_applied | Boolean | Flag indicating if the assignment was assigned by the admin customer of the reseller of the customer of the user (true) or by the customer (false) | ||
label_ids | String | List of ids corresponding to the labels the policy assignment has assigned. | ||
resource_type | String | An identifier for the type of resource, specifically "policy assignment". |
Discover cloud accounts inside a cloud account
PUT /v3/settings/cloud_accounts/:id/discover_cloud_accounts
Initiates the process of discovering the cloud accounts inside an AWS master root account, given its cloud account id. This process will generate configuration candidates, each one corresponding to an AWS organizational unit inside the AWS master root account, that can later be incorporated inside IMCO to manage resources inside each one.
Inputs
None
Returns
A cloud account, with the following fields:
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |
Configure cloud accounts inside a cloud account
PUT /v3/settings/cloud_accounts/:id/configure_cloud_accounts
Initiates the process of configuring the desired cloud accounts inside an AWS master root account, given its cloud account id.
Inputs
Field | Type | Description | Required |
---|---|---|---|
import_candidate_ids | Array of String | Identifiers of the configuration candidates the user wants to generate cloud accounts from. Each import candidate represents an AWS organizational unit, which can have one or more accounts each inside. Importing an organizational unit will cause each account inside the organizational unit to be incorporated to IMCO as a cloud account, on which the user can manage resources inside. | Yes |
Returns
A cloud account, with the following fields:
Field | Type | Description |
---|---|---|
id | String | Identifier of the cloud account. |
cloud_provider_id | String | Identifier of the cloud provider. |
name | String | The logical name for the cloud account. |
state | String | State of the cloud account, to indicate whether this cloud account is importing resources from the cloud. Specifically, one of the following: importing_vpcs, importing_floating_ips, importing_servers, importing_volumes, importing_policies, importing_kubernetes_clusters, importing_key_vaults, idle |
organizationa_state | String | Organizational state of the cloud account, to indicate whether this cloud account is discovering or configuring (importing) other cloud accounts. Specifically, one of the following: discovering_accounts, configuring_accounts, idle |
last_discovered_at | Time | Time at which the cloud account was last searched for server candidates for brownfield importing. |
last_discovery_failed_at | Time | Last time at which the cloud account's discovery of server candidates for brownfield importing failed. |
resource_type | String | An identifier for the type of resource, specifically "cloud_account". |
supports_importing | Boolean | Flag to indicate whether this cloud account supports importing servers. |
supports_importing_vpcs | Boolean | Flag to indicate whether this cloud account supports importing VPCs. |
supports_importing_floating_ips | Boolean | Flag to indicate whether this cloud account supports importing floating IPs. |
supports_importing_volumes | Boolean | Flag to indicate whether this cloud account supports importing volumes. |
supports_importing_policies | Boolean | Flag to indicate whether this cloud account supports importing policy definitions and assignments. |
supports_importing_kubernetes_clusters | Boolean | Flag to indicate whether this cloud account supports importing Kubernetes clusters and node pools. |
supports_importing_key_vaults | Boolean | Flag to indicate whether this cloud account supports importing key vaults and secrets. |
supports_discovering_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports discovering other cloud accounts. |
supports_importing_cloud_accounts | Boolean | Flag to indicate whether this cloud account supports importing other cloud accounts. |