W3cubDocs

/Web APIs

PublicKeyCredential: isUserVerifyingPlatformAuthenticatorAvailable() static method

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The isUserVerifyingPlatformAuthenticatorAvailable() static method of the PublicKeyCredential interface returns a Promise which resolves to true if a user-verifying platform authenticator is present.

A user-verifying platform authenticator is a kind of multi-factor authenticator that is part of the client device (it is generally not removable) and that involves an action from the user in order to identify them. Common user-verifying platform authenticators include:

  • Touch ID or Face ID (macOS and iOS)
  • Windows Hello (Windows)
  • Device unlock (fingerprint, face, PIN, etc.) on Android

Note: This method may only be used in top-level contexts and will not be available in an <iframe> for example.

Syntax

js

PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()

Parameters

None.

Return value

A Promise which resolves to a boolean value indicating whether or a not a user-verifying platform authenticator is available.

Note: In earlier versions of the specification, the boolean also conveyed the consent of the user to disclose such an authenticator existed.

Examples

js

PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()
  .then((available) => {
    if (available) {
      // We can proceed with the creation of a PublicKeyCredential
      // with this authenticator
    } else {
      // Use another kind of authenticator or a classical login/password
      // workflow
    }
  })
  .catch((err) => {
    // Something went wrong
    console.error(err);
  });

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
isUserVerifyingPlatformAuthenticatorAvailable_static 67 18
60Only supports USB U2F tokens.
No 54 13 No 70 92
60–92Only supports USB U2F tokens.
49 13 10.0

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredential/isUserVerifyingPlatformAuthenticatorAvailable_static