PublicKeyCredential: id property

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 string, 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.


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


const 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: "Carina Anand",
  pubKeyCredParams: [
      type: "public-key",
      alg: -7,

  .create({ publicKey })
  .then((newCredentialInfo) => {
    const id =;
    // Do something with the id

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


No specification found

No specification data found for
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Browser compatibility

BCD tables only load in the browser

See also