Validate a single email address in real time.
This endpoint verifies whether an email address can receive emails and provides detailed validation metadata.
Endpoint
GET /api/v1/verify
Base URL
Request Example
GET /api/v1/verify?apikey=YOUR_API_KEY&[email protected] HTTP/1.1
Host: app.snapvalid.com
Or using cURL:
curl -X GET "https://app.snapvalid.com/api/v1/verify?apikey=YOUR_API_KEY&[email protected]"
Query Parameters
| Parameter | Required | Description |
|---|---|---|
| apikey | Yes | Your SnapValid API key |
| Yes | Email address to verify |
Success Response (200 OK)
{
"email": "[email protected]",
"user": "help1",
"domain": "unelmasupport.com",
"accept_all": 0,
"role": 0,
"free_email": 0,
"disposable": 0,
"spamtrap": 0,
"success": true,
"result": "undeliverable",
"message": "This address cannot receive emails."
}
Response Fields
| Field | Type | Description |
|---|---|---|
| string | The verified email address | |
| user | string | Local part of the email |
| domain | string | Domain part of the email |
| accept_all | integer (0/1) | Domain accepts all emails |
| role | integer (0/1) | Role-based email (e.g. admin@) |
| free_email | integer (0/1) | Email from free provider |
| disposable | integer (0/1) | Disposable email detected |
| spamtrap | integer (0/1) | Spam trap detected |
| success | boolean | Request processed successfully |
| result | string | Validation result |
| message | string | Human-readable explanation |
Result Interpretation
| Result | Meaning | Recommended Action |
|---|---|---|
| deliverable | Email is valid | Accept |
| undeliverable | Email cannot receive mail | Reject |
| accept-all | Domain accepts all emails | Accept with caution |
| unknown | Verification could not be completed | Accept with caution |
Important
- Only undeliverable emails should be automatically rejected.
- accept-all and unknown emails may still be valid.
- Always check the success field before processing results
Error Response Example
If authentication fails
{
"message": "Unauthorized"
}
Best Practices
-
Always validate HTTP status code first
-
Do not expose your API key in frontend applications
-
Cache results where possible to reduce API usage
-
Implement retry logic for temporary failures
