Tento dokument popisuje Simply.com RESTful JSON API.
HTTP endpoint můžete najít na https://api.simply.com/2/ - předponujte své požadavky tímto.
Ověření probíhá pomocí HTTP Basic Authentication.
Heslo je API klíč pro konkrétní účet.
Uživatelské jméno může být cokoliv, protože API klíč sám identifikuje účet.
Alternativně může být API klíč odeslán jako Bearer token v hlavičce Authorization:
Authorization: Bearer APIKEY
API klíče se vytvářejí v Simply.com Kontrolním panelu pod Účet, API klíče.
Můžeš najít interaktivní dokumentaci API zde: https://api.simply.com/2/doc/
Nebo stáhněte specifikaci OpenAPI jako JSON: https://api.simply.com/2/doc.json
API podléhá omezením počtu požadavků, pouze aby se zabránilo zneužití.
Při překročení API odpoví kódem 429 a určí dobu čekání v Retry-After.
Následující knihovny jsou k dispozici k použití.
| 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 |
| PHP | https://github.com/simplycom/api-php/ |
|---|
Routery a DDNS klienti, kteří podporují protokol DynDNS2, mohou použít hostitele ddns.simply.com přímo.
Pro skripty a další automatizaci DNS doporučujeme REST API, které může vytvářet, měnit a mazat DNS záznamy.
https://ddns.simply.com/nic/update?hostname=home.example.com&domain=example.com&myip=1.2.3.4
Ověřování probíhá pomocí HTTP Basic Authentication, kde heslo je API klíč pro účet. Uživatelské jméno může být cokoliv, např. název účtu.
Pokud je vynecháno myip, použije se IP adresa, ze které požadavek pochází. Aktualizace musí probíhat přes HTTPS.
Záznam musí být nalezen v DNS zóně, než může být aktualizován: A-record pro IPv4 a AAAA-record pro IPv6. Pokud není nalezen, vrátí se nohost, takže nejprve vytvořte záznam v ovládacím panelu.
Parametr domain určuje doménu. Musí být odeslán spolu s požadavkem, když se samotná doména aktualizuje, např. hostname=example.com&domain=example.com, a může být použit, když doménu nelze odvodit z hostname.
Odpovědi odpovídají protokolu DynDNS2, např. good při aktualizaci a nochg, když je IP adresa nezměněna.
Adresa https://ddns.simply.com/myip vrací veřejnou IP adresu, ze které požadavek pochází, a nevyžaduje autentizaci.
protocol=dyndns2
ssl=yes
server=ddns.simply.com
login=ACCOUNTNAME
password=APIKEY
home.example.com
Použijte následující příkaz Curl k nastavení home.example.com na externí IP adresu žádajícího klienta:
curl -s -u "ACCOUNTNAME:APIKEY" "https://ddns.simply.com/nic/update?hostname=home.example.com"
Tento příkaz můžete nastavit tak, aby se spouštěl v crontab na místním počítači každých 15 minut nebo tak nějak.
Na Synology můžete použít následující syntaxi jako vlastního poskytovatele DDNS.
https://ddns.simply.com/nic/update?hostname=__HOSTNAME__&myip=__MYIP__
hostname musí být poté uvedeno jako plně kvalifikovaný název domény, který chcete aktualizovat, např. home.example.com.
Senzor získává veřejnou IP adresu každých 5 minut a automatizace aktualizuje DNS pouze tehdy, když se adresa změní, a když se Home Assistant spustí. API klíč se ukládá do 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
V UniFi OS musíte nastavit poskytovatele vlastního dynamického DNS a zadat následující řetězec do pole "Server".
ddns.simply.com/nic/update?hostname=%h&myip=%i