Utilities API

Bulk Email Validation

the same deliverability check as Email Validation, for up to 100 addresses in a single billable call.

Request Example
<?php $ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => "https://app.way2api.com/api/v1/email/validate/bulk", CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_HTTPHEADER => [ "Authorization: Bearer YOUR_API_KEY", "Content-Type: application/json" ], CURLOPT_POSTFIELDS => json_encode([ "emails" => ["[email protected]", "not-an-email"] ]) ]); $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); $data = json_decode($response, true); print_r($data);
const response = await fetch("https://app.way2api.com/api/v1/email/validate/bulk", { method: "POST", headers: { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, body: JSON.stringify({ "emails": ["[email protected]", "not-an-email"] }) }); if (!response.ok) { throw new Error(`HTTP error: ${response.status}`); } const data = await response.json(); console.log(data);
curl -X POST https://app.way2api.com/api/v1/email/validate/bulk \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"emails":["[email protected]","not-an-email"]}'
$.ajax({ url: "https://app.way2api.com/api/v1/email/validate/bulk", type: "POST", contentType: "application/json", headers: { "Authorization": "Bearer YOUR_API_KEY" }, data: JSON.stringify({ "emails": ["[email protected]", "not-an-email"] }), success: function(data) { console.log(data); }, error: function(xhr) { console.error(xhr.responseJSON); } });
const { data } = await axios.post( "https://app.way2api.com/api/v1/email/validate/bulk", {"emails":["[email protected]","not-an-email"]}, { headers: { "Authorization": "Bearer YOUR_API_KEY" } } ); console.log(data);
import requests response = requests.post( "https://app.way2api.com/api/v1/email/validate/bulk", headers={ "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" }, json={ "emails": ["[email protected]", "not-an-email"] } ) print(response.status_code) print(response.json())
Response Example
200 OK Success Response
{
    "success": true,
    "message": "",
    "data": {
        "order_id": "W2A1739512345abcdef01",
        "result": {
            "total_requested": 3,
            "total_returned": 3,
            "results": [
                {
                    "email": "[email protected]",
                    "result": "valid",
                    "is_valid": true,
                    "is_syntax_valid": true,
                    "reason": "",
                    "domain": {
                        "name": "example.com",
                        "is_valid": true,
                        "is_disposable": false,
                        "is_free": false,
                        "is_spam": false,
                        "is_catch_all": false
                    },
                    "account": {
                        "is_role": false,
                        "is_full_mailbox": false
                    },
                    "mx_records": [
                        "mx1.example.com.",
                        "mx2.example.com.",
                        "mx3.example.com.",
                        "mx4.example.com.",
                        "mx5.example.com."
                    ]
                },
                {
                    "email": "not-an-email",
                    "result": "invalid_syntax",
                    "is_valid": false,
                    "is_syntax_valid": false,
                    "reason": "",
                    "domain": {
                        "name": "not-an-email",
                        "is_valid": false,
                        "is_disposable": false,
                        "is_free": false,
                        "is_spam": false,
                        "is_catch_all": false
                    },
                    "account": {
                        "is_role": false,
                        "is_full_mailbox": false
                    },
                    "mx_records": []
                },
                {
                    "email": "[email protected]",
                    "result": "invalid",
                    "is_valid": false,
                    "is_syntax_valid": true,
                    "reason": "mx record does not exist.",
                    "domain": {
                        "name": "nonexistentdomainxyz123abc.com",
                        "is_valid": false,
                        "is_disposable": false,
                        "is_free": false,
                        "is_spam": false,
                        "is_catch_all": false
                    },
                    "account": {
                        "is_role": false,
                        "is_full_mailbox": false
                    },
                    "mx_records": []
                }
            ]
        }
    }
}
4xx Error Response
{
    "success": false,
    "message": "Please provide data in required format in request body",
    "data": {
        "order_id": "W2A1739512345abcdef01",
        "error_code": "Invalid request body Exception"
    }
}
Common Response Codes
Code Meaning
200 OK — Request successful
400 Bad Request — Missing or invalid parameters
401 Unauthorized — Invalid or missing API key
429 Too Many Requests — Rate limit exceeded
500 Server Error — Try again later
Ready to integrate?

Start with free trial API calls. No credit card required.

Get API Key — Free Browse All APIs
Way2API Way2API
Contact Way2API

Login