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 a Single Email
GET /api/v1/verify?email=user@example.com
Example Request
curl -H "Authorization: Bearer mp_live_abc123..." \
"https://mailprobe.dev/api/v1/verify?email=john@gmail.com"
Response
{
"email": "john@gmail.com",
"result": "deliverable",
"syntax": true,
"mx_found": true,
"smtp_check": true,
"disposable": false,
"role_based": false,
"free_provider": true,
"mx_records": ["gmail-smtp-in.l.google.com"]
}
Result Values
| Value | Description |
|---|---|
deliverable | SMTP confirmed the mailbox exists |
undeliverable | SMTP rejected the address |
catch-all | Server accepts all addresses (can't confirm individually) |
unknown | Could not determine (timeout, connection refused, greylisting) |
Bulk Verification
POST /api/v1/verify/bulk
Send up to 500 emails per request. Each email costs 1 credit.
Example Request
curl -X POST \
-H "Authorization: Bearer mp_live_abc123..." \
-H "Content-Type: application/json" \
-d '{"emails": ["john@gmail.com", "jane@company.com"]}' \
"https://mailprobe.dev/api/v1/verify/bulk"
Response
{
"total": 2,
"results": [
{ "email": "john@gmail.com", "result": "deliverable", ... },
{ "email": "jane@company.com", "result": "catch-all", ... }
]
}
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
| HTTP | Code | Description |
|---|---|---|
| 400 | MISSING_EMAIL | Email parameter not provided |
| 400 | INVALID_INPUT | Request body malformed |
| 400 | TOO_MANY | Bulk request exceeds 500 emails |
| 401 | UNAUTHORIZED | Missing or invalid API key |
| 402 | NO_CREDITS | No credits remaining — buy more |
| 429 | RATE_LIMITED | Too many requests |
| 500 | INTERNAL_ERROR | Server 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.
Caching
Results are cached for 7 days. Verifying the same email within that window returns the cached result and still costs 1 credit.