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

# MfaWebauthnRoamingEnrollment

> Describe todos los hooks y métodos disponibles para personalizar la pantalla `mfa-webauthn-roaming-enrollment` de Universal Login.

La pantalla `mfa-webauthn-roaming-enrollment` solicita al usuario que inscriba una clave de seguridad de itinerancia, como una YubiKey u otro autenticador de hardware FIDO2, como factor MFA.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/MQijxVxM0qBMv291/docs/images/ja-jp/cdy7uua7fh8z/71Il3P3UP1Z2mpY9LdjHUQ/31e9f3e51bec04cdd0f4e78b744f6472/Screenshot_2025-05-28_at_12.19.06.png?fit=max&auto=format&n=MQijxVxM0qBMv291&q=85&s=9bff1d6c1008300d216074c60c09649b" alt="MfaWebAuthnRoamingEnrollment" width="363" height="488" data-path="docs/images/ja-jp/cdy7uua7fh8z/71Il3P3UP1Z2mpY9LdjHUQ/31e9f3e51bec04cdd0f4e78b744f6472/Screenshot_2025-05-28_at_12.19.06.png" />
</Frame>

<div id="import">
  ## Importación
</div>

Cada pantalla tiene su propio conjunto de hooks y métodos. El SDK admite **importación parcial** e **importación desde la raíz** para cada pantalla.

* Usar la importación parcial le permite incluir solo el código que necesita para su caso de uso específico.
* Usar la importación desde la raíz le permite cargar todas las pantallas desde un único bundle, lo que resulta útil cuando desea una compilación unificada para gestionar todas las pantallas posibles.

```jsx Import Example theme={null}
// importación desde la raíz
import { useMfaWebAuthnRoamingEnrollment } from '@auth0/auth0-acul-react';

// importación parcial
import {
  useMfaWebAuthnRoamingEnrollment,
  // Hooks de contexto
  useUser,
  useTenant,
  useBranding,
  useClient,
  useOrganization,
  usePrompt,
  useScreen,
  useTransaction,
  useUntrustedData,
  // Hooks comunes
  useCurrentScreen,
  useAuth0Themes,
  useErrors,
  // Hooks de utilidad
  useChangeLanguage,
  // Métodos
  enroll,
  showError,
  tryAnotherMethod,
} from "@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment";

function MfaWebAuthnRoamingEnrollmentScreen() {
  const { enroll } = useMfaWebAuthnRoamingEnrollment();
  return (
    <button onClick={() => enroll()}>
      Inscribir clave de seguridad
    </button>
  );
}
```

<div id="context-hooks">
  ## Hooks de contexto
</div>

Hooks del ámbito de la pantalla que proporcionan acceso de solo lectura a los datos de contexto de Auth0 en la pantalla `mfa-webauthn-roaming-enrollment`. Impórtelos desde `@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment`.

<ParamField body="useBranding" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Este hook proporciona configuración de marca, como el logotipo, los colores y la configuración del tema que se muestran en la pantalla `mfa-webauthn-roaming-enrollment`.

  ```jsx Example theme={null}
  import { useBranding } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function CustomTheme() {
    const branding = useBranding();
  }
  ```
</ParamField>

<ParamField body="useClient" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/ClientMembers">ClientMembers</a></span>}>
  Este hook proporciona configuraciones relacionadas con el cliente, como `id`, `name` y `logoUrl`, para la pantalla `mfa-webauthn-roaming-enrollment`.

  ```jsx Example theme={null}
  import { useClient } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function AppInfo() {
    const client = useClient();
  }
  ```
</ParamField>

<ParamField body="useOrganization" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Este hook proporciona información sobre la Organización del usuario si el flujo de MFA está asociado a una Organización. Devuelve `null` cuando no hay contexto de Organización.

  ```jsx Example theme={null}
  import { useOrganization } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function OrgSelector() {
    const organization = useOrganization();
    if (!organization) {
      return <p>No organization context</p>;
    }
  }
  ```
</ParamField>

<ParamField body="usePrompt" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/PromptMembers">PromptMembers</a></span>}>
  Este hook contiene datos sobre la pantalla actual del flujo de autenticación.

  ```jsx Example theme={null}
  import { usePrompt } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function FlowInfo() {
    const prompt = usePrompt();
  }
  ```
</ParamField>

<ParamField body="useScreen" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/ScreenMembersOnMfaWebAuthnRoamingEnrollment">ScreenMembersOnMfaWebAuthnRoamingEnrollment</a></span>}>
  Este hook contiene detalles específicos de la pantalla `mfa-webauthn-roaming-enrollment`, incluida su configuración y contexto.

  ```jsx Example theme={null}
  import { useScreen } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function ScreenDebug() {
    const screen = useScreen();
  }
  ```
</ParamField>

<ParamField body="useTenant" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/TenantMembers">TenantMembers</a></span>}>
  Este hook contiene datos relacionados con el inquilino, como `id` y los metadatos asociados.

  ```jsx Example theme={null}
  import { useTenant } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function TenantInfo() {
    const tenant = useTenant();
  }
  ```
