Skip to content

Email Notifications

Email is the most universal notification channel. Reoclo connects to any SMTP server you control — Gmail, Microsoft 365, AWS SES, Postmark, Mailgun, SendGrid, your own Postfix — and sends one message per event to a fixed recipient list.

  • You want a permanent record in everyone’s inbox
  • You’re sending to people who don’t live in chat (executives, customers, on-call rotations without a paging tool)
  • You need an audit trail your SIEM already ingests via email gateways

For real-time chat, prefer Slack or Microsoft Teams. For paging, prefer PagerDuty or OpsGenie.

  • An SMTP server you can authenticate to (host, port, optional username/password)
  • A verified From address — your SMTP provider must allow sending from this address, or recipients will see SPF/DKIM failures and route the message to spam
  • One or more recipient addresses

Pick the row that matches your provider:

ProviderHostPortTLSAuth notes
Gmail / Google Workspacesmtp.gmail.com587YesUse an App Password — regular passwords are blocked
Microsoft 365smtp.office365.com587YesApp password / OAuth2 required when MFA is on
AWS SESemail-smtp.<region>.amazonaws.com587YesGenerate SMTP credentials from the SES console (not your AWS access key)
Postmarksmtp.postmarkapp.com587YesUse a Server API Token as both username and password
Mailgunsmtp.mailgun.org587YesUse the SMTP credentials shown on your domain page
SendGridsmtp.sendgrid.net587YesUsername is apikey, password is the API key
  1. Open Settings → Notification Channels

  2. Click Add Channel and pick Email

  3. Fill in the form:

    FieldRequiredDescription
    SMTP hostYese.g., smtp.gmail.com
    SMTP portNo (587)587 for STARTTLS, 465 for implicit TLS, 25 only for trusted internal relays
    UsernameNoLeave blank for unauthenticated relays
    PasswordNoStored encrypted at rest
    Use TLSYes (on)Leave on unless you’ve explicitly chosen a plaintext internal relay
    From addressYesThe verified sender, e.g., [email protected]
    RecipientsYesOne or more addresses; one message is sent per recipient list, not per address
  4. Click Send Test — Reoclo sends a [TEST] email and surfaces any SMTP error in the form. The channel cannot be saved until the test succeeds.

  5. Choose which events this channel receives (defaults are a good starting point).

  6. Save.

Terminal window
reoclo channels create email --from-file alerts-email.yaml
kind: email
name: ops-alerts
config:
smtp_host: email-smtp.us-east-1.amazonaws.com
smtp_port: 587
smtp_username: ${env:SES_SMTP_USER}
smtp_use_tls: true
smtp_from_address: [email protected]
recipients:
secret: ${env:SES_SMTP_PASSWORD}
events:
deploy_failed: true
monitoring_uptime_down: true
incident_created: true

Then test:

Terminal window
reoclo channels test <channel-id>
# or override the recipient for a one-off send
reoclo channels test <channel-id> --to [email protected]

Reoclo sends one HTML email per event. The Subject matches the event summary; the body is a short HTML rendering with the relevant context (deployment name, server, error excerpt). All messages come from your configured From address.

SymptomCauseFix
535 Authentication failedWrong username/password or app password not generatedGenerate an app password (Gmail/M365) or regenerate SMTP credentials
530 Must issue a STARTTLS command firstTLS disabled but requiredTurn Use TLS back on
Emails land in spamMissing SPF/DKIM for the From domainConfigure SPF + DKIM at your DNS provider, or send from a verified provider domain
550 Sender address rejectedFrom address not verified with your SMTP providerVerify the address in your provider’s console
Test passes, real events silentEvent toggles disabledOpen the channel and turn on the events you care about
  • Set up Slack for real-time chat delivery alongside email
  • Hook events into Alert Rules so monitor thresholds trigger your email channel