Private Network
Private Network provides private L2 networking functionality between Compute instances.
create-private-network
Create a Private Network
POST /private-networkRequest body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | yes | Private Network name |
description | string | no | Private Network description |
end-ip | string | no | Private Network end IP address |
labels | object | no | Resource labels |
netmask | string | no | Private Network netmask |
options | Private Network DHCP Options | no | DHCP options |
start-ip | string | no | Private Network start IP address |
Example
{
"description": "string",
"end-ip": "string",
"labels": {},
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
"string"
],
"domain-search": [
"string"
],
"ntp-servers": [
"string"
],
"routers": [
"string"
]
},
"start-ip": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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-private-network: golang | Python | Java
CLI: exo api create-private-network
get-private-network
Retrieve Private Network details
GET /private-network/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
description | string | Private Network description |
end-ip | string | Private Network end IP address |
id | string | Private Network ID |
labels | object | Resource labels |
leases | array of Private Network leased IP address | Private Network leased IP addresses |
name | string | Private Network name |
netmask | string | Private Network netmask |
options | Private Network DHCP Options | DHCP options |
start-ip | string | Private Network start IP address |
vni | integer | Private Network VXLAN ID |
Example output
{
"description": "string",
"end-ip": "string",
"id": "string",
"labels": {},
"leases": [
{
"instance-id": "string",
"ip": "string"
}
],
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
"string"
],
"domain-search": [
"string"
],
"ntp-servers": [
"string"
],
"routers": [
"string"
]
},
"start-ip": "string",
"vni": 0
}SDK reference for get-private-network: golang | Python | Java
CLI: exo api get-private-network
update-private-network
Update a Private Network
PUT /private-network/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
description | string | no | Private Network description |
end-ip | string | no | Private Network end IP address |
labels | object | no | Resource labels |
name | string | no | Private Network name |
netmask | string | no | Private Network netmask |
options | Private Network DHCP Options | no | DHCP options |
start-ip | string | no | Private Network start IP address |
Example
{
"description": "string",
"end-ip": "string",
"labels": {},
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
"string"
],
"domain-search": [
"string"
],
"ntp-servers": [
"string"
],
"routers": [
"string"
]
},
"start-ip": "string"
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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 update-private-network: golang | Python | Java
CLI: exo api update-private-network
delete-private-network
Delete a Private Network
DELETE /private-network/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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-private-network: golang | Python | Java
CLI: exo api delete-private-network
Other Operations
detach-instance-from-private-network
Detach a Compute instance from a Private Network
PUT /private-network/{id}:detachPath parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
instance | Instance | yes | Compute instance |
Example
{
"instance": {
"anti-affinity-groups": [
{
"id": "string"
}
],
"application-consistent-snapshot-enabled": true,
"created-at": "2024-01-01T12:00:00Z",
"deploy-target": {
"id": "string"
},
"disk-size": 0,
"elastic-ips": [
{
"id": "string"
}
],
"id": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
"ch-dk-2"
]
},
"ipv6-address": "string",
"labels": {},
"mac-address": "string",
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"name": "string",
"private-networks": [
{
"id": "string",
"mac-address": "string"
}
],
"public-ip": "string",
"public-ip-assignment": "inet4",
"secureboot-enabled": true,
"security-groups": [
{
"id": "string"
}
],
"snapshots": [
{
"id": "string"
}
],
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": "string",
"name": "string"
}
],
"state": "expunging",
"template": {
"application-consistent-snapshot-enabled": true,
"boot-mode": "legacy",
"build": "string",
"checksum": "string",
"created-at": "2024-01-01T12:00:00Z",
"default-user": "string",
"description": "string",
"family": "string",
"id": "string",
"maintainer": "string",
"name": "string",
"password-enabled": true,
"size": 0,
"ssh-key-enabled": true,
"url": "string",
"version": "string",
"visibility": "private",
"zones": [
"ch-dk-2"
]
},
"tpm-enabled": true,
"user-data": "string"
}
}Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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 detach-instance-from-private-network: golang | Python | Java
CLI: exo api detach-instance-from-private-network
attach-instance-to-private-network
Attach a Compute instance to a Private Network
PUT /private-network/{id}:attachPath parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
instance | Instance | yes | Compute instance |
ip | string | no | Static IP address lease for the corresponding network interface |
Example
{
"instance": {
"id": "string"
},
"ip": "string"
}Instance
Compute instance
| Property | Type | Required | Description |
|---|---|---|---|
id | string | no | Instance ID |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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 attach-instance-to-private-network: golang | Python | Java
CLI: exo api attach-instance-to-private-network
reset-private-network-field
Reset Private Network field
DELETE /private-network/{id}/{field}Path parameters
| Name | In | Description |
|---|---|---|
id | path | |
field | path |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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 reset-private-network-field: golang | Python | Java
CLI: exo api reset-private-network-field
update-private-network-instance-ip
Update the IP address of an instance attached to a managed private network
PUT /private-network/{id}:update-ipPath parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
instance | Instance | no | |
ip | string | no | Static IP address lease for the corresponding network interface |
Example
{
"instance": {
"id": "string"
},
"ip": "string"
}Instance
| Property | Type | Required | Description |
|---|---|---|---|
id | string | yes | Instance ID |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
id | string | Operation ID |
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 update-private-network-instance-ip: golang | Python | Java
CLI: exo api update-private-network-instance-ip
list-private-networks
List Private Networks
GET /private-networkResponses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
private-networks | array of Private Network |
Example output
{
"private-networks": [
{
"description": "string",
"end-ip": "string",
"id": "string",
"labels": {},
"leases": [
{
"instance-id": "string",
"ip": "string"
}
],
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
"string"
],
"domain-search": [
"string"
],
"ntp-servers": [
"string"
],
"routers": [
"string"
]
},
"start-ip": "string",
"vni": 0
}
]
}SDK reference for list-private-networks: golang | Python | Java
CLI: exo api list-private-networks