Docs / API / Streams

Email Streams

Separate transactional / marketing / notification sending profiles. Each has its own from-address, SES configuration set, and IP pool.

Create a stream

POST /api/streams

Scopes: streams:write

FieldTypeRequiredDescription
namestring (64 chars, A-Za-z0-9_-)YesUnique per tenant.
typeenumNotransactional (default), marketing, notifications.
descriptionstringNoHuman-friendly label.
defaultFromemailNoFallback From if a send doesn't specify one.
configSetstringNoSES configuration set name to attach to sends.
ipPoolstringNoSES dedicated IP pool name.
enabledbooleanNoDefault true.

List streams

GET /api/streams

Get a stream

GET /api/streams/:id

Delete a stream

DELETE /api/streams/:id

Using a stream in a send

Pass streamId in POST /api/emails. Mailgrid resolves the stream, applies its configSet + defaultFrom, and stamps X-InboxOS-Stream on the outbound headers.

Best practice

Create at least two streams from day one: transactional for password resets / receipts (high deliverability priority) and marketing for promotional content (different IP pool, separate reputation).