TrustVerify logoTrustVerify
Decorative footer background
TrustVerify logoTrustVerify

Identity and business verification for UK marketplaces. ID document and selfie checks, UK company and director checks, and a recorded decision on every check.

020 4542 7323

Solutions

  • All solutions
  • Identity (IDV/KYC)
  • Business (KYB)
  • Bot detection
  • AML & PEP screening
  • Seller verification (KYS)
  • UK registry checks
  • Ongoing monitoring
  • Review queue & trust score
  • Fraud checks
  • IP geolocation
  • Email validation
  • Escrow (secure transactions)

Industries

  • Marketplaces

Developers

  • Platform
  • Integrations
  • Developer docs
  • API reference
  • Webhooks
  • Changelog
  • API status
  • Help centre

Blog

  • All articles
  • Glossary
  • Compare
  • Sumsub alternatives
  • Onfido alternatives
  • Veriff alternatives

Company

  • About TrustVerify
  • Careers
  • Contact sales
  • Privacy policy
  • Cookie policy
  • Terms of service

© 2026 Magnificentech Solutions Ltd (Company No. 16321180), trading as TrustVerify. Registered in England & Wales. All rights reserved. · trustverify.co.uk

TrustVerify, Willow Farm, Choppington, Northumberland NE62 5EU · 020 4542 7323

Get started

  • Overview
  • Quickstart
  • Authentication
  • Sandbox and test data

Guides

  • KYC seller onboarding
  • UK business verification (KYB)
  • Sanctions and PEP screening
  • Fraud score: device, IP and bots
  • Trust score
  • Email and phone checks
  • Selfie checks
  • Hosted and mobile capture
  • Reports and evidence bundles
  • Running saved workflows
  • Retrieving check results

Integrations

  • Stripe Connect marketplaces
  • Sharetribe marketplaces
  • Shopify
  • WooCommerce

Webhooks

  • Webhooks

Reference

  • API reference
  • Errors
  • Rate limits and quotas
  • Versioning
  • Changelog
  • OpenAPI and Postman
  • SDKs (coming soon)

Trust

  • Security, GDPR and UK data

More

  • API status
  • API keys
Docs menu

Get started

  • Overview
  • Quickstart
  • Authentication
  • Sandbox and test data

Guides

  • KYC seller onboarding
  • UK business verification (KYB)
  • Sanctions and PEP screening
  • Fraud score: device, IP and bots
  • Trust score
  • Email and phone checks
  • Selfie checks
  • Hosted and mobile capture
  • Reports and evidence bundles
  • Running saved workflows
  • Retrieving check results

Integrations

  • Stripe Connect marketplaces
  • Sharetribe marketplaces
  • Shopify
  • WooCommerce

Webhooks

  • Webhooks

Reference

  • API reference
  • Errors
  • Rate limits and quotas
  • Versioning
  • Changelog
  • OpenAPI and Postman
  • SDKs (coming soon)

Trust

  • Security, GDPR and UK data

More

  • API status
  • API keys
  1. Docs
  2. /API reference
  3. /Validate an email address: syntax, mail server, disposable and role addresses

Validate an email address: syntax, mail server, disposable and role addresses

POST /api/v1/email/check

POST https://api.trustverify.co.uk/api/v1/email/check

Checks syntax, MX records (with A-record fallback), disposable domains and role addresses, and returns a risk score and verdict. mxSource "dns_unavailable" means deliverability is unknown, not undeliverable. Test keys get a fixed sandbox result (a disposable domain such as mailinator.com returns "disposable").

Request body#

Request body fields
FieldTypeDescription
emailrequiredstring
metadataobject

Example request#

curl -sS -X POST 'https://api.trustverify.co.uk/api/v1/email/check' \
  -H "Authorization: Bearer $TRUSTVERIFY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "jane.doe@example.com"
}'

Responses#

200 Email check result

200 response fields
FieldTypeDescription
checkIdrequiredstring
emailrequiredstring
syntaxValidrequiredboolean
domainrequiredstring
localPartrequiredstring
mxRecordsrequiredarray of string
mxReachablerequiredboolean
mxSourcestring: "mx" | "a_fallback" | "none" | "dns_unavailable"
isDisposablerequiredboolean
isRoleAddressrequiredboolean
breachCheckrequiredobject
breachCheck.checkedrequiredboolean
breachCheck.breachedrequiredboolean
breachCheck.breachCountrequiredinteger
breachCheck.notestring
riskScorerequirednumber
riskLevelrequiredstring: "low" | "medium" | "high" | "critical"
flagsrequiredarray of string
verdictrequiredstring: "deliverable" | "undeliverable" | "risky" | "disposable"
completedAtrequiredstring
metadatarequiredobject

400 validation_failed — email is required

400 response fields
FieldTypeDescription
errorrequiredstring: "validation_failed"
messagerequiredstring
requestIdstring

401 Invalid API key

403 insufficient_permissions — the key lacks the scope for this endpoint, or the plan does not include the feature

429 rate_limit_exceeded (per-minute, see X-RateLimit- and Retry-After) or DAILY_CAP_EXCEEDED

500 internal_error — the check could not run

Last updated 30 October 2026. Something unclear or wrong? Tell us.