Settings

Settings that apply to the whole subsystem rather than to one object.

Settings

GET /gslb/settings

Get appliance-wide GSLB settings

curl
curl -X GET "https://appliance.example.com/api/v1/gslb/settings" \
  -H "Authorization: Bearer $TOKEN"
PHP
<?php

$url = 'https://appliance.example.com/api/v1/gslb/settings';
$headers = [
    'Authorization: Bearer ' . $token,
];

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => $headers,
    CURLOPT_RETURNTRANSFER => true,
]);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

headers = {"Authorization": f"Bearer {token}"}

response = requests.get("https://appliance.example.com/api/v1/gslb/settings", headers=headers)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/gslb/settings', {
  method: 'GET',
  headers: {
    Authorization: `Bearer ${token}`,
  },
});

const data = await response.json();
Response
{
  "status": "success",
  "message": "GSLB Settings",
  "data": {
    "enableEdnsClientSubnet": false,
    "restrictEdnsClientSubnetToGlobalNames": true
  }
}

PATCH /gslb/settings

Update appliance-wide GSLB settings

This change is staged. Send PUT /services/apply to apply it.

Body parameters
enableEdnsClientSubnet boolean

Enable EDNS Client Subnet (ECS, RFC 7871) processing.

restrictEdnsClientSubnetToGlobalNames boolean

When ECS is enabled, scope it to the configured Global Name domains. No effect when ECS is disabled.

curl
curl -X PATCH "https://appliance.example.com/api/v1/gslb/settings" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "enableEdnsClientSubnet": true,
  "restrictEdnsClientSubnetToGlobalNames": true
}'
PHP
<?php

$url = 'https://appliance.example.com/api/v1/gslb/settings';
$headers = [
    'Authorization: Bearer ' . $token,
    'Content-Type: application/json',
];

$payload = [
    'enableEdnsClientSubnet' => true,
    'restrictEdnsClientSubnetToGlobalNames' => true,
];

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'PATCH',
    CURLOPT_HTTPHEADER => $headers,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => json_encode($payload),
]);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);
Python
import requests

headers = {"Authorization": f"Bearer {token}"}
payload = {
    "enableEdnsClientSubnet": true,
    "restrictEdnsClientSubnetToGlobalNames": true
}

response = requests.patch("https://appliance.example.com/api/v1/gslb/settings", headers=headers, json=payload)
response.raise_for_status()
print(response.json())
JavaScript
const response = await fetch('https://appliance.example.com/api/v1/gslb/settings', {
  method: 'PATCH',
  headers: {
    Authorization: `Bearer ${token}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "enableEdnsClientSubnet": true,
  "restrictEdnsClientSubnetToGlobalNames": true
}),
});

const data = await response.json();
Response
{
  "status": "success",
  "message": "GSLB Settings updated"
}