Zum Hauptinhalt springen

Verwaltung von DNS-Einträgen über die API

Einrichten eines A/AAAA-Eintrags für eine Domain oder Subdomain

Um die A- oder AAAA-Einträge einer bestehenden Domain oder Subdomain zu ändern, musst du zuerst die DNS-Zonen-ID ermitteln. Dazu kannst du die DNS-Zonen des Projekts über den Endpunkt GET/v2/projects/{projectId}/dns-zones/ auflisten. In den folgenden Beispielen wird diese Zonen-ID als ZONE_ID bezeichnet.

Anschließend kannst du deine A- und AAAA-Einträge mit der PUT/v2/dns-zones/{dnsZoneId}/record-sets/{recordSet}/-Operation ändern. Beachte, dass diese Operation zum Ändern von sowohl A- als auch AAAA-Einträgen verwendet wird (auch wenn der Pfadparameter recordSet immer auf "a" gesetzt werden sollte):

PUT /v2/dns-zones/ZONE_ID/record-sets/a HTTP/1.1
Host: api.mittwald.de
Content-Type: application/json

{
"a": [
"203.0.113.1",
"203.0.113.2"
],
"aaaa": [
"2001:0DB8::1",
"2001:0DB8::2"
],
"settings": {
"ttl": {
"auto": true
}
}
}

Einrichten eines CNAME-Eintrags für eine Subdomain

Optional: Zuerst eine Subdomain erstellen

Falls die Subdomain noch nicht existiert, musst du sie zuerst erstellen:

POST /v2/ingresses HTTP/1.1
Host: api.mittwald.de
Content-Type: application/json

{
"hostname": "subdomain.domain.example",
"paths": [
{
"path": "/",
"target": {
"useDefaultPage": true
}
}
],
"projectId": "PROJECT_ID"
}
See full request reference at: POST/v2/ingresses/

In diesem Fall ist die Eigenschaft paths weitgehend irrelevant (da du ohnehin einen benutzerdefinierten CNAME-Eintrag setzen wirst), ist aber dennoch ein Pflichtfeld. Verwende das useDefaultPage-Ziel aus dem Beispiel, wenn du kein spezifisches Domain-Ziel definieren möchtest.

Den CNAME-Eintrag setzen

Sobald die Subdomain existiert, musst du zuerst die DNS-Zonen-ID ermitteln. Dazu kannst du die DNS-Zonen des Projekts über den Endpunkt GET/v2/projects/{projectId}/dns-zones/ auflisten.

Mit der Zonen-ID (in den weiteren Beispielen als ZONE_ID referenziert) kannst du dann den CNAME-Eintrag setzen oder ändern:

PUT /v2/dns-zones/ZONE_ID/record-sets/cname HTTP/1.1
Host: api.mittwald.de
Content-Type: application/json

{
"fqdn": "your-cname-target.example",
"settings": {
"ttl": {
"auto": true
}
}
}

Zurücksetzen von benutzerdefinierten A/AAAA/MX-Einträgen

In der Regel werden A-, AAAA- und MX-Einträge von der mittwald-Plattform verwaltet, die du durch die oben erklärten Methoden mit benutzerdefinierten Einträgen überschreiben kannst. Wenn du die DNS-Records zurücksetzen möchtest, damit sie wieder von der mittwald-Plattform verwaltet werden, verwende die POST/v2/dns-zones/{dnsZoneId}/record-sets/{recordSet}/actions/set-managed/-Operation.

POST /v2/dns-zones/ZONE_ID/record-sets/a/actions/set-managed HTTP/1.1
Host: api.mittwald.de
Content-Type: application/json

{}