Loading
Loading
Access historical DNS records (A, AAAA, MX, NS, SOA, SPF, TXT, CNAME) for any hostname or subdomain. Track changes over time with paginated results for comprehensive analysis.
The DNS History Lookup API provides historical DNS data essential for cybersecurity forensics, change auditing, compliance monitoring, domain migration tracking, and detecting DNS hijacking attempts.
Pass your API key as the apiKey parameter in every request.
This is version v1.0 of the API.
The following parameters can be used in your API requests. All parameters are passed as query string parameters.
host-namerequiredStringHostname or URL whose DNS records required.
typerequiredArrayA comma-separated list of DNS record types for lookup. The values can be A, AAAA, MX, NS, SOA, SPF, TXT, CNAME, or all.
pageoptionalIntegerdefault: 1Page no. to retrieve paginated results.
A successful request returns a 200 OK response with a JSON object containing historical DNS records and pagination metadata. See the response preview on the right for the full JSON structure.
totalRecordsTotal number of historical DNS records found.
totalPagesTotal number of pages for paginated results.
currentPageCurrent page number.
historicalDnsRecordsArray of historical DNS record snapshots. Each entry represents a point-in-time snapshot of DNS records for the queried domain.
Each historical snapshot object contains the following fields:
queryTimeDate when the DNS snapshot was taken. (Format: YYYY-MM-DD)
domainNameQueried domain name with trailing dot.
dnsTypesDNS record types included in this snapshot.
dnsRecordsDNS records captured in this snapshot.
Each A or AAAA record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
addressIPv4 or IPv6 address for A or AAAA records respectively.
Each CNAME record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
targetHost to which this domain points.
Each MX record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
targetTargeted mail service provider.
priorityPriority level associated with the mail server.
Each NS record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
singleNameName server for that particular domain.
Each SOA record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
adminAdministrative contact email for SOA records.
hostPrimary name server for SOA records.
expireExpiry time for SOA records.
minimumThe minimum TTL for SOA records.
refreshIndicates the refresh interval for SOA records.
retryThe retry interval for SOA records.
serialThe serial number for SOA records.
Each SPF or TXT record object within a snapshot contains:
nameName of the queried domain.
typeDNS type code (e.g., 1 for A, 28 for AAAA).
dnsTypeDNS type as a string (e.g., "A", "AAAA").
ttlTime to live in seconds.
rawTextRaw (un-parsed) DNS record text.
rRsetTypeIndicates the resource record set type.
stringsList containing the verification strings.
The API uses standard HTTP status codes to indicate the success or failure of requests. For common status codes like 429 (Too Many Requests), refer to the general API documentation.
Please provide correct dns records type(s) [For Technical Support: support@whoisfreaks.com]
No Record Found across: <HOSTNAME>
Unable to fetch dns records. Please try after some time. [For Technical Support email at: support@whoisfreaks.com]
Service is unavailable.
Request is timed-out.