curl --request POST \
--url https://api.airscale.io/v1/email-verifier \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"email": "person@example.com"
}
'const url = 'https://api.airscale.io/v1/email-verifier';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({email: 'person@example.com'})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://api.airscale.io/v1/email-verifier"
payload = { "email": "person@example.com" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)Email verifier
Verify the deliverability of one email address. Rate limit: No endpoint-specific throttle.
curl --request POST \
--url https://api.airscale.io/v1/email-verifier \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"email": "person@example.com"
}
'const url = 'https://api.airscale.io/v1/email-verifier';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({email: 'person@example.com'})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://api.airscale.io/v1/email-verifier"
payload = { "email": "person@example.com" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)email field in a JSON body of at most 16 KiB. Surrounding whitespace is trimmed, and the trimmed address must be at most 320 characters. The legacy /email-verifier route remains available.
Usage and credits
The cost is 0.5 credits per request, reserved before verification. There is no endpoint-specific throttle. When verification is pending, the API polls for up to 45 seconds after the initial provider request without charging again. If pending verification cannot be resolved within that window, the effective result becomesrisky. The initial provider request can itself take up to 90 seconds; allow time for both stages in your client timeout.
Reading the response
Provider JSON object fields are preserved. A direct response receivescredits_consumed: 0.5 at the top level. If the provider uses a body wrapper, the result and credits_consumed remain inside body, and returned_an_error is set to false.
Fields such as email, status, and result are provider-dependent and may be absent. Non-object or non-JSON successful responses pass through unchanged without an added credit field.
Errors and retries
Initial non-2xx provider responses retain the provider’s status and body, such as422. The API attempts to refund the reservation for an initial provider error or network failure. If the refund cannot be confirmed, it returns 503.
This endpoint does not support caller idempotency keys. Retrying creates another verification request and can incur another charge. Use bounded backoff for temporary failures and avoid treating a timeout as proof that no credits were charged.
Next step
Use Email finder to find a work email, or check your credit balance.Authorizations
Use an Airschool workspace API key. Never expose the key in client-side code.
Body
One email address. Surrounding whitespace is trimmed; the trimmed value must be at most 320 characters. Maximum JSON body size: 16 KiB.
^\s*[^\s@]+@[^\s@]+\.[^\s@]+\s*$Response
Normalized provider JSON object, either direct or wrapped in body. credits_consumed is added to the effective result object; other provider fields remain optional. Non-object or non-JSON successful provider responses are passed through unchanged under this same status.
- Option 1
- Option 2
Email field preserved from the provider response, when present.
Provider status, when present. Pending verification is polled before returning.
Provider deliverability result, when present; risky is used when pending verification cannot be resolved.