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

The AuthenticatorAttestationResponse interface of the Web Authentication API is returned by CredentialsContainer.create() when a PublicKeyCredential is passed, and provides a cryptographic root of trust for the new key pair that has been generated. This response should be sent to the relying party's server to complete the creation of the credential.

This interface inherites from AuthenticatorResponse.

Note: This interface is restricted to top-level contexts. Use from within an <iframe> element will not have any effect.


AuthenticatorAttestationResponse.clientDataJSON Secure contextRead only

Client data for the authentication, such as origin and challenge. The clientDataJSON property is inherited from the AuthenticatorResponse.

AuthenticatorAttestationResponse.attestationObject Secure contextRead only

An ArrayBuffer containing authenticator data and an attestation statement for a newly-created key pair.


AuthenticatorAttestationResponse.getTransports()Secure context

Returns an Array of strings describing which transport methods (e.g. usb, nfc) are believed to be supported with the authenticator. The array may be empty if the information is not available.


var publicKey = {
  challenge: /* from the server */,
  rp: {
    name: "Example CORP",
    id  : ""
  user: {
    id: new Uint8Array(16),
    name: "",
    displayName: "John Doe"
  pubKeyCredParams: [
      type: "public-key",
      alg: -7

navigator.credentials.create({ publicKey })
  .then(function (newCredentialInfo) {
    var response = newCredentialInfo.response;
    // Do something with the response
    // (sending it back to the relying party server maybe?)
  }).catch(function (err) {


Web Authentication: An API for accessing Public Key Credentials - Level 3 (Web Authentication)
# authenticatorattestationresponse

Browser compatibility

BCD tables only load in the browser

See also