Ultimate

X_PASSKEY_CHALLENGE_EXPIRED

Means

a passkey ceremony named a challenge that is unknown, already used or past its ttl

Typical cause

the response was replayed, the options were issued by another ceremony, or the person took longer than the challenge ttl

Fix

x errors explain X_PASSKEY_CHALLENGE_EXPIRED --json, then fetch fresh options and run the ceremony once: await passkeys.loginOptions()

Listed under Auth and sessions

This page as markdown