Skip to content

Email Provider

Each team can bring its own email provider. Invitations, notifications, and the team’s daily digest then go out through the team’s account, from the team’s own address, instead of the instance-wide provider.

A team without its own provider inherits the instance provider; nothing breaks and no setup is required. Support mail always uses the instance provider regardless.

Open your team, then SettingsEmail Provider (Owners and Admins only). Pick a provider type and fill in its settings:

ProviderSettingsCredential
SMTPhost, port, optional usernameSMTP password
Mailgunsending domain, optional region base URLsending key
Postmarkoptional message streamserver token
SendGrid(none)API key with “Mail Send” permission

Every provider also takes:

  • From address (required): the address the team’s mail is sent from.
  • From name (optional): display name shown beside the from address.
  • Reply-To (optional): replies go here instead of the from address.

Use Send test email to verify a configuration before saving it: a real message is sent with the candidate settings to your own account email, and the outcome is reported without storing anything.

The credential is stored encrypted with the instance’s encryption key and is never returned by the API: reads expose only whether one is stored. When updating a provider, leave the credential field empty to keep the stored one. Note that rotating the instance’s encryption key invalidates stored team credentials, so each team must re-enter its credential afterward.

The page shows whether the last observed send succeeded, with the last delivery error retained for diagnosis. Deleting the team’s provider returns the team to the instance provider.

The provider is a singleton sub-resource of the team, available under both /api/v1/{team_id}/email-provider (CLI and API clients) and /api/v1/{team_id}/settings/email-provider (the SPA):

  • GET returns the effective configuration (always 200: a team without its own provider reports source: "instance" and the instance’s effective_from_address).
  • PUT creates or replaces the team’s provider (idempotent).
  • DELETE removes it, returning the team to the instance provider.
  • POST .../test sends a test message with a candidate configuration.

Reads are visible to every team member; writes and the test send require Owner or Admin.