MailerCheck

Email verification

Verify single emails in real time or asynchronously, manage verification lists, and interpret MailerCheck verification results.

Single email verification

Check a single email and get real-time response.

POST https://app.mailercheck.com/api/check/single

Request body example

{
    "email": "example@example.com"
}

Response example

HTTP 200

{
    "status": "valid"
}

Single email verification (Async)

Check a single email and receive the result asynchronously to avoid delays and timeouts.

POST https://app.mailercheck.com/api/check/single-async

Request body example

{
    "email": "example@example.com"
}

Response example

HTTP 200

{
    "id": "kvD8ezOq1OowB3jg",
    "state": "queued",
    "errors": null,
    "result": null
}

Get single email result (Async)

Retrieve single email check result.

GET https://app.mailercheck.com/api/check/single-async/{verification_id}

Response example

HTTP 200

{
  "id": "kvD8ezOq1OowB3jg",
  "state": "completed",
  "errors": null,
  "result": "typo"
}

Get all lists

Return all lists that belong to the current account.

GET https://app.mailercheck.com/api/lists

Parameters

ParameterExplanation
limitHow many emails to show per page. Default 100.
pageWhich page to show. Default 1.

Response example

HTTP 200

{
    "data": [
        {
            "id": 15,
            "account_id": 2,
            "user_id": 5,
            "name": "Big email list.txt",
            "source": "myComputer",
            "type": "text",
            "count": 10,
            "verification_started": "2020-02-17 22:02:21",
            "verification_ended": "2020-02-17 22:02:29",
            "created_at": "2020-02-17 22:02:14",
            "updated_at": "2020-02-17 22:02:29",
            "status": {
                "name": "done"
            },
            "statistics": {
                "valid": 0,
                "syntax_error": 0,
                "typo": 0,
                "mailbox_not_found": 0,
                "catch_all": 0,
                "mailbox_full": 0,
                "disposable": 0,
                "role": 0,
                "blocked": 0,
                "error": 0,
                "unknown": 0
            }
        },
        {
            "id": 16,
            "account_id": 2,
            "user_id": 5,
            "name": "Big list",
            "source": "mailerLite",
            "type": "text",
            ...
        }
    ],
    "links": {
        "first": "{url to first page}",
        "last": "{url to last page}",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "active": false
            },
            {
                "url": "{url to next page}",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "active": false
            }
        ],
        "path": "{url to current page}",
        "per_page": 15,
        "to": 1,
        "total": 2
    }
}

Get list

Return a list with the specified ID.

GET https://app.mailercheck.com/api/lists/{id}

Response example

HTTP 200

{
    "id": 15,
    "account_id": 2,
    "user_id": 5,
    "name": "Big email list.txt",
    "source": "myComputer",
    "type": "text",
    "count": 10,
    "verification_started": "2020-02-17 22:02:21",
    "verification_ended": "2020-02-17 22:02:29",
    "created_at": "2020-02-17 22:02:14",
    "updated_at": "2020-02-17 22:02:29",
    "status": {
      "name": "done"
    },
    "statistics": {
        "valid": 0,
        "syntax_error": 0,
        "typo": 0,
        "mailbox_not_found": 0,
        "catch_all": 0,
        "mailbox_full": 0,
        "disposable": 0,
        "role": 0,
        "blocked": 0,
        "error": 0,
        "unknown": 0
    }
}

Create list

Create a list with the specified name and emails.

POST https://app.mailercheck.com/api/lists

Request body example

{
    "name": "API List",
    "emails": [
        "example@example.com",
        "example2@example.com"
    ]
}

Response example

HTTP 201

{
    "id": 33,
    "account_id": 2,
    "user_id": 5,
    "source": "apiDirect",
    "name": "API List",
    "type": "direct",
    "count": 10,
    "updated_at": "2020-03-04 18:11:07",
    "created_at": "2020-03-04 18:11:07",
    "status": {
      "name": "not_started",
      "count": null
    },
    "statistics": {
        "valid": 0,
        "syntax_error": 0,
        "typo": 0,
        "mailbox_not_found": 0,
        "catch_all": 0,
        "mailbox_full": 0,
        "disposable": 0,
        "role": 0,
        "blocked": 0,
        "error": 0,
        "unknown": 0
    }
}

