Dynamic DNS (DDNS)

Use our DDNS API at https://ddns.simply.com with HTTP Basic (username=account, password=API key) for automatic updating of A/AAAA records.

Routers and DDNS clients that support the DynDNS2 protocol can use our API at ddns.simply.com.

Full documentation can be found here: https://ddns.simply.com/doc/

Example:

https://ddns.simply.com/nic/update?hostname=home.example.com&domain=example.com&myip=1.2.3.4

For scripts and other DNS automation we recommend our REST API, which can create, modify and delete DNS records.

Authentication is performed with HTTP Basic Authentication, where the password is the API key for the account. The username can be anything, e.g. the account name. The API key for an account must be created through our Control Panel.

If myip is omitted, the IP address from which the request originates is used. Updates must be made over HTTPS.

The record must exist in the DNS zone before it can be updated: an A record for IPv4 and an AAAA record for IPv6. If it does not exist, nohost is returned, so create the record in the control panel first.

The domain parameter specifies the domain. It must be included when the domain itself is updated, e.g. hostname=example.com&domain=example.com, and can be used when the domain cannot be derived from hostname.

Responses follow the DynDNS2 protocol, e.g. good on an update and nochg when the IP address is unchanged.

The address https://ddns.simply.com/myip returns the public IP address from which the request originates, and does not require authentication.

Examples

ddclient

protocol=dyndns2
ssl=yes
server=ddns.simply.com
login=ACCOUNTNAME
password=APIKEY
home.example.com

Curl

Use the following Curl command to set home.example.com to the external IP for the requesting client:

curl -s -u "ACCOUNTNAME:APIKEY" "https://ddns.simply.com/nic/update?hostname=home.example.com"

You can schedule this command to run in a crontab on a local machine, every 15 minutes or so.

Synology

On Synology you can use the following syntax as a Custom DDNS Provider

https://ddns.simply.com/nic/update?hostname=__HOSTNAME__&myip=__MYIP__

hostname must then be specified as the fully qualified domain name you wish to update, e.g. home.example.com.

Home Assistant

The sensor fetches the public IP address every 5 minutes, and the automation updates DNS only when the address changes, and when Home Assistant starts. The API key is stored in secrets.yaml.

# configuration.yaml
sensor:
  - platform: rest
    name: Public IP
    resource: https://ddns.simply.com/myip
    value_template: "{{ value | trim }}"
    scan_interval: 300

rest_command:
  simplycom_ddns:
    url: "https://ddns.simply.com/nic/update?hostname=home.example.com"
    username: "ACCOUNTNAME"
    password: !secret simply_api_key
# secrets.yaml
simply_api_key: "APIKEY"
# Automation
alias: Simply.com DDNS
triggers:
  - trigger: state
    entity_id: sensor.public_ip
  - trigger: homeassistant
    event: start
actions:
  - action: rest_command.simplycom_ddns

Unifi

In UniFi OS you need to configure a Custom Dynamic DNS provider and enter the following string in the "Server" field.

ddns.simply.com/nic/update?hostname=%h&myip=%i

Article from the support category: Domain & DNS