DNS Access Methods

Query ResolveDB data using standard DNS, DNS-over-HTTPS (DoH), or DNS-over-TLS (DoT).

Choose a Transport

ResolveDB is authoritative for ResolveDB names. It is not a recursive resolver for unrelated domains.

MethodBest forEncryption
Standard DNSdig, DNS libraries, ordinary recursive resolutionNo end-to-end transport encryption
DoH JSONBrowsers, HTTP clients, debuggingHTTPS
DoH wireDNS libraries that support RFC 8484HTTPS
DoTDNS clients that support an explicit TLS serverTLS on port 853

DoH and DoT should be configured for application-scoped ResolveDB queries, not as a system-wide resolver.

Standard DNS

Ordinary recursive resolvers discover the ResolveDB authoritative nameservers through DNS delegation:

dig TXT get.london.weather.public.v1.resolvedb.net +short
dig TXT get.AAPL.stock.public.v1.resolvedb.net +short
dig TXT get.USD-EUR.forex.public.v1.resolvedb.net +short
dig TXT geoip.ip-8-8-8-8.public.v1.resolvedb.net +short

Public service, dataset, and operator-managed public-read answers can be cached according to their DNS TTL. Authenticated private-record answers always use TTL 0.

DoH JSON

The JSON endpoint returns a Google-style DNS response:

curl "https://doh.resolvedb.io/resolve?name=get.london.weather.public.v1.resolvedb.net&type=TXT"

Use /dns-query?name=... for the same JSON behavior:

curl "https://doh.resolvedb.io/dns-query?name=get.AAPL.stock.public.v1.resolvedb.net&type=TXT"

DoH JSON documentation

DoH Wire

RFC 8484 clients can send DNS wire messages with GET or POST:

import dns.message
import dns.query

query = dns.message.make_query(
    "get.london.weather.public.v1.resolvedb.net",
    "TXT",
)
response = dns.query.https(query, "https://doh.resolvedb.io/dns-query")
print(response.answer)

DoH wire documentation

DoT

Send an explicit ResolveDB query to the TLS endpoint:

kdig +tls-ca +tls-hostname=dot.resolvedb.io @dot.resolvedb.io \
  get.london.weather.public.v1.resolvedb.net TXT

Endpoints

EndpointProtocolFormat
resolvedb.net authoritative nameservers, port 53UDP/TCPDNS wire
https://doh.resolvedb.io/resolveHTTPSJSON
https://doh.resolvedb.io/dns-queryHTTPSDNS wire or parameter-selected JSON
dot.resolvedb.io:853TLSDNS wire

The customer REST API is separate and remains at https://api.resolvedb.com/api/v1.

Next Steps