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

# LoginId

> Décrit tous les hooks et toutes les méthodes disponibles pour personnaliser l’écran `login-id` dans Universal Login.

L’écran `login-id` recueille l’identifiant de l’utilisateur comme première étape d’un flux d’authentification qui commence par la saisie de l’identifiant. Selon votre tenant, cet identifiant peut être une adresse courriel, un numéro de téléphone ou un nom d’utilisateur. Il prend aussi en charge la connexion par clé d’accès, les fournisseurs d’identité fédérés et Google One Tap.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1nvMFmxC5ODCW2q7cByHv8/657d87ba1c2eb11316e6b0ef93737c99/LoginIDACUL.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=02a1a0bc7dfacd594a37b6a48356de00" alt="" width="409" height="562" data-path="docs/images/cdy7uua7fh8z/1nvMFmxC5ODCW2q7cByHv8/657d87ba1c2eb11316e6b0ef93737c99/LoginIDACUL.png" />
</Frame>

<div id="import">
  ## Importation
</div>

Chaque écran a son propre ensemble de hooks et de méthodes. Le SDK prend en charge l’**importation partielle** et l’**importation racine** pour chaque écran.

* L’importation partielle vous permet d’inclure uniquement le code nécessaire à votre cas d’utilisation.
* L’importation racine vous permet de charger tous les écrans à partir d’un seul bundle, ce qui est utile si vous souhaitez une build unifiée capable de gérer tous les écrans possibles.

```jsx Import Example theme={null}
// importation racine
import { useLoginId } from '@auth0/auth0-acul-react';

// importation partielle
import {
  useLoginId,
  // Hooks de contexte
  useUser,
  useTenant,
  useBranding,
  useClient,
  useOrganization,
  usePrompt,
  useScreen,
  useTransaction,
  useUntrustedData,
  // Hooks communs
  useCurrentScreen,
  useAuth0Themes,
  useErrors,
  // Hooks utilitaires
  useLoginIdentifiers,
  useChangeLanguage,
  usePasskeyAutofill,
  // Méthodes
  login,
  federatedLogin,
  googleOneTap,
  passkeyLogin,
  pickCountryCode,
} from '@auth0/auth0-acul-react/login-id';

function LoginIdForm() {
  const { login } = useLoginId();
  return (
    <button onClick={() => login({ username: 'user@example.com' })}>
      Continue
    </button>
  );
}
```

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

Des hooks associés à l’écran qui fournissent un accès en lecture seule aux données de contexte d’Auth0 sur l’écran `login-id`. Importez-les depuis `@auth0/auth0-acul-react/login-id`.

<ParamField body="useBranding" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Ce hook fournit les configurations d’image de marque, comme le logo, les couleurs et les paramètres du thème affichés sur l’écran `login-id`.

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

<ParamField body="useClient" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/ClientMembers">ClientMembers</a></span>}>
  Ce hook fournit des configurations liées au client, comme `id`, `name` et `logoUrl`, pour l’écran `login-id`.

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

<ParamField body="useOrganization" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Ce hook fournit de l’information sur l’Organization de l’utilisateur si la connexion est limitée à une Organization. Retourne `null` lorsqu’aucun contexte d’Organization n’est présent.

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

<ParamField body="usePrompt" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/PromptMembers">PromptMembers</a></span>}>
  Ce hook contient des données sur le prompt actuel dans le flux d’authentification.

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

<ParamField body="useScreen" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/ScreenMembersOnLoginId">ScreenMembersOnLoginId</a></span>}>
  Ce hook contient des détails propres à l’écran `login-id`, y compris sa configuration et son contexte.

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

<ParamField body="useTenant" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/TenantMembers">TenantMembers</a></span>}>
  Ce hook contient des données liées au tenant, comme `id` et les métadonnées associées.

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

<ParamField body="useTransaction" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/TransactionMembersOnLoginId">TransactionMembersOnLoginId</a></span>}>
  Ce hook fournit des données propres à la transaction pour l’écran `login-id`, comme les connexions actives, les méthodes de connexion disponibles et l’état actuel du flux.

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

<ParamField body="useUntrustedData" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Ce hook gère les données non fiables transmises à l’écran, comme un identifiant prérempli à partir des paramètres d’URL.

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

