Developers
DNSRadar API
The current API exposes the same DNS check used by the web interface. It is a public preview for testing and low-volume integrations, not a commercial SLA-backed API. Responses are JSON unless an export format is requested.
Run a check
POST /api/dns/check
Content-Type: application/json
{
"domain": "example.com",
"recordType": "A"
}Supported record types are A, AAAA, CNAME, MX, TXT, NS, SOA, PTR, SRV and CAA. PTR checks require a valid reverse lookup name such as an in-addr.arpa or ip6.arpa FQDN.
Response structure
{
"queryId": "uuid",
"domain": "example.com",
"recordType": "A",
"status": "COMPLETED",
"summary": "Plain-language diagnosis",
"results": [
{
"resolverName": "Google Mountain View",
"resolverIp": "8.8.8.8",
"country": "US",
"status": "OK",
"response": ["93.184.216.34"],
"ttl": 300,
"latencyMs": 42
}
]
}Endpoints
/api/dns/check/api/dns/check/:id/api/resolvers/api/export/:queryId?format=csv/api/export/:queryId?format=jsonLimits and errors
Requests are rate limited by source IP. By default, check creation is limited to 10 requests per minute, stored-result reads to 60 per minute and exports to 30 per minute. These values may change while the API remains in preview.
HTTP/1.1 429 Too Many Requests
Retry-After: 42
X-RateLimit-Limit: 10
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 42
{
"error": "Rate limit exceeded. Try again later.",
"retryAfter": 42
}Invalid input returns HTTP 400, unsupported content types return 415, oversized request bodies return 413, rate limits return 429 and unknown stored checks return 404. Individual resolver failures are represented inside the results array as TIMEOUT, NXDOMAIN, SERVFAIL, NO_ANSWER or ERROR rather than failing the whole request.