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.
| Client | Token | Unified current-user test push |
|---|---|---|
| Swift | APNs | Supported |
| Kotlin | FCM | Not supported in frozen v1 |
| Expo iOS | APNs | Supported |
| Expo Android | FCM | Not supported in frozen v1 |
| Electron / Tauri | None | Not 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.
