···11+---
22+title: Account Notifications
33+description: Deliver your personal Kaneo notifications by email, ntfy, or a custom webhook with workspace and project scoping
44+---
55+66+Kaneo can keep the normal in-app notification inbox and also forward matching notifications to external channels for the signed-in user.
77+88+You can configure this under:
99+1010+1. Open **Settings**
1111+2. Open **Account**
1212+3. Open **Information**
1313+4. Scroll to **Notifications**
1414+1515+## Available channels
1616+1717+Users can forward matching notifications through:
1818+1919+- `Email`
2020+- `ntfy`
2121+- `Custom webhook`
2222+2323+These settings are personal to the signed-in account. They do not change notification routing for other users in the workspace.
2424+2525+## How it works
2626+2727+Kaneo already stores in-app notifications in the notification inbox. Account notification delivery adds a separate preference layer on top of that behavior.
2828+2929+Important rules:
3030+3131+- the in-app inbox remains the source of truth
3232+- outbound delivery only applies to newly created notifications
3333+- historical notifications are not replayed
3434+- delivery failures do not block notification creation
3535+- delivery can be scoped by workspace and, optionally, by selected projects
3636+3737+## Global channels
3838+3939+The Notifications page includes separate connection cards for:
4040+4141+- `Email`
4242+- `ntfy`
4343+- `Custom webhook`
4444+4545+Configure each channel once at the account level, then decide which workspaces are allowed to use it.
4646+4747+### Email
4848+4949+Email delivery uses the signed-in account email address.
5050+5151+Requirements:
5252+5353+- the user must have an email on the account
5454+- SMTP must be configured on the server
5555+5656+### ntfy
5757+5858+ntfy requires:
5959+6060+- a server URL
6161+- a topic
6262+- optionally, a bearer token
6363+6464+### Custom webhook
6565+6666+Custom webhook requires:
6767+6868+- a destination URL
6969+- optionally, a signing secret
7070+7171+When a signing secret is configured, Kaneo sends an `X-Kaneo-Signature` header containing the `HMAC-SHA256` hex digest of the raw JSON body.
7272+7373+## Workspace delivery rules
7474+7575+Below the global channel cards, Kaneo shows workspace delivery rules.
7676+7777+Each workspace rule can:
7878+7979+- be active or paused
8080+- enable or disable `Email`, `ntfy`, and `Custom webhook`
8181+- apply to `All projects`
8282+- or apply to `Selected projects` only
8383+8484+This lets a user receive notifications from one workspace in ntfy, another by email, and ignore the rest.
8585+8686+## Supported notification sources
8787+8888+V1 forwards the same notification types that currently create inbox notifications in Kaneo.
8989+9090+That includes:
9191+9292+- `task_created`
9393+- `workspace_created`
9494+- `task_status_changed`
9595+- `task_assignee_changed`
9696+- `time_entry_created`
9797+9898+If Kaneo cannot resolve a notification to a workspace or project context, that notification stays inbox-only.
9999+100100+## Reachability and security
101101+102102+For security, Kaneo validates outbound HTTP destinations before saving or sending.
103103+104104+Private or non-routable destinations are rejected, including examples like:
105105+106106+- `localhost`
107107+- `127.0.0.1`
108108+- `10.x.x.x`
109109+- `172.16.x.x` to `172.31.x.x`
110110+- `192.168.x.x`
111111+112112+This applies to:
113113+114114+- `ntfy` server URLs
115115+- custom webhook URLs
116116+117117+If you are using a self-hosted ntfy instance or webhook receiver, it must be reachable from the API with an accepted public or routable hostname.
118118+119119+## Troubleshooting
120120+121121+### Notifications show in Kaneo but are not delivered
122122+123123+Check that:
124124+125125+- the global channel is configured and enabled
126126+- a workspace rule exists for the notification workspace
127127+- the workspace rule is active
128128+- the channel is enabled on that workspace rule
129129+- the project is included when using `Selected projects`
130130+131131+### Email is enabled but nothing is sent
132132+133133+Check that:
134134+135135+- SMTP is configured correctly
136136+- the signed-in user has an email address
137137+- the server can reach the SMTP provider
138138+139139+### ntfy or webhook save fails
140140+141141+Check that:
142142+143143+- the URL is valid
144144+- the destination is reachable from the API server
145145+- the hostname does not resolve to a blocked local or private address
146146+147147+## Next
148148+149149+- [Personalize Your Workspace](/core/functional/personalize-your-workspace)
150150+- [Outgoing webhooks](/core/integrations/outgoing-webhooks)