The NeuraMail API lets you verify email addresses and query your account programmatically. All endpoints return JSON. Authentication is via a per-user API key.
https://neuramail.clInclude your API key in every request using the Authorization. Generate or rotate your key from the API Keys page in the dashboard.
Authorization: Bearer nm_live_xxxxxxxxxxxxxxxxxxxx
Keep your API key secret. Never expose it in client-side code or public repos. Rotate it immediately if you suspect it's been compromised.
/api/v1/verifyVerify a single email address. Returns status, sub-status, MX info, and whether the result was cached.
Parameters
emailResponse
{
"data": {
"email": "user@example.com",
"status": "valid",
"sub_status": null,
"is_catchall": false,
"mx_found": true,
"credits_used": 1,
"cached": false
}
}/api/v1/verify/batchVerify up to 1,000 email addresses in a single request.
Parameters
emailsResponse
{
"data": {
"results": [
{ "email": "a@example.com", "status": "valid", "cached": true },
{ "email": "b@fake.io", "status": "invalid", "sub_status": "disposable" }
],
"total": 2,
"credits_used": 1,
"credits_cached": 1
}
}/api/v1/creditsReturn the current credit balance and recent transaction history for the authenticated user.
Response
{
"data": {
"balance": 4820,
"transactions": [
{ "amount": -1, "type": "verification", "created_at": "2025-03-14T10:00:00Z" }
]
}
}/api/v1/emailsSend a transactional email (confirmations, password resets, signing links, etc.). The from domain must be verified in your account. Costs 1 credit per send.
Parameters
fromtosubjecthtmltextreply_totagsExample (cURL)
curl -X POST https://neuramail.cl/api/v1/emails \
-H "Authorization: Bearer nm_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"from":"Mi App <hola@midominio.cl>","to":"cliente@example.com","subject":"Hola","html":"<p>Hola</p>"}'Response
{
"data": {
"id": "9f1c8e2a-...",
"from": "Mi App <hola@midominio.cl>",
"to": ["cliente@example.com"],
"created_at": "2026-06-30T20:00:00Z"
}
}/api/v1/emails?limit=50Lists the most recent sent emails (max 100).
Alternative to the HTTP API: use any standard SMTP library (nodemailer, PHPMailer, etc.). The username can be any value; the password is your API key. Same rules: the sender domain must be verified.
host: smtp.neuramail.cl port: 587 # STARTTLS user: apikey # any value pass: nm_live_xxxxxxxxxxxxxxxx # your API key
validMailbox exists and is likely to receive mail.invalidMailbox does not exist or the domain is non-functional.riskyRole address, recently deactivated, or low-confidence result.catch_allServer accepts all mail; individual mailbox cannot be confirmed.unknownServer timed out or blocked the verification handshake.Sub-statuses
disposablerole_basedspam_trapmx_not_foundsmtp_errorbouncesyntax_error400Bad RequestMissing or invalid parameters.401UnauthorizedAPI key missing or invalid.402Insufficient CreditsYour account balance is too low.422Unprocessable EntityEmail address failed syntax validation.429Too Many RequestsRate limit exceeded. Retry after the Retry-After header value.500Server ErrorUnexpected error. Contact support if it persists.