Проверка email-адресов и Domain Intelligence используют общий баланс кредитов. Как работают кредиты

Начать бесплатно
Все термины

Глоссарий

Синтаксис адреса

Синтаксис email-адреса задает правила его записи: локальную часть, разделитель @ и домен. Проверка формата не устанавливает существование домена или ящика.

Проверка синтаксиса определяет, соответствует ли строка поддерживаемому формату email-адреса. Например, в alex+orders@example.com локальная часть — alex+orders, а домен — example.com. На этом этапе сервис разбирает запись, не запрашивая DNS и не обращаясь к почтовому серверу.

Точки, знак плюса и допустимые формы записи

В локальной части без кавычек точка разделяет группы символов. Она не может стоять первой, последней или следовать сразу за другой точкой. Поэтому alex..orders@example.com нарушает правило. Знак плюса допустим; удаление его и метки может изменить адрес получателя. Как сохранить адрес, объясняет статья об email-адресах со знаком «+».

RFC 5321 допускает больше форм записи, чем текущий парсер Emvero для регистрации. Сервис не принимает локальные части в кавычках, IP-литералы вроде user@[192.0.2.1], отображаемые имена и списки адресов. Коды INVALID_SYNTAX, INVALID_LOCAL_PART и INVALID_DOMAIN сообщают об ошибке формата или конкретной части адреса. Отказ парсера может означать, что форма не поддерживается продуктом, даже если она допустима по протоколу.

Ограничения длины и адреса с Unicode

В Emvero локальная часть ограничена 64 октетами, а весь адрес — 254 октетами после преобразования домена в ASCII. Октет равен байту; один символ Unicode может занимать несколько байтов. При превышении этих границ сервис возвращает ADDRESS_TOO_LONG. Это ограничения ввода Emvero, а не утверждение о правилах всех почтовых серверов.

Если до знака @ есть символы вне ASCII, для SMTP требуется расширение SMTPUTF8, описанное в RFC 6531. Доменное имя с Unicode можно преобразовать в ASCII; само по себе оно такого расширения не требует. Текущие правила регистрации Emvero разрешают международные локальные части и сохраняют признак smtp_utf8_required. Код SMTPUTF8_REQUIRED предусмотрен для правил, которые запрещают такой ввод, поэтому не должен появляться у каждого поддерживаемого Unicode-адреса. Отсутствие нужного расширения у принимающего сервера разобрано в статье об адресах, которые сервис не может проверить.

Что делать после проверки формата

Ошибка синтаксиса может завершить проверку со статусом undeliverable и действием reject. Успешный разбор подтверждает только допустимый формат. Домен может не существовать, его почтовый маршрут может не работать, а сведения о ящике могут остаться неопределенными. Следующие этапы описаны в сравнении проверки синтаксиса и SMTP. Передавайте на них исходную локальную часть без изменений.

Что возвращает сервис

Коды причин из закрытого словаря ответа API. Это ровно те строки, против которых интеграция пишет if.

INVALID_SYNTAX
Адрес составлен неверно
INVALID_LOCAL_PART
Локальная часть недопустима
INVALID_DOMAIN
Домен недопустим
ADDRESS_TOO_LONG
Адрес превышает допустимую длину
SMTPUTF8_REQUIRED
Код для правил, запрещающих международные адреса; текущие правила разрешают такой ввод

Попробуйте проверку в личном кабинете.

Выберите проверку под свой вопрос и изучите результат.