DNS
Hosted DNS on every name, included and never billed.
Record types#
A, AAAA, CNAME, TXT, MX, NS, SRV and CAA. MX and SRV take a priority. Use @ for the bare name.
Every record has its own TTL. Changes take effect as soon as they are saved; resolvers that cached the old answer keep it until its TTL runs out, so lower a TTL a day before a planned move.
Endpoints#
GET/v1/domains/:name/dns
All records on the name, each with an id.
POST/v1/domains/:name/dns
{ "type": "A", "name": "@", "content": "203.0.113.7", "ttl": 3600 }
{ "type": "MX", "name": "@", "content": "mail.example.net", "ttl": 3600, "prio": 10 }
PATCH/v1/domains/:name/dns/:id
Send only the fields you are changing: name, content, ttl, prio.
DELETE/v1/domains/:name/dns/:id
Common setups#
A site on your own server#
A @ 203.0.113.7
A www 203.0.113.7
A TLS certificate#
HTTP-01 challenges need only the A record above. For DNS-01, add the TXT record at _acme-challenge your ACME client asks for — through the API if the client supports a webhook.
Something wrong or missing? The API contract is also at /llms.txt.Acceptable use