> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# MfaWebAuthnRoamingEnrollment

Classe qui implémente les fonctionnalités de l'écran mfa-webauthn-roaming-enrollment.
Cet écran est affiché lorsqu'un utilisateur doit inscrire un authentificateur WebAuthn itinérant (comme une clé de sécurité).

```ts Example theme={null}
import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';

const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
// En supposant que vous avez obtenu la réponse d'identification WebAuthn (p. ex., de navigator.credentials.create)
const credentialResponse = { /* ... serialized credential ... *&#x2F; };
await webauthnEnrollment.enroll({ response: JSON.stringify(credentialResponse) });
```

<div id="constructors">
  ## Constructeurs
</div>

<ParamField body="MfaWebAuthnRoamingEnrollment" type="Constructor">
  Crée une instance du gestionnaire d’écran pour MfaWebAuthnRoamingEnrollment.
</ParamField>

<div id="properties">
  ## Propriétés
</div>

<ParamField body="branding" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>} />

<ParamField body="client" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>} />

<ParamField body="organization" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>} />

<ParamField body="prompt" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>} />

<ParamField body="screen" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaWebAuthnRoamingEnrollment">ScreenMembersOnMfaWebAuthnRoamingEnrollment</a></span>} />

<ParamField body="tenant" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>} />

<ParamField body="transaction" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>} />

<ParamField body="untrustedData" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>} />

<ParamField body="user" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>} />

<ParamField body="screenIdentifier" type="string" />

<div id="methods">
  ## Méthodes
</div>

<ParamField body="enroll" type="Promise<void>">
  Lance la création des identifiants WebAuthn et en soumet le résultat au serveur.
  Cela correspond à l’interaction de l’utilisateur avec l’invite FIDO Security Keys.

  ```typescript Example theme={null}
  import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';

  const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
  // En supposant que vous avez obtenu la réponse d’identifiant WebAuthn (p. ex., à partir de navigator.credentials.create)
  const credentialResponse = { /* ... serialized credential ... *&#x2F; };
  await webauthnEnrollment.enroll({ response: JSON.stringify(credentialResponse) });
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/CustomOptions">CustomOptions</a></span>}>
      Options personnalisées facultatives à inclure avec la requête.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  Récupère le tableau des erreurs de transaction à partir du contexte, ou un tableau vide s’il n’en existe aucune.

  Un tableau d’objets d’erreur provenant du contexte de transaction.
</ParamField>

<ParamField body="showError" type="Promise<void>">
  Soumet au serveur les détails d’une erreur WebAuthn du navigateur.
  Cette méthode est utilisée lorsque l’API WebAuthn du navigateur rencontre une erreur.

  ```typescript Example theme={null}
  import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';

  const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
  await webauthnEnrollment.showError({
    error: {
      name: 'NotAllowedError',
      message: 'The operation either timed out or was not allowed.',
    },
  });
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ShowErrorOptions">ShowErrorOptions</a></span>}>
      Options contenant les détails de l’erreur.

      **Propriétés**

      <ParamField body="error" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/WebAuthnErrorDetails">WebAuthnErrorDetails</a></span>}>
        Détails de l’erreur WebAuthn.
      </ParamField>
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="tryAnotherMethod" type="Promise<void>">
  Permet à l’utilisateur d’essayer une autre méthode d’AMF (MFA).
  Cela correspond au bouton « Try Another Method ».

  ```typescript Example theme={null}
  import MfaWebAuthnRoamingEnrollment from '@auth0/auth0-acul-js/mfa-webauthn-roaming-enrollment';

  const webauthnEnrollment = new MfaWebAuthnRoamingEnrollment();
  await webauthnEnrollment.tryAnotherMethod();
  ```

  <Expandable title="Paramètres">
    <ParamField body="payload?" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/MfaWebAuthnRoamingEnrollmentTryAnotherMethodOptions">MfaWebAuthnRoamingEnrollmentTryAnotherMethodOptions</a></span>}>
      Options personnalisées facultatives à inclure avec la requête.
    </ParamField>
  </Expandable>
</ParamField>
