Get my notification + view preferences
GET /account/preferences
Per-user application-behavior preferences: which channels (in_app, email) the user wants each notification event delivered through, plus default-view selections (home tab, browse layout, browse sort) that apply to the user’s next page load.
First-visit callers (no row yet) get a zero-value response —
empty notification_channels, empty default_views, but the
canonical known_event_types, known_channels, and per-event
default_channels_by_event are always populated so the UI can
render the toggle grid without hard-coding the catalog.
Channel resolution at notification-write time falls back to
default_channels_by_event for any event the user hasn’t
explicitly set. An explicit empty array MEANS “deliver
nothing for this event” and overrides the default.
Authorizations
Section titled “Authorizations ”Responses
Section titled “ Responses ”User preferences.
GET / PATCH response for per-user preferences. Includes the build’s known event-type + channel catalogs so the UI renders toggle grids without hard-coding the lists client-side. Per-event system defaults are surfaced so the UI can show “follows system default — in_app only” hints alongside each toggle.
object
object
Per-event-type email cadence. Absent key = immediate. Values: immediate | hourly | daily | weekly.
object
Default-view selections. Unset fields fall back to per-route defaults at render time. Adding a new view knob is a string-additive change; the valid value sets grow as new layouts ship in later phases.
object
Which tab the home page lands on. Valid values today:
following, latest, trending, for_you. Empty/unset
falls back to latest.
Default browse-feed layout. Valid values today: grid,
masonry, thumbnail, list. Empty/unset falls back to
the route’s default.
Default browse-feed sort. Valid values today: newest,
oldest, popular, trending. Empty/unset falls back
to the route’s default.
Canonical ordered list of notification event types this build knows about. Order is the recommended rendering order in the UI.
Canonical channel names this build supports
(in_app, email, future: sms, push, webhook).
Per-event-type system default channel list. Applied at
notification-write time when the user’s
notification_channels doesn’t have that key.
object
Authentication required, missing, or invalid
object
Human-readable error summary
Example
the request could not be completedExample
{ "error": "authentication required: sign in and retry with a valid session or API token"}Unexpected server error
object
Human-readable error summary
Example
the request could not be completed