Skip to content

Feat/default notification channels#3656

Open
the-last-php-bender wants to merge 2 commits into
bluewave-labs:developfrom
the-last-php-bender:feat/default-notification-channels
Open

Feat/default notification channels#3656
the-last-php-bender wants to merge 2 commits into
bluewave-labs:developfrom
the-last-php-bender:feat/default-notification-channels

Conversation

@the-last-php-bender
Copy link
Copy Markdown

@the-last-php-bender the-last-php-bender commented May 16, 2026

Describe your changes

Briefly describe the changes you made and their purpose.

This PR implements the ability to bulk-assign Notification Channels to Alerts as requested in issue #3601. The implementation includes:

  1. Default Channel: Added the ability to mark a notification channel as 'Default' so it is automatically attached to any new monitor created.
  2. Bulk Edit Mode: Added checkbox selection on the Uptime and Infrastructure monitor lists to "Add Notification Channel" or "Remove Notification Channel" to all selected items.
  3. Global Defaults (Apply to All): Added an "Apply to All" button in the notification edit form that applies the notification channel to all existing monitors in the team.

Backend changes:

  • Added isDefault field to Notification model
  • Added API endpoints: GET /notifications/defaults, PATCH /notifications/:id/default, POST /notifications/:id/apply-to-all
  • Added PATCH /monitors/notifications endpoint for bulk add/remove operations
    Frontend changes:
  • Added "Default channel" toggle in notification creation/edit form
  • Added bulk notification actions (Add/Remove) in Uptime and Infrastructure monitor pages
  • Added "Apply to All" button in notification edit form
  • Auto-attaches default notifications to new monitors

Write your issue number after "Fixes "

Fixes #3601

Please ensure all items are checked off before requesting a review. "Checked off" means you need to add an "x" character between brackets so they turn into checkmarks.

  • (Do not skip this or your PR will be closed) I deployed the application locally.
  • (Do not skip this or your PR will be closed) I have performed a self-reviewing and testing of my code.
  • I have included the issue # in the PR.
  • I have added i18n support to visible strings (instead of <div>Add</div>, use):
const { t } = useTranslation();
<div>{t('add')}</div>
  • I have not included any files that are not related to my pull request, including package-lock and package-json if dependencies have not changed
  • I didn't use any hardcoded values (otherwise it will not scale, and will make it difficult to maintain consistency across the application).
  • I made sure font sizes, color choices etc are all referenced from the theme. I don't have any hardcoded dimensions.
  • My PR is granular and targeted to one specific feature.
  • I ran npm run format in server and client directories, which automatically formats your code.
  • I took a screenshot or a video and attached to this PR if there is a UI change.
checkmate  1 checkmate

- Add isDefault field to notification model and types
- Add endpoints: GET /notifications/defaults, PATCH /notifications/:id/default, POST /notifications/:id/apply-to-all
- Add bulk add/remove notifications to monitors (PATCH /monitors/notifications)
- Add UI for marking notifications as default
- Add bulk notification actions in Uptime and Infrastructure monitor pages
- Add Apply to All button in notification creation form
- Auto-attach default notifications to new monitors
- Update OpenAPI spec with new endpoints
- Fix duplicate imports and JSON syntax in en.json
The createNotificationBodyValidation schema was stripping out the
isDefault field when updating notifications, preventing the
Default Channel feature from working properly.

Changes:
- Add isDefault: z.boolean().optional() to all 10 notification
  type schemas (email, webhook, slack, discord, pager_duty,
  matrix, teams, telegram, pushover, twilio)
- Fix TypeScript type errors in frontend components
- Fix import name in Infrastructure/Monitors page

This enables users to toggle 'Default channel' on notifications
and have them auto-attached to new monitors.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature Request: Ability to bulk-assign Notification Channels to Alerts

1 participant