Auth & account
HTTP routes and behavior for auth & account.
GET /api/auth/status # public: is setup complete, login methodsPOST /api/auth/setup # public: first-run admin account creationPOST /api/auth/login # public: { username, password } -> tokensPOST /api/auth/refresh # public: mint access token (refresh token is stable; legacy JWT refresh tokens migrate to the opaque scheme; 401 only on genuine revocation, 503 on transient faults)POST /api/auth/connect # public: redeem a connect-link token -> sessionPOST /api/auth/passkey/login/begin|finish # public: WebAuthn loginPOST /api/auth/passkey/setup/begin|finish # public: passkey setup via short-lived linkGET /api/auth/me # user: profile + permissions; child + content_limits for a kids account # (the same two fields ride the login/refresh/connect user object)POST /api/auth/password # user: set password (admin-enabled users only)POST /api/auth/plex-email # user: share the email for a Plex invite (sends the invites their grants owe, auto-approves where enabled, notifies admins)POST /api/auth/passkey/register/begin|finish # user: add passkey (admin-enabled only)POST /api/auth/passkey/setup-link # user: mint a browser passkey-setup URLGET /api/auth/passkeys # user: list own passkeysDELETE /api/auth/passkeys/{credentialID} # user: remove own passkeyPOST /api/auth/logout # user: revoke this device's own session (sign out)