---
title: "Как проверять email в форме регистрации | Emvero"
description: "Проверка email при регистрации: формат в браузере, серверный запрос, подсказки об опечатках, ожидание результата и отдельное подтверждение ящика."
url: https://emvero.io/ru/guides/signup-form-validation/
language: ru
updated: 2026-10-09
---

Руководства

# Как проверять email-адрес в форме регистрации

Проверяйте формат в браузере, адрес — на сервере, а контроль над ящиком подтверждайте до выдачи доступа, который от него зависит. Отделяйте неопределенный результат от явной ошибки адреса.

## Что делать с каждым ответом

Каждый раз одни и те же четыре результата. Инструкция меняется вместе с ситуацией, потому что вместе с ней меняется цена ошибки.

| Результат | Что делать здесь |
| --- | --- |
| Доставляемый | Продолжите регистрацию. Если вход или восстановление аккаунта зависят от ящика, попросите подтвердить адрес: доставляемый результат не устанавливает, кто им управляет. |
| Рискованный | Прочитайте рекомендованное действие и причины. Catch-all домен или ролевой адрес могут быть обычным рабочим выбором. При необходимости продолжите с подтверждением; для одноразовой почты применяйте отдельное правило, если оно нужно вашему пробному периоду. |
| Недоставляемый | Попросите исправить адрес до завершения регистрации, которая зависит от email. Объясните проблему с адресом и сохраните введенное значение для правки. |
| Неизвестно | Разрешите продолжить с подтверждением ящика. Однозначных свидетельств нет; это не доказывает недействительность адреса. При необходимости проверьте его позже. |

## Начните с проверки формата в браузере

Используйте email-поле с видимой подписью и объясняйте ошибки рядом с ним. Браузер может заметить пропущенный `@` или неполный домен, но не установить существование ящика. Сохраняйте введенный адрес, чтобы человек мог сразу его исправить.

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

## Принимайте решение на сервере

Серверный обработчик регистрации отправляет адрес в `POST /v1/verifications`. Bearer-ключ хранится на сервере. Там же повторите необходимые проверки ввода: клиент может обойти проверку в браузере. Страница [API проверки email](https://emvero.io/ru/email-verification-api/) описывает запрос и полный ответ.

Читайте вместе `status`, `action` и `reason_codes`. Значения действия: `allow`, `allow_with_email_confirmation` и `reject`. Таблица выше предлагает правила для регистрации, а не неизменное соответствие между статусом и действием.

## Предлагайте исправление без автозамены

`INVALID_SYNTAX` и `DNS_NXDOMAIN` могут объяснить явную ошибку формата или домена. `LIKELY_DOMAIN_TYPO` указывает на возможное исправление. Покажите подсказку рядом с введенным адресом и дайте человеку принять ее или оставить исходный вариант. Необычный домен может быть намеренным выбором.

После исправления проверьте новый адрес и свяжите результат с этим значением. Не заменяйте домен без согласия, не удаляйте plus-теги и не считайте ролевой ящик опечаткой.

## Обработайте ожидание и недоступность ответа

Полная проверка может вернуть `pending` с `id` и `retry_after_ms`. Подождите указанный интервал и вызовите `GET /v1/verifications/{id}` с тем же ключом. Повторяйте опрос, только пока проверка выполняется, и задайте предел ожидания для формы. Callback нет.

Когда время истечет, примените свое запасное правило: например, продолжить с подтверждением и завершить проверку позже. Не называйте локальный тайм-аут результатом `unknown` от API или недействительным адресом. Ошибки HTTP тоже говорят о запросе или сервисе, а не о состоянии ящика. Страница [проверки в реальном времени](https://emvero.io/ru/real-time-email-verification/) объясняет сценарий ожидания.

## Подтвердите контроль над ящиком

Emvero не отправляет письмо подтверждения. Полная SMTP-проверка заканчивается до передачи сообщения; даже положительный ответ сервера не устанавливает, что человек в форме управляет ящиком. Отправьте собственное подтверждение, если от этого зависят вход или восстановление, и проверяйте выполнение условия на сервере.

Для защиты от злоупотреблений добавьте меры против повторных аккаунтов и ботов. `DISPOSABLE_DOMAIN` может влиять на правила приема адресов, но не доказывает мошенничество. Это решение разобрано в [руководстве по злоупотреблению пробными периодами](https://emvero.io/ru/guides/saas-trial-abuse/).

## Reason codes, которые здесь что-то решают

Эти коды входят в словарь API и объясняют результат проверки. В пояснениях также указаны значения, которые текущие правила проверки или SMTP-проба не возвращают.

|  |  |
| --- | --- |
| `INVALID_SYNTAX` | Адрес составлен неверно |
| `LIKELY_DOMAIN_TYPO` | Домен похож на опечатку |
| `DNS_NXDOMAIN` | Домена не существует |
| `DISPOSABLE_DOMAIN` | Сервис одноразовых адресов |

## Термины, которые стоит знать заранее

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

Правила формата, которые проверяют до сетевых запросов. Корректная запись не подтверждает работу домена или ящика.

### Одноразовый адрес

Адрес провайдера временной почты. Сигнал по домену помогает учесть срок использования адреса в ваших правилах. Он не доказывает сбой доставки.

### Грейлистинг

Временный SMTP-отказ предлагает отправителю повторить попытку. Позднее сервер может дать дополнительные свидетельства.

## Выбор, который за этим стоит

### Проверка в реальном времени и работа со списком

Проверяйте адрес, пока человек ждет, или обрабатывайте сохраненный список. Сравните время выполнения, ответы pending и работу, которую выполняет ваша система.

[Все руководства](https://emvero.io/ru/guides/)

## Попробуйте на адресе, который вы знаете.

Бесплатная проверка возвращает результат целиком - каждую стадию, каждый reason code, ничего не скрывая.

Посмотреть пример проверки

Начать бесплатно
