Errors
Every non-2xx response shares this shape:
{
"error": "QuotaExceeded",
"message": "Monthly email limit of 1500 reached and only 0 credit(s) remain. Buy more credits or upgrade your plan to continue sending."
}Validation errors additionally include a details array with per-field messages. Quota errors include a usage object:
{
"error": "QuotaExceeded",
"message": "Monthly email limit of 1500 reached and only 0 credit(s) remain...",
"usage": {
"sent": 1500,
"limit": 1500,
"credits": 0,
"needed": 1
}
}Error codes
| Status | Error | When |
|---|---|---|
| 400 | Validation Error | Request body failed schema validation (e.g. invalid email address, missing required field). |
| 401 | Unauthorized | Missing, invalid, or revoked API key. |
| 403 | Forbidden | The from domain isn’t verified yet, or the account is suspended. |
| 404 | Not Found | The resource (email, domain, API key) doesn’t exist or isn’t yours. |
| 409 | Conflict | Domain already registered on this or another account. |
| 429 | QuotaExceeded | Monthly plan quota and any purchased credits are both exhausted. |
| 429 | DailyQuotaExceeded | Free plan’s 150 emails/day cap reached. |
| 502 | Email Send Failed | The email provider rejected the send after your request passed all cmdsend-side checks. |