User preferences
notification_preference is an opt-out overrides table. The absence of a row
means enabled by default.
- Columns:
user(FKauth.users.id),channel,category,is_enabled. - Partial unique index
(user, channel, category) WHERE is_deleted = false. - The dispatcher checks it in
isSuppressed(...)before enqueueing; on a read error it fails open (the notification is not lost).
API v3
/me resolves the owner from the JWT and rejects disabling non-suppressible
categories with a 400. It never accepts a user field.Notification inbox
The inbox is a locale-agnostic record of what was delivered, backed by two tables:
The
/me read API returns the authenticated user’s inbox for client rendering.
See the Schemas tab for the full
column reference.