POST /email_verifier • Credits: 2 credits per call
The Email Verifier API checks whether one email address can receive mail. Send a POST request with the address in the email parameter. The response holds a success flag and a result object with the verification status. A call that returns a verdict costs 2 credits. A call that returns no verdict costs nothing.
What does the Email Verifier API do?
A cold email campaign burns sender reputation against dead mailboxes. The Email Verifier API checks one address before you send to it. RichAPI runs the check as a waterfall across several verification providers. The waterfall tries the providers in priority order and stops at the first provider that returns a status. The whole call has a budget of 25 seconds. One call costs the same flat credit rate, whatever the number of providers that the waterfall tries.
Which endpoint does the Email Verifier API use?
Method:
POSTURL:
https://api.richapi.ai/api/v1/email_verifierAuthentication:
x-api-keyheaderResponse: Synchronous JSON
Credits: 2 credits per call
How to send an Email Verifier request
Copy your API key from the RichAPI dashboard.
Set the
emailparameter to the address that you want to verify.Send a
POSTrequest tohttps://api.richapi.ai/api/v1/email_verifier.Send the API key in the
x-api-keyheader.Set the
Content-Typeheader toapplication/json.Read
successandresult.statusfrom the response.Act on the status with the table in the next section.
CAUTION: Each Email Verifier call costs 2 credits and covers one address. Verify a list one address per call, and do not verify the same address twice.
cURL
curl -X POST https://api.richapi.ai/api/v1/email_verifier
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"email": "[email protected]"
}'
Python
import requests
response = requests.post(
"https://api.richapi.ai/api/v1/email_verifier",
headers={"x-api-key": "YOUR_API_KEY"},
json={"email": "[email protected]"},
timeout=60,
)
response.raise_for_status()
print(response.json())
Node.js
const response = await fetch("https://api.richapi.ai/api/v1/email_verifier", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
email: "[email protected]",
}),
});
const data = await response.json();
console.log(data);
What parameters does the Email Verifier API accept?
Parameter | Type | Required | Default | Description |
| string | Yes |
| The email address to verify, for example |
The Email Verifier API accepts one parameter. It verifies one address per call.
What does the Email Verifier API return?
The Email Verifier API returns status 200 for every valid request. The body holds a success flag, a result object with the verdict, and a log of the verification sources that the waterfall tried. The values below are illustrative.
{
"success": true,
"result": {
"status": "valid"
},
"provider": "source_1",
"providers_tried": 1,
"execution_log": [
{ "provider": "source_1", "status": "success", "latency_ms": 640 }
]
}
When no source returns a verdict, success is false, result is null, and the body adds "billed": false. That call costs 0 credits.
What does each Email Verifier response field mean?
Field | Type | Description |
| boolean |
|
| object or null | The verdict. |
| string or null | A label for the source that returned the verdict, for example |
| integer | The number of sources that the waterfall tried. |
| array of objects | One entry per source tried, with |
| boolean | Present and |
| string | Present when every source was unavailable. Send the request again after a few minutes. |
What does each Email Verifier status mean?
The result.status field holds the verdict. Read the value, then take the action in the last column.
Status | What it means | What to do |
| The mailbox exists and accepts mail. | Send to the address. |
| The mailbox does not exist, so mail to it bounces. | Remove the address from the send list. |
| The domain grey-lists the check, so no provider confirms the single mailbox. | Keep the address out of a cold campaign, or accept a higher bounce rate. |
| No provider reached a decision for the address. | Send the request again later. If the status stays |
How much does the Email Verifier API cost?
The Email Verifier API costs 2 credits per call. One credit costs $0.02 on the 1,000 and 5,000 credit packs, so one call costs $0.04 there. Larger packs cost less per credit. 1,000 calls cost 2,000 credits, and 2,000 credits cost $40.00.
Calls | Credits | Cost |
1 | 2 | $0.04 |
100 | 200 | $4.00 |
500 | 1,000 | $20.00 |
1,000 | 2,000 | $40.00 |
10,000 | 20,000 | $400.00 |
One call charges one flat rate. The waterfall charges no extra credit for each provider that it tries.
RichAPI charges the 2 credits only when the waterfall returns a verdict. A call with success set to false returns "billed": false and costs 0 credits. A response outside the 200 range also costs 0 credits.
What errors does the Email Verifier API return?
An error response holds an error field with a text message.
Status | Meaning | What to do |
| The request body failed validation. | Correct the parameter that the message names. Send the |
| The API key is missing, wrong or revoked. | Send a valid key in the |
| The organization has no credits left, or the team reached its monthly spend limit. | Buy credits in the RichAPI dashboard. |
|
| Call |
| The endpoint name is wrong. | Send the request to |
| The request used a method other than | Send the request again with the |
| Rate limit exceeded (too many requests per second). | Wait for the |
| The API failed. | Send the request again. If the failure repeats, write to [email protected]. |
These codes apply to every endpoint.
When every verification source fails or times out, the API still returns 200, with success set to false, billed set to false and an error text. That call costs 0 credits. Send the request again after a few minutes.
For a retry loop, wait 1 second, then 2 seconds, then 4 seconds between attempts.
Frequently asked questions
What input does the Email Verifier API need?
The Email Verifier API needs one email address in the email parameter. An example value is [email protected].
What statuses does the Email Verifier API return?
The Email Verifier API returns one of four statuses: valid, invalid, risky or unknown. valid means deliverable, invalid means undeliverable, risky means a grey-list domain, and unknown means no decision.
How much does the Email Verifier API cost per address?
The Email Verifier API costs 2 credits per call, and one call covers one address. One credit costs $0.02 on the 1,000 and 5,000 credit packs, so 1,000 addresses cost $40.00 there.
Why does the Email Verifier API return a risky status?
A risky status means that the domain grey-lists the verification check. The domain answers the same way for a real mailbox and for a dead one, so no provider confirms the single address.
Does a failed Email Verifier call cost credits?
No. A call that returns no verdict (success is false) costs 0 credits, and so does any response outside the 200 range.
Is the Email Verifier API synchronous?
Yes. The Email Verifier API returns the verification result in the same response. No polling call and no webhook are needed.
Why does the Email Verifier API try several providers?
The Email Verifier API runs as a waterfall. It tries verification providers in priority order and stops at the first provider that returns a status. One call costs 2 credits, whatever the number of providers that the waterfall tries.
Which endpoint name does the Email Verifier API use?
The current endpoint name is email_verifier, and the path is /email_verifier. The pre-rename alias email_verify_waterfall resolves to the same endpoint. Use email_verifier for a new integration.
Can the Email Verifier API verify many addresses in one request?
No. The Email Verifier API accepts one email parameter and verifies one address per call. To verify a list, send one request per address.
