> ## 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` d’Universal Login.

L’écran `login-id` demande l’identifiant de l’utilisateur comme première étape d’un flux d’authentification où l’identifiant est saisi en premier. Selon votre locataire, cet identifiant peut être un courriel, un numéro de téléphone ou un nom d’utilisateur. Il prend aussi en charge la connexion avec une clé d’accès et les fournisseurs d’identité fédérés.

<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">
  ## Import
</div>

Chaque écran a son propre ensemble de hooks et de méthodes. Le SDK prend en charge les **imports partiels** et les **imports à la racine** pour chaque écran.

* Un import partiel vous permet d’inclure uniquement le code nécessaire à votre cas d’utilisation.
* Un import à la racine vous permet de charger tous les écrans à partir d’un seul bundle, ce qui est utile si vous souhaitez qu’un build unifié prenne en charge 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,
  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>

Hooks propres à 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Ce hook fournit les paramètres d’image de marque, comme le logo, les couleurs et les paramètres de 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/ClientMembers">ClientMembers</a></span>}>
  Ce hook fournit des configurations liées à l’application, 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Ce hook fournit des renseignements sur l’organisation de l’utilisateur si la connexion s’effectue dans le contexte d’une organisation. Renvoie `null` lorsqu’aucun contexte d’organisation 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/PromptMembers">PromptMembers</a></span>}>
  Ce hook contient des données sur l’invite en cours 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/ScreenMembersOnLoginId">ScreenMembersOnLoginId</a></span>}>
  Ce hook contient des détails propres à l’écran `login-id`, notamment 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/TenantMembers">TenantMembers</a></span>}>
  Ce hook contient des données liées au locataire, 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="/fr-CA/docs/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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Ce hook expose 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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/UserMembers">UserMembers</a></span>}>
  Ce hook fournit des renseignements sur l’utilisateur actif, notamment `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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/LoginIdMembers">LoginIdMembers</a>}>
  Ce hook renvoie toutes les méthodes et tout le contexte disponibles pour l’écran `login-id`.
</ParamField>

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

<ParamField body="federatedLogin" type="Promise<void>">
  Cette méthode lance l’authentification via un fournisseur d’identité fédéré, comme Google ou GitHub.

  ```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="options">
      [FederatedLoginPayloadOptions](/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/FederatedLoginPayloadOptions).
    </ParamField>

    <ParamField body="connection" type="string" required>
      Le nom de la connexion sociale à utiliser (p. ex. `google-oauth2`, `github`).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="login" type="Promise<void>">
  Cette méthode envoie 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](/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Types/interfaces/LoginOptions).
    </ParamField>

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

    <ParamField body="captcha?" type="string">
      Valeur du captcha requise lorsque la détection de robots est activée pour le locataire.
    </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 Passwordless à 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](/fr-CA/docs/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>
    );
  }
  ```

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

  <Expandable title="Paramètres">
    <ParamField body="options">
      [CustomOptions](/fr-CA/docs/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>

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

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

<ParamField body={<a href="/fr-CA/docs/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="/fr-CA/docs/libraries/acul/react-sdk/API-Reference/Hooks/useErrors">useErrors</a>} type="Hooks">
  Ce hook permet de lire et de gérer les erreurs du serveur, côté client et du développeur sur l’écran.
</ParamField>

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

<ParamField body={<a href="/fr-CA/docs/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 Passwordless fluide.
</ParamField>
