Hetzelfde record met de hand aan dertig zones toevoegen is werk dat een script beter doet. DNSense heeft daar een API voor, en met een API-sleutel logt een script in zonder je wachtwoord.
Wat een sleutel kan
Een sleutel werkt als jij. Hij bereikt de zones, domeinen en koppelingen van het team waarin je werkt en kan doen wat je rol toestaat. Wijzigingen ermee komen in de zonegeschiedenis en de auditlog, net als alle andere.
Eén grens: een sleutel kan je login, tweestapsverificatie en API-sleutels niet beheren. Daarvoor moet je zelf in de app zijn ingelogd, zodat een gelekte sleutel geen nieuwe sleutels kan maken en zichzelf niet kan verlengen.
Een sleutel aanmaken
- Open Account en zoek API keys.
- Klik op Create key en geef hem de naam van de plek waar hij draait, zoals
CI pipeline. - Kopieer het geheim. DNSense toont het één keer.
Bewaar het in je wachtwoordmanager of in de secret store van je CI. Zet het nooit in een repository.
Een verzoek doen
Stuur het geheim mee als Bearer-token. Vraag de zones op die je kunt bereiken:
curl -H "Authorization: Bearer <jouw sleutel>" https://api.dnsense.io/zones
Voeg een A-record toe aan een zone:
curl -X POST https://api.dnsense.io/zones/<zone-id>/records \
-H "Authorization: Bearer <jouw sleutel>" \
-H "Content-Type: application/json" \
-d '{"record": {"name": "shop", "type": "A", "content": "198.51.100.7", "ttl": 3600}}'
DNSense zet de wijziging in de wachtrij en voert hem uit bij de provider die de zone beheert. Een lege of ontbrekende name is de apex van de zone. Vraagt je team om goedkeuring voor wijzigingen, dan wacht deze erop, net als vanuit de app.
De volledige lijst met endpoints en de velden per endpoint staat op https://api.dnsense.io/docs.
Houd sleutels klein en gescheiden
Maak één sleutel per taak. Als de pipeline wordt opgeheven, verwijder je zijn sleutel en gaat er niets anders stuk. De lijst toont wanneer elke sleutel is aangemaakt en voor het laatst gebruikt, dus een sleutel die al maanden niemand gebruikt, valt snel op.
- Disable pauzeert een sleutel. Schakel hem weer in als je hem nodig hebt.
- Rotate geeft een nieuw geheim uit en trekt het oude direct in. Doe dit als iemand die het geheim kende vertrekt en pas aan waar de sleutel wordt gebruikt.
- Delete verwijdert de sleutel definitief.
Aanmaken, vernieuwen, uitschakelen en verwijderen komen allemaal in de auditlog.
Als een verzoek mislukt
401: de sleutel is fout, uitgeschakeld of verwijderd. Controleer de header en de sleutellijst.403: je rol staat het niet toe. Een sleutel heeft nooit meer rechten dan jij.400: een veld ontbreekt of is ongeldig. De melding noemt het veld.

