Download OpenAPI specification:Download
API stands for Application Programming Interface. You can connect our system with your website, landing page, application or software to verify emails in real time or to send us files programmatically.
Using MillionVerifier's API you can avoid bad emails added to your email lists. You may also use our API to resell our services.
Use your API key to identify your account when making an API call. Each endpoint contains an example of how to use our API. Simply just replace "your-api-key" with your API key you can find on this page: https://app.millionverifier.com/api
Test API key for development: "API_KEY_FOR_TEST". This API key will return random results.
The following versions (or above) are supported to make a succesful request in certain programming languages:
Verify an email address in real time as your subscriber signs up to your newsletter. For cleaning larger databases please use our Bulk API.
Special characters in the email address should be encoded.
Demo API keys:
Verify an email address in real time and get resutls in just a second.
api required | string Example: api=your-api-key Your API key |
email required | |
timeout | integer Example: timeout=10 Time in seconds to terminate the connection in case no response recevied from the recipient server. You can set between 2 and 60 seconds. Default timeout is 20 seconds. |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.millionverifier.com/api/v3/?api=your-api-key&[email protected]&timeout=10',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
{- "quality": "good",
- "result": "invalid",
- "resultcode": 6,
- "subresult": "unknown",
- "free": false,
- "role": false,
- "credits": 3454,
- "executiontime": 2,
- "error": "",
- "livemode": true
}
Upload file containing email addresses for verification
key required | string Example: key=your-api-key Your API key |
Request parameters for upload
file_contents | string <binary> |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://bulkapi.millionverifier.com/bulkapi/v2/upload?key=your-api-key',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('file_contents'=> new CURLFILE('path/to/file')),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
{- "file_id": "940",
- "file_name": "mails500.txt",
- "status": "in_progress",
- "unique_emails": 257,
- "updated_at": "2021-05-16 12:25:42",
- "createdate": "2021-05-16 12:25:42",
- "percent": 60,
- "total_rows": 500,
- "verified": 0,
- "unverified": 0,
- "ok": 0,
- "catch_all": 0,
- "disposable": 0,
- "invalid": 0,
- "unknown": 0,
- "reverify": 0,
- "credit": 0,
- "estimated_time_sec": 120
}
Get info of the uploaded file
key required | string Example: key=your-api-key Your API key |
file_id required | integer Example: file_id=940 The ID of the uploaded file |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://bulkapi.millionverifier.com/bulkapi/v2/fileinfo?key=your-api-key&file_id=940',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
{- "file_id": "940",
- "file_name": "mails500.txt",
- "status": "in_progress",
- "unique_emails": 257,
- "updated_at": "2021-05-16 12:25:42",
- "createdate": "2021-05-16 12:25:42",
- "percent": 60,
- "total_rows": 500,
- "verified": 0,
- "unverified": 0,
- "ok": 0,
- "catch_all": 0,
- "disposable": 0,
- "invalid": 0,
- "unknown": 0,
- "reverify": 0,
- "credit": 0,
- "estimated_time_sec": 120
}
Download report of the verification result
key required | string Example: key=your-api-key Your API key |
file_id required | string Example: file_id=940 The ID of the uploaded file |
filter required | string Enum: "ok" "ok_and_catch_all" "unknown" "invalid" "all" "custom" Example: filter=all Download only filtered results |
statuses | string Enum: "ok" "catch_all" "unknown" "invalid" "disposable" Example: statuses=ok,disposable,invalid When the 'custom' filter is used, result statuses can be given as a comma separated values. If omitted, then all statuses will be in the results |
free | string Enum: "1" "0" When the 'custom' filter is used, this option decides whether to filter for free domains or not. If omitted, both type of domains will be in the results |
role | string Enum: "1" "0" When the 'custom' filter is used, this option decides whether to filter for role emails or not. If omitted, both type of emails will be in the results |
$curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://bulkapi.millionverifier.com/bulkapi/v2/download?key=your-api-key&file_id=940&filter=all', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', )); $response = curl_exec($curl); curl_close($curl); echo $response;