Verify two-factor authentication
Complete login with an authenticator code or an unused backup code to obtain a JWT
status: "mfa_required".
Required cookie and method
Send thevos_mfa_challenge cookie returned by the preceding request. Preserve it with a cookie jar for command-line or server clients. Browser clients must send requests from the authentication host origin. The cookie is HttpOnly and must be treated as an opaque credential.
This endpoint does not require a Bearer JWT. The challenge response does not expose a session token or a challenge identifier to submit in the body.
method and code. Additional body fields are rejected. See the login procedure for a complete cURL example with cookie handling.
Successful verification
HTTP200 returns status: "authenticated", sessionToken, jwt, session, identity, and tokenizedSession. Both session objects report authenticator_assurance_level: "aal2". The response clears the pending challenge cookie. Send jwt as Authorization: Bearer <jwt> to protected REST API endpoints.
For password recovery, preserve all updated cookies and continue to the password-reset request after successful verification.
Error handling
Authorizations
Pending two-factor challenge cookie returned by login or session resumption. Use a cookie jar; do not construct or modify its value.
Body
Second-factor method and code.
- Option 1
- Option 2
One second-factor proof. Choose a method listed in the challenge response.
Response
Two-factor authentication complete; JWT issued.
Completed authentication. The JWT is issued only after all required authentication factors pass.
Indicates that authentication is complete and the JWT can be used.
authenticated Account session token. Keep it confidential. Use it for session resumption; use jwt for REST API authorization.
Bearer JWT for protected REST API requests. Send it as Authorization: Bearer .
Active authenticated session.
Account identity, or null if absent.
Authenticated session containing the JWT in tokenized.

