Email validations

To start validating a list of one or more email addresses, you create a new email validation job. Email validation jobs are identified by a unique random ID and live in the following sub-resource:

/email-validations

Creating a new email validation job

To create a new email validation job you can issue an HTTP POST request against the /email-validations sub-resource, along with the email addresses you wish to include in the job; upon receipt of the request, Verifalia queues the validations and process them asynchronously. In fact, because of the unpredictable processing time email validations may require, it would be impractical for the client to wait indefinitely.

As part of the response to the new email validation request, Verifalia sends back an object representing the snapshot of the current request, along with an auto-generated unique ID for the job and an URL (via the Location HTTP header) the client must poll in order to receive updated snapshots in the future.

The request body must be a JSON object with this structure:

  • entries[] an array of address to process
    • inputData the email address you wish to validate.
    • custom v1.2+ an optional string with custom data to be returned upon completion, with a maximum length of 50 characters.
  • quality v1.2+ an optional string with the name of the desired results quality; can be any of the following: standard, high, extreme. If not specified, Verifalia will use the default results quality for the subscription.
  • priority v1.4+ an optional numeric value which sets the priority of the validation activity, relative to the parent subscription. In the event of a subscription with many concurrent jobs, this value allows to increase the processing slot time percentage of a validation job with respect to the others. The allowed range of integer values spans from 0 (lowest priority) to 255 (highest priority), where the midway value 127 means normal priority; if not specified, Verifalia processes the validation job without a specific priority.
  • deduplication v1.4+ an optional string with the name of the algorithm our engine will use to scrub the list of email addresses and remove its duplicates. The following values are currently supported:
    • off does not mark duplicated items
    • safe mark duplicated items with a "safe" algorithm which guarantees no false duplicates are returned
    If not specified, Verifalia will use the default settings for the subscription.

Request structure example (JSON)
{
    entries: [
        { inputData: 'john.smith@example.com' },
        { inputData: 'foo@example.net', custom: 'foo123' },
        { inputData: 'bar@(this is a comment)invalid.tld' }
    ],
    quality: 'high',
    priority: 100,
    deduplication: 'safe'
}

Get the status of an email validation job

To get the status of a particular email validation job, the client asks Verifalia for an updated snapshot by issuing an HTTP GET request against the /email-validations/{uniqueId} sub-resource, where uniqueId is the random unique ID returned by Verifalia upon creating the validation job.

Verifalia replies back with an object representing the snapshot of the requested job . Please note that should the validation be still in progress, the system would reply with an HTTP 202 (Accepted) status code and the client should reissue the request later.

Example, using CURL
curl https://api.verifalia.com/v1.4/email-validations/c321b620eb184157b1bfa
     -u MyAccountSid:MyAuthToken

Deleting an existing email validation job

For security purposes, Verifalia automatically deletes email validation jobs and their results after 30 days since their completion. The client can however force the removal of a completed email validation job by issuing an HTTP DELETE request against the /email-validations/{uniqueId} sub-resource, where uniqueId is the random unique ID returned by Verifalia upon creating the validation job.

Verifalia replies back with an HTTP 200 (OK) status code if the removal succeeded or with an HTTP 410 (Gone) if the job has already been deleted; should the validation be still in progress, the system would reply with an HTTP 406 (Not acceptable) status code.

Example, using CURL
curl -X DELETE https://api.verifalia.com/v1.4/email-validations/c321b620eb18415...
     -u MyAccountSid:MyAuthToken




Not a software developer?

Verifalia is a web-based email validation service which allows to upload and validate lists of email addresses with ease.


You don't need to be a software developer to use Verifalia! Just upload your list of email addresses and we will validate them for you, giving you back a detailed report.


Download the Verifalia SDK

To ease integrating Verifalia with your own software solutions, we are developing helper libraries that you can just download and plug where email validation is required. Validating an email address via Verifalia typically requires a couple of lines of code!

Microsoft .NET SDK

Free and open source helper library, C# language, VS 2015 solution, which allows to integrate Verifalia with other .NET 4.5 and higher solutions. Nuget package available!



Node.js SDK

Free and open source helper library which allows to integrate Verifalia with Node.js applications.



PHP SDK

Free and open source helper library which allows to integrate Verifalia with PHP applications.



Ruby SDK

Free and open source helper library which allows to integrate Verifalia with Ruby applications.



Java SDK

Free and open source helper library which allows to integrate Verifalia with Java applications.