DNS template : create

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

Omschrijving

Maak een nieuwe DNS template aan

Endpoint


Parameters



Parameter Datatype Verplicht Omschrijving
dnstemplate String Ja Naam van de DNS template

• Lengte min: 1 karakter
• Lengte max: 20 karakters
• Toegestane karakters: Letters, cijfers, - en punten
• Regexp: ^[a-zA-Z0-9\-\.]{1,20}$
record_source String Nee De bron van de DNS records voor de template:

default, Stel de standaard DNS records in
zonescan, Scan de DNS zone van een bestaande domeinnaam
custom, Geef eigen gespecificeerde DNS records op
dnstemplate, Dupliceer een bestaande template

Wordt er geen record_source opgegeven dan worden de default records opgegeven.
zonescan_domain String Nee Domeinnaam waarvan de DNS records via een zonescan geïmporteerd moeten worden. Zie voor meer informatie ook: Hoe werkt de zonescan voor DNS beheer?

Alleen verplicht wanneer record_source=zonescan
source_template_id String Nee De DNS template id van de DNS template die gedupliceerd moet worden

Alleen verplicht wanneer record_source=dnstemplate
records Object Nee De DNS records voor de DNS template, beijk voor specifiacties: PUT records update

Alleen verplicht wanneer record_source=custom

Antwoord

Parameter Type Omschrijving
template_id String De unieke ID's van de aangemaakte DNS template
zonescan Object Object met informatie over de zonescan:
num_records: aantal geïmporteerde DNS records
scan_time: Aantal seconde die de zonescan duurde

Alleen beschikbaar wanneer record_source=zonescan

Voorbeelden

Beschrijving:
Maak een nieuwe DNS template, kopieer de DNS records van een bestaande template

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

$a_data = [
  "template_name" => "nieuwe-dns-template",
  "record_source" => "dnstemplate",
  "source_template_id" => "6b4a9cab0123bbaf"
];

$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_POST, true);
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);

if(curl_getinfo($ch, CURLINFO_HTTP_CODE) === 201) {
  echo "DNS template successfully created";
}

Opdracht in cURL:
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d '{"template_name":"nieuwe-dns-template","recourd_source": "dnstemplate","source_template_id": "6b4a9cab0123bbaf"}' \
https://api-test.mijndomeinreseller.nl/v2/dns/templates
Antwoord:
HTTP/1.1 201 Created
Content-Type: application/json;charset=utf-8            
{
  "template_id": "3e1d54b282eaa16f"
}

Beschrijving:
Maak een nieuwe DNS template aan met eigen gespecificeerde DNS records

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

$a_data = [
  "template_name" => "nieuwe-dns-template",
  "record_source" => "dnstemplate",
  "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_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data );
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Bearer $api_key","Content-Type: application/json"));

if(curl_getinfo($ch, CURLINFO_HTTP_CODE) === 201) {
  echo "DNS template successfully created";
}
Opdracht in cURL:
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d '{"template_name":"nieuwe-dns-template","recourd_source": "dnstemplate","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
Antwoord:
HTTP/1.1 201 Created
Content-Type: application/json;charset=utf-8            
{
  "template_id": "3e1d54b282eaa16f"
}

Beschrijving:
Maak een nieuwe DNS template, importeer de DNS records op basis van een zonescan

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

$a_data = [
  "template_name" => "nieuwe-dns-template",
  "record_source" => "zonescan",
  "zonescan_domain" => "somedomain.nl",
];

$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_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data );
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: Bearer $api_key","Content-Type: application/json"));

if(curl_getinfo($ch, CURLINFO_HTTP_CODE) === 201) {
  echo "DNS template successfully created";
}
Opdracht in cURL:
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer XXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d '{"template_name":"nieuwe-dns-template","recourd_source": "zonescan","zonescan_domain": "somedomain.nl"}' \
https://api-test.mijndomeinreseller.nl/v2/dns/templates
Antwoord:
HTTP/1.1 201 Created
Content-Type: application/json;charset=utf-8            
{
  "template_id": "3e1d54b282eaa16f"
  "zonescan": {
    "num_records": 13,
    "scan_time": 8
  }
}