Bearer key · JSON
POST /api/v1/email/check
curl -s -X POST https://getattest.com.au/api/v1/email/check \
-H "authorization: Bearer $ATTEST_API_KEY" \
-H "content-type: application/json" \
-d '{}'
Send the key as a bearer token in the authorization header. One key and one credit balance cover every service, including Attest Capture. A failed call is refunded automatically. No key yet? POST /api/v1/keys issues one with 25 free credits and no signup — see the key guide.
For agents
Use when
Use this when an agent needs to screen an email address before a sign-up, lead import or send: syntax, whether the domain can receive mail (MX), disposable domains, role accounts and free mailbox providers — without contacting the mail server.
Not documented yet: a captured example response. This page only shows what the module publishes about itself, so the missing parts are absent rather than guessed at.
1 field
Input
Scroll the table horizontally to see all fields.
Field / Type / Required / What it does| Field | Type | Required | What it does |
|---|
email | string | Required | The address to screen. Nothing is sent to the mail server. |
|---|
HTTP 200
Response
Every successful response also carries call_id (your receipt for the charge), credits_charged and credits_remaining.
Scroll the table horizontally to see all fields.
Field / What it holds| Field | What it holds |
|---|
email | The address as it was parsed. |
|---|
domain | The domain part. |
|---|
syntax_valid | Whether the address parses as a valid address. |
|---|
mx | The MX records found for the domain. |
|---|
accepts_mail | Whether the domain publishes a way to receive mail. |
|---|
implicit_mx | Whether delivery would fall back to the A/AAAA record. |
|---|
disposable | Whether the domain is on the disposable-domain list. |
|---|
role_account | Whether the local part is a role account such as info or support. |
|---|
free_provider | Whether the domain is a free mailbox provider. |
|---|
verdict | The overall read, with reasons. |
|---|
mailbox_checked | Always false: the mailbox itself is never probed. |
|---|
Machine-readable failures
Errors
Errors return JSON such as {"error":"invalid_api_key"}. A failed call is refunded automatically.
Scroll the table horizontally to see all fields.
Code / Status / Meaning| Code | Status | Meaning |
|---|
email_required | 400 | No email was sent. |
|---|
invalid_email | 400 | email is not a string. |
|---|
email_too_long | 400 | email is longer than the accepted length. |
|---|
dns_lookup_failed | 502 | The DNS lookup did not answer. Not charged. |
|---|
On every service
Scroll the table horizontally to see all fields.
Code / Status / Meaning| Code | Status | Meaning |
|---|
invalid_api_key | 401 | The authorization header is missing or the key is unknown. |
|---|
insufficient_credits | 402 | The balance is below this call's cost. The response carries credits_required and credits_remaining. |
|---|
rate_limit_exceeded | 429 | Free keys share 10 calls a minute across every service. The response carries limit and window_seconds. |
|---|
services_unavailable | 503 | The credit store could not be reached. Retry once after 30 seconds. |
|---|
Where the answer comes from
Source and scope
Disposable-domain list from disposable-email-domains-js; the exact list and version are returned in source.disposable_domains.
Attest reports what it read, with the source it read it from. It is general information, not advice, and not a legal record.
All Attest tools · Service list as JSON · OpenAPI