Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

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

The IdentityCredential interface of the Federated Credential Management API (FedCM) represents a user identity credential arising from a successful federated sign-in.

A successful navigator.credentials.get() call that includes an identity option fulfills with an IdentityCredential instance.

Credential IdentityCredential

Instance properties

Inherits properties from its ancestor, Credential.

IdentityCredential.isAutoSelected Read only Experimental Non-standard

A boolean value that indicates whether the federated sign-in was carried out using auto-reauthentication (i.e. without user mediation) or not.

IdentityCredential.token Experimental

Returns the token used to validate the associated sign-in.


Relying parties (RPs) can call navigator.credentials.get() with the identity option to make a request for users to sign in to the RP via an identity provider (IdP), using identity federation. A typical request would look like this:

async function signIn() {
  const identityCredential = await navigator.credentials.get({
    identity: {
      providers: [
          configURL: "https://accounts.idp.example/config.json",
          clientId: "********",
          nonce: "******",

If successful, this call will fulfill with an IdentityCredential instance. From this, you could return the IdentityCredential.token value, for example:


Check out Federated Credential Management API (FedCM) for more details on how this works. This call will start off the sign-in flow described in FedCM sign-in flow.


Federated Credential Management API
# browser-api-identity-credential-interface

Browser compatibility

BCD tables only load in the browser

See also