PowerDNS Driver Documentation ============================= `PowerDNS`_ is an open-source DNS server. The current libcloud PowerDNS driver uses the HTTP API from PowerDNS 3.x by default. Please read the `PowerDNS 3 HTTP API documentation`_ to enable the HTTP API on your PowerDNS server. Specifically, you will need to set the following in ``pdns.conf``:: experimental-json-interface=yes experimental-api-key=changeme webserver=yes For PowerDNS 4.x, please read the `PowerDNS 4 HTTP API documentation`_. The ``pdns.conf`` options are slightly different (the options are no longer prefixed with ``experimental-``):: json-interface=yes api-key=changeme webserver=yes Be sure to reload the pdns service after any configuration changes. Instantiating the driver ------------------------ To instantiate the driver you need to pass the API key, hostname, and webserver HTTP port to the driver constructor as shown below. .. literalinclude:: /examples/dns/powerdns/instantiate_driver.py :language: python API Docs -------- .. autoclass:: libcloud.dns.drivers.powerdns.PowerDNSDriver :members: :inherited-members: .. _`PowerDNS`: https://doc.powerdns.com/ .. _`PowerDNS 3 HTTP API documentation`: https://doc.powerdns.com/3/httpapi/README/ .. _`PowerDNS 4 HTTP API documentation`: https://doc.powerdns.com/md/httpapi/README/