sendsend.email

Verify an email address

POST/v1/verify

Checks one address before you send to it: that it is well formed, that its domain exists and accepts mail, whether it is a throwaway inbox or a role address such as info@, whether the domain looks like a typo of a popular one (with a suggestion), and whether it is on your suppression list. It does not contact the recipient’s mail server, so valid means worth sending to, not guaranteed to arrive. Results: valid, invalid (will bounce), risky (see reasons) and unknown (DNS did not answer; try again). Each address uses one of your plan’s monthly verifications.

Required scope: emails:verify

Request body

FieldType
emailrequiredstring

Unknown fields are rejected, so a typo never silently does nothing.

Example

curl -X POST 'https://api.sendsend.email/v1/verify' \
  -H "Authorization: Bearer $SENDSEND_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
  "email": "maria@example.com"
}'

Response 200

{
  "object": "email_verification",
  "email": "maria@example.com",
  "result": "valid",
  "reasons": [],
  "suggestion": null,
  "free_provider": false,
  "role_account": false,
  "disposable": false,
  "mail_servers": [
    "mx1.example.com"
  ],
  "verifications": {
    "used": 12,
    "limit": 5000
  }
}

Errors

StatusCodeWhen
400validation_errorThe request body or parameters are invalid. The message says which field.
401unauthorizedThe API key is missing, invalid or revoked.
403forbiddenThe key does not have the scope this endpoint needs.
429quota_exhaustedThe month’s verifications for your plan are used up.
429rate_limitedToo many requests. Wait for the number of seconds in the Retry-After header.

Every error has the same shape. See Errors.