Skip to main content

Settings inheritance and notifications

Personal settings belong to the Better Auth actor and apply across that user's connected accounts. A field without a personal override inherits the active tenant default. Required policy and administrator-assigned personal policy retain their precedence. See authorization.

Personal overrides​

Saving stores only explicitly changed fields. An explicitly selected value remains an override even if it equals the default. Reset removes overrides and resumes inheritance. It preserves separately granted trusted-sender consent.

The browser refreshes effective policy and settings. Personal saves run in order. Local storage cannot replace a current server default. A delayed response from the previous account cannot restore its values after account switching.

Durable notifications​

authorization.notifications stores immutable event payloads. Current actor recipients use authorization.actor_notification_recipients. Legacy authorization.notification_recipients remains readable. Recipient records retain personal values and dismissal time. Reads and dismissal check tenant and actor ownership.

The default change and notification share one transaction. Saving an unchanged default sends no event. Inheriting users receive the new default automatically. Users with overrides see the previous default, new default, and stored personal value. Sorter model/reasoning/context defaults use the same notification path.

Pending notifications appear in order, including after login and reload. A 30-second poll fetches updates while connected. Only Dismiss acknowledges one. Escape, outside click, and reload do not. A network error preserves the notification for retry until a successful response.

Administrator system messages require English and Hungarian titles and bodies. Users see their language. The server does not machine-translate administrator content. Publication snapshots eligible tenant actors. Later members do not receive old broadcasts automatically.

API reference​

OperationContract
Read resolved settingsGET /api/user-settings
Read originsGET /api/user-settings?metadata=true&accountId=...: effective values, sparse overrides, version
Save/resetPATCH /api/user-settings?accountId=...: version: 1, partial userSettings, optional reset: true
Pending notificationsGET /api/admin/notifications?accountId=...: at most 100 items and hasMore
DismissPOST /api/admin/notifications/:id/dismiss?accountId=...: idempotent, owned recipient only
Publish system messagePOST /api/admin/notifications?accountId=...: English and Hungarian title/body

Publication requires admin.messages.turnFeaturesOnOff. BFF origin checks and signed service identity protect proxy requests. The server selects recipients. Requests cannot supply their own recipient snapshot.