Network Load Balancer
A Network Load Balancer (NLB) is a Layer 4 (TCP/UDP) load balancer that distributes incoming traffic to Compute instances managed by an Instance Pool.
create-load-balancer
Create a Load Balancer
POST /load-balancerRequest body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
name | string | yes | Load Balancer name |
description | string | no | Load Balancer description |
labels | object | no | Load balancer labels |
Example
{
"description": "string",
"labels": {},
"name": "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 | object | Related resource reference schema details |
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-load-balancer: golang | Python | Java
CLI: exo api create-load-balancer
get-load-balancer
Retrieve Load Balancer details
GET /load-balancer/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
created-at | string | Load Balancer creation date |
description | string | Load Balancer description |
id | string | Load Balancer ID |
ip | string | Load Balancer public IP |
labels | object | Load Balancer Labels |
name | string | Load Balancer name |
services | array[object] | Load Balancer Services schema details |
state | string | Load Balancer state Allowed values: creating, migrated, deleting, running, migrating, error. |
Example output
{
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"ip": "string",
"labels": {},
"name": "string",
"services": [
{
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"retries": 0,
"timeout": 0,
"tls-sni": "string",
"uri": "string"
},
"healthcheck-status": [
{
"public-ip": "string",
"status": "failure"
}
],
"id": "string",
"instance-pool": {
"anti-affinity-groups": [
{
"description": null,
"id": null,
"instances": null,
"name": null
}
],
"application-consistent-snapshot-enabled": true,
"deploy-target": {
"description": "string",
"id": "string",
"name": "string",
"type": "edge"
},
"description": "string",
"disk-size": 0,
"elastic-ips": [
{
"addressfamily": null,
"cidr": null,
"description": null,
"healthcheck": null,
"id": null,
"ip": null,
"labels": null
}
],
"id": "string",
"instance-prefix": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
null
]
},
"instances": [
{
"anti-affinity-groups": null,
"application-consistent-snapshot-enabled": null,
"created-at": null,
"deploy-target": null,
"disk-size": null,
"elastic-ips": null,
"id": null,
"instance-type": null,
"ipv6-address": null,
"labels": null,
"mac-address": null,
"manager": null,
"name": null,
"private-networks": null,
"public-ip": null,
"public-ip-assignment": null,
"secureboot-enabled": null,
"security-groups": null,
"snapshots": null,
"ssh-key": null,
"ssh-keys": null,
"state": null,
"template": null,
"tpm-enabled": null,
"user-data": null
}
],
"ipv6-enabled": true,
"labels": {},
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"min-available": 0,
"name": "string",
"private-networks": [
{
"description": null,
"end-ip": null,
"id": null,
"labels": null,
"leases": null,
"name": null,
"netmask": null,
"options": null,
"start-ip": null,
"vni": null
}
],
"public-ip-assignment": "inet4",
"security-groups": [
{
"description": null,
"external-sources": null,
"id": null,
"name": null,
"rules": null
}
],
"size": 0,
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": null,
"name": null
}
],
"state": "scaling-up",
"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": [
null
]
},
"user-data": "string"
},
"name": "string",
"port": 0,
"protocol": "tcp",
"state": "creating",
"strategy": "round-robin",
"target-port": 0
}
],
"state": "creating"
}SDK reference for get-load-balancer: golang | Python | Java
CLI: exo api get-load-balancer
update-load-balancer
Update a Load Balancer
PUT /load-balancer/{id}Path parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
description | string | no | Load Balancer description |
labels | object | no | |
name | string | no | Load Balancer name |
Example
{
"description": "string",
"labels": {},
"name": "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 | object | Related resource reference schema details |
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-load-balancer: golang | Python | Java
CLI: exo api update-load-balancer
delete-load-balancer
Delete a Load Balancer
DELETE /load-balancer/{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 | object | Related resource reference schema details |
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-load-balancer: golang | Python | Java
CLI: exo api delete-load-balancer
get-load-balancer-service
Retrieve Load Balancer Service details
GET /load-balancer/{id}/service/{service-id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | |
service-id | path |
Responses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
description | string | Load Balancer Service description |
healthcheck | object | Load Balancer Service healthcheck schema details |
healthcheck-status | array[object] | Healthcheck status per backend server schema details |
id | string | Load Balancer Service ID |
instance-pool | object | Instance Pool schema details |
name | string | Load Balancer Service name |
port | integer | Port exposed on the Load Balancer’s public IP |
protocol | string | Network traffic protocol Allowed values: tcp, udp. |
state | string | Load Balancer Service state Allowed values: creating, deleting, running, updating, error. |
strategy | string | Load balancing strategy Allowed values: round-robin, maglev-hash, source-hash. |
target-port | integer | Port on which the network traffic will be forwarded to on the receiving instance |
Example output
{
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"retries": 0,
"timeout": 0,
"tls-sni": "string",
"uri": "string"
},
"healthcheck-status": [
{
"public-ip": "string",
"status": "failure"
}
],
"id": "string",
"instance-pool": {
"anti-affinity-groups": [
{
"description": "string",
"id": "string",
"instances": [
{
"anti-affinity-groups": null,
"application-consistent-snapshot-enabled": null,
"created-at": null,
"deploy-target": null,
"disk-size": null,
"elastic-ips": null,
"id": null,
"instance-type": null,
"ipv6-address": null,
"labels": null,
"mac-address": null,
"manager": null,
"name": null,
"private-networks": null,
"public-ip": null,
"public-ip-assignment": null,
"secureboot-enabled": null,
"security-groups": null,
"snapshots": null,
"ssh-key": null,
"ssh-keys": null,
"state": null,
"template": null,
"tpm-enabled": null,
"user-data": null
}
],
"name": "string"
}
],
"application-consistent-snapshot-enabled": true,
"deploy-target": {
"description": "string",
"id": "string",
"name": "string",
"type": "edge"
},
"description": "string",
"disk-size": 0,
"elastic-ips": [
{
"addressfamily": "inet4",
"cidr": "string",
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"strikes-fail": 0,
"strikes-ok": 0,
"timeout": 0,
"tls-skip-verify": true,
"tls-sni": "string",
"uri": "string"
},
"id": "string",
"ip": "string",
"labels": {}
}
],
"id": "string",
"instance-prefix": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
"ch-dk-2"
]
},
"instances": [
{
"anti-affinity-groups": [
{
"description": null,
"id": null,
"instances": null,
"name": null
}
],
"application-consistent-snapshot-enabled": true,
"created-at": "2024-01-01T12:00:00Z",
"deploy-target": {
"description": "string",
"id": "string",
"name": "string",
"type": "edge"
},
"disk-size": 0,
"elastic-ips": [
{
"addressfamily": null,
"cidr": null,
"description": null,
"healthcheck": null,
"id": null,
"ip": null,
"labels": null
}
],
"id": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
null
]
},
"ipv6-address": "string",
"labels": {},
"mac-address": "string",
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"name": "string",
"private-networks": [
{
"id": null,
"mac-address": null
}
],
"public-ip": "string",
"public-ip-assignment": "inet4",
"secureboot-enabled": true,
"security-groups": [
{
"description": null,
"external-sources": null,
"id": null,
"name": null,
"rules": null
}
],
"snapshots": [
{
"application-consistent": null,
"created-at": null,
"export": null,
"id": null,
"instance": null,
"name": null,
"size": null,
"state": null
}
],
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": null,
"name": null
}
],
"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": [
null
]
},
"tpm-enabled": true,
"user-data": "string"
}
],
"ipv6-enabled": true,
"labels": {},
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"min-available": 0,
"name": "string",
"private-networks": [
{
"description": "string",
"end-ip": "string",
"id": "string",
"labels": {},
"leases": [
{
"instance-id": null,
"ip": null
}
],
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
null
],
"domain-search": [
null
],
"ntp-servers": [
null
],
"routers": [
null
]
},
"start-ip": "string",
"vni": 0
}
],
"public-ip-assignment": "inet4",
"security-groups": [
{
"description": "string",
"external-sources": [
"string"
],
"id": "string",
"name": "string",
"rules": [
{
"description": null,
"end-port": null,
"flow-direction": null,
"icmp": null,
"id": null,
"network": null,
"protocol": null,
"security-group": null,
"start-port": null
}
]
}
],
"size": 0,
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": "string",
"name": "string"
}
],
"state": "scaling-up",
"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"
]
},
"user-data": "string"
},
"name": "string",
"port": 0,
"protocol": "tcp",
"state": "creating",
"strategy": "round-robin",
"target-port": 0
}SDK reference for get-load-balancer-service: golang | Python | Java
CLI: exo api get-load-balancer-service
update-load-balancer-service
Update a Load Balancer Service
PUT /load-balancer/{id}/service/{service-id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | |
service-id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
description | string | no | Load Balancer Service description |
healthcheck | object | no | Load Balancer Service healthcheck schema details |
name | string | no | Load Balancer Service name |
port | integer | no | Port exposed on the Load Balancer’s public IP |
protocol | string | no | Network traffic protocol Allowed values: tcp, udp. |
strategy | string | no | Load balancing strategy Allowed values: round-robin, maglev-hash, source-hash. |
target-port | integer | no | Port on which the network traffic will be forwarded to on the receiving instance |
Example
{
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"retries": 0,
"timeout": 0,
"tls-sni": "string",
"uri": "string"
},
"name": "string",
"port": 0,
"protocol": "tcp",
"strategy": "round-robin",
"target-port": 0
}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 | object | Related resource reference schema details |
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-load-balancer-service: golang | Python | Java
CLI: exo api update-load-balancer-service
delete-load-balancer-service
Delete a Load Balancer Service
DELETE /load-balancer/{id}/service/{service-id}Path parameters
| Name | In | Description |
|---|---|---|
id | path | |
service-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 | object | Related resource reference schema details |
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-load-balancer-service: golang | Python | Java
CLI: exo api delete-load-balancer-service
Other Operations
reset-load-balancer-field
Reset a Load Balancer field to its default value
DELETE /load-balancer/{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 | object | Related resource reference schema details |
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-load-balancer-field: golang | Python | Java
CLI: exo api reset-load-balancer-field
reset-load-balancer-service-field
Reset a Load Balancer Service field to its default value
DELETE /load-balancer/{id}/service/{service-id}/{field}Path parameters
| Name | In | Description |
|---|---|---|
id | path | |
service-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 | object | Related resource reference schema details |
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-load-balancer-service-field: golang | Python | Java
CLI: exo api reset-load-balancer-service-field
list-load-balancers
List Load Balancers
GET /load-balancerResponses
Status: 200 - 200
Content-Type: application/json
| Property | Type | Description |
|---|---|---|
load-balancers | array[object] | schema details |
Example output
{
"load-balancers": [
{
"created-at": "2024-01-01T12:00:00Z",
"description": "string",
"id": "string",
"ip": "string",
"labels": {},
"name": "string",
"services": [
{
"description": "string",
"healthcheck": {
"interval": null,
"mode": null,
"port": null,
"retries": null,
"timeout": null,
"tls-sni": null,
"uri": null
},
"healthcheck-status": [
null
],
"id": "string",
"instance-pool": {
"anti-affinity-groups": null,
"application-consistent-snapshot-enabled": null,
"deploy-target": null,
"description": null,
"disk-size": null,
"elastic-ips": null,
"id": null,
"instance-prefix": null,
"instance-type": null,
"instances": null,
"ipv6-enabled": null,
"labels": null,
"manager": null,
"min-available": null,
"name": null,
"private-networks": null,
"public-ip-assignment": null,
"security-groups": null,
"size": null,
"ssh-key": null,
"ssh-keys": null,
"state": null,
"template": null,
"user-data": null
},
"name": "string",
"port": 0,
"protocol": "tcp",
"state": "creating",
"strategy": "round-robin",
"target-port": 0
}
],
"state": "creating"
}
]
}SDK reference for list-load-balancers: golang | Python | Java
CLI: exo api list-load-balancers
add-service-to-load-balancer
Add a Load Balancer Service
POST /load-balancer/{id}/servicePath parameters
| Name | In | Description |
|---|---|---|
id | path |
Request body
Content-Type: application/json
| Property | Type | Required | Description |
|---|---|---|---|
healthcheck | object | yes | Load Balancer Service healthcheck schema details |
instance-pool | object | yes | Instance Pool schema details |
name | string | yes | Load Balancer Service name |
port | integer | yes | Port exposed on the Load Balancer’s public IP |
protocol | string | yes | Network traffic protocol Allowed values: tcp, udp. |
strategy | string | yes | Load balancing strategy Allowed values: round-robin, maglev-hash, source-hash. |
target-port | integer | yes | Port on which the network traffic will be forwarded to on the receiving instance |
description | string | no | Load Balancer Service description |
Example
{
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"retries": 0,
"timeout": 0,
"tls-sni": "string",
"uri": "string"
},
"instance-pool": {
"anti-affinity-groups": [
{
"description": "string",
"id": "string",
"instances": [
{
"anti-affinity-groups": null,
"application-consistent-snapshot-enabled": null,
"created-at": null,
"deploy-target": null,
"disk-size": null,
"elastic-ips": null,
"id": null,
"instance-type": null,
"ipv6-address": null,
"labels": null,
"mac-address": null,
"manager": null,
"name": null,
"private-networks": null,
"public-ip": null,
"public-ip-assignment": null,
"secureboot-enabled": null,
"security-groups": null,
"snapshots": null,
"ssh-key": null,
"ssh-keys": null,
"state": null,
"template": null,
"tpm-enabled": null,
"user-data": null
}
],
"name": "string"
}
],
"application-consistent-snapshot-enabled": true,
"deploy-target": {
"description": "string",
"id": "string",
"name": "string",
"type": "edge"
},
"description": "string",
"disk-size": 0,
"elastic-ips": [
{
"addressfamily": "inet4",
"cidr": "string",
"description": "string",
"healthcheck": {
"interval": 0,
"mode": "tcp",
"port": 0,
"strikes-fail": 0,
"strikes-ok": 0,
"timeout": 0,
"tls-skip-verify": true,
"tls-sni": "string",
"uri": "string"
},
"id": "string",
"ip": "string",
"labels": {}
}
],
"id": "string",
"instance-prefix": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
"ch-dk-2"
]
},
"instances": [
{
"anti-affinity-groups": [
{
"description": null,
"id": null,
"instances": null,
"name": null
}
],
"application-consistent-snapshot-enabled": true,
"created-at": "2024-01-01T12:00:00Z",
"deploy-target": {
"description": "string",
"id": "string",
"name": "string",
"type": "edge"
},
"disk-size": 0,
"elastic-ips": [
{
"addressfamily": null,
"cidr": null,
"description": null,
"healthcheck": null,
"id": null,
"ip": null,
"labels": null
}
],
"id": "string",
"instance-type": {
"authorized": true,
"cpus": 0,
"family": "gpu3",
"gpus": 0,
"id": "string",
"memory": 0,
"size": "large",
"zones": [
null
]
},
"ipv6-address": "string",
"labels": {},
"mac-address": "string",
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"name": "string",
"private-networks": [
{
"id": null,
"mac-address": null
}
],
"public-ip": "string",
"public-ip-assignment": "inet4",
"secureboot-enabled": true,
"security-groups": [
{
"description": null,
"external-sources": null,
"id": null,
"name": null,
"rules": null
}
],
"snapshots": [
{
"application-consistent": null,
"created-at": null,
"export": null,
"id": null,
"instance": null,
"name": null,
"size": null,
"state": null
}
],
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": null,
"name": null
}
],
"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": [
null
]
},
"tpm-enabled": true,
"user-data": "string"
}
],
"ipv6-enabled": true,
"labels": {},
"manager": {
"id": "string",
"type": "sks-nodepool"
},
"min-available": 0,
"name": "string",
"private-networks": [
{
"description": "string",
"end-ip": "string",
"id": "string",
"labels": {},
"leases": [
{
"instance-id": null,
"ip": null
}
],
"name": "string",
"netmask": "string",
"options": {
"dns-servers": [
null
],
"domain-search": [
null
],
"ntp-servers": [
null
],
"routers": [
null
]
},
"start-ip": "string",
"vni": 0
}
],
"public-ip-assignment": "inet4",
"security-groups": [
{
"description": "string",
"external-sources": [
"string"
],
"id": "string",
"name": "string",
"rules": [
{
"description": null,
"end-port": null,
"flow-direction": null,
"icmp": null,
"id": null,
"network": null,
"protocol": null,
"security-group": null,
"start-port": null
}
]
}
],
"size": 0,
"ssh-key": {
"fingerprint": "string",
"name": "string"
},
"ssh-keys": [
{
"fingerprint": "string",
"name": "string"
}
],
"state": "scaling-up",
"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"
]
},
"user-data": "string"
},
"name": "string",
"port": 0,
"protocol": "tcp",
"strategy": "round-robin",
"target-port": 0
}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 | object | Related resource reference schema details |
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 add-service-to-load-balancer: golang | Python | Java
CLI: exo api add-service-to-load-balancer