A message can declare a stream. The Mailgun binding can map streams to dedicated domains; the stream domain wins when both the message declares one and the map has it, otherwise the binding's default domain, otherwise the platform env fallback. The display name is preserved and only the address is re-homed onto the stream's domain.
Also called: billing emails vs marketing emails · sending reputation · dedicated domain per stream
- 1Caller passes stream: 'billing' | 'updates' | 'marketing'.
- 2The adapter looks up config.streams[stream].
- 3The From address is rewritten onto that domain, keeping the display name.
- 4If no stream domain exists, the binding's domain is used.
The port's type comment states the rule: 'separate sending identities so one stream's reputation damage never degrades another's (marketing burns must never touch billing/invoice deliverability).'
- A single sending domain meant marketing complaints degraded transactional delivery.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →