Name = "PowerDNS"
Description = ''''''
URL = "https://www.powerdns.com/"
Code = "pdns"
Since = "v0.4.0"

Example = '''
PDNS_API_URL=http://pdns-server:80/ \
PDNS_API_KEY=xxxx \
lego --email you@example.com --dns pdns -d '*.example.com' -d example.com run
'''

Additional = '''
## Information

Tested and confirmed to work with PowerDNS authoritative server 3.4.8 and 4.0.1. Refer to [PowerDNS documentation](https://doc.powerdns.com/md/httpapi/README/) instructions on how to enable the built-in API interface.

PowerDNS Notes:
- PowerDNS API does not currently support SSL, therefore you should take care to ensure that traffic between lego and the PowerDNS API is over a trusted network, VPN etc.
- In order to have the SOA serial automatically increment each time the `_acme-challenge` record is added/modified via the API, set `SOA-EDIT-API` to `INCEPTION-INCREMENT` for the zone in the `domainmetadata` table
- Some PowerDNS servers doesn't have root API endpoints enabled and API version autodetection will not work. In that case version number can be defined using `PDNS_API_VERSION`.
'''

[Configuration]
  [Configuration.Credentials]
    PDNS_API_KEY = "API key"
    PDNS_API_URL = "API URL"
  [Configuration.Additional]
    PDNS_SERVER_NAME = "Name of the server in the URL, 'localhost' by default"
    PDNS_API_VERSION = "Skip API version autodetection and use the provided version number."
    PDNS_POLLING_INTERVAL = "Time between DNS propagation check in seconds (Default: 2)"
    PDNS_PROPAGATION_TIMEOUT = "Maximum waiting time for DNS propagation in seconds (Default: 120)"
    PDNS_TTL = "The TTL of the TXT record used for the DNS challenge in seconds (Default: 120)"
    PDNS_HTTP_TIMEOUT = "API request timeout in seconds (Default: 30)"

[Links]
  API = "https://doc.powerdns.com/md/httpapi/README/"
