---
title: "Verify email (SMTP)"
method: POST
path: "/email-validation/verify"
tags: ["Email validation"]
---

# Verify email (SMTP)

`POST /email-validation/verify`

Runs the same deliverability verification used for contacts (SMTP probe via SuperSend's validator).
**Consumes global email verification credits** (same pool as contact validation and CSV import).

Optional `TeamId` attributes the credit debit to a team for reporting; omit for org-level-only attribution.

The response includes email intelligence fields (risk score, flags, provider hints, network metrics) in the
same payload as the SMTP result—one verification credit unlocks both.

## Request body

- EmailValidationVerifyRequest
  - `email` string, email, required — Address to verify
  - `TeamId` string, uuid — Optional team UUID for credit transaction attribution

## Response `200`

Verification result

- EmailValidationVerifyResponse
  - `success` boolean
  - `data` object
    - `email` string, email, required
    - `valid` boolean, required — Whether the SMTP probe considers the mailbox deliverable
    - `validators` object, required — Raw validator output (e.g. smtp)
    - `credits_used` integer, required — Global credits debited for this call (0 if org cost is configured as 0)
    - `email_hash` string — SHA-256 hash of the normalised email address
    - `domain` string — Domain portion of the email address
    - `is_role_based` boolean — True if the address is a role-based alias (info@, support@, etc.)
    - `is_abuse_email` boolean — True if the address is associated with abuse or spam
    - `is_free_provider` boolean — True if the domain is a free email provider (gmail, yahoo, etc.)
    - `is_disallowed` boolean — True if the address is on a global disallow list (disposable, etc.)
    - `validity_score` integer — Aggregate deliverability score (0 = worst, 100 = best)
    - `risk_level` 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL' — Risk categorisation derived from validity_score
    - `confidence` 'NONE' | 'LOW' | 'MEDIUM' | 'HIGH' — Confidence level based on historical send volume
    - `email_provider` string, nullable — Detected ESP or mailbox provider (e.g. Google Workspace, Microsoft 365)
    - `email_security_service` string, nullable — Detected email security gateway (e.g. Proofpoint, Mimecast)
    - `bounce_type_breakdown` object, nullable — Historical breakdown of bounce types seen across the SuperSend network
    - `total_sends` integer — Total sends observed across the SuperSend network for this address
    - `hard_bounce_count` integer — Hard bounces observed across the network
    - `reply_count` integer — Replies observed across the network
    - `has_historical_data` boolean — Whether historical delivery data exists for this address
  - `request_id` string

## Other responses

- `400` — Bad Request - Invalid parameters
- `401` — Unauthorized - Invalid or missing API key
- `402` — Not enough email verification credits
- `403` — Forbidden - Access denied
- `503` — Validator unavailable or incomplete response

---

[API](https://skmtc.dev/supersend/apis/supersend-api.md) · [All operations](https://skmtc.dev/supersend/apis/supersend-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/supersend/supersend-api/revisions/f0cbeaa12643/schema)
