> ## 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.

# MfaPushEnrollmentQr

Classe qui implémente la fonctionnalité de l'écran mfa-push-enrollment-qr

```ts Example theme={null}
import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
await mfaPushEnrollmentQr.pickAuthenticator();
```

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

<ParamField body="MfaPushEnrollmentQr" type="Constructor" />

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

  Tableau d’objets Error provenant du contexte de la transaction.
</ParamField>

<ParamField body="pickAuthenticator" type="Promise<void>">
  Navigue vers l’écran de sélection de l’authentificateur.

  ```typescript Example theme={null}
  import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

  const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
  await mfaPushEnrollmentQr.pickAuthenticator();
  ```

  <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="pollingManager" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl">MfaPushPollingControl</a></span>}>
  **`Utility Feature`**

  Démarre et gère le sondage pour un défi de poussée AMF (MFA push).

  Crée une session de sondage qui interroge de façon répétée le point de terminaison du défi de poussée AMF
  à l’intervalle spécifié jusqu’à ce que le défi soit approuvé ou qu’une erreur se produise.
  Lorsque la condition d’approbation est remplie, le callback
  [onCompleted](/docs/fr-CA/libraries/acul/js-sdk/Screens/type-aliases/MfaPollingOptions#oncompleted) fourni est invoqué et
  le sondage s’arrête automatiquement.

  Utilisez le [MfaPushPollingControl](/docs/fr-CA/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) retourné pour démarrer, arrêter ou vérifier
  l’état du processus de sondage à tout moment.

  Une instance [MfaPushPollingControl](/docs/fr-CA/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) qui expose :

  * `startPolling()` — Démarre ou reprend le sondage.
  * `stopPolling()` — Annule immédiatement le sondage.
  * `isRunning()` — Indique si le sondage est actuellement actif.

  ```ts Example theme={null}
  // Démarrer le sondage toutes les 5 secondes jusqu’à ce que le défi push soit approuvé
  const control = mfaPushChallengePush.pollingManager({
    intervalMs: 5000,
    onCompleted: () => mfaPushChallengePush.continue(),
    onError: (error) => console.error('Polling error:', error),
  });

  // Plus tard, annuler le sondage au besoin
  control.stopPolling();
  ```

  #### Remarques

  * Les réponses HTTP 429 (limitation de débit) sont gérées en interne : le sondage attend automatiquement
    que la limite de débit soit réinitialisée avant de réessayer.
  * Vous pouvez appeler `startPolling()` plusieurs fois en toute sécurité; cela n’a aucun effet si le sondage est déjà en cours d’exécution.

  <Expandable title="Paramètres">
    <ParamField body="options" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/type-aliases/MfaPollingOptions">MfaPollingOptions</a></span>}>
      **Propriétés**

      <ParamField body="MfaPollingOptions" type="object" />

      <ParamField body="intervalMs?" type="number" />

      <ParamField body="onCompleted()?" type="() => void" />

      <ParamField body="onError()?" type="(error) => void" />

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

      <ParamField body="field?" type="string" />

      <ParamField body="message" type="string" />
    </ParamField>
  </Expandable>
</ParamField>
