REST API  ·  v1

API Documentation

Every D.NIX tool — DNS, WHOIS, IP Intelligence, DNSSEC, Propagation, Email Health and more — available as a fast, consistent JSON API.

12
Endpoints
JSON
REST API
*
CORS Enabled
5 min
Cache TTL
Getting Started
Concepts
Endpoints
Reference

Authentication

Pass your API key on every request using one of the two methods below.

X-API-Key header Recommended
X-API-Key: dnd_your_key_here
Bearer token
Authorization: Bearer dnd_your_key_here
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/dns?d=example.com"
/api/v1/health is public — no key required. All other endpoints require a valid API key.
CORS enabled: All endpoints respond with Access-Control-Allow-Origin: * — call them directly from browser JavaScript.

Response Format

Every response — success or error — uses the same top-level JSON structure.

json
{
  "status": "ok",          // "ok" | "error"
  "data": { ... },       // tool-specific payload
  "meta": {
    "time": "2026-03-21T10:00:00+00:00",
    "elapsed_ms": 142,
    "rate_limit": {          // present when authenticated
      "plan": "Pro",
      "limit_per_hour": 1000,
      "used_this_hour": 42,
      "limit_per_day": 10000,
      "used_today": 387,
      "remaining": 958   // min(hourly headroom, daily headroom)
    }
  },
  "errors": []               // non-empty on error
}

Rate Limits

Two independent limits apply — a per-rolling-hour limit and a per-calendar-day limit — both determined by your plan. A request is allowed only when both limits have headroom. Every authenticated response includes these headers:

X-RateLimit-Limit Requests allowed per rolling hour
X-RateLimit-Remaining Remaining requests in the current hour window
X-RateLimit-Reset Unix timestamp when the hourly window resets
X-RateLimit-Limit-Day Requests allowed per calendar day (midnight reset)
X-RateLimit-Used-Day Requests used so far today across all your keys
X-Plan Your current plan name
When either limit is exceeded the API returns 429 Too Many Requests. Check X-RateLimit-Reset for hourly resets or the error body for midnight (daily) resets.

Endpoints

Click an endpoint to expand details and example.

GET /api/v1/dns DNS Lookup Auth

Query all DNS record types for a domain with automated health analysis — SOA, NS, A, AAAA, MX, TXT, CAA, DKIM and more.

Parameters
d required Domain name to query, e.g. example.com
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/dns?d=example.com"
GET /api/v1/whois WHOIS / RDAP Auth

Fetch domain registration data via RDAP with automatic fallback to raw WHOIS. Includes registrar, dates, nameservers and status flags.

Parameters
d required Domain name, e.g. example.com
Cache: 1 hour API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/whois?d=example.com"
GET /api/v1/ip IP Intelligence Auth

Deep analysis of any public IPv4 or IPv6 address — ASN, BGP prefix, geolocation, PTR, RPKI validity, abuse contacts, transit providers and IX memberships.

Parameters
q required Public IPv4 or IPv6 address — private/reserved ranges are rejected (also accepted as ip)
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/ip?q=1.1.1.1"
GET /api/v1/asn ASN Intelligence Auth

Full BGP and peering overview for any Autonomous System — announced prefixes, upstream/downstream neighbours, IX memberships, peering policy, and traffic data from PeeringDB.

Parameters
q required ASN in any format: AS13335, as13335, or bare number 13335 (also accepted as asn)
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/asn?q=AS13335"
GET /api/v1/ctlog CT Log Search Auth

Search Certificate Transparency logs for all SSL/TLS certificates issued for a domain (including wildcards and subdomains), sourced from crt.sh.

Parameters
d required Domain name — returns certificates for the domain and all its subdomains
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/ctlog?d=example.com"
GET /api/v1/dnssec DNSSEC Validation Auth

Validate the full DNSSEC chain of trust from root to the queried domain. Checks DNSKEY, DS, RRSIG, and NSEC/NSEC3 records.

Parameters
d required Domain name
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/dnssec?d=example.com"
GET /api/v1/propagation DNS Propagation Auth

Check DNS propagation across 200+ global resolvers grouped by region. Returns per-resolver answers, status and response times.

Parameters
d required Domain name
type optional Record type — A, AAAA, MX, NS, TXT, CNAME, SOA, CAA, DS, SRV, PTR (default: A)
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/propagation?d=example.com&type=A"
GET /api/v1/email Email Health Auth

Full email deliverability audit — SPF, DMARC, DKIM, MTA-STS, BIMI, PTR record, blacklist status and overall scoring.

Parameters
d required Domain name
selectors optional Comma-separated list of additional DKIM selectors to probe (e.g. s1,s2,custom). Each selector must be 1–100 chars, alphanumeric plus . _ -. When supplied the result is not served from cache.
Cache: 1 hour API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/email?d=example.com&selectors=s1,marketing"
GET /api/v1/health-score DNS Health Score Auth

Aggregated DNS health score from 0–100 with a per-check breakdown. Useful for dashboards and monitoring integrations.

Parameters
d required Domain name
Cache: 5 min API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/health-score?d=example.com"
GET /api/v1/health API Status Public

Public endpoint — no authentication required. Returns API version and current server time. Use this for uptime monitoring.

Public — no auth
curl
curl "https://www.dnix.in/api/v1/health"
GET · POST · DELETE /api/v1/keys Key Management Auth

List, create or revoke API keys for your account. The key limit is determined by your plan.

Parameters
name POST body Key label — send as JSON {"name":"My Key"}, form field, or query param
API key required
curl
# List keys
curl -H "X-API-Key: dnd_your_key" "https://www.dnix.in/api/v1/keys"

# Create a key
curl -X POST \
  -H "X-API-Key: dnd_your_key" \
  -H "Content-Type: application/json" \
  -d '{"name":"Production Key"}' \
  "https://www.dnix.in/api/v1/keys"

# Revoke key id 42
curl -X DELETE \
  -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/keys/42"
GET /api/v1/account/usage Account Usage Auth

Returns your plan name, hourly rate limit, current usage, key count and total lookup statistics.

API key required
curl
curl -H "X-API-Key: dnd_your_key" \
  "https://www.dnix.in/api/v1/account/usage"

Error Codes

All errors use the standard envelope with status: "error" and a message in errors[].

400
Bad Request
Missing or invalid parameter — check the error message for details.
401
Unauthorized
API key is missing or invalid. Pass it via X-API-Key or Authorization: Bearer.
403
Forbidden
API key has been revoked. Generate a new key from Account Settings.
404
Not Found
Endpoint does not exist. Check the path for typos.
429
Too Many Requests
Hourly rate limit exceeded. Check X-RateLimit-Reset to know when to retry.
500
Internal Server Error
Something went wrong on our end. Retry after a short delay.
503
Service Unavailable
API is temporarily disabled (maintenance mode).