🔌 API валидации email
Позволяет запускать валидацию из другого сервиса программно, без веб-интерфейса.
1. Получить ключ
Зарегистрируйтесь — ключ создаётся автоматически и виден в профиле. Передавайте его в заголовке X-API-Key в каждом запросе.
2. Запустить валидацию — POST /api/v1/validate
Вариант A — список email в JSON (проще для программной интеграции):
curl -X POST http://verimail.ru/api/v1/validate \
-H "X-API-Key: ВАШ_КЛЮЧ" \
-H "Content-Type: application/json" \
-d '{"emails": ["a@example.com", "b@example.com"], "options": {"timeout": 10, "validation_mode": "strict"}}'
Вариант B — файл (.xlsx/.xls/.csv), как через веб-форму:
curl -X POST http://verimail.ru/api/v1/validate \
-H "X-API-Key: ВАШ_КЛЮЧ" \
-F "file=@emails.xlsx" \
-F "timeout=10" \
-F "split_by_validity=true"
Ответ в обоих случаях:
{"task_id": "c3f5e2a1-..."}
Необязательные поля options (JSON) / формы (файл): timeout (сек, по умолчанию 10),
validation_mode (strict или lenient), max_emails,
split_by_validity, split_by_provider, split_personal_corporate (bool).
3. Проверить статус — GET /api/v1/status/<task_id>
curl http://verimail.ru/api/v1/status/c3f5e2a1-... \
-H "X-API-Key: ВАШ_КЛЮЧ"
{
"status": "processing",
"progress": 42.5,
"processed": 85,
"total": 200,
"eta_seconds": 38.2,
"message": "Файл: emails.xlsx — обработано 85 из 200 (42.5%)"
}
status: pending / processing / completed / error.
4. Получить результат — GET /api/v1/result/<task_id>
Если валидация была запущена JSON-списком email — возвращается JSON-массив результатов:
curl http://verimail.ru/api/v1/result/c3f5e2a1-... \
-H "X-API-Key: ВАШ_КЛЮЧ"
{
"results": [
{"Email": "a@example.com", "Валидность": "Да", "Провайдер": "google", "..." : "..."},
{"Email": "b@example.com", "Валидность": "X", "Провайдер": "other", "..." : "..."}
]
}
Если валидация была запущена файлом — возвращается файл (.xlsx или .zip, если было включено разделение), так же как при скачивании через сайт.
Коды ошибок
- 401 — заголовок
X-API-Keyотсутствует или ключ неверный. - 404 — задача не найдена или принадлежит другому пользователю.
- 400 — некорректный запрос (например, пустой список
emailsили неподдерживаемый формат файла).
Ограничение: rate-limit пока не реализован — не отправляйте параллельно избыточное количество задач с одного ключа.