inetGeek docs
HTTP feedsReference

Live DNS

GET
/api/dns

A, AAAA, CNAME, MX, NS records plus SPF, DMARC and DNSSEC state, from a public resolver. Nothing is stored.

Query Parameters

domain*string

A hostname or URL; it is normalised to a bare domain.

Response Body

The lookup.

application/json
  1. response
domain*string
found*boolean
checkedAt*string
Formatdate-time
resolver?string
dnssec?string
a?array<>
aaaa?array<>
cname?array<>
mx?array<>
ns?array<>
spf?string|null
dmarc?string|null
ttl?integer

Seconds the answer may be cached.

[key: string]?any
Example Request
curl -X GET 'https://inetgeek.com/api/dns?domain=example.com'
Example Response
{  "domain": "string",  "found": true,  "checkedAt": "2019-08-24T14:15:22Z",  "resolver": "string",  "dnssec": "string",  "a": [    {      "value": "string",      "ttl": 0,      "priority": 0,      "host": "string"    }  ],  "aaaa": [    {      "value": "string",      "ttl": 0,      "priority": 0,      "host": "string"    }  ],  "cname": [    {      "value": "string",      "ttl": 0,      "priority": 0,      "host": "string"    }  ],  "mx": [    {      "value": "string",      "ttl": 0,      "priority": 0,      "host": "string"    }  ],  "ns": [    {      "value": "string",      "ttl": 0,      "priority": 0,      "host": "string"    }  ],  "spf": "string",  "dmarc": "string",  "ttl": 0}
GET
/api/spf

Query Parameters

domain*string

A hostname or URL; it is normalised to a bare domain.

Response Body

The evaluation, with the include tree.

application/json
  1. response
domain*string
found*boolean
record?string|null
records?array<string>
lookups?integer

DNS lookups the record costs; the limit is ten.

limit?integer
voidLookups?integer
voidLimit?integer
exceededAt?string|null
status?string
problems?array<>
tree?
heaviest?|null
checkedAt*string
Formatdate-time
ttl?integer
[key: string]?any
Example Request
curl -X GET 'https://inetgeek.com/api/spf?domain=example.com'
Example Response
{  "domain": "string",  "found": true,  "record": "string",  "records": [    "string"  ],  "lookups": 0,  "limit": 0,  "voidLookups": 0,  "voidLimit": 0,  "exceededAt": "string",  "status": "string",  "problems": [    {}  ],  "tree": {},  "heaviest": {},  "checkedAt": "2019-08-24T14:15:22Z",  "ttl": 0}
GET
/api/propagation

Query Parameters

domain*string

A hostname or URL; it is normalised to a bare domain.

type*string

The record type to compare.

Value in"A""AAAA""CNAME""MX""TXT""NS"

Response Body

What each resolver answered, and whether they agree.

application/json
  1. response
domain*string
type*string
checkedAt*string
Formatdate-time
answers*array<>
consistent*boolean
reachable?integer
[key: string]?any
Example Request
curl -X GET 'https://inetgeek.com/api/propagation?domain=example.com&type=A'
Example Response
{  "domain": "string",  "type": "string",  "checkedAt": "2019-08-24T14:15:22Z",  "answers": [    {      "id": "string",      "label": "string",      "values": [        "string"      ],      "error": "string"    }  ],  "consistent": true,  "reachable": 0}