Direct naar de inhoud

Een cPanel API-token aanmaken

Dennis Postma18 oktober 2026
Leestijd3 minuten
Handleidingen

Maak een WHM- of cPanel API-token voor DNS, kies de juiste voor je account en koppel hem aan DNSense.

DNSense handleiding-cover: een cPanel API-token dat één keer wordt getoond

cPanel & WHM heeft twee API's en twee soorten tokens. Welke je nodig hebt hangt af van wiens zones je wilt beheren.

Welk token heb je nodig?

  • WHM API-token: voor een serverbeheerder (root) of een reseller. Het bereikt elke DNS-zone van dat account. WHM luistert op poort 2087.
  • cPanel API-token: voor één hostingaccount. Het bereikt de zones van dat account: het hoofddomein plus de addon- en parked-domeinen. cPanel luistert op poort 2083.

Beide gaan mee in een Authorization-header en vragen niet om je wachtwoord. Je kunt een token altijd intrekken zonder het wachtwoord te wijzigen.

Optie 1: een WHM-token

  1. Log in op WHM als root of als de reseller.
  2. Open Development > Manage API Tokens en klik op Generate Token.
  3. Geef het een naam, bijvoorbeeld dnsense. Een reseller kan het token beperken tot de rechten die DNS nodig heeft. Stel eventueel een einddatum in.
  4. Klik op Save en kopieer het token. WHM toont het één keer, dus kopieer het voordat je de pagina verlaat.

Optie 2: een cPanel-token

  1. Log in op cPanel.
  2. Open Security > Manage API Tokens en klik op Create.
  3. Geef het een naam, bijvoorbeeld dnsense, en stel eventueel een einddatum in.
  4. Klik op Create en kopieer het token. Het wordt één keer getoond.

Koppel het aan DNSense

Voeg een koppeling toe, kies cPanel, kies het bijbehorende tokentype en vul in:

  • Hostnaam van je server. Noem een andere poort in de host of in het poortveld als die van jou afwijkt.
  • Gebruikersnaam: de root, reseller of het hostingaccount waar het token bij hoort.
  • API-token, het token dat je net hebt gemaakt.

DNSense importeert de zones die het account kan bereiken en past records aan via dezelfde API als de zone-editor van cPanel.

Beperkingen

DNSense beheert A-, AAAA-, CNAME-, MX-, TXT-, SRV- en CAA-records op cPanel. Andere records in de zone, zoals NS, blijven ongemoeid.

Als de koppeling niet lukt

Test het token eerst. Voor een WHM-token:

curl -H "Authorization: whm <gebruikersnaam>:<token>" "https://<host>:2087/json-api/listzones?api.version=1"

Voor een cPanel-token:

curl -H "Authorization: cpanel <gebruikersnaam>:<token>" "https://<host>:2083/execute/DomainInfo/list_domains"

Een JSON-antwoord betekent dat het token werkt vanaf waar jij zit. Controleer of de firewall van de server DNSense bij poort 2087 of 2083 laat, en of de DNS-rol op de server aanstaat: zonder die rol zet WHM listzones uit.