DNS template : records update

  • Aangemaakt : 05-07-2024
  • Laatste update: -

Omschrijving

Wijzig de DNS records van een DNS template

Endpoint


Parameters

Bij een PATCH kunnen DNS records worden toegevoegd via de arrays (add), gewijzigd (update) of worden verwijderd (del) in het 'records' object.

Parameter Datatype Omschrijving
Record toevoegen 'add[]' array in 'records' object:
name String hostnaam van het record (subdomein)
@ voor apex-domein
type Array Het type record, mogelijke waarden:

A, CNAME, , TXT, MX, SRV, AAAA, NS, CAA, TLSA, URLFWD (URL Forward)*, URLFWD301 (URL Forward 301)*, URLCLO (URL Cloaking)*,

* URLFWD, URLFWD301 en URLCLO zijn geen officiële DNS records. Stel je deze records in dan wordt er een A en AAAA record toegevoegd voor de betreffende hostnaam die naar onze server verwijst die de forwards op webserver-niveau afhandelt.
content String De inhoud van het DNS record
De tekst {domainname} wordt in de template vervangen door de naam van de domeinnaam.
priority Integer Prioriteit van het record, alleen voor MX en SRV
weight Integer Het gewicht van het record, alleen voor SRV
port Integer De poort van het record, alleen voor SRV
Record wijzigen 'update[]' array in 'records' object:
record_id String De unieke ID van het te wijzigen record
name String hostnaam van het record (subdomein)
@ voor apex-domein
content String De inhoud van het DNS record
De tekst {domainname} wordt in de template vervangen door de naam van de domeinnaam.
priority Integer Prioriteit van het record, alleen voor MX en SRV
weight Integer Het gewicht van het record, alleen voor SRV
port Integer De poort van het record, alleen voor SRV
Record verwijderen 'del[]' array in 'records' object:
record_id String De unieke ID van het te wijzigen record
Bij een PUT worden alle bestaande DNS records vervangen door de nieuwe DNS records.

Parameter Datatype Omschrijving
name String hostnaam van het record (subdomein)
@ voor apex-domein
type Array Het type record, mogelijke waarden:

A, CNAME, , TXT, MX, SRV, AAAA, NS, CAA, TLSA, URLFWD (URL Forward)*, URLFWD301 (URL Forward 301)*, URLCLO (URL Cloaking)*,

* URLFWD, URLFWD301 en URLCLO zijn geen officiële DNS records. Stel je deze records in dan wordt er een A en AAAA record toegevoegd voor de betreffende hostnaam die naar onze server verwijst die de forwards op webserver-niveau afhandelt.
content String De inhoud van het DNS record
priority Integer Prioriteit van het record, alleen voor MX en SRV
weight Integer Het gewicht van het record, alleen voor SRV
port Integer De poort van het record, alleen voor SRV

Antwoord

Bij alleen wijzigen en/of verwijderen:
Bij toevoegen:
Alleen wanneer er records worden toegevoegd:
Parameter Type Omschrijving
record_id Array De unieke ID's van de aangemaakte DNS records

Voorbeelden

Beschrijving:
Wijzig de DNS records van een DNS template: voeg 2 records toe, wijzig 1 record en verwijder 2 records

Opdracht in PHP:
<?php
$env      = "live"; // live or test
$api_key  = "XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
$api_url  = "/v2/dns/templates/a78fcfb7ad682b2d/records";
$api_host = $env === "live" ? "https://api.mijndomeinreseller.nl" : "https://api-test.mijndomeinreseller.nl";

$a_data = [
  "add" => [
    [
      "name" => "subdomain",
      "type" => "A",
      "content" => "123.123.123.123"
    ],
    [
      "name" => "mail",
      "type" => "A",
      "content" => "123.123.123.124"
    ],
    [
      "name" => "@",
      "type" => "MX",
      "content" => "mail.{domainname}",
      "priority" => 10
    ]
  ],
  "update" => [
    [
      "record_id" => "3d9c6e743da76b23",
      "name" => "www",
      "content" => "123.123.123.124"
    ]
  ],
  "del" => [
    [
      "record_id" => "db5e725d9f0737fc"
    ],
    [
      "record_id" => "8c550d41ed68dae2"
    ]
  ]
];

$json_data = json_encode($a_data);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_host . $api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt( $ch, CURLOPT_POSTFIELDS, $json_data );
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Bearer $api_key","Content-Type: application/json"));
$output = curl_exec($ch);

echo $output;
Opdracht in cURL:
curl -X PATCH -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d '{"add":[{"name":"subdomain","type":"A","content":"123.123.123.123"},{"name":"@","type":"MX","content":"mail.somedomain.com","priority":10}],"update":[{"record_id":"3d9c6e743da76b23","name":"www","content":"123.123.123.124"}],"del":[{"record_id":"db5e725d9f0737fc"},{"record_id":"8c550d41ed68dae2"}]}' \
https://api-test.mijndomeinreseller.nl/v2/dns/templates/a78fcfb7ad682b2d/records
Antwoord:
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8            
{
  "record_id": [
    "a7e41abec7d0afae",
    "7ee77c4bf808bd98",
    "cdfbd3c46108e99f"
  ]
}

Beschrijving:
Vervang alle DNS records van een DNS template door een nieuwe reeks

Opdracht in PHP:
<?php
$env      = "live"; // live or test
$api_key  = "XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
$api_url  = "/v2/dns/templates/a78fcfb7ad682b2e/records";
$api_host = $env === "live" ? "https://api.mijndomeinreseller.nl" : "https://api-test.mijndomeinreseller.nl";

$a_data = [
  "records" => [
    [
      "name" => "www",
      "type" => "CNAME",
      "content" => "testdomeinnaam.nl"
    ],
    [
      "name" => "@",
      "type" => "A",
      "content" => "123.123.123.124"
    ],
    [
      "name" => "mail",
      "type" => "A",
      "content" => "123.123.123.123"
    ],
    [
      "name" => "@",
      "type" => "MX",
      "content" => "mail.somedomain.com",
      "priority" => 10
    ]
    [
      "name" => "@",
      "type" => "TXT",
      "content" => "v=spf1 mx a ip4:123.123.123.124 -all"
    ],
  ],
];

$json_data = json_encode($a_data);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_host . $api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt( $ch, CURLOPT_POSTFIELDS, $json_data );
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Bearer $api_key","Content-Type: application/json"));
$output = curl_exec($ch);

echo $output;
Opdracht in cURL:
curl -X PATCH -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d '{"records":[{"name":"www","type":"CNAME","content":"testdomeinnaam.nl"},{"name":"@","type":"A","content":"123.123.123.124"},{"name":"mail","type":"A","content":"123.123.123.123"},{"name":"@","type":"MX","content":"mail.somedomain.com","priority":10},{"name":"@","type":"TXT","content":"v=spf1 mx a ip4:123.123.123.124 -all"}]}' \
https://api-test.mijndomeinreseller.nl/v2/dns/templates/a78fcfb7ad682b2d/records
Antwoord:
HTTP/1.1 200 OK
Content-Type: application/json;charset=utf-8            
{
  "record_id": [
    "1dce64110e464fbe",
    "c60a03dd83b7c2e7",
    "6eabd1c01715889a",
    "c2e321e7b80a2c6e",
    "6b4dd7989ff92362"
  ]
}