Secure context

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

The id read-only property of the PublicKeyCredential interface is a DOMString, inherited from Credential, which represents the identifier of the current PublicKeyCredential instance.

This property is a base64url encoded version of PublicKeyCredential.rawId.

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


id =


A DOMString being the base64url encoded version of PublicKeyCredential.rawId.


var publicKey = {
  challenge: new Uint8Array(26) /* this actually is given from the server */,
  rp: {
    name: "Example CORP",
    id  : ""
  user: {
    id: new Uint8Array(26), /* To be changed for each user */
    name: "",
    displayName: "John Doe",
  pubKeyCredParams: [
      type: "public-key",
      alg: -7

navigator.credentials.create({ publicKey })
  .then(function (newCredentialInfo) {
    var id =;
    // Do something with the id

    // send attestation response and client extensions
    // to the server to proceed with the registration
    // of the credential
  }).catch(function (err) {


Specification Status Comment
Web Authentication: An API for accessing Public Key Credentials Level 1
The definition of 'id' in that specification.
Recommendation Specified in the context of PublicKeyCredential. Overrides the getter defined in Credential.
Credential Management Level 1
The definition of 'id' in that specification.
Working Draft Initial definition.

Browser compatibility

No compatibility data found for
Check for problems with this page or contribute missing data to mdn/browser-compat-data.

See also