Upload list

Create a list from an uploaded file (CSV or TXT).

POST https://app.mailercheck.com/api/lists/upload

Request body example

curl --location --request POST 'https://app.mailercheck.com/api/lists/upload' \
--header 'Authorization: Bearer [your token]' \
--header 'Content-Type: multipart/form-data; boundary=--------------------------097290781055740441988275' \
--form 'file=@/Path/to/file.csv'

Response example

HTTP 201

{
    "id": 3042,
    "account_id": 1033,
    "user_id": 1026,
    "name": "file.csv",
    "source": "apiUpload",
    "type": "text",
    "count": 10,
    "updated_at": "2020-02-28 13:19:07",
    "created_at": "2020-02-28 13:19:06",
    "status": {
        "name": "not_started",
        "count": 10
    },
    "statistics": {
        "valid": 0,
        "syntax_error": 0,
        "typo": 0,
        "mailbox_not_found": 0,
        "catch_all": 0,
        "mailbox_full": 0,
        "disposable": 0,
        "role": 0,
        "blocked": 0,
        "error": 0,
        "unknown": 0
    }
}

Delete list

Delete the list with the specified ID.

DELETE https://app.mailercheck.com/api/lists/{id}

Response example

HTTP 204

List verification

Start verification for the specified list.

PUT https://app.mailercheck.com/api/lists/{id}/verify

Response example

HTTP 202

{
    "id": 32,
    "account_id": 2,
    "user_id": 5,
    "name": "API List 3",
    "source": "apiDirect",
    "type": "direct",
    "count": 10,
    "verification_started": "2020-03-04 17:50:06",
    "verification_ended": null,
    "created_at": "2020-03-04 17:49:57",
    "updated_at": "2020-03-04 17:50:06",
    "status": {
        "name": "processing",
        "count": 10
    },
    "statistics": {
        "valid": 0,
        "syntax_error": 0,
        "typo": 0,
        "mailbox_not_found": 0,
        "catch_all": 0,
        "mailbox_full": 0,
        "disposable": 0,
        "role": 0,
        "blocked": 0,
        "error": 0,
        "unknown": 0
    }
}

Possible errors

Verification already started

HTTP 409

{
    "error": "Verification already started"
}

Not enough credits to verify list

HTTP 402

{
    "error": "Not enough credits. Credits required: 1"
}

Get list result

Get the individual emails from the list with the checking result.

GET https://app.mailercheck.com/api/lists/{id}/results

Parameters

ParameterExplanation
limitHow many emails to show per page. Default 100.
pageWhich page to show. Default 1.
resultWhich type of emails you want to see. (valid, unknown, etc).

Response example

HTTP 200

{
    "total": 10,
    "page": "1",
    "limit": "3",
    "has_more_pages": true,
    "last_page": 4,
    "result": "valid",
    "emails": [
        {
            "id": 75363,
            "address": "someone@example.com",
            "line": 0,
            "checked": 1,
            "result": "valid",
            "created_at": null,
            "updated_at": "2020-02-20 19:28:53"
        },
        {
            "id": 75364,
            ...
        },
        {
            "id": 75365,
            ...
        }
    ]
}

Verification results

The possible outcome of an email validation can be grouped in 3 categories: Send to, Risky and Do not send to.

CategoryResultExplanation
Send tovalidThe email is safe to send.
Riskycatch_allRecipient's mail server will accept emails to this address, but we cannot guarantee this email address belongs to a person.
Riskymailbox_fullRecipient’s inbox is full and may not be able to receive new emails.
RiskyroleEmail is role-based and may not be associated with a single, specific person but a group of people.
RiskyunknownWe are unable to determine if the email is valid or not valid.
Do not send tosyntax_errorThe email is not valid.
Do not send totypoThe email address has a typo. Correct the email address and retest.
Do not send tomailbox_not_foundRecipient’s inbox does not exist.
Do not send todisposableThe email address is a temporary inbox and should be removed from your lists.
Do not send toblockedThe email address’ mailbox is blocked by its service provider due to poor sending practices.
ErrorerrorThere was an error while processing this email.

On this page