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

# Signup

> Décrit toutes les propriétés et méthodes disponibles pour personnaliser l’écran `signup` de Universal Login.

La classe Signup implémente la fonctionnalité de l’écran `signup`. Cet écran collecte l’identifiant et le mot de passe de l’utilisateur. Selon votre locataire, cet identifiant peut être un courriel, un numéro de téléphone ou un nom d’utilisateur.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5IrmDuvj5xma8DmkIMJ7ol/42363cde670f86561666c9e930f76883/Screenshot_2025-02-05_at_15.43.23.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=cdad5eb11eeaf2a973012a2ee746743b" alt="Image de l’écran Signup ACUL" width="374" height="736" data-path="docs/images/cdy7uua7fh8z/5IrmDuvj5xma8DmkIMJ7ol/42363cde670f86561666c9e930f76883/Screenshot_2025-02-05_at_15.43.23.png" />
</Frame>

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

Créez une instance du gestionnaire de l’écran Signup :

```typescript Example theme={null}
import Signup from '@auth0/auth0-acul-js/signup';
const signupManager = new Signup();
signupManager.signup({
  email: 'test@example.com',
  password: 'P@$wOrd123!',
});
```

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

<ParamField body="branding" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Fournit des configurations liées à l’image de marque, comme le thème et les paramètres associés.
</ParamField>

<ParamField body="client" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>}>
  Fournit des configurations liées à l’application, comme `id`, `name` et `logoUrl`, pour l’écran `signup`.
</ParamField>

<ParamField body="organization" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Fournit des renseignements sur l’Organisation de l’utilisateur, comme `id` et `name`.
</ParamField>

<ParamField body="prompt" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>}>
  Contient des données sur l’invite actuelle dans le flux d’authentification.
</ParamField>

<ParamField body="screen" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnSignup">ScreenMembersOnSignup</a></span>}>
  Contient des détails propres à l’écran `signup`, y compris sa configuration et son contexte.
</ParamField>

<ParamField body="tenant" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>}>
  Contient des données liées au locataire, comme `id` et les métadonnées associées.
</ParamField>

<ParamField body="transaction" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembersOnSignup">TransactionMembersOnSignup</a></span>}>
  Fournit des données propres à la transaction, comme les identifiants actifs et les états du flux.
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Gère les données non fiables transmises au SDK, comme les entrées utilisateur pendant l’authentification.
</ParamField>

<ParamField body="user" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>}>
  Détails de l’utilisateur actif, y compris `username`, `email` et `roles`.
</ParamField>

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

<ParamField body="changeLanguage" type="Promise<void>">
  Cette méthode change la langue d’affichage de la page Universal Login.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.changeLanguage({
    language: 'fr',
  });
  ```

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

  <Expandable title="Paramètres">
    <ParamField body="options">
      [LanguageChangeOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/LanguageChangeOptions).
    </ParamField>

    <ParamField body="language" type="string" required>
      Le code de langue souhaité (par exemple, `'en'`, `'fr'`, `'es'`).
    </ParamField>

    <ParamField body="persist?" type="&#x22;session&#x22;">
      Lorsqu’elle est définie sur `'session'`, la langue sélectionnée est conservée pendant toute la session.
    </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="federatedSignup" type="Promise<void>">
  Cette méthode gère la soumission du formulaire Signup social. Elle est semblable à la méthode [signup](#signup), mais elle est utilisée pour les Signups sociaux.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.federatedSignup({
    connection: 'google-oauth2',
  });
  ```

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

  <Expandable title="Paramètres">
    <ParamField body="options">
      [FederatedSignupPayloadOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/FederatedSignupPayloadOptions).
    </ParamField>

    <ParamField body="connection" type="string" required>
      Le nom de la connexion sociale à utiliser.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  Cette méthode récupère le tableau des erreurs de transaction à partir du contexte, ou un tableau vide s’il n’y en a aucune. Elle renvoie un tableau d’objets d’erreur du contexte de transaction.
</ParamField>

<ParamField body="getSignupIdentifiers" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/Identifier">Identifier</a>[] | null</span>}>
  Cette méthode renvoie la liste des identifiants activés pour le formulaire Signup, en indiquant pour chacun s’il est obligatoire ou facultatif selon la configuration de la transaction. Elle renvoie un tableau d’objets identifiant (par exemple, email, phone, username).

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const identifiers = signupManager.getSignupIdentifiers();
  // [{ type: 'email', required: true }, { type: 'username', required: false }]
  ```
</ParamField>

<ParamField body="pickCountryCode" type="Promise<void>">
  Cette méthode redirige l’utilisateur vers la liste de sélection du code de pays, où il peut mettre à jour l’indicatif de pays de son numéro de téléphone.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.pickCountryCode();
  ```
</ParamField>

<ParamField body="signup" type="Promise<void>">
  Cette méthode gère la soumission du formulaire Signup.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.signup({
    email: 'test@example.com',
    password: 'P@$wOrd123!',
  });
  ```

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

  <Expandable title="Paramètres">
    <ParamField body="options">
      [SignupPayloadOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/SignupPayloadOptions).
    </ParamField>

    <ParamField body="email?" type="string">
      Le courriel de l’utilisateur.
    </ParamField>

    <ParamField body="username?" type="string">
      L’identifiant de l’utilisateur.
    </ParamField>

    <ParamField body="phoneNumber?" type="string">
      Le numéro de téléphone de l’utilisateur.
    </ParamField>

    <ParamField body="password?" type="string">
      Le mot de passe de l’utilisateur.
    </ParamField>

    <ParamField body="captcha?" type="string">
      Le code captcha ou la réponse du fournisseur de CAPTCHA. Cette propriété est requise si la [détection des bots](/fr-CA/docs/secure/attack-protection/bot-detection) est activée dans votre locataire Auth0.
    </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="validatePassword" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/PasswordValidationResult">PasswordValidationResult</a></span>}>
  Cette méthode retourne un objet de type [PasswordValidationResult](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/PasswordValidationResult) indiquant si le mot de passe est valide et, sinon, pourquoi.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const result = signupManager.validatePassword('P@$wOrd123!');
  ```

  **Paramètres de méthode**

  <Expandable title="Paramètres">
    <ParamField body="password" type="string" required>
      Le mot de passe de l’utilisateur.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="validateUsername" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/UsernameValidationResult">UsernameValidationResult</a></span>}>
  Cette méthode valide un nom d’utilisateur selon la politique de nom d’utilisateur actuellement définie dans le contexte de la transaction. Elle retourne un objet indiquant si le nom d’utilisateur est valide et, sinon, pourquoi.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const result = signupManager.validateUsername('myusername');
  // result => { valid: true, errors: [] }
  ```

  **Paramètres de méthode**

  <Expandable title="Paramètres">
    <ParamField body="username" type="string" required>
      La chaîne de caractères du nom d’utilisateur à valider.
    </ParamField>
  </Expandable>
</ParamField>
