API Documentation

Base URL: https://mailprobe.dev

All API requests require authentication via your API key in the Authorization header.

Authentication

Include your API key in every request:

Authorization: Bearer mp_live_your_api_key_here

Get your API key from the dashboard after signing up.

Verify Emails

POST /api/v1/verify

Send 1 to 500 emails per request. Each email costs 1 credit.

Example — Single email

curl -X POST \
  -H "Authorization: Bearer mp_live_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"emails": ["contact@mailprobe.dev"]}' \
  "https://mailprobe.dev/api/v1/verify"

Example — Multiple emails

curl -X POST \
  -H "Authorization: Bearer mp_live_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"emails": ["contact@mailprobe.dev", "hello@stripe.com"]}' \
  "https://mailprobe.dev/api/v1/verify"

Response

Always returns an array, even for a single email.

[
  {
    "email": "contact@mailprobe.dev",
    "result": "deliverable",
    "syntax": true,
    "mx_found": true,
    "smtp_check": true,
    "disposable": false,
    "role_based": false,
    "free_provider": false,
    "mx_records": ["gmail-smtp-in.l.google.com"]
  }
]

Result Values

ValueDescription
deliverableSMTP confirmed the mailbox exists
undeliverableSMTP rejected the address
catch-allServer accepts all addresses (can't confirm individually)
unknownCould not determine (timeout, connection refused, greylisting)

Check Credit Balance

GET /api/v1/credits

Example

curl -H "Authorization: Bearer mp_live_abc123..." \
  "https://mailprobe.dev/api/v1/credits"

Response

{ "credits": 847 }

Error Codes

HTTPCodeDescription
400MISSING_EMAILEmail parameter not provided
400INVALID_INPUTRequest body malformed
400TOO_MANYBulk request exceeds 500 emails
401UNAUTHORIZEDMissing or invalid API key
402NO_CREDITSNo credits remaining — buy more
429RATE_LIMITEDToo many requests
500INTERNAL_ERRORServer error

Rate Limits

API requests are limited by your credit balance. Each verification costs 1 credit. There are no separate rate limits for paid API usage.

Freshness

Every verification is performed in real time — no caching. Each request produces a fresh result and costs 1 credit.