Alles, was Sie im Web-Dashboard tun können (Domains hinzufügen und löschen, DNS-Einträge verwalten), steht auch programmatisch über eine REST-API zur Verfügung.
Alle Endpunkte akzeptieren und liefern JSON. Für die Authentifizierung ist ein API-Schlüssel erforderlich (siehe unten). Derzeit gibt es weder Paginierung noch Ratenbegrenzung.
https://ns.nrnic.com/api
Einen API-Schlüssel können Sie in den Kontoeinstellungen erstellen. Ein neu erstellter Schlüssel wird nur einmal angezeigt – bewahren Sie ihn daher sicher auf.
Senden Sie bei jeder Anfrage den folgenden Authorization-Header mit:
Authorization: Bearer nrnic_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Im Fehlerfall verwendet die Antwort den passenden HTTP-Statuscode (401/404/409/422/500 usw.) sowie das folgende JSON-Format.
{
"error": {
"code": "domain_not_found",
"message": "Domain not found."
}
}
| Methode | Pfad | Beschreibung |
|---|---|---|
| GET | /api/domains | Domains des angemeldeten Benutzers auflisten |
| POST | /api/domains | Domain hinzufügen |
| GET | /api/domains/{id} | Domain abrufen, einschließlich NS-Synchronisierungs- und Delegierungsstatus |
| DELETE | /api/domains/{id} | Domain löschen |
| POST | /api/domains/{id}/resync | DNS-Zone erneut an alle Nameserver (ns1–ns4) übertragen |
| POST | /api/domains/{id}/delegation-check | Prüfen, ob die Domain an NRNIC delegiert wurde |
| GET | /api/domains/{id}/records | DNS-Einträge einer Domain auflisten |
| POST | /api/domains/{id}/records | DNS-Eintrag hinzufügen |
| PUT | /api/domains/{id}/records/{record_id} | DNS-Eintrag aktualisieren |
| DELETE | /api/domains/{id}/records/{record_id} | DNS-Eintrag löschen |
# Domains des angemeldeten Benutzers auflistencurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# Domain hinzufügencurl -s https://ns.nrnic.com/api/domains \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"fqdn": "example.com"}'
# Domain löschencurl -s -X DELETE https://ns.nrnic.com/api/domains/123 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
# DNS-Eintrag hinzufügencurl -s https://ns.nrnic.com/api/domains/123/records \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "@", "content": "192.0.2.1", "ttl": 3600}'
# DNS-Eintrag aktualisierencurl -s -X PUT https://ns.nrnic.com/api/domains/123/records/456 \
-H "Authorization: Bearer nrnic_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"type": "A", "name": "@", "content": "192.0.2.2", "ttl": 3600}'
# DNS-Eintrag löschencurl -s -X DELETE https://ns.nrnic.com/api/domains/123/records/456 \
-H "Authorization: Bearer nrnic_xxxxxxxx"
| type | Eintragstyp. Einer von A, AAAA, CNAME, MX, TXT, NS, SRV, CAA. |
| name | Hostname (Subdomain-Teil). Verwenden Sie "@" für den Zonen-Apex. |
| content | Der Wert des Eintrags (IP-Adresse, Ziel-Hostname usw.). |
| ttl | TTL in Sekunden, 60–604800. Standardwert bei Auslassung: 3600. |
| priority | Priorität für MX-/SRV-Einträge (0–65535). |
| weight | Gewichtung für SRV-Einträge (0–65535). |
| port | Portnummer für SRV-Einträge (0–65535). |