SnozeDevelopers
API referenceNotifications

Create or update a notification preference

Upserts one preference for the caller, keyed by channel plus its optional workspace, category, or kind override, so re-sending the same body is idempotent. A preference may override a category or a kind but not both, and an enabled channel needs a real cadence while a disabled one must use `never`. Scoping the preference to a `workspaceId` requires `workspace:read` there and accepts an `Idempotency-Key` header.

PUT
/v1/notification-preferences
AuthorizationBearer <token>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X PUT "https://example.com/v1/notification-preferences" \  -H "Content-Type: application/json" \  -d '{    "channel": "in_app",    "enabled": true,    "cadence": "immediate"  }'
{  "data": {    "id": "string",    "workspaceId": "string",    "category": "collaboration",    "kind": "comment",    "channel": "in_app",    "enabled": true,    "cadence": "immediate"  }}