Sign in with a passkey
Verifies the passkey assertion and starts a session. A passkey counts as both factors, so 2FA is not asked again.
Needs no sign-in. Not available to MCP clients or the assistant.
application/json- body
ticket*string1 <= length <= 200response*WebAuthn options or response JSON.
Success.
application/json- response
status*string|stringviewer*challenge?curl -X POST 'https://example.com/api/v1/auth.passkeyLoginFinish' \ -H 'Content-Type: application/json' \ -d '{ "ticket": "string", "response": {}}'{ "status": "signedIn", "viewer": { "id": "string", "email": "[email protected]", "name": "string", "role": "owner" }, "challenge": { "ticket": "string", "methods": [ "totp" ], "expiresAt": "2019-08-24T14:15:22Z" }}Start signing in with a passkey POST
Returns WebAuthn request options for navigator.credentials.get (discoverable credentials, no email needed) and a ticket. Needs no sign-in. Not available to MCP clients or the assistant.
Start adding a passkey POST
Returns WebAuthn creation options for navigator.credentials.create and a ticket for auth.passkeyRegisterFinish. Needs a sign-in or auth.reauth from the last 15 minutes (FORBIDDEN details.reason "reauth" otherwise). Any signed-in caller. Not available to MCP clients or the assistant.