UpCloud

Load Balancer Resolvers

DNS resolvers allow backends to use dynamic service discovery by resolving hostnames to IP addresses. This enables backends to automatically discover and connect to services.


GET/1.3/load-balancer/{lb_uuid}/resolvers

List resolvers

Returns a list of DNS resolvers configured for a load balancer.

Request

GET
/1.3/load-balancer/{lb_uuid}/resolvers
curl -X GET https://api.upcloud.com/1.3/load-balancer/0a1b2c3d-4e5f-6789-abcd-ef0123456789/resolvers \
  -u your_username:your_password

GET/1.3/load-balancer/{lb_uuid}/resolvers/{name}

Get resolver details

Returns details of a specific DNS resolver.

Request

GET
/1.3/load-balancer/{lb_uuid}/resolvers/{name}
curl -X GET https://api.upcloud.com/1.3/load-balancer/0a1b2c3d-4e5f-6789-abcd-ef0123456789/resolvers/upcloud \
  -u your_username:your_password

POST/1.3/load-balancer/{lb_uuid}/resolvers

Create resolver

Creates a new DNS resolver for a load balancer.

Attributes

  • Name
    name
    Type
    string
    Description

    Resolver name (1-255 chars).

  • Name
    nameservers
    Type
    array
    Description

    List of DNS server IP addresses.

  • Name
    retries
    Type
    integer
    Description

    Number of retries on failure. Default: 5.

  • Name
    timeout
    Type
    integer
    Description

    Timeout for DNS queries in seconds. Default: 30.

  • Name
    timeout_retry
    Type
    integer
    Description

    Timeout for retried queries in seconds. Default: 10.

  • Name
    cache_valid
    Type
    integer
    Description

    Cache time for valid responses in seconds. Default: 10.

  • Name
    cache_invalid
    Type
    integer
    Description

    Cache time for invalid responses in seconds. Default: 5.

Request

POST
/1.3/load-balancer/{lb_uuid}/resolvers
curl -X POST https://api.upcloud.com/1.3/load-balancer/0a1b2c3d-4e5f-6789-abcd-ef0123456789/resolvers \
  -u your_username:your_password \
  -H "Content-Type: application/json" \
  -d '{
    "name": "custom-resolver",
    "nameservers": ["8.8.8.8", "8.8.4.4"],
    "retries": 3,
    "timeout": 15
  }'

PATCH/1.3/load-balancer/{lb_uuid}/resolvers/{name}

Modify resolver

Modifies an existing DNS resolver.

Request

PATCH
/1.3/load-balancer/{lb_uuid}/resolvers/{name}
curl -X PATCH https://api.upcloud.com/1.3/load-balancer/0a1b2c3d-4e5f-6789-abcd-ef0123456789/resolvers/custom-resolver \
  -u your_username:your_password \
  -H "Content-Type: application/json" \
  -d '{
    "nameservers": ["1.1.1.1", "1.0.0.1"],
    "timeout": 20
  }'

DELETE/1.3/load-balancer/{lb_uuid}/resolvers/{name}

Delete resolver

Deletes a DNS resolver from a load balancer.

Request

DELETE
/1.3/load-balancer/{lb_uuid}/resolvers/{name}
curl -X DELETE https://api.upcloud.com/1.3/load-balancer/0a1b2c3d-4e5f-6789-abcd-ef0123456789/resolvers/custom-resolver \
  -u your_username:your_password