MCMMCM DocsEngineering (Internal)
User StoriesMCM-13 — Notification System
v1.2 is unreleased — see v1.1 for the current stable release.

MCM-17 — Email Notification

Critical events are delivered as a persistent, actionable email record.

MCM-17 — Email Notification

← Back to Notification System overview

As an Enterprise Admin,
I want to receive an email when a critical event occurs (policy violation, scan failure, account sync error),
so that I have a persistent, shareable record of the event and can act on it even when I am not logged in.

Acceptance Criteria

  • Email notifications are sent using the platform's transactional email service (see Send Email LLD).
  • Each email contains: MCM branding header, event title, event description, affected resource details (name, ID, cloud provider), timestamp (UTC), and a "View in MCM" call-to-action button linking directly to the resource.
  • Emails are sent from a consistent no-reply@<platform-domain> address with a reply-to of the MSP support address.
  • Users can configure email notification preferences per category from their profile settings (enabled by default for Critical and High severity events — see Notification Preferences).
  • Email delivery is attempted with a maximum of 3 retries with exponential back-off on failure; failed delivery is logged.
  • Digest mode: users may opt into a daily digest email (sent at 08
    user-local time) that summarises all non-critical notifications from the previous 24 hours instead of receiving them individually.
  • Unsubscribe: every notification email includes a one-click unsubscribe link that disables email notifications for that category without requiring login.
  • No email is sent if the same event has already been emailed within the last 5 minutes for the same resource (deduplication window).

Technical Design

Email delivery reuses the platform's shared transactional email service (see Send Email LLD for the endpoint contract and provider details) — this story only adds notification-specific templating plus dedup and digest logic on top of that shared send path. A per-resource, per-event-type "last emailed at" record is checked before sending to skip duplicates within a 5-minute window, and a per-user digest opt-in lets non-critical events batch into a single daily 08

local-time email instead of individual sends. Delivery targets a 60-second end-to-end SLA for Critical/High severity events; failures are retried up to 3 times with exponential back-off before being logged, and every email carries a one-click, no-login unsubscribe link scoped to its category.


UI / Frontend Changes

  • Email template: MCM branding header, event title/description, affected resource details, UTC timestamp, and a "View in MCM" call-to-action button.
  • Per-category email toggle in the Notification Preferences matrix, defaulting to enabled for Critical/High severity.
  • Digest opt-in control in profile settings for a daily 08
    local-time summary email instead of individual sends.
  • One-click unsubscribe link embedded in every email, requiring no login to act on it.

On this page