{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/canonical/main/json-schema/canonical-network-load-balancer-pool-state-schema.json", "title": "NetworkLoadBalancerPoolState represents the state of a network load balancer pool.", "x-generated": "2026-10-04", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/canonical-network-load-balancer-pools-api-openapi.yml#/components/schemas/NetworkLoadBalancerPoolState", "properties": { "targets": { "description": "Actual targets in the pool with their status.", "items": { "$ref": "#/$defs/NetworkLoadBalancerPoolTarget" }, "type": "array", "x-go-name": "Targets" } }, "type": "object", "x-go-package": "github.com/canonical/lxd/shared/api", "$defs": { "NetworkLoadBalancerPoolTarget": { "description": "If an instance has both IPv4 and IPv6 addresses on the same network interface,\nthose are represented as two targets inside the pool.\nEach target has its own health check with its own status.", "properties": { "address": { "description": "Address represents the address of the target.", "type": "string", "x-go-name": "Address" }, "device": { "description": "Device represents the target instance's network device.", "type": "string", "x-go-name": "Device" }, "listen_address": { "description": "ListenAddress represents the address of the target's parent load balancer.", "type": "string", "x-go-name": "ListenAddress" }, "listen_port": { "description": "ListenPort represents the port of the target's parent load balancer.", "type": "string", "x-go-name": "ListenPort" }, "name": { "description": "Name represents the target instance's name.", "type": "string", "x-go-name": "Name" }, "port": { "description": "Port represents the port probed on the target's address.", "type": "string", "x-go-name": "Port" }, "status": { "description": "Status represents the status of the target address.\nIt can be one of:\nerror indicates an error occurred while probing the target address.\noffline indicates the target address is not responding to probes.\nonline indicates the target address is responding to probes.\npending indicates the target address is pending to being probed.\nunknown indicates that the targeted instance is not running and there is no service monitor configured, or that health checks are disabled on the pool.", "type": "string", "x-go-name": "Status" } }, "title": "NetworkLoadBalancerPoolTarget represents the actual targets on a pool's instance.", "type": "object", "x-go-package": "github.com/canonical/lxd/shared/api" } } }