# Email Validation

## EmailMatch5.0.Validate

<mark style="color:green;">`POST`</mark> `https://production.idresponse.com/process/comprehensive/gateway`

Make an **HTTPS POST** request with the following body parameters to find out if the target has provided a valid and non high risk email address. You will receive a synchronous response in 2-3 seconds with a **result** object that includes an **action, detail** and **issues object**.

#### Request Body

| Name                                      | Type   | Description                                |
| ----------------------------------------- | ------ | ------------------------------------------ |
| user<mark style="color:red;">\*</mark>    | string | Your account's API username                |
| pass<mark style="color:red;">\*</mark>    | string | Your account's API password                |
| service<mark style="color:red;">\*</mark> | string | The service name (EmailMatch5.0.Validate)  |
| reference                                 | string | A unique identifier for your customer      |
| target                                    | object | The individual being sent for verification |
| email                                     | string | The target's email address                 |

{% tabs %}
{% tab title="200 Transaction processed and result returned" %}

```javascript
{
    "meta": {
        "confirmation": 68651625,
        "reference": null,
        "service": "EmailMatch5.0",
        "timestamp": "2019-10-25 13:48:21",
        "company": "Company, LLC",
        "user": "user@company.com"
    },
    "result": {
        "action": "REVIEW",
        "detail": "TRANSACTION REQUIRES FURTHER ATTENTION",
        "issues": [
            "EMAIL DELIVERY UNKNOWN"
        ]
    }
}
```

{% endtab %}
{% endtabs %}

## Sample Request Body

```javascript
{
    "user": "USERNAME",
    "pass": "PASSWORD",
    "service": "EmailMatch5.0.Validate",
    "target": {
        "email": "test@veratad.com"
    }
}
```

## Action and Detail Responses

{% hint style="info" %}
The following are all values that will be returned in the result object of the response.
{% endhint %}

| Action | Detail                                 | Description                                              |
| ------ | -------------------------------------- | -------------------------------------------------------- |
| FAIL   | EMAIL DELIVERY CHECK FAILED            | The email address is not deliverable                     |
| FAIL   | EMAIL RISK CHECK FAILED                | The email address risk is high                           |
| REVIEW | TRANSACTION REQUIRES FURTHER ATTENTION | The email has one of the below issues                    |
| PASS   | ALL CHECKS PASSED                      | The email address is deliverable and there are no issues |

## Issues Responses

{% hint style="info" %}
When a transaction returns as REVIEW then there will be a list of issues. This list can include any of the below values.
{% endhint %}

| Issue                 | Description                                                                  |
| --------------------- | ---------------------------------------------------------------------------- |
| EMAIL RISK IS MEDIUM  | The email address has been detected as deliverable, but with medium risk     |
| EMAIL RISK IS UNKNOWN | The email address has been detected as deliverable, but with an unknown risk |

## Rules

EmailMatch+Validate will process with the default base ruleset. Here are the rules:

{% hint style="success" %}
The base ruleset will return a PASS when:

* The email address is deliverable
* The email address is low risk
  {% endhint %}

{% hint style="warning" %}
The base ruleset will return a REVIEW when:

* The email address is deliverable
* The email address has medium risk
* The email address has an unknown risk
  {% endhint %}

{% hint style="danger" %}
The base ruleset will return a FAIL when:

* The email address is not deliverable
* The email address is high risk
  {% endhint %}

## API Processing Error Returns

{% content-ref url="../api-processing-errors/error-returns" %}
[error-returns](https://api.veratad.com/api-processing-errors/error-returns)
{% endcontent-ref %}
