• Plesk Uservoice will be deprecated by October. Moving forward, all product feature requests and improvement suggestions will be managed through our new platform Plesk Productboard.
    To continue sharing your ideas and feedback, please visit features.plesk.com

Resolved How to activate DNSSEC automatically via Plesk API (REST or XML)?

Riculum

New Pleskian
Server operating system version
Debian
Plesk version and microupdate number
18.0.73 Update 3
Hey everyone

I'm trying to enable and sign DNSSEC automatically for a specific domain using either the Plesk REST API or the XML API, but I can’t find a clear example that actually works.

The REST CLI endpoint works fine for other commands (e.g. settings, server), but it seems like dnssec isn’t recognized — even though the DNSSEC extension is installed and works in the GUI.

I simply need to automate enabling DNSSEC and generating DS records for a given domain (so I can sync them to a registrar).
Is there an official way or supported endpoint to:
  • Activate/sign DNSSEC for a domain
  • Retrieve the DS records
  • All via API (either REST or XML)?

Any example requests or hints would be really appreciated.
 
You can use execute the following CLI command of the DNSSEC extension via the /extension/call/ endpoint of the REST API
  • To sign a domain with default settings:
    plesk ext dnssec sign --domain-name example.com

  • To view DNSSEC information for a domain:
    plesk ext dnssec info --domain-name example.com

  • To unsign a domain:
    plesk ext dnssec unsign --domain-name example.com

For example, to get the DNSSEC status of an domain you can make the following API call:
Code:
curl -X 'POST' \
'https://yourrserver.tld:8443/api/v2/cli/extension/call' \
-H 'accept: application/json' \
-H 'authorization: Basic ABCDEFGHIJKLMNOP==' \
-H 'Content-Type: application/json' \
-d '{
"params": [
   "--call",
   "dnssec",
   "info",
    "--domain-name",
    "example.com"
   ]
}'
 
Thanks, that did the trick!
Calling /api/v2/cli/extension/call with dnssec info --domain-name example.com returned the DNSSEC status correctly. Appreciate the clear example!
 
Back
Top