<ParamField body="useUser" type={<span>() =&gt; <a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/UserMembers">UserMembers</a></span>}>
  Ce hook fournit des renseignements sur l’utilisateur actif, y compris `username`, `email` et les méthodes d’authentification disponibles.

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

<ParamField body="useLoginId" type={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/LoginIdMembers">LoginIdMembers</a>}>
  Ce hook renvoie toutes les méthodes et tout le contexte disponibles sur l’écran `login-id`.
</ParamField>

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

<ParamField body="googleOneTap" type="Promise<void>">
  Cette méthode authentifie l’utilisateur à l’aide d’un identifiant Google One Tap, ce qui permet une connexion en un clic sans redirection vers une page de connexion distincte.

  ```jsx Example theme={null}
  import { useLoginId } from '@auth0/auth0-acul-react/login-id';

  function GoogleOneTapHandler({ credential }) {
    const { googleOneTap } = useLoginId();
    return googleOneTap({ one_tap_credential: credential });
  }
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="one_tap_credential" type="string" required>
      Le jeton d’identifiant Google One Tap renvoyé par l’invite Google Identity Services.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="federatedLogin" type="Promise<void>">
  Cette méthode redirige l’utilisateur vers le [fournisseur d’identité sociale](/docs/fr-ca/authenticate/identity-providers/social-identity-providers) ou le [fournisseur d’identité d’entreprise](/docs/fr-ca/authenticate/identity-providers/enterprise-identity-providers) (IdP) pour l’authentification.

  ```jsx Example theme={null}
  import { useLoginId } from '@auth0/auth0-acul-react/login-id';

  function SocialButton() {
    const { federatedLogin } = useLoginId();
    return (
      <button onClick={() => federatedLogin({ connection: 'google-oauth2' })}>
        Sign in with Google
      </button>
    );
  }
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="connection" type="string" required>
      Le nom de la connexion du fournisseur d’identité sociale ou d’entreprise.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="login" type="Promise<void>">
  Cette méthode soumet l’identifiant de l’utilisateur pour passer à l’étape suivante du flux d’authentification.

  ```jsx Example theme={null}
  import { useLoginId } from '@auth0/auth0-acul-react/login-id';

  function LoginIdForm() {
    const { login } = useLoginId();
    return (
      <button onClick={() => login({ username: 'user@example.com' })}>
        Continue
      </button>
    );
  }
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="options">
      [LoginOptions](/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/LoginOptions).
    </ParamField>

    <ParamField body="username" type="string" required>
      L’identifiant (adresse courriel, numéro de téléphone ou nom d’utilisateur) à utiliser pour s’authentifier.
    </ParamField>

    <ParamField body="captcha?" type="string">
      Valeur CAPTCHA requise lorsque la détection de bots est activée sur le tenant.
    </ParamField>

    <ParamField body="[`key`: `string`]" type="&#x22;string&#x22; | &#x22;number&#x22; | &#x22;boolean&#x22; | &#x22;undefined&#x22;">
      Champs personnalisés supplémentaires préfixés par `ulp-` (par exemple, `'ulp-custom-field'`).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="passkeyLogin" type="Promise<void>">
  Cette méthode lance l’authentification sans mot de passe à l’aide d’une clé d’accès.

  ```jsx Example theme={null}
  import { useLoginId } from '@auth0/auth0-acul-react/login-id';

  function PasskeyButton() {
    const { passkeyLogin } = useLoginId();
    return (
      <button onClick={() => passkeyLogin()}>
        Sign in with Passkey
      </button>
    );
  }
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="options">
      [CustomOptions](/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Types/interfaces/CustomOptions).
    </ParamField>

    <ParamField body="[`key`: `string`]" type="&#x22;string&#x22; | &#x22;number&#x22; | &#x22;boolean&#x22; | &#x22;undefined&#x22;">
      Champs personnalisés supplémentaires préfixés par `ulp-` (par exemple, `'ulp-custom-field'`).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="pickCountryCode" type="Promise<void>">
  Cette méthode redirige vers le sélecteur d’indicatif de pays pour les flux de connexion par téléphone.

  ```jsx Example theme={null}
  import { useLoginId } from '@auth0/auth0-acul-react/login-id';

  function PhoneLogin() {
    const { pickCountryCode } = useLoginId();
    return (
      <button onClick={() => pickCountryCode()}>
        Select Country Code
      </button>
    );
  }
  ```
</ParamField>

<div id="commonutility-hooks">
  ## Hooks utilitaires communs
</div>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/useAuth0Themes">useAuth0Themes</a>} type="Hooks">
  Ce hook récupère les options du thème actuel avec une configuration à plat provenant du contexte d’image de marque.
</ParamField>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/useChangeLanguage">useChangeLanguage</a>} type="Hooks">
  Ce hook renvoie une fonction permettant de changer la langue d’affichage sur l’écran ACUL actuel.
</ParamField>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/useCurrentScreen">useCurrentScreen</a>} type="Hooks">
  Ce hook récupère le contexte et l’état de l’écran actuel.
</ParamField>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/useErrors">useErrors</a>} type="Hooks">
  Ce hook lit et gère les erreurs serveur, client et développeur à l’écran.
</ParamField>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/useLoginIdentifiers">useLoginIdentifiers</a>} type="Hooks">
  Ce hook renvoie une liste des types d’identifiant actifs (`email`, `phone`, `username`) dans le flux actuel.
</ParamField>

<ParamField body={<a href="/docs/fr-ca/libraries/acul/react-sdk/API-Reference/Hooks/usePasskeyAutofill">usePasskeyAutofill</a>} type="Hooks">
  Ce hook active le remplissage automatique par clé d’accès dans un champ de saisie pour une expérience de connexion sans mot de passe fluide.
</ParamField>
