Load Balancer
Diese Referenz wird aus der OpenAPI-Spezifikation erzeugt; die Beschreibungen der Endpunkte und Felder sind auf Englisch.
Server targets attached to the network are reached on their address in it (servers without public IPs are reachable only this way); other targets keep their public address. The public addresses of the load balancer do not change.
AutorisierungBearer <token>id*integerint64application/json- body
network*stringNetwork name or ID
Action started
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/attach_to_network" \ -H "Content-Type: application/json" \ -d '{ "network": "string" }'{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64Action started
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/detach_from_network"{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>label_selector?stringFilter by labels: env=prod, env!=prod, env (has key), !env; comma = AND
Load balancers
application/json- response
load_balancers*array<>curl -X GET "https://example.com/load_balancers"{ "load_balancers": [ { "id": 0, "name": "string", "status": "creating", "load_balancer_type": "string", "location": "string", "algorithm": "round_robin", "public_net": { "ipv4": "string", "ipv6": "string" }, "network": 0, "services": [ { "protocol": "tcp", "listen_port": 1, "destination_port": 1, "proxyprotocol": true, "health_check": { "protocol": "tcp", "port": 0, "interval": 0, "timeout": 0, "retries": 0, "http": { "path": "string", "status_codes": [ "2??", "3??" ] } }, "http": { "sticky_sessions": true } } ], "targets": [ { "type": "server", "server": 0, "label_selector": "string", "ip": "string", "servers": [ 0 ], "health": [ { "listen_port": 0, "address": "string", "status": "healthy" } ] } ], "protection": { "delete": true }, "labels": { "property1": "string", "property2": "string" }, "created": "2019-08-24T14:15:22Z" } ]}AutorisierungBearer <token>application/json- body
name*string1 <= length <= 64load_balancer_type*stringlocation*stringalgorithm?string"round_robin""round_robin""least_connections"services?array<>targets?array<>network?stringNetwork name or ID to reach server targets over (see attach_to_network)
labels?Up to 64 key/value pairs; keys and values up to 63 characters
Being created
application/json- response
load_balancer*action*curl -X POST "https://example.com/load_balancers" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "load_balancer_type": "lb11", "location": "string" }'{ "load_balancer": { "id": 0, "name": "string", "status": "creating", "load_balancer_type": "string", "location": "string", "algorithm": "round_robin", "public_net": { "ipv4": "string", "ipv6": "string" }, "network": 0, "services": [ { "protocol": "tcp", "listen_port": 1, "destination_port": 1, "proxyprotocol": true, "health_check": { "protocol": "tcp", "port": 0, "interval": 0, "timeout": 0, "retries": 0, "http": { "path": "string", "status_codes": [ "2??", "3??" ] } }, "http": { "sticky_sessions": true } } ], "targets": [ { "type": "server", "server": 0, "label_selector": "string", "ip": "string", "servers": [ 0 ], "health": [ { "listen_port": 0, "address": "string", "status": "healthy" } ] } ], "protection": { "delete": true }, "labels": { "property1": "string", "property2": "string" }, "created": "2019-08-24T14:15:22Z" }, "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64Load balancer
application/json- response
load_balancer*curl -X GET "https://example.com/load_balancers/0"{ "load_balancer": { "id": 0, "name": "string", "status": "creating", "load_balancer_type": "string", "location": "string", "algorithm": "round_robin", "public_net": { "ipv4": "string", "ipv6": "string" }, "network": 0, "services": [ { "protocol": "tcp", "listen_port": 1, "destination_port": 1, "proxyprotocol": true, "health_check": { "protocol": "tcp", "port": 0, "interval": 0, "timeout": 0, "retries": 0, "http": { "path": "string", "status_codes": [ "2??", "3??" ] } }, "http": { "sticky_sessions": true } } ], "targets": [ { "type": "server", "server": 0, "label_selector": "string", "ip": "string", "servers": [ 0 ], "health": [ { "listen_port": 0, "address": "string", "status": "healthy" } ] } ], "protection": { "delete": true }, "labels": { "property1": "string", "property2": "string" }, "created": "2019-08-24T14:15:22Z" }}AutorisierungBearer <token>id*integerint64Deletion started
application/json- response
action*curl -X DELETE "https://example.com/load_balancers/0"{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64application/json- body
name?string1 <= length <= 64labels?Up to 64 key/value pairs; keys and values up to 63 characters
protection?Updated
application/json- response
load_balancer*curl -X PUT "https://example.com/load_balancers/0" \ -H "Content-Type: application/json" \ -d '{}'{ "load_balancer": { "id": 0, "name": "string", "status": "creating", "load_balancer_type": "string", "location": "string", "algorithm": "round_robin", "public_net": { "ipv4": "string", "ipv6": "string" }, "network": 0, "services": [ { "protocol": "tcp", "listen_port": 1, "destination_port": 1, "proxyprotocol": true, "health_check": { "protocol": "tcp", "port": 0, "interval": 0, "timeout": 0, "retries": 0, "http": { "path": "string", "status_codes": [ "2??", "3??" ] } }, "http": { "sticky_sessions": true } } ], "targets": [ { "type": "server", "server": 0, "label_selector": "string", "ip": "string", "servers": [ 0 ], "health": [ { "listen_port": 0, "address": "string", "status": "healthy" } ] } ], "protection": { "delete": true }, "labels": { "property1": "string", "property2": "string" }, "created": "2019-08-24T14:15:22Z" }}AutorisierungBearer <token>id*integerint64application/json- body
services*array<>algorithm?string"round_robin""least_connections"Action started
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/update_services" \ -H "Content-Type: application/json" \ -d '{ "services": [ { "protocol": "tcp", "listen_port": 1 } ] }'{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64application/json- body
type*string"server""label_selector""ip"server?integerint64label_selector?stringip?stringAction started
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/add_target" \ -H "Content-Type: application/json" \ -d '{ "type": "server" }'{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64application/json- body
type*string"server""label_selector""ip"server?integerint64label_selector?stringip?stringAction started
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/remove_target" \ -H "Content-Type: application/json" \ -d '{ "type": "server" }'{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}AutorisierungBearer <token>id*integerint64application/json- body
load_balancer_type*stringChanged (finished action)
application/json- response
action*curl -X POST "https://example.com/load_balancers/0/actions/change_type" \ -H "Content-Type: application/json" \ -d '{ "load_balancer_type": "string" }'{ "action": { "id": 0, "command": "create_server", "status": "running", "progress": 0, "started": "2019-08-24T14:15:22Z", "finished": "2019-08-24T14:15:22Z", "resources": [ { "id": 0, "type": "server" } ], "error": { "code": "string", "message": "string" } }}