Skip to content
ProspectAPIs

API reference / Email verification

Look up an email domain

Written and maintained by The ProspectAPIs team

GET/v1/email/domain/:domain

GET /v1/email/domain/:domain is the ProspectAPIs operation emailDomain, in the Email verification group of the REST API. What DNS, our lists and our own recent checks know about a domain; no mail server is contacted. Free, 300 lookups an hour per account. Cost: free, 300 an hour per account. Send your API key as a Bearer token in the Authorization header.

How this fits with the rest of the email verification API, with worked examples, is in the email verification guide.

Parameters

Parameters of GET /v1/email/domain/:domain
NameInTypeDescription
domain requiredpathstring

Responses

Response codes of GET /v1/email/domain/:domain
StatusMeaning
200The domain.
400The request was invalid (e.g. a bad filter or input); nothing was charged.
401The API key is missing or invalid.
429300 lookups an hour reached; Retry-After.

Every error answers with the same JSON body, an error string and sometimes a code; the errors page lists each status and when it happens. A per-key 429 carries Retry-After; see rate limits.

200 response fields

The domain. The body is a EmailDomainInfo.

Fields of the 200 response
FieldTypeDescription
domainstring
existsboolean or null
accepts_mailboolean or null
null_mxboolean
mxarray of object
mx[].preferenceinteger or null
mx[].hoststring
mail_providerstring or null
spfboolean or null
dmarcstring or null: reject, quarantine, none, missing,
disposableboolean
free_providerboolean
parkedboolean
catch_allboolean or nullMeasured by our own check recently, else null; never guessed.
catch_all_checked_atstring or null
domain_age_daysinteger or null
new_domainboolean
did_you_meanstring or null
dns_answeredboolean
checked_atstring (date-time)

Code samples

Each sample sends the same request. Set PROSPECTAPIS_KEY in your environment first. Values come from the spec's examples; replace them with your own.

curl
curl https://api.prospectapis.com/v1/email/domain/acme.com \
  -H "Authorization: Bearer $PROSPECTAPIS_KEY"
JavaScript (fetch)
const res = await fetch("https://api.prospectapis.com/v1/email/domain/acme.com", {
  headers: { Authorization: `Bearer ${process.env.PROSPECTAPIS_KEY}` },
});
if (!res.ok) throw new Error(`${res.status}: ${(await res.json().catch(() => ({}))).error ?? res.statusText}`);
const data = await res.json();
console.log(data);
Python (requests)
import os, requests

res = requests.get(
    "https://api.prospectapis.com/v1/email/domain/acme.com",
    headers={"Authorization": f"Bearer {os.environ['PROSPECTAPIS_KEY']}"},
    timeout=30,
)
res.raise_for_status()
data = res.json()
print(data)

Billing

This call is free: it never spends credits, so you can call it as often as the rate limit allows. Metered calls on the same key report your balance after each response in X-Credits-Remaining, and GET /v1/account shows it at any time.

The email verification guide covers this area end to end. Previous operation: Find an email address. Next operation: What a score means. Every operation, grouped by area, is on the API reference index.

Create a free account to get a key, then run the samples above with your own values.

Was this page helpful?