Проверка Email на валидность и существование.

Данная форма позволяет проверить Email на валидность.



Осталось 20 запросов до 01:52:39 25.03.19


Для пакетной проверки, Вы можете загрузить файл формата Excel (csv, txt), любой столбец которого содержит email для проверки. Файл может быть упакован zip или rar. За каждый проверенный email с вас будет списан один запрос согласно тарифа. Если включена проверка по SMTP: списывается два запроса, адреса в результирующем файле будут упорядочены по smtp-серверам. Если такой email не существует, то в файле после формально корректного адреса будет информация о проверке по SMTP. Максимальный размер загружаемого файла 32Mb.





Для загрузки файла необходимо войти или зарегистрироваться! Результат будет продублирован на указанную в профиле почту.

Как проверяется email адрес

Проверка синтаксиса

При запросе подтверждения адреса электронной почты API email будет в первую очередь выполнять стандартную проверку синтаксиса электронной почты, следовательно, проверять его соответствие правилам регулярных выражений, таким как:

Формат адресов электронной почты - local-part @ domain, где local-part может иметь длину до 64 символов, а имя домена может содержать не более 253 символов. Формальные определения приведены в RFC 5322 и RFC 5321 - с более читаемой формой, приведенной в информационном RFC 3696 .

Локальная часть состоит из прописные и строчные латинские буквы (A – Z, a – z) (ASCII: 65–90, 97–122), Цифры от 0 до 9 (ASCII: 48–57), специальные символы: # - _ ~! $ & '() * +,; =: и %20, точка, точка, полная остановка), ASCII 46, при условии, что он не является первым или последним символом, а также при условии, что он не появляется последовательно (например, John..Doe @ example.com не допускается).

Доменная часть email должна соответствовать строгим правилам: она должна соответствовать требованиям к имени хоста, состоящему из букв, цифр, дефисов и точек. Кроме того, доменная часть может быть литералом IP-адреса, заключенным в квадратные скобки, хотя это редко встречается, за исключением спама в электронной почте.

Проверка доступности почтового сервера

Проверяется доступность MX-записи почтового сервера с помощью DNS-запроса.

Проверка самого ящика на сервере(проверить по SMTP)

Для этого сервис устанавливает соединение с почтовым сервером получателя и отправляет ему команды по аналогии с отправкой письма. Если на сервере нет такого получателя, то при отправке команды "письмо для такого-то мыла"(RCPT TO:) сервер отвечает что такого ящика нет(код 550). Не все сервера отвечают согласно требованиям RFC, например сервер mail.ru на любое письмо отвечает кодом 250, что всё Ok.

С примером установления соединения и отправки команд можете ознакомиться здесь. Время проверки каждого е-mail может занимать до 60 секунд.

Некоторые почтовые сервера для защиты от спама используют технологию серых списков (Greylisting). При отправке письма сервер отвечает кодом 451, что он временно не готов принять письмо. В этом случае необходимо повторно проверить почтовый адрес более чем через 30 минут. При разовой проверке и проверке по API повторный запрос не отправляется. При пакетной обработке файла система будет ждать 30+ минут и повторно опрашивать почтовый сервер. Время обработки файла с почтовыми адресами в этом случе существенно возрастает. Дополнительная оплата при пакетной обработке за повторную проверку не взимается.

Api проверки Email на валидность

http://htmlweb.ru/api/service/email?email=проверяемый_email&api_key=API_KEY_из_профиля

Если Вы хотите проверить непосредственное наличие почтового ящика на сервере с помощью SMTP-запроса, добавьте параметр smtp_check. Время проверки может занять до 20 секунд. За проверку по smtp с вас будет списан дополнительный запрос. Пример:

http://htmlweb.ru/api/service/email?email=проверяемый_email&smtp_check&api_key=API_KEY_из_профиля
В ответе возможны следующие поля:
email - полный запрошенный e-mail
user - часть email до символа @
domain - домен

format_valid = false
error = 'Неверный символ в e-mail!'

free - почта на бесплатном почтовом сервере, типа yandex.ru или gmail.com

disposable = true - почта на одноразовом почтовом сервисе типа mailinator.com, trashmail.com
message = 'Email одноразовый';

mx_found = false
error = 'Email сервер не существует!'

role=true - это адрес, который обычно указывает на функцию (например, «поддержка», «администратор почты»), а не на отдельное лицо или имя.

Если передан параметр smtp_check, то дополнительно возвращается:

mx_records - список почтовых серверов
smtp_check = true или false, если false, то в error код ответа SMTP-сервера

Если все проверки пройдены, возвращается:
message = 'email валидный'

Примеры API запросов проверки email

Пример запроса в формате json: https://htmlweb.ru/json/service/email?email=kdg@a12sd.ru

Ответ:
{"email":"kdg@a12sd.ru",
    "user":"kdg",
    "domain":"a12sd.ru",
    "mx_found":false,
    "error":"Email сервер не существует!",
    "limit":17}

Пример запроса: https://htmlweb.ru/json/service/email?email=kdg@gmail.com

Ответ:
{"email":"kdg@gmail.com",
    "user":"kdg",
    "domain":"gmail.com",
    "free":true,
    "message":"email валидный",
    "limit":16}

Пример запроса: https://htmlweb.ru/json/service/email?email=kdg22@htmlweb.ru&smtp_check

{"status":200,
"email":"kdg22@htmlweb.ru",
"user":"kdg22",
"domain":"htmlweb.ru",
"mx_records":["mx.yandex.ru"],
"smtp_check":false,
"error":"550 5.7.1 No such user!",
"limit":19}
Общие параметры для всех API сервисов
Другие сервисы, доступные по API

Команды SMTP сервера

SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения. SMTP использует порт Порты TCP 25.

Протокол SMTP (RFC 821) использует простые текстовые команды в формате ASCII и возвращает трехзначные кодированные ответы с текстовыми сообщениями.

Формат команд в SMTP прост: command [parameter], где command — четырехсимвольная команда протокола SMTP, а parameter — необязательный параметр, определяющий тип данных в команде.

EHLO сервер_отправитель> или устаревшая HELO хост_отправитель - Открывам соединение и сообщаем серверу имя отправляющего сервера (хоста)
MAIL FROM: адрес_отправителя - Email-адрес отправителя.
RCPT TO: адрес_получателя - Email-адрес получателя (recipient)
DATA - После этой команды передается тело сообщения оканчивающееся новой строкой с единственным символом "точка" (\r\n.\r\n), после этого восстанавливается командный режим
RSET - Прервать сообщение. При этом все ранее посланные команды — MAIL, RCPT и DATA будут аннулированы.
HELP [команда] - Краткая справка по команде или список поддерживаемых команд
QUIT - Завершение сеанса SMTP
VRFY имя_пользователя - Проверка имени пользователя (Команда обычно запрещена в целях безопасности)
VRFY rich
250 
VRFY prez@mechach.smallorg.org
252 
VRFY jessica
550 jessica... User unknown
EXPN имя_пользователя - Показывает список всех алиасов пользователя (списки рассылки по Email-адресу) (Команда обычно запрещена в целях безопасности)
AUTH - Показывает серверу механизм аутентификации. RFC 4954 (пришел на смену RFC 2554).

Вам может быть интересно:


.

Популярное:


Содержание: