Simply.com is available in english

Documentation de l'API Simply.com

Ce document décrit l'API JSON RESTful de Simply.com.

Point de terminaison API

Vous pouvez trouver le point de terminaison HTTP sur https://api.simply.com/2/ - préfixez vos requêtes avec ceci.

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

Authentification

L'authentification se fait avec HTTP Basic Authentication.

Mot de passe est la clé API pour le compte spécifique.

Nom d'utilisateur peut être n'importe quoi, car la clé API identifie uniquement le compte.

Alternativement, la clé API peut être envoyée en tant que Bearer-token dans l’en-tête Authorization :

Authorization: Bearer APIKEY

Les clés API sont créées dans le panneau de contrôle Simply.com sous Compte, clés API.

Spécification OpenApi / Documentation

Vous pouvez trouver la documentation interactive de l'API ici: https://api.simply.com/2/doc/

Ou téléchargez la spécification OpenAPI au format JSON: https://api.simply.com/2/doc.json

Limites de taux

L'API est soumise à des limites de taux, uniquement pour prévenir les abus.

En cas de dépassement, l'API répond avec 429 et indique le délai d'attente dans Retry-After.

Implémentations de bibliothèques

Les bibliothèques suivantes sont disponibles pour utilisation.

Implémentations 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

Implémentations API

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

ddns.simply.com (DynDNS2)

Les routeurs et les clients DDNS qui prennent en charge le protocole DynDNS2 peuvent utiliser directement l'hôte ddns.simply.com.

Pour les scripts et autres automatisations du DNS, nous recommandons l'API REST, qui peut créer, modifier et supprimer les enregistrements DNS.

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

L'authentification se fait avec HTTP Basic Authentication, où le mot de passe est la clé API du compte. Le nom d'utilisateur peut être n'importe quoi, ex. le nom du compte.

Si myip est exclu, l'adresse IP utilisée est celle d'où provient la requête. Les mises à jour doivent se faire via HTTPS.

L'enregistrement doit être présent dans la zone DNS avant de pouvoir être mis à jour : un enregistrement A pour IPv4 et un enregistrement AAAA pour IPv6. S'il n'existe pas, la réponse est nohost, alors créez l'enregistrement dans le panneau de contrôle d'abord.

Le paramètre domain indique le domaine. Il doit être envoyé lorsque le domaine lui-même est mis à jour, par exemple hostname=example.com&domain=example.com, et peut être utilisé lorsque le domaine ne peut pas être déduit de hostname.

Les réponses suivent le protocole DynDNS2, par ex. good lors d'une mise à jour et nochg, lorsque l'adresse IP n'a pas changé.

L'adresse https://ddns.simply.com/myip renvoie l'adresse IP publique d'où provient la requête et ne nécessite pas d'authentification.

ddclient

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

Exemple de Curl (Recommandé)

Utilisez la commande Curl suivante pour définir home.example.com à l'IP externe du client demandeur:

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

Vous pouvez configurer cette commande pour qu'elle s'exécute dans une crontab, sur une machine locale, toutes les 15 minutes environ.

Synology

Sur Synology, vous pouvez utiliser la syntaxe suivante comme fournisseur DDNS personnalisé.

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

hostname doit ensuite être indiqué comme le nom de domaine complet que vous souhaitez mettre à jour, par ex. home.example.com.

Home Assistant

Le capteur récupère l'adresse IP publique toutes les 5 minutes, et l'automatisation ne met à jour le DNS que lorsque l'adresse change, et au démarrage de Home Assistant. La clé API est enregistrée dans 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

Dans UniFi OS, vous devez configurer un fournisseur DNS dynamique personnalisé et entrer la chaîne suivante dans le champ "Serveur".

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