VPC
[BETA] Virtual Private Cloud (VPC) provides isolated virtual network environments for your Exoscale resources.
create-route
[BETA] Create a route
POST /vpc/{vpc-id}/subnet/{subnet-id}/routePath parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
subnet-id | path | Must be a valid UUID. |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
destination | string | yes | Route destination CIDR |
target | string | yes | Route target |
description | string | no | Route description Max length: 4096. |
name | string | no | Route name Min length: 1. Max length: 255. |
Example
{
"description": "string",
"destination": "string",
"name": "string",
"target": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
description | string | Route description Max length: 4096. |
destination | string | Route destination CIDR |
id | string | Route ID Must be a valid UUID. |
kind | string | Route kind Allowed values: Subnet, Vpc. |
target | string | Route target |
Example output
{
"description": "string",
"destination": "string",
"id": "string",
"kind": "Subnet",
"target": "string"
}SDK reference for create-route: golang | Python | Java
CLI: exo api create-route
delete-route
[BETA] Delete a route
DELETE /vpc/{vpc-id}/subnet/{subnet-id}/route/{id}Path parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
subnet-id | path | Must be a valid UUID. |
id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
description | string | Route description Max length: 4096. |
destination | string | Route destination CIDR |
id | string | Route ID Must be a valid UUID. |
kind | string | Route kind Allowed values: Subnet, Vpc. |
target | string | Route target |
Example output
{
"description": "string",
"destination": "string",
"id": "string",
"kind": "Subnet",
"target": "string"
}SDK reference for delete-route: golang | Python | Java
CLI: exo api delete-route
create-subnet
[BETA] Create a Subnet
POST /vpc/{vpc-id}/subnetPath parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
address-space | string | yes | Subnet address space Allowed values: private. |
addressfamily | string | yes | Subnet address family Allowed values: inet4. |
name | string | yes | Subnet name Min length: 1. Max length: 255. |
description | string | no | Subnet description Max length: 4096. |
ipv4-block | string | no | Subnet ipv4 CIDR |
labels | object | no | Resource labels |
Example
{
"address-space": "private",
"addressfamily": "inet4",
"description": "string",
"ipv4-block": "string",
"labels": {},
"name": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID Must be a valid UUID. |
message | string | Operation message |
reason | string | Operation failure reason Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict. |
reference | Reference | Related resource reference |
state | string | Operation status Allowed values: failure, pending, success, timeout. |
Example output
{
"id": "string",
"message": "string",
"reason": "incorrect",
"reference": {
"command": "string",
"id": "string",
"link": "string"
},
"state": "failure"
}SDK reference for create-subnet: golang | Python | Java
CLI: exo api create-subnet
get-subnet
[BETA] Retrieve Subnet details
GET /vpc/{vpc-id}/subnet/{id}Path parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
address-space | string | Subnet address space Allowed values: private. |
addressfamily | string | Subnet address family Allowed values: inet4, dual. |
created-at | string | Subnet creation date ISO 8601 date-time. |
description | string | Subnet description Max length: 4096. |
id | string | Subnet ID Must be a valid UUID. |
ipv4-block | string | Subnet ipv4 CIDR |
labels | object | Resource labels |
name | string | Subnet name Min length: 1. Max length: 255. |
Example output
{
"address-space": "private",
"addressfamily": "inet4",
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"ipv4-block": "string",
"labels": {},
"name": "string"
}SDK reference for get-subnet: golang | Python | Java
CLI: exo api get-subnet
update-subnet
[BETA] Update a Subnet
PUT /vpc/{vpc-id}/subnet/{id}Path parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
id | path | Must be a valid UUID. |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
description | string | no | Subnet description Max length: 4096. |
ipv4-block | string | no | Subnet CIDR |
labels | object | no | Resource labels |
name | string | no | Subnet name Min length: 1. Max length: 255. |
Example
{
"description": "string",
"ipv4-block": "string",
"labels": {},
"name": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
address-space | string | Subnet address space Allowed values: private. |
addressfamily | string | Subnet address family Allowed values: inet4, dual. |
created-at | string | Subnet creation date ISO 8601 date-time. |
description | string | Subnet description Max length: 4096. |
id | string | Subnet ID Must be a valid UUID. |
ipv4-block | string | Subnet ipv4 CIDR |
labels | object | Resource labels |
name | string | Subnet name Min length: 1. Max length: 255. |
Example output
{
"address-space": "private",
"addressfamily": "inet4",
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"ipv4-block": "string",
"labels": {},
"name": "string"
}SDK reference for update-subnet: golang | Python | Java
CLI: exo api update-subnet
delete-subnet
[BETA] Delete a Subnet
DELETE /vpc/{vpc-id}/subnet/{id}Path parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID Must be a valid UUID. |
message | string | Operation message |
reason | string | Operation failure reason Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict. |
reference | Reference | Related resource reference |
state | string | Operation status Allowed values: failure, pending, success, timeout. |
Example output
{
"id": "string",
"message": "string",
"reason": "incorrect",
"reference": {
"command": "string",
"id": "string",
"link": "string"
},
"state": "failure"
}SDK reference for delete-subnet: golang | Python | Java
CLI: exo api delete-subnet
create-vpc
[BETA] Create a VPC
POST /vpcRequest body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | yes | VPC name Min length: 1. Max length: 255. |
description | string | no | VPC description Max length: 4096. |
labels | object | no | Resource labels |
Example
{
"description": "string",
"labels": {},
"name": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID Must be a valid UUID. |
message | string | Operation message |
reason | string | Operation failure reason Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict. |
reference | Reference | Related resource reference |
state | string | Operation status Allowed values: failure, pending, success, timeout. |
Example output
{
"id": "string",
"message": "string",
"reason": "incorrect",
"reference": {
"command": "string",
"id": "string",
"link": "string"
},
"state": "failure"
}SDK reference for create-vpc: golang | Python | Java
CLI: exo api create-vpc
get-vpc
[BETA] Retrieve VPC details
GET /vpc/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
created-at | string | VPC creation date ISO 8601 date-time. |
description | string | VPC description Max length: 4096. |
id | string | VPC ID Must be a valid UUID. |
labels | object | Resource labels |
name | string | VPC name Min length: 1. Max length: 255. |
Example output
{
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"labels": {},
"name": "string"
}SDK reference for get-vpc: golang | Python | Java
CLI: exo api get-vpc
update-vpc
[BETA] Update a VPC
PUT /vpc/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | Must be a valid UUID. |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
description | string | no | VPC description Max length: 4096. |
labels | object | no | Resource labels |
name | string | no | VPC name Min length: 1. Max length: 255. |
Example
{
"description": "string",
"labels": {},
"name": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
created-at | string | VPC creation date ISO 8601 date-time. |
description | string | VPC description Max length: 4096. |
id | string | VPC ID Must be a valid UUID. |
labels | object | Resource labels |
name | string | VPC name Min length: 1. Max length: 255. |
Example output
{
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"labels": {},
"name": "string"
}SDK reference for update-vpc: golang | Python | Java
CLI: exo api update-vpc
delete-vpc
[BETA] Delete a VPC
DELETE /vpc/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID Must be a valid UUID. |
message | string | Operation message |
reason | string | Operation failure reason Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict. |
reference | Reference | Related resource reference |
state | string | Operation status Allowed values: failure, pending, success, timeout. |
Example output
{
"id": "string",
"message": "string",
"reason": "incorrect",
"reference": {
"command": "string",
"id": "string",
"link": "string"
},
"state": "failure"
}SDK reference for delete-vpc: golang | Python | Java
CLI: exo api delete-vpc
Other Operations
list-routes
[BETA] List Subnet routes
GET /vpc/{vpc-id}/subnet/{subnet-id}/routePath parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
subnet-id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
routes | array of Route |
Example output
{
"routes": [
{
"description": "string",
"destination": "string",
"id": "string",
"kind": "Subnet",
"target": "string"
}
]
}SDK reference for list-routes: golang | Python | Java
CLI: exo api list-routes
list-subnets
[BETA] List Subnets
GET /vpc/{vpc-id}/subnetPath parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
subnets | array of Subnet |
Example output
{
"subnets": [
{
"address-space": "private",
"addressfamily": "inet4",
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"ipv4-block": "string",
"labels": {},
"name": "string"
}
]
}SDK reference for list-subnets: golang | Python | Java
CLI: exo api list-subnets
list-vpc-routes
[BETA] List VPC routes
GET /vpc/{vpc-id}/routePath parameters
| Name | In | Description |
|---|---|---|
vpc-id | path | Must be a valid UUID. |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
routes | array of Route |
Example output
{
"routes": [
{
"description": "string",
"destination": "string",
"id": "string",
"kind": "Subnet",
"target": "string"
}
]
}SDK reference for list-vpc-routes: golang | Python | Java
CLI: exo api list-vpc-routes
list-vpcs
[BETA] List VPCs
GET /vpcResponses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
vpcs | array of VPC |
Example output
{
"vpcs": [
{
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"labels": {},
"name": "string"
}
]
}SDK reference for list-vpcs: golang | Python | Java
CLI: exo api list-vpcs