Notifications

Configure device-token registration and understand the APNs-only v1 test-push boundary.

The frozen App API accepts native device tokens with platform: ios | android. Registration is idempotent and binds the token to the authenticated user; sign-out, account switching, and deletion must remove or rebind it.

ClientTokenUnified current-user test push
SwiftAPNsSupported
KotlinFCMNot supported in frozen v1
Expo iOSAPNsSupported
Expo AndroidFCMNot supported in frozen v1
Electron / TauriNoneNot implemented

POST /api/app/v1/notifications/test-push preserves its APNs semantics. Android clients return an explicit unsupported capability and do not call it. A future FCM sender must be a new backward-compatible operation or a v2 contract—not a reinterpretation of the existing endpoint.

Provider credentials are host-only secrets. Client bundles contain only platform configuration required to register for notifications.