API URL
POST /lookup
Headers
Code
Content-Type: application/jsonBody Parameters
Param
Type
Description
domains
required
string or array
Domain or array of domains to check
resolveIps
optional
boolean
If true, resolves A/AAAA records of each MX host (default: true)
validateSmtp
optional
boolean
If true, attempts to open TCP port 25 on each MX host (default: false)
includeSpf
optional
boolean
If true, extracts SPF TXT record data from the domain (default: false)
Content-Type
required
string
Content type for JSON POST requests
Example Request
Code
{
"domains": "gmail.com"
}Successful Response
Status
HTML
200 OKBody
Code
[
{
"domain": "gmail.com",
"mxRecords": [
{
"priority": 5,
"exchange": "gmail-smtp-in.l.google.com",
"ipAddresses": [
"142.250.102.27"
],
"smtpOpen": true
}
],
"spf": {
"record": "v=spf1 include:_spf.google.com ~all",
"includes": [
"_spf.google.com"
],
"mechanism": "~all"
}
}
]Field
Type
Description
results
array
mxRecords[].priority | number | Mail server preference ranking determining email delivery order and failover routing
results[].domain
string
mxRecords[].exchange | string | Authoritative mail server hostname responsible for domain email processing
results[].valid
boolean
mxRecords[].ipAddresses | array | Resolved IP addresses for mail servers enabling direct connectivity validation
results[].mxRecords
array
mxRecords[].smtpOpen | boolean | SMTP port 25 accessibility status indicating active email server capability
results[].mxRecords[].exchange
string
spf.record | string | Complete SPF policy text defining authorized email sending servers for anti-spoofing protection
results[].mxRecords[].priority
integer
spf.includes | array | External SPF records referenced for comprehensive sender authorization validation
results[].mxRecords[].ipAddresses
array
spf.mechanism | string | SPF policy enforcement level (strict, soft-fail, neutral) determining email security posture
results[].mxRecords[].smtpOpen
boolean
—
results[].spf
object
—
results[].spf.record
string
—
results[].spf.includes
array
—
results[].spf.mechanism
string
—
results[].spf.ipv4
array
—
results[].spf.ipv6
array
—
results[].spf.redirect
string
—
processingTime
string
—
correlationId
string
—
Error Response
Example
Code
400 INVALID_INPUT – If domains field is missing or malformed
400 INVALID_DOMAIN – If one or more domains are not valid FQDNs
500 DNS_ERROR – If domain resolution fails unexpectedlyLast Updated: May 4, 2026