Overview
We've enhanced our email routing system to support mixed mode - the ability to configure both specific email addresses and catch-all routing on the same domain simultaneously. This gives you the flexibility of a switch-case with default pattern for email routing.
What Changed
Switch-Case Email Routing Pattern
You can now set up email routing like this:
switch (email) {
case 'support@yourdomain.com':
webhook1 // Specific endpoint for support
case 'sales@yourdomain.com':
webhook2 // Specific endpoint for sales
default: // catch-all
webhook3 // Fallback endpoint for all other emails
}
Key Improvements
- Mixed Mode Support: Configure specific email addresses alongside catch-all routing
- Smart Precedence: Specific email addresses take priority over catch-all rules
- AWS SES Optimization: Updated SES rule configuration to support both rule types simultaneously
- Enhanced UI: Email management interface now shows both specific addresses and catch-all configuration together
- Backward Compatibility: Existing configurations continue to work without changes
Technical Details
Routing Priority
The system now follows this priority order:
- Specific email address endpoint (highest priority)
- Legacy webhook for specific email (backward compatibility)
- Catch-all endpoint (fallback)
- Legacy catch-all webhook (backward compatibility)
AWS SES Configuration
- Individual email rules and catch-all rules now coexist
- More specific rules (individual addresses) automatically take precedence
- Mixed mode uses optimized SES rule configuration for better performance
API Enhancements
- Catch-all API now detects existing individual emails and uses mixed mode automatically
- Email address creation API supports mixed mode when domain has catch-all enabled
- New
configureMixedMode
method in AWS SES rule manager
UI Changes
Email Management Interface
- Before: Individual email addresses were hidden when catch-all was enabled
- After: Both sections are always visible and can be configured together
- New Description: "Mixed routing: specific addresses + catch-all" when both are active
Visual Indicators
- Clear separation between specific addresses and catch-all configuration
- Updated descriptions explain the fallback behavior
- Improved messaging throughout the interface
Impact
For Existing Users
- No Action Required: All existing configurations continue to work
- Opt-in Enhancement: Enable catch-all on domains with existing email addresses to use mixed mode
- Backward Compatible: Legacy webhook configurations remain functional
For New Users
- Flexible Setup: Configure email routing exactly how you need it
- Simplified Workflow: No need to choose between specific addresses OR catch-all
- Better Organization: Route known senders to specific endpoints, everything else to catch-all
Migration Guide
Enabling Mixed Mode
If you currently have individual email addresses and want to add catch-all:
- Go to your domain's email management page
- Configure a catch-all endpoint in the "Catch-all Configuration" section
- Enable catch-all - your existing individual addresses will remain active
- The system automatically configures mixed mode routing
Example Configuration
// Your domain now supports both:
const specificEmails = [
{ address: 'support@yourdomain.com', endpoint: 'support-webhook' },
{ address: 'sales@yourdomain.com', endpoint: 'sales-webhook' }
]
const catchAllConfig = {
enabled: true,
endpoint: 'general-webhook'
}
// Routing behavior:
// support@yourdomain.com → support-webhook
// sales@yourdomain.com → sales-webhook
// anything-else@yourdomain.com → general-webhook
Benefits
- Flexible Routing: Handle known email patterns specifically, catch everything else
- Reduced Configuration: No need to create individual addresses for every possible email
- Better Organization: Route important emails to dedicated endpoints
- Scalable: Easily handle both planned and unplanned email addresses
- Cost Effective: Fewer individual email addresses needed while maintaining control
This enhancement makes Inbound's email routing system more powerful and flexible while maintaining the simplicity you expect.