Notification Settings
Notification settings let each user control how Snapbooks notifies them, per client account and per notification type. Every setting has an email and a push (mobile) toggle.
Settings are personal: the endpoints always read and write the settings of the authenticated user. A user cannot view or change another user’s settings.
Default behavior: a notification type without a stored setting is enabled on every channel. Settings only need to be created to switch something off (or back on).
Notification Types
| Value | Description | Channels used |
|---|---|---|
WEEKLY_TODO |
The weekly to-do summary (“Ukens gjøremål”) sent every Monday to client account owners. Only sent when there is something that needs attention. | Email only |
Note that a notification type may not use every channel. WEEKLY_TODO is delivered by email only, so its push_enabled flag currently has no effect.
Endpoints
List Notification Settings
GET /api/v2/client-accounts/{client_account_id}/notification-settings
Retrieves the authenticated user’s stored notification settings for a client account. Notification types without a stored setting are not included and default to all channels enabled.
Response
[
{
"id": 12,
"created_at": "2026-08-07T10:00:00Z",
"user_id": 34,
"client_account_id": 250,
"notification_type": "WEEKLY_TODO",
"email_enabled": false,
"push_enabled": true
}
]
Update Notification Setting
PUT /api/v2/client-accounts/{client_account_id}/notification-settings/{notification_type}
Creates or updates the authenticated user’s setting for one notification type. The operation is an upsert: the first PUT creates the setting, later calls update it.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| email_enabled | boolean | Yes | Whether the notification is delivered by email |
| push_enabled | boolean | Yes | Whether the notification is delivered as a mobile push |
Example Request
{
"email_enabled": false,
"push_enabled": true
}
Response
{
"id": 12,
"created_at": "2026-08-07T10:00:00Z",
"user_id": 34,
"client_account_id": 250,
"notification_type": "WEEKLY_TODO",
"email_enabled": false,
"push_enabled": true
}
Attributes
| Attribute | Type | Description |
|---|---|---|
| id | integer | The unique ID of the setting |
| created_at | datetime | When the setting was created |
| user_id | integer | The user the setting belongs to (always the authenticated user) |
| client_account_id | integer | The client account the setting applies to |
| notification_type | string | The notification type (see Notification Types) |
| email_enabled | boolean | Whether email delivery is enabled |
| push_enabled | boolean | Whether mobile push delivery is enabled |
Error Responses
| Status Code | Description |
|---|---|
| 400 | Bad request (unknown notification type, or email_enabled/push_enabled missing or not booleans) |
| 403 | Forbidden (no access to client account) |
Related Resources
- Users - User accounts and permissions
- Client Account Users - Users and roles within client accounts
- Client Account Settings - Company-wide configuration