Domain DNS & Email Security Checker avatar

Domain DNS & Email Security Checker

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Domain DNS & Email Security Checker

Domain DNS & Email Security Checker

Domain DNS & Email Security Checker returns SPF, DKIM, DMARC, MX, MTA-STS, BIMI, CAA, nameservers, registrar and domain age for every domain you give it — one scored row per domain.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Murat Uzun

Murat Uzun

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 hours ago

Last modified

Share

What is Domain DNS & Email Security Checker?

Domain DNS & Email Security Checker is an Apify Actor that reads the full e-mail authentication and DNS setup of any domain — SPF, DKIM, DMARC, MX, MTA-STS, BIMI, CAA, nameservers, registrar and domain age — and returns one clean, scored row per domain. Every lookup goes through Google's public DNS-over-HTTPS resolver (dns.google) and the RDAP registry service (rdap.org): no HTML parsing, no anti-bot wall, no proxy, no API key. Each domain also gets an emailSecurityScore (0-100), a grade (A-F) and an issues array in plain English — "No DMARC record", "SPF uses +all (allows anyone)" — that drops straight into a client report.

What data does Domain DNS & Email Security Checker extract?

Domain DNS & Email Security Checker extracts 33 fields per domain across e-mail authentication, DNS and registration:

FieldTypeDescription
domain, resolves, ipv4, ipv6string, boolean, arrayHostname checked (scheme and www. stripped) and what it resolves to
nameservers, dnsProviderarray, stringNS set and DNS vendor (Cloudflare, Route 53, GoDaddy, NS1, Azure DNS…)
mx, emailProviderarray, string{priority, exchange} pairs and mailbox vendor (Google Workspace, Microsoft 365, Proton Mail, Zoho, Self-hosted…)
spfRecord, spfPolicy, spfIncludes, spfLookupCountstring, array, numberRaw v=spf1 TXT, final mechanism (-all, ~all, ?all, +all), include hosts and the RFC 7208 lookup count (over 10 fails)
emailServicesarraySending tools authorised by SPF: SendGrid, Mailchimp, HubSpot, Salesforce, Zendesk, Klaviyo, Brevo, Amazon SES…
dmarcRecord, dmarcPolicy, dmarcSubdomainPolicy, dmarcRua, dmarcPctstring, array, number_dmarc TXT with p=, sp=, report addresses and enforced percentage
dkimSelectorsFoundarrayProbed selectors that publish a usable key
hasMtaSts, hasBimi, caaRecordsboolean, arrayMTA-STS, BIMI and the CAA entries restricting certificate issuance
registrar, registeredAt, expiresAt, updatedAt, domainAgeDays, domainStatusstring, number, arrayRDAP registration data, age in days and EPP status codes
emailSecurityScore, emailSecurityGrade, issuesnumber, string, arrayScore, grade and findings
rdapError, error, scrapedAtstringPer-source failure notes and check timestamp

How to use Domain DNS & Email Security Checker

  1. Paste your domains into Domains. Bare domains, full URLs and e-mail addresses all work: https://www.apify.com/store and info@apify.com both become apify.com.
  2. Leave Check DKIM selectors on. DKIM lives at unguessable record names, so it can only be found by probing; the default 16 selectors cover Google, Microsoft 365, Mailchimp, SendGrid, Zoho, Proton and Mandrill.
  3. Raise Max concurrency to 10-20 for lists of thousands, click Start, then export as JSON, CSV, Excel or HTML.

Example input

{
"domains": ["github.com", "protonmail.com", "example.com"],
"checkDkim": true,
"maxConcurrency": 5
}

Example output

{
"domain": "github.com",
"dnsProvider": "Amazon Route 53",
"mx": [{ "priority": 0, "exchange": "github-com.mail.protection.outlook.com" }],
"emailProvider": "Microsoft 365",
"spfPolicy": "~all",
"spfLookupCount": 8,
"emailServices": ["Microsoft 365", "SendGrid", "Mailchimp", "Salesforce", "Zendesk"],
"dmarcPolicy": "quarantine",
"dmarcSubdomainPolicy": "reject",
"dmarcRua": ["dmarc@github.com"],
"dkimSelectorsFound": ["google", "selector1", "k1", "s1"],
"hasMtaSts": false,
"registrar": "MarkMonitor Inc.",
"registeredAt": "2007-10-09T18:20:50.000Z",
"domainAgeDays": 6912,
"emailSecurityScore": 75,
"emailSecurityGrade": "B",
"issues": ["No MTA-STS policy record"],
"scrapedAt": "2026-09-12T15:45:00.000Z"
}

Input parameters

ParameterTypeDefaultDescription
domainsarray["apify.com"]Domains to check, one row each
checkDkimbooleantrueProbe DKIM selectors (16 extra DNS queries per domain)
dkimSelectorsarray16 common selectorsNames tried at <selector>._domainkey.<domain>
maxConcurrencyinteger5Domains checked in parallel (1-20)

Pricing

Domain DNS & Email Security Checker uses pay-per-event pricing: $0.005 per domain result, i.e. $5 per 1,000 domains, plus a negligible actor-start fee, platform usage included. Each domain is about 26 small DNS queries and one RDAP call, so compute stays in the cents even for large lists. Set Maximum cost per run and the Actor trims the list to what the budget covers instead of overspending.

Domain DNS & Email Security Checker vs. MXToolbox and manual dig lookups

Domain DNS & Email Security Checker replaces one-domain-at-a-time tooling. MXToolbox, dmarcian and dig check a single domain per lookup with no structured export — scoring 800 prospects that way is a week of clicking. This Actor takes the whole list, returns a flat dataset with a score and grade per domain, and runs on a schedule so you see the day a prospect's DMARC policy changes.

Using Domain DNS & Email Security Checker with AI agents and MCP

Domain DNS & Email Security Checker is pay-per-event with limited permissions — the two requirements for an Actor to be callable through the Apify MCP server at mcp.apify.com. An agent passes domains and gets one structured row per domain back, ready for a deliverability audit or a lead-scoring step. The same run works from n8n, Make, Zapier and LangChain through Apify's integrations.

FAQ

How is the score calculated? SPF present +20, -all +10 (~all +5), 10 or fewer SPF lookups +5, DMARC present +20, p=reject +20 (quarantine +10), DKIM found +15, MTA-STS +5, BIMI +5. Grades: A ≥ 85, B ≥ 70, C ≥ 50, D ≥ 30, else F.

Why is DKIM empty on a domain that signs its mail? Selector names are arbitrary, so a custom selector is missed unless you add it to DKIM selectors to probe. A record with an empty p= value is a revoked key and is correctly reported as not found.

What are the limitations? Some TLDs run no RDAP service, so registrar and the dates come back null with a note in rdapError. Results reflect the resolver's cached view of DNS, so a change made minutes ago may not show yet. A failing domain still produces a row, with the reason in error.

Is this legal to run? Yes. DNS and RDAP records are public infrastructure data published by domain owners, and no personal data is collected.

Can I export to CSV or Excel? Yes, from the Output tab or the API, with ready-made Overview, E-mail authentication and DNS & registration views.

Part of the webdatatools web-intelligence suite — every Actor is pay-per-event, runs without proxies or a headless browser, and returns one clean row per entity:

Website & domain intelligence

Content for AI, LLMs and RAG

Search, video and social

Leads, jobs and company data

Developer, app and research data

Support and feedback

Found a provider it should recognise, a DKIM selector worth adding, or a parsing bug? Open an issue on the Issues tab.