Перейти к основному содержанию
GET
/
v1
API проверки email
curl --request GET \
  --url https://emailvalidation.cleariflow.com/v1
{
  "email": "jane.doe@acme-corp.com",
  "autocorrect": "",
  "deliverability": "DELIVERABLE",
  "quality_score": 0.85,
  "is_valid_format": {
    "value": true,
    "text": "TRUE"
  },
  "is_free_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_disposable_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_role_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_catchall_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_mx_found": {
    "value": true,
    "text": "TRUE"
  },
  "is_smtp_valid": {
    "value": true,
    "text": "TRUE"
  }
}

Быстрый старт

Для запроса нужны только ваш уникальный api_key и проверяемый email — больше ничего не требуется:
https://emailvalidation.cleariflow.com/v1/
? api_key = YOUR_UNIQUE_API_KEY
& email = jane.doe@acme-corp.com
При успехе запрос возвращает все доступные данные об адресе:
{
  "email": "jane.doe@acme-corp.com",
  "autocorrect": "",
  "deliverability": "DELIVERABLE",
  "quality_score": 0.85,
  "is_valid_format": {
    "value": true,
    "text": "TRUE"
  },
  "is_free_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_disposable_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_role_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_catchall_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_mx_found": {
    "value": true,
    "text": "TRUE"
  },
  "is_smtp_valid": {
    "value": true,
    "text": "TRUE"
  }
}

Параметры запроса

api_key
string
обязательно
Ваш персональный API-ключ. Ключи привязаны к конкретному продукту Cleariflow, поэтому ключ Email Validation не авторизует запросы, например, к API геолокации IP.
email
String
обязательно
Email-адрес, который нужно проверить.
auto_correct
Boolean
Необязательный флаг для отключения автокоррекции. Установите auto_correct=false, чтобы отключить её. По умолчанию включена.

Параметры ответа

Ответы возвращаются в компактном стандартизированном формате JSON.
email
String
Эхо-значение email, переданного в запросе.
auto_correct
String
Предлагаемая коррекция при обнаружении вероятной опечатки (например, johnsmith@gmial.com => johnsmith@gmail.com). Пусто, если предложений нет.
deliverability
String
Оценка Cleariflow о том, может ли адрес получать почту. Возможные значения: DELIVERABLE, UNDELIVERABLE, UNKNOWN. На платных планах DELIVERABLE требует успешной SMTP-проверки; если MX-записи есть, но SMTP не подтвердил ящик (часто у крупных провайдеров), результат UNKNOWN. На бесплатных планах значение UNKNOWN, кроме явно недоставляемых адресов (невалидный формат или disposable-домен).
quality_score
Float
Десятичная оценка от 0 до 0.99, отражающая качество адреса. Disposable-адреса ограничены около 0.05; без подтверждения SMTP — максимум 0.55.
is_valid_format
Boolean
true, если адрес соответствует стандартному шаблону local@domain.tld. Отсутствующие элементы или недопустимые символы дают false.
is_free_email
Boolean
true, если домен принадлежит бесплатному почтовому провайдеру (например, Gmail, Yahoo).
is_disposable_email
Boolean
true, если домен есть в нашем списке одноразовых/временных почтовых сервисов (например, Mailinator, Yopmail).
is_role_email
Boolean
true, если локальная часть выглядит как ролевой аккаунт, а не личный, например team@, sales@, info@.
is_catchall_email
Boolean
true, если домен настроен как catch-all. Доступно только на платных тарифах; на бесплатных возвращает null/UNKNOWN.
is_mx_found
Boolean
true, если для домена существуют MX-записи. Доступно только на платных тарифах; на бесплатных возвращает null/UNKNOWN.
is_smtp_valid
Boolean
true, если SMTP-проверка прошла успешно. При неудаче SMTP, но успехе других проверок результат может быть UNKNOWN. Не рекомендуем блокировать регистрации или отправку форм только из-за ошибок SMTP. Доступно только на платных тарифах; на бесплатных возвращает null/UNKNOWN.

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

Пример: вероятная опечатка

Этот пример показывает запрос, в котором обнаружена вероятная опечатка в переданном адресе. Даже при обнаружении вероятной опечатки все остальные проверки (например, бесплатная почта, одноразовый домен) выполняются для изначально переданного адреса — а не для предложенной коррекции.
https://emailvalidation.cleariflow.com/v1/
? api_key = YOUR_UNIQUE_API_KEY
& email = johnsmith@gmial.con
Успешный ответ выглядит так:
{
  "email": "johnsmith@gmial.con",
  "autocorrect": "johnsmith@gmail.com",
  "deliverability": "UNKNOWN",
  "quality_score": 0.4,
  "is_valid_format": {
    "value": true,
    "text": "TRUE"
  },
  "is_free_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_disposable_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_role_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_catchall_email": {
    "value": null,
    "text": "UNKNOWN"
  },
  "is_mx_found": {
    "value": null,
    "text": "UNKNOWN"
  },
  "is_smtp_valid": {
    "value": null,
    "text": "UNKNOWN"
  }
}

Пример: неверный формат

Этот пример демонстрирует адрес, не прошедший базовую проверку формата. Когда is_valid_format равен false, последующие проверки (например, is_free_email, is_role_email) пропускаются и возвращаются как false.
https://emailvalidation.cleariflow.com/v1/
? api_key = YOUR_UNIQUE_API_KEY
& email = johnsmith
Успешный ответ выглядит так:
{
  "email": "johnsmith",
  "autocorrect": "",
  "deliverability": "UNDELIVERABLE",
  "quality_score": 0.0,
  "is_valid_format": {
    "value": false,
    "text": "FALSE"
  },
  "is_free_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_disposable_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_role_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_catchall_email": {
    "value": false,
    "text": "FALSE"
  },
  "is_mx_found": {
    "value": false,
    "text": "FALSE"
  },
  "is_smtp_valid": {
    "value": false,
    "text": "FALSE"
  }
}

Массовая загрузка (CSV)

Не хотите вызывать API напрямую? Используйте массовую загрузку CSV — результаты будут отправлены на email после завершения обработки. При загрузке CSV следуйте этим рекомендациям:
  • Размещайте email-адреса в первом столбце.
  • Удалите пустые строки.
  • Используйте один адрес на строку.
  • Ограничьте файлы максимум 50 000 строками.

Коды ответов и ошибок

Ошибки возвращаются в JSON с кодом и понятным описанием. Ниже перечислены распространённые коды.
CodeTypeDetails
200OKЗапрос успешно выполнен.
400Bad requestНекорректный или недопустимый запрос.
401UnauthorizedОшибка аутентификации — обычно отсутствует или неверен API-ключ.
422Quota reachedКвота исчерпана (например, недостаточно кредитов на бесплатных тарифах).
429Too many requestsПревышен лимит частоты запросов (на бесплатных тарифах до 1 запроса в секунду).
500Internal server errorНепредвиденная ошибка на нашей стороне.
503Service unavailableСервис временно недоступен.

Прочее

Примечание по биллингу: каждый проверенный email расходует один кредит за запрос — независимо от результата. Отправка невалидного адреса (например, «fda3346ds») всё равно считается за один кредит.