Notification Management
Required Permissions: Admin or SuperUser role
Security Level: Medium
Estimated Time: 12 minutes
Notification Management controls how your tenant communicates with users — which delivery channels are available, what message templates look like, and how individual users fine-tune their notification preferences. You configure channels, manage templates, review delivery history, and set up per-user preferences. Access it at Admin Portal → Notifications.
Prerequisites
- Your account holds an Admin or SuperUser role.
- At least one notification channel is configured (email is typically set up by default).
Overview
The Notification Management landing page shows four summary cards and quick-access links:
| Card | What it shows |
|---|---|
| Templates | Total templates and how many are active. |
| Channels | Total channels and how many are enabled. |
| Total Sent | Lifetime count of notifications dispatched. |
| Recent (7 days) | Notifications sent in the last week. |
Below the cards, you see a preview list of templates and channels, plus four Quick Actions that navigate to the dedicated management pages:
- Manage Templates →
/admin-portal/notifications/templates - Configure Channels →
/admin-portal/notifications/channels - View History →
/admin-portal/notifications/history - User Preferences →
/admin-portal/notifications/preferences
Notification Channels
Channels define how notifications are delivered — email, Slack, Microsoft Teams, SMS, or other integrations.
Viewing channels
Navigate to Configure Channels to see every channel with its type, enabled/disabled status, scope (Global or Tenant), rate limits, configuration validity, and creation details.
Creating a channel
- Click Add Channel.
- Enter a name for the channel.
- Select a channel type (e.g., Email, Slack, Teams, SMS, Webhook).
- If the channel type requires an integration connection (e.g., Slack OAuth or Teams), select or configure the connection.
- Toggle Enabled to activate the channel immediately.
- SuperUsers can toggle Global to make the channel available across all tenants.
- Set optional rate limits to control delivery throughput.
- Expand the Channel Configuration section to provide type-specific settings (e.g., Slack channel selection, Teams team and channel, SMS phone number, webhook URL).
- Click Save.
Type-specific configuration
| Type | Key settings |
|---|---|
| Sender address, SMTP or transactional email provider configuration. | |
| Slack | OAuth connection or webhook URL, target Slack channel selection. |
| Microsoft Teams | Teams team and channel selection via integration. |
| SMS | Phone number entry and verification flow. |
| Webhook | Endpoint URL and any custom headers. |
Testing a channel
Click the Test icon on any channel to send a test notification and verify that delivery works. The test dialog shows progress and reports success or failure.
Managing channels
- Enable/Disable — toggle the switch to control whether the channel is used for delivery. System channels cannot be disabled.
- Edit — modify the channel configuration, rate limits, or enabled state. Some fields on system channels are locked and can only be changed by SuperUsers.
- Delete — remove a channel. A confirmation dialog appears before deletion.
System channels
Channels marked with a System Channel badge are created and managed by the platform. Their editability is restricted — only certain fields are unlocked, and only SuperUsers can modify them. You cannot delete system channels.
Notification Templates
Templates define the content and format of notifications sent through your channels.
Viewing templates
Navigate to Manage Templates to see all templates with their display name, internal name, category, content type (text or HTML), active/inactive status, version, and creation details. System templates are marked with a badge.
Creating a template
- Click Create Template.
- Enter an internal name (used in code) and a display name (shown to admins).
- Add a description of what the template is for.
- Select a category (e.g., account, billing, system, security).
- Choose a content type: text or HTML.
- Write the subject template and content template. Use template variables (e.g.,
{{ user_name }},{{ action }}) to insert dynamic data. - Optionally provide a default test context — a JSON object of sample variable values for testing.
- Click Save.
Testing a template
- Click the Test icon on any template row.
- Provide or modify the test context JSON — this fills in the template variables.
- Click Preview to render the template with the test data and verify formatting.
- SuperUsers can also click Send Email to dispatch a real test notification.
System templates
Templates marked as System are created by the platform and can only be edited by SuperUsers. Admins can view and copy system templates but cannot modify them directly. To customize a system template, use Copy to create a tenant-level clone, then edit the clone.
Cloning a template
Click the Copy action on any template to create a duplicate with a modified name. This is useful for creating variants or customizing system templates.
Notification History
The history page is a read-only log of every notification dispatched by your tenant.
Browsing history
Navigate to View History to see a paginated table of notifications with the recipient, subject, channel, template, status, priority, creation time, and send time.
Filtering
Click Filters to open the filter dialog:
- Status — filter by delivery status (pending, queued, sending, sent, delivered, failed, retrying, cancelled).
- Channel Type — narrow to a specific channel type.
- Priority — filter by priority level (urgent, high, normal, low).
- Recipient Email — search by recipient address.
- Date Range — set start and end dates.
Active filters appear as chips above the table. Click Clear All to reset.
Notification statuses
| Status | Meaning |
|---|---|
| Pending | Notification created but not yet queued for delivery. |
| Queued | Waiting in the delivery queue. |
| Sending | Currently being dispatched. |
| Sent | Dispatched to the delivery provider. |
| Delivered | Confirmed delivered to the recipient. |
| Failed | Delivery attempt failed. |
| Retrying | A failed delivery is being retried. |
| Cancelled | Delivery was cancelled before completion. |
Viewing details
Click View Details on any notification to see the full record — basic information, timeline (created, queued, sent, delivered timestamps), rendered content, error details (if failed), and metadata.
User Notification Preferences
The preferences page lets any authenticated user — not just admins — configure how they receive notifications.
How preferences work
Preferences are organized by category (e.g., account notifications, billing alerts, system updates). Within each category, each available channel can be independently configured with:
- Enabled/Disabled — whether to receive notifications in that category via that channel.
- Frequency — how often to receive them: immediate, daily digest, weekly digest, or disabled.
- Quiet Hours — for immediate-frequency notifications, optionally set a start and end time during which notifications are held.
Managing preferences
- Navigate to User Preferences.
- Expand any category accordion to see the channels available for that category.
- Toggle a channel on or off and configure the frequency.
- For immediate notifications, optionally enable quiet hours by setting a start and end time.
- Click Save Preferences or Save All Preferences to apply.
Tip: The preferences page shows the currently authenticated user's settings. Each user manages their own preferences.
Security Considerations
- System channels and templates are controlled by SuperUsers. Admins can view and use them but cannot modify their core configuration.
- Global channels (SuperUser-created) apply across all tenants. Be careful when enabling or disabling global channels — the change affects every tenant.
- Rate limits on channels prevent notification flooding. Set these appropriately for external services like Slack or SMS to avoid being throttled.
- Notification history may contain sensitive content (email addresses, message subjects). Access is restricted to Admin and SuperUser roles.
Best Practices
- Configure at least two delivery channels (e.g., email and Slack) so users have a fallback if one channel experiences issues.
- Test every new channel and template before using them in production. Use the built-in test features to verify delivery and formatting.
- Use template variables rather than hard-coding content. This makes templates reusable across contexts and easier to maintain.
- Review notification history periodically to catch delivery failures or stuck notifications.
- Encourage users to set up their own preferences so they receive notifications through their preferred channels at their preferred frequency.
- Set rate limits on high-volume channels to prevent overwhelming external services.
Troubleshooting
Channel shows "Config Error" The channel's configuration is incomplete or invalid. Edit the channel and verify all required fields are filled in correctly — for example, check that a Slack OAuth connection is still active or that an SMS phone number has been verified.
Template preview shows raw variable syntax The test context JSON is missing values for the variables used in the template. Update the test context to include all required variables.
Notifications stuck in "Pending" or "Queued" The delivery pipeline may be delayed. Refresh the history page after a few minutes. If notifications remain stuck, check channel health and contact support.
User not receiving notifications Verify the user's preference settings for the relevant category and channel. Confirm the channel is enabled and the recipient email/phone is correct. Check notification history for delivery status and error details.
Cannot edit a system template System templates require SuperUser access to edit. Admins can use the Copy action to create a tenant-level clone, then modify the clone.
Next Steps
For managing the events that often trigger notifications, see Events Management. For an overview of all admin portal capabilities, see Admin Portal Overview.
Related Topics
⏱️ Read time: 12 minutes | 📊 Difficulty: intermediate