v133 · miscellaneous

Web Authentication API: PublicKeyCredential’s getClientCapabilities() method

getClientCapabilities() method allows to determine which WebAuthn features are supported by the user's client. The method returns a list of supported capabilities, allowing developers to tailor authentication experiences and workflows based on the client's specific functionality.

concepts

  1. WebAuthn getClientCapabilities

    PublicKeyCredential.getClientCapabilities() — single call that returns which WebAuthn features this browser/platform supports.

  2. Capability matrix

    Live getClientCapabilities() call surfaces what this browser supports (conditional UI, hybrid transport, related origins, platform authenticator…), with UI suggestions for each.

  3. Conditional UI feature gate

    Decide between conditional-mediation, modal passkey, and password-fallback sign-in — this browser's selected branch is highlighted from the live capability read.

  4. Auth flow builder

    Calls the real getClientCapabilities() API and builds a recommended authentication UX flow from the result. Toggle individual capabilities to see how the recommended flow adapts.

why it shipped

Different clients and authenticators offer varying levels of support for WebAuthn features. This disparity can lead to a fragmented user experience, where some users might encounter errors or be unable to utilize certain authentication options. Providing a way for developers to determine client capabilities enables them to create more robust authentication flows that adapt to these variations.

references