Firefox Tomorrow

web api static method

PublicKeyCredential: isUserVerifyingPlatformAuthenticatorAvailable() static method

View on MDN ↗

Secure context

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

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.

Exceptions

The returned Promise may be rejected with the following values:

Examples

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

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also