Handle Bounced Email in Agent Outreach Nylas introduced a webhook-based bounce detection system for agent outreach campaigns. The system listens for Non-Delivery Reports (NDRs) from Google, Microsoft, iCloud, and Yahoo, converting them into structured `message.bounce_detected` events with parsed SMTP codes and reasons. This allows agents to automatically suppress bounced addresses, pause campaigns on bounce spikes, and annotate CRM records, protecting sender reputation. A failed send throws an error your code can catch; a bounce happens minutes later, in someone else's mail server, after your API call already returned success. That gap is where outreach agents quietly rot. The agent fires off a campaign, every send returns 200, the dashboard's green — and a chunk of those messages died at addresses that no longer exist. Without bounce handling you never learn which ones, so the agent keeps emailing dead mailboxes, and every retry chips away at the sender reputation your deliverable mail depends on. The fix is event-driven: bounces arrive as webhooks, and your agent's job is to listen and adapt. When a recipient's server rejects a message, the provider generates a Non-Delivery Report — that "Mail Delivery Subsystem" email humans glance at and archive. Nylas watches for NDRs in the sender's mailbox and converts them into a structured message.bounce detected webhook, with the failed address, the reason, and the SMTP code already parsed out. Subscribe to it like any other trigger by adding message.bounce detected to your webhook's trigger types : curl --request POST \ --url "https://api.us.nylas.com/v3/webhooks" \ --header "Authorization: Bearer