Skip to content

DNSR Specification

DNSR is a unified format for displaying DNS records in a clean way.


You can really use any format for DNSR, but we recommend the use of TOML for its features.

Provider-specific fields

Certain fields listed here are only for a certain provider or set of providers. They will all start with {PROVIDER NAME}_, and should be ommitted if you don't use that provider!



The namespace for the domain.

Potential fields:

  • tld - The TLD of the domain (example: the TLD of "" is "com").
  • name - The part of the domain before the TLD (example: the name of "" is "hello").
  • dnssec - A boolean for if DNSSEC is enabled on the domain.
  • provider - The DNS provider for the domain (examples: "Cloudflare", "Namecheap").
  • namecheap_is_parked - A boolean for if your site is just parked via Namecheap.


A namespace for the domain's DNS records.


A namespace for all the records with a certain {TYPE}, for example A or CNAME.

Naming the {SUBDOMAIN}

Note: {SUBDOMAIN} can be "@" for the root domain. It can also be a string if you are using TOML. For example:


put_values = "here"

Here are potential values you can put under this namespace:

  • ttl - The time to live integer. See this guide for more information. If you are using the "Auto" setting from your provider, you can ommit this.
  • priority - The priority integer for MX records.
  • cloudflare_is_proxied - A boolean for if your site has Cloudflare's HTTP proxy enabled.
  • location - If the record points to a type such as a URL or IP, add it here as a string.
  • value - If the record is a text-based type (example: TXT, SPF), add it here as a string.
  • cloudflare_ruleset - A meta-string for if your site has a Cloudflare page rule enabled. Can be ommitted, "CUSTOM", or "DRAFTED".
  • dns_managed_by - If this specific record is managed by a different provider then your main one, put its name in this field.


For a real-world example, RDILWeb has published most of its DNS records in DNSR format here.

Last update: 2020-05-14