Simply.com is available in english

Documentación de la API de Simply.com

Este documento describe la API JSON RESTful de Simply.com.

Punto final de API

Puedes encontrar el endpoint HTTP en https://api.simply.com/2/ - prefija tus solicitudes con esto.

Ejemplo: https://api.simply.com/2/my/products/

Autenticación

La autenticación se realiza con HTTP Basic Authentication.

Código de acceso es la clave API para la cuenta específica.

Nombre de usuario Puede ser cualquier cosa, ya que la clave API por sí sola identifica la cuenta.

Alternativamente, la clave API puede enviarse como Bearer-token en el encabezado Authorization:

Authorization: Bearer APIKEY

Las claves API se crean en el panel de control de Simply.com bajo Cuenta, Claves API.

Especificación / Documentación de OpenApi

Puedes encontrar la documentación interactiva de la API aquí: https://api.simply.com/2/doc/

O descarga la especificación OpenAPI como JSON: https://api.simply.com/2/doc.json

Límites de tasa

La API está sujeta a límites de tasa, solo para prevenir el abuso.

Al superar el límite, la API responde con 429 e indica el tiempo de espera en Retry-After.

Implementaciones de bibliotecas

Las siguientes bibliotecas están disponibles para su uso.

Implementaciones de ACME

acme.sh https://github.com/acmesh-official/acme.sh/
Posh-ACME https://github.com/rmbolger/Posh-ACME/
cert-manager service https://github.com/RunnerM/simply-dns-webhook/
Certbot plugin https://github.com/JohNan/certbot-dns-simply/
Webhook provider for ExternalDNS https://github.com/uozalp/external-dns-simply-webhook

Implementaciones de API

PHP https://github.com/simplycom/api-php/

ddns.simply.com (DynDNS2)

Routers y clientes DDNS que soportan el protocolo DynDNS2 pueden usar el host ddns.simply.com directamente.

Para scripts y otra automatización de DNS recomendamos la API REST, que puede crear, modificar y eliminar registros DNS.

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

La autenticación se realiza con HTTP Basic Authentication, donde la contraseña es la clave API de la cuenta. El nombre de usuario puede ser cualquier cosa, por ejemplo el nombre de la cuenta.

Si se omite myip, se utiliza la dirección IP desde la que proviene la solicitud. Las actualizaciones deben realizarse a través de HTTPS.

El registro debe encontrarse en la zona DNS antes de que pueda actualizarse: un registro A para IPv4 y un registro AAAA para IPv6. Si no existe, se responde con nohost, así que crea el registro en el panel de control primero.

El parámetro domain indica el dominio. Debe enviarse cuando el propio dominio se actualiza, por ejemplo hostname=example.com&domain=example.com, y puede usarse cuando el dominio no puede derivarse de hostname.

Las respuestas siguen el protocolo DynDNS2, por ejemplo good en una actualización y nochg, cuando la dirección IP no ha cambiado.

La dirección https://ddns.simply.com/myip devuelve la dirección IP pública, desde la que proviene la solicitud, y no requiere autenticación.

ddclient

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

Ejemplo de Curl (Recomendado)

Utiliza el siguiente comando Curl para establecer home.example.com a la IP externa del cliente solicitante:

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

Puedes configurar este comando para que se ejecute en un crontab, en una máquina local, cada 15 minutos o algo así.

Synology

En Synology, puedes usar la siguiente sintaxis como proveedor DDNS personalizado.

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

hostname debe indicarse como el nombre de dominio completo calificado que desea actualizar, p. ej. home.example.com.

Home Assistant

El sensor obtiene la dirección IP pública cada 5 minutos, y la automatización solo actualiza DNS cuando la dirección cambia y cuando Home Assistant se inicia. La clave API se guarda en 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

En UniFi OS, debes configurar un proveedor de DNS dinámico personalizado e ingresar la siguiente cadena en el campo "Servidor".

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