PUT
/api/v1/me/devicesRegister this phone's push token for the signed-in login
Idempotent per token: a token already known is marked seen and handed to the caller's login — a reinstall, or a new login on the same phone — never duplicated (#198). platform is ios or android; provider defaults to expo. A device belongs to the person, not to a household.
Parameters
No parameters
Request body
Responses
- 200OK
application/jsonPushDeviceResponse- 400Bad Request
application/problem+jsonProblemDetails- 401No session, or the session is no longer valid.
application/problem+jsonProblemDetails- 426The build named in X-App-Version is below its platform's version floor (ADR-070). Problem type app-version-unsupported; the only way forward is the store. Callers without the header are never turned away.
application/problem+jsonProblemDetails- 429Too many calls in the window; Retry-After says how long.
application/problem+jsonProblemDetails- Headers
Retry-After- — Seconds to wait when a rate limit answered, or an HTTP date when the household's AI is paused. Absent when the household's AI quota for the period is used up — that resets by itself.
Example
curl -b "bryti_session=…" \
-X PUT \
"https://bryti.app/api/v1/me/devices" \
-H "Content-Type: application/json" \
-d '{"token":"string","platform":"string","provider":"string"}'Example response
200
application/json{
"token": "string",
"platform": "string",
"provider": "string",
"listChanges": false,
"householdNews": false,
"runDone": false,
"reminders": false,
"lastSeenAt": "2026-09-07T16:30:00Z"
}