← All API sections

Bounce & Feedback Loops

Automatic bounce handling and complaint processing

VERP Bounce Tracking

EuroMail uses VERP (Variable Envelope Return Path) to achieve precise per-recipient bounce tracking. Each outbound email is assigned a unique return-path address that encodes the recipient and message identifier. When a bounce notification is returned by the recipient's mail server, EuroMail can immediately identify exactly which recipient and which message bounced — without relying on unreliable bounce message parsing.

Hard Bounce vs Soft Bounce Classification

Bounces are classified into two categories based on the SMTP response code:

TypeSMTP CodesMeaningAction
Hard bounce5xx (e.g., 550, 551, 553)Permanent failure — address does not exist, domain invalid, or mailbox disabledRecipient added to suppression list
Soft bounce4xx (e.g., 450, 452)Temporary failure — mailbox full, server unavailable, rate limitedRetried with exponential backoff

Hard bounces indicate a permanent delivery problem. Continuing to send to hard-bounced addresses damages sender reputation, so EuroMail automatically suppresses them after the first occurrence.

Soft bounces are retried automatically. If a soft bounce persists after all retry attempts are exhausted, it is escalated to a hard bounce and the address is suppressed.

Automatic Suppression List Management

When a hard bounce or spam complaint is received, the recipient address is automatically added to your account's suppression list. Subsequent API calls that include a suppressed address will return a 422 response explaining that the address is suppressed, preventing further damage to your sender reputation.

The suppression list distinguishes between bounce-suppressed and complaint-suppressed addresses, so you can take appropriate action in your application (e.g., marking an address as invalid vs. honoring an unsubscribe preference).

ARF Complaint Parsing

EuroMail participates in ISP feedback loops and parses incoming complaints in ARF (Abuse Reporting Format). When a recipient marks one of your emails as spam in their mail client, the ISP sends an ARF report to EuroMail. We parse the report, identify the original message and recipient, and trigger a complained webhook event.

Complaint rates are a critical sender reputation metric. Major ISPs like Gmail, Yahoo, and Outlook expect complaint rates below 0.1%. The dashboard displays your complaint rate alongside delivery and bounce rates.

Suppression List API

You can manage your suppression list programmatically:

# List suppressed addresses
curl https://api.euromail.dev/v1/suppressions \
  -H "X-EuroMail-Api-Key: em_live_..."

# Add an address manually
curl -X POST https://api.euromail.dev/v1/suppressions \
  -H "X-EuroMail-Api-Key: em_live_..." \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]", "reason": "manual"}'

# Remove an address (use with caution)
curl -X DELETE https://api.euromail.dev/v1/suppressions/[email protected] \
  -H "X-EuroMail-Api-Key: em_live_..."

Dead Letter Queue

Emails that fail all delivery attempts are moved to a dead letter queue. You can inspect failed deliveries in the dashboard, review the failure reason and SMTP response, and optionally retry delivery. The dead letter queue retains entries for 30 days by default.