Network Load Balancer

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.

Read more

create-load-balancer

Create a Load Balancer

POST /load-balancer

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
namestringyesLoad Balancer name
descriptionstringnoLoad Balancer description
labelsobjectnoLoad balancer labels
Example
{
  "description": "string",
  "labels": {},
  "name": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
created-atstringLoad Balancer creation date
descriptionstringLoad Balancer description
idstringLoad Balancer ID
ipstringLoad Balancer public IP
labelsobjectLoad Balancer Labels
namestringLoad Balancer name
servicesarray[object]Load Balancer Services schema details
statestringLoad 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

NameInDescription
idpath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
descriptionstringnoLoad Balancer description
labelsobjectno
namestringnoLoad Balancer name
Example
{
  "description": "string",
  "labels": {},
  "name": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath
service-idpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
descriptionstringLoad Balancer Service description
healthcheckobjectLoad Balancer Service healthcheck schema details
healthcheck-statusarray[object]Healthcheck status per backend server schema details
idstringLoad Balancer Service ID
instance-poolobjectInstance Pool schema details
namestringLoad Balancer Service name
portintegerPort exposed on the Load Balancer’s public IP
protocolstringNetwork traffic protocol

Allowed values: tcp, udp.
statestringLoad Balancer Service state

Allowed values: creating, deleting, running, updating, error.
strategystringLoad balancing strategy

Allowed values: round-robin, maglev-hash, source-hash.
target-portintegerPort 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

NameInDescription
idpath
service-idpath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
descriptionstringnoLoad Balancer Service description
healthcheckobjectnoLoad Balancer Service healthcheck schema details
namestringnoLoad Balancer Service name
portintegernoPort exposed on the Load Balancer’s public IP
protocolstringnoNetwork traffic protocol

Allowed values: tcp, udp.
strategystringnoLoad balancing strategy

Allowed values: round-robin, maglev-hash, source-hash.
target-portintegernoPort 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

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath
service-idpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath
fieldpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

NameInDescription
idpath
service-idpath
fieldpath

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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-balancer

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
load-balancersarray[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}/service

Path parameters

NameInDescription
idpath

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
healthcheckobjectyesLoad Balancer Service healthcheck schema details
instance-poolobjectyesInstance Pool schema details
namestringyesLoad Balancer Service name
portintegeryesPort exposed on the Load Balancer’s public IP
protocolstringyesNetwork traffic protocol

Allowed values: tcp, udp.
strategystringyesLoad balancing strategy

Allowed values: round-robin, maglev-hash, source-hash.
target-portintegeryesPort on which the network traffic will be forwarded to on the receiving instance
descriptionstringnoLoad 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

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation 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

Last updated on