</ParamField>

<ParamField body="useTransaction" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/TransactionMembers">TransactionMembers</a></span>}>
  Este hook proporciona datos específicos de la transacción para la pantalla `mfa-webauthn-roaming-enrollment`, como el estado actual del flujo de MFA.

  ```jsx Example theme={null}
  import { useTransaction } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function TransactionInfo() {
    const transaction = useTransaction();
  }
  ```
</ParamField>

<ParamField body="useUntrustedData" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Este hook gestiona los datos no confiables que se pasan a la pantalla, como los valores precompletados a partir de parámetros de URL.

  ```jsx Example theme={null}
  import { useUntrustedData } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function PrefilledForm() {
    const untrustedData = useUntrustedData();
  }
  ```
</ParamField>

<ParamField body="useUser" type={<span>() =&gt; <a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/UserMembers">UserMembers</a></span>}>
  Este hook proporciona información del usuario activo, incluidos `username`, `email` y los métodos de autenticación disponibles.

  ```jsx Example theme={null}
  import { useUser } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';
  function UserProfile() {
    const user = useUser();
  }
  ```
</ParamField>

<ParamField body="useMfaWebAuthnRoamingEnrollment" type={<a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/MfaWebAuthnRoamingEnrollmentMembers">MfaWebAuthnRoamingEnrollmentMembers</a>}>
  Este hook devuelve todos los métodos y el contexto disponibles para la pantalla `mfa-webauthn-roaming-enrollment`.
</ParamField>

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

<ParamField body="enroll" type="Promise<void>">
  Este método inicia el proceso de inscripción de la clave de seguridad de itinerancia.

  ```jsx Example theme={null}
  import { useMfaWebAuthnRoamingEnrollment } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';

  function EnrollButton() {
    const { enroll } = useMfaWebAuthnRoamingEnrollment();
    return (
      <button onClick={() => enroll()}>
        Inscribir clave de seguridad
      </button>
    );
  }
  ```
</ParamField>

<ParamField body="showError" type="Promise<void>">
  Este método notifica un error de WebAuthn detectado durante la inscripción de la clave de seguridad.

  ```jsx Example theme={null}
  import { useMfaWebAuthnRoamingEnrollment } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';

  function HandleWebAuthnError({ error }) {
    const { showError } = useMfaWebAuthnRoamingEnrollment();
    return (
      <button onClick={() => showError({ error })}>
        Informar del error
      </button>
    );
  }
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [ShowErrorOptions](/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/ShowErrorOptions).
    </ParamField>

    <ParamField body="error" type={<span><a href="/es/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/WebAuthnErrorDetails">WebAuthnErrorDetails</a></span>} required>
      El objeto de error de la API de WebAuthn (`navigator.credentials.create()`) que se notificará.

      <ParamField body="name" type="string" required>
        El nombre del error (por ejemplo, `'NotAllowedError'`).
      </ParamField>

      <ParamField body="message" type="string" required>
        El mensaje de error que describe lo que salió mal.
      </ParamField>
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="tryAnotherMethod" type="Promise<void>">
  Este método lleva a la pantalla de selección del método MFA para que el usuario pueda elegir un factor de autenticación diferente.

  ```jsx Example theme={null}
  import { useMfaWebAuthnRoamingEnrollment } from '@auth0/auth0-acul-react/mfa-webauthn-roaming-enrollment';

  function TryAnotherMethodButton() {
    const { tryAnotherMethod } = useMfaWebAuthnRoamingEnrollment();
    return (
      <button onClick={() => tryAnotherMethod()}>
        Probar otro método
      </button>
    );
  }
  ```
</ParamField>

<div id="commonutility-hooks">
  ## Hooks comunes y de utilidad
</div>

<ParamField body={<a href="/es/docs/libraries/acul/react-sdk/API-Reference/Hooks/useAuth0Themes">useAuth0Themes</a>} type="Hooks">
  Este hook obtiene las opciones del tema actual con la configuración consolidada del contexto de marca.
</ParamField>

<ParamField body={<a href="/es/docs/libraries/acul/react-sdk/API-Reference/Hooks/useChangeLanguage">useChangeLanguage</a>} type="Hooks">
  Este hook devuelve una función para cambiar el idioma que se muestra en la pantalla actual de ACUL.
</ParamField>

<ParamField body={<a href="/es/docs/libraries/acul/react-sdk/API-Reference/Hooks/useCurrentScreen">useCurrentScreen</a>} type="Hooks">
  Este hook obtiene el contexto y el estado de la pantalla actual.
</ParamField>

<ParamField body={<a href="/es/docs/libraries/acul/react-sdk/API-Reference/Hooks/useErrors">useErrors</a>} type="Hooks">
  Este hook lee y administra los errores del servidor, del cliente y del desarrollador en la pantalla.
</ParamField>
