Update the caller's notification preferences
Authentication
JWT access token obtained from POST /api/v1/auth/login, or a finput_sk_... API token
Request
Sets a user-chosen zone, or the device's when sent with follow_device: true. "" clears it and hands the choice back to device reports, and is refused while quiet hours depend on it. null leaves it unchanged.
true stores timezone as the device's zone (timezone_source: device) rather than a user choice, so later registrations keep it current. Needs a non-empty timezone, and works while quiet hours are on. false or null is the same as leaving it out.
Response
Every category, keyed by NotificationCategory, with its effective setting — the user's choice, or the default.
Local time in timezone, 24-hour HH:MM.
Local time in timezone. Earlier than the start means the window wraps midnight.
device — the latest zone a registered install reported. user — chosen explicitly; device reports never overwrite it. Empty when no zone is known.