VPC
Contents
VPC
Allow the user to manage the VPCs.
List VPCs
GET /v3/network/vpcs
Lists all VPCs.
Inputs
None
Returns
An array of VPCs of the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPC. |
| name | String | Name of the VPC. |
| cidr | String | CIDR of the VPC. |
| state | String | Status of the VPC. |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. |
| realm_provider_name | String | Name of the realm of the cloud provider. |
| has_vpn | Boolean | Flag indicating whether VPC has a VPN. |
| allowed_subnet_types | Array of Strings | Types of subnets that can be inside the VPC. |
| resource_type | String | An identifier for the type of resource, specifically "vpc". |
| 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. |
| label_ids | Array of Strings | List of ids corresponding to the labels the VPC has assigned. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Show VPC
GET /v3/network/vpcs/:id
Shows information about a specific VPC.
Inputs
None
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPC. |
| name | String | Name of the VPC. |
| cidr | String | CIDR of the VPC. |
| state | String | Status of the VPC. |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. |
| realm_provider_name | String | Name of the realm of the cloud provider. |
| has_vpn | Boolean | Flag indicating whether VPC has a VPN. |
| allowed_subnet_types | Array of Strings | Types of subnets that can be inside the VPC. |
| resource_type | String | An identifier for the type of resource, specifically "vpc". |
| 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. |
| label_ids | Array of Strings | List of ids corresponding to the labels the VPC has assigned. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Create VPC
POST /v3/network/vpcs
Creates a new VPC.
Inputs
| Field | Type | Description | Required |
|---|---|---|---|
| name | String | Name of the VPC. | Yes |
| cidr | String | CIDR of the VPC. | Yes |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. | Yes |
| realm_provider_name | String | Name of the realm of the cloud provider. | Yes* |
| realm_id | String | Id of the realm of the cloud provider. | Yes* |
| default_subnet_creation | Boolean | Flag indicating whether the vpc should be created with default public and private subnets or not. | No |
| 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. | No |
| label_ids | Array of Strings | List of ids corresponding to the labels to assign to the VPC. | No |
(*) Note: Either realm_provider_name or realm_id must be provided for a VPC to be created. Both can be provided, and in this case, realm_id will have preference over realm_provider_name.
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPC. |
| name | String | Name of the VPC. |
| cidr | String | CIDR of the VPC |
| state | String | Status of the VPC |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. |
| realm_provider_name | String | Name of the realm of the cloud provider. |
| has_vpn | Boolean | Flag indicating whether VPC has a VPN. |
| allowed_subnet_types | Array of Strings | Types of subnets that can be inside the VPC. |
| resource_type | String | An identifier for the type of resource, specifically "vpc". |
| 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. |
| label_ids | Array of Strings | List of ids corresponding to the labels the VPC has assigned. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Update VPC
PUT /v3/network/vpcs/:id
Updates an existing VPC.
Inputs
| Field | Type | Description | Required |
|---|---|---|---|
| name | String | Name of the VPC. | No |
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPC. |
| name | String | Name of the VPC. |
| cidr | String | CIDR of the VPC. |
| state | String | Status of the VPC. |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. |
| realm_provider_name | String | Name of the realm of the cloud provider. |
| has_vpn | Boolean | Flag indicating whether VPC has a VPN. |
| allowed_subnet_types | Array of Strings | Types of subnets that can be inside the VPC. |
| resource_type | String | An identifier for the type of resource, specifically "vpc". |
| 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. |
| label_ids | Array of Strings | List of ids corresponding to the labels the VPC has assigned. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Destroy VPC
DELETE /v3/network/vpcs/:id
It deletes a VPC.
Inputs
None
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPC. |
| name | String | Name of the VPC. |
| cidr | String | CIDR of the VPC. |
| state | String | Status of the VPC. |
| cloud_account_id | String | Identifier of the cloud account in which the VPC is deployed. |
| realm_provider_name | String | Name of the realm of the cloud provider. |
| has_vpn | Boolean | Flag indicating whether VPC has a VPN. |
| allowed_subnet_types | Array of Strings | Types of subnets that can be inside the VPC. |
| resource_type | String | An identifier for the type of resource, specifically "vpc". |
| 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. |
| label_ids | Array of Strings | List of ids corresponding to the labels the VPC has assigned. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Discard VPC
DELETE /v3/network/vpcs/:id/discard
It discards a brownfield (imported) VPC.
Inputs
None
Returns
None
Subnet
Allow the user to manage the subnets.
List subnets
GET /v3/network/vpcs/:id/subnets
Lists all subnets of a VPC.
Inputs
None
Returns
An array of subnets of the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the subnet. |
| name | String | Name of the subnet. |
| cidr | String | CIDR of the subnet. |
| state | String | state of the subnet. |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). |
| vpc_id | String | Identifier of the VPC |
| server_creation_disabled | Boolean | Flag to indicate whether a server or a server array can be created inside this subnet |
| resource_type | String | An identifier for the type of resource, specifically "subnet". |
| 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. |
| brownfield | Boolean | Flag indicating if the VPC is brownfield (imported). |
Show subnet
GET /v3/network/subnets/:id
Shows information about a specific subnet.
Inputs
None
Returns
a subnet of the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the subnet. |
| name | String | Name of the subnet. |
| cidr | String | CIDR of the subnet. |
| state | String | state of the subnet. |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). |
| vpc_id | String | Identifier of the VPC |
| server_creation_disabled | Boolean | Flag to indicate whether a server or a server array can be created inside this subnet |
| resource_type | String | An identifier for the type of resource, specifically "subnet". |
| 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. |
Create subnet
POST /v3/network/vpcs/:vpc_id/subnets
Creates a new subnet inside the specified VPC.
Inputs
| Field | Type | Description | Required |
|---|---|---|---|
| vpc_id | String | Identifier of the VPC | Yes |
| name | String | Name of the subnet. | Yes |
| cidr | String | CIDR of the subnet | Yes |
| 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. | No |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). | Yes |
Returns
a subnet of the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the subnet. |
| name | String | Name of the subnet. |
| cidr | String | CIDR of the subnet. |
| state | String | state of the subnet. |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). |
| vpc_id | String | Identifier of the VPC |
| server_creation_disabled | Boolean | Flag to indicate whether a server or a server array can be created inside this subnet |
| resource_type | String | An identifier for the type of resource, specifically "subnet". |
| 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. |
Update subnet
PUT /v3/network/subnets/:id
Updates an existing subnet.
Inputs
| Field | Type | Description | Required |
|---|---|---|---|
| name | String | Name of the subnet. | No |
Returns
a subnet of the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the subnet. |
| name | String | Name of the subnet. |
| cidr | String | CIDR of the subnet. |
| state | String | state of the subnet. |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). |
| vpc_id | String | Identifier of the VPC |
| server_creation_disabled | Boolean | Flag to indicate whether a server or a server array can be created inside this subnet |
| resource_type | String | An identifier for the type of resource, specifically "subnet". |
| 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. |
Destroy subnet
DELETE /v3/network/subnets/:id
It deletes a subnet.
Inputs
None
Returns
the deleted subnet with the following format:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the subnet. |
| name | String | Name of the subnet. |
| cidr | String | CIDR of the subnet. |
| state | String | state of the subnet. |
| type | String | Type of the subnet (among ‘only_public', ‘only_private' and ‘public_and_private'). |
| vpc_id | String | Identifier of the VPC |
| server_creation_disabled | Boolean | Flag to indicate whether a server or a server array can be created inside this subnet |
| resource_type | String | An identifier for the type of resource, specifically "subnet". |
| 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. |
List servers in a subnet
GET /v3/network/subnets/:subnet_id/servers
This action returns information about the servers belonging to the subnet identified by the given id.
Inputs
None
Returns
An array of servers with the following fields:
| Field | Type | Description | Deprecation notices | Notes |
|---|---|---|---|---|
| id | String | Identifier of the server. | ||
| name | String | Logical name of the server. | ||
| fqdn | String | Fully qualified domain name (FQDN) of the server. | ||
| state | String | State of the server. It can be any of the following: commissioning, inactive, booting, bootstrapping, operational, stalled, shutting_down,decommissioning, commission_stalled. | ||
| public_ip | String | Public IP of the server or null if it does not have one yet. | ||
| private_ip | String | Private IP of the server or null if it does not have one yet. | ||
| workspace_id | String | Identifier of the workspace to which the server belongs. | No longer available from 7.3 onwards | |
| template_id | String | Identifier of the template defining the software configuration the server uses. | ||
| server_plan_id | String | Identifier of the server plan with which the server is deployed. | ||
| cloud_account_id | String | Identifier of the cloud account in which the server is deployed. | ||
| ssh_profile_id | String | Identifier of the ssh profile the server uses. First of ssh_profile_ids. | Deprecated from version 9 onwards. | |
| ssh_profile_ids | Array of string | Identifiers of the ssh profiles the server uses. | Available from version 9 onwards. | |
| firewall_profile_id | String | Identifier of the firewall profile applied on the server. | ||
| server_array_id | String | Identifier of the server array to which the server belongs if any or null. | ||
| brownfield_state | String | A string describing the level of integration with the platform achieved. It must be one of "M1", "M1-M2", "M2", "M2-M3", "Overriden", "Certified" or "Pure". | ||
| subnet_id | String | Identifier of the subnet on which the server is deployed if any or null. | ||
| vpc_id | String | Identifier of the VPC on which the server is deployed if any or null. | ||
| privateness | Boolean | Flag indicating whether the server will get only a private IP | ||
| variable_value_ids | Object | An object defining variable values for the configuration in the template. It has a key for each variable defined and arrays of two elements as values:The first element of the array is the id of the variable value.The second element of the array is the resource_type of the variable value. | ||
| label_ids | String | List of ids corresponding to the labels the server has assigned. | ||
| 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. | |
| resource_type | String | An identifier for the type of resource, specifically "server". |
List of server arrays in a subnet
GET /v3/network/subnets/:subnet_id/server_arrays
This action returns information about the server arrays belonging to the subnet identified by the given id.
Inputs
None
Returns
An array of server arrays with the following fields:
| Field | Type | Description | Deprecation notices | ** |
|---|---|---|---|---|
| id | String | Identifier of the server array | ||
| name | String | Logical name of the server array | ||
| state | String | State of the server array. It can be any of the following: commissioning, inactive, booting, bootstrapping, operational, stalled, shutting_down,decommissioning, commission_stalled. | ||
| size | String | The number of servers in the server array. | ||
| server_plan_id | String | Identifier of the server plan with which the server array is deployed. | ||
| cloud_account_id | String | Identifier of the cloud account in which the server array is deployed. | ||
| workspace_id | String | Identifier of the workspace to which the server array belongs. | No longer available from 7.3 onwards. | |
| template_id | String | Identifier of the template which the server array uses. | ||
| firewall_profile_id | String | Identifier of the firewall profile applied on the server array. | ||
| ssh_profile_id | String | Identifier of the ssh profile which the server array uses. | Deprecated from version 9 onwards. | |
| ssh_profile_ids | Array of string | Identifiers of the ssh profiles the server uses. | Available from version 9 onwards. | |
| subnet_id | String | Identifier of the subnet to which the server array belongs. | ||
| vpc_id | String | Identifier of the VPC to which the server array belongs. | ||
| privateness | Boolean | Flag indicating whether the server will get only a private IP | ||
| variable_value_ids | Object | An object defining variable values for the configuration in the template. It has a key for each variable defined and arrays of two elements as values:The first element of the array is the id of the variable value.The second element of the array is the resource_type of the variable value.Only available from 7.3 onwards. | ||
| label_ids | Array of strings | List of ids corresponding to the labels the server array has assigned. | ||
| resource_type | String | An identifier for the type of resource, specifically "server_array". |
Vpn
Show Vpn
GET /v3/network/vpcs/:vpc_id/vpn
It shows information about a specific VPN with the given VPC id.
Inputs
None
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPN. |
| state | String | State of the VPN. |
| vpn_plan_id | String | The identifier for the VPN plan. |
| vpc_id | String | Identifier of the VPC. |
| exposed_cidrs | String | Exposed CIDRs of the VPN. |
| public_ip | String | Public Ip for the VPN. |
| resource_type | String | An identifier for the type of resource, specifically "vpn". |
Create Vpn
POST /v3/network/vpcs/:vpc_id/vpn
This action creates a VPN in a VPC with the given VPC id.
Inputs
| Field | Type | Description | Required |
|---|---|---|---|
| public_ip | String | Public Ip for the VPN | Yes |
| psk | String | Passkey of the VPN | Yes |
| exposed_cidrs | Array of strings | Exposed CIDRs of the VPN | Yes |
| vpn_plan_id | String | Identifier of the VPN plan. | Yes |
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPN. |
| state | String | State of the VPN. |
| vpn_plan_id | String | The identifier for the VPN plan. |
| vpc_id | String | Identifier of the VPC. |
| exposed_cidrs | String | Exposed CIDRs of the VPN. |
| public_ip | String | Public Ip for the VPN. |
| resource_type | String | An identifier for the type of resource, specifically "vpn". |
Destroy Vpn
DELETE /v3/network/vpcs/:vpc_id/vpn
This action destroys the VPN of a VPC identified by the given id.
Inputs
None
Returns
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPN. |
| state | String | State of the VPN. |
| vpn_plan_id | String | The identifier for the VPN plan. |
| vpc_id | String | Identifier of the VPC. |
| exposed_cidrs | String | Exposed CIDRs of the VPN. |
| public_ip | String | Public Ip for the VPN. |
| resource_type | String | An identifier for the type of resource, specifically "vpn". |
List VPN plans of a VPC
GET /v3/network/vpcs/:vpc_id/vpn_plans
This action provides information about the VPN plans of the VPC by the given id.
Inputs
None
Returns
An array of vpn plans:
| Field | Type | Description |
|---|---|---|
| id | String | Identifier of the VPN plan. |
| name | String | Logical name of VPN plan. |
| active-active | String | Flag indicating if the VPN is in active-active mode. |
| resource_type | String | An identifier for the type of resource, specifically "vpn_plan". |