Skip to content

Update channel preferences (mandatory types cannot be disabled).

PUT
/notifications/preferences
curl --request PUT \
--url https://api.gospl.example/v1/notifications/preferences \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '[ { "type": "weekly_summary.submitted", "channels": [ "in_app" ], "mandatory": true } ]'

Attempting to disable a mandatory type returns 422 (see spec §C).

Media type application/json
Array<object>
object
type
required

Seed registry; grows per feature. See spec §2.

string
Allowed values: weekly_summary.submitted weekly_summary.response weekly_summary.reminder weekly_summary.monday_digest weekly_goals.non_setter
channels
required
Array<string>
Allowed values: in_app email
mandatory

Read-only hint — if true, channels cannot be fully disabled.

boolean

Updated.

Media type application/json
Array<object>
object
type
required

Seed registry; grows per feature. See spec §2.

string
Allowed values: weekly_summary.submitted weekly_summary.response weekly_summary.reminder weekly_summary.monday_digest weekly_goals.non_setter
channels
required
Array<string>
Allowed values: in_app email
mandatory

Read-only hint — if true, channels cannot be fully disabled.

boolean
Example
[
{
"type": "weekly_summary.submitted",
"channels": [
"in_app"
]
}
]

Missing/invalid credentials.

Media type application/json
object
code
required
string
message
required
string
Example generated
{
"code": "example",
"message": "example"
}

Attempted to disable a mandatory notification type.

Media type application/json
object
code
required
string
message
required
string
Example generated
{
"code": "example",
"message": "example"
}