
# Déclencheurs d'authentification et de formulaire

Les deux déclencheurs qu'une **personne** démarre en utilisant votre application : s'authentifier, ou soumettre un formulaire. Tous deux sont le point d'entrée habituel des flux d'accueil, de notification et de synchronisation CRM.

## Déclencheur d'authentification

Se déclenche sur les événements du cycle de vie de l'authentification.

```yaml
automations:
  - name: welcome-new-user
    trigger:
      type: auth
      events: [signUp]
    actions:
      - name: welcome
        type: email
        operator: send
        props:
          to: '{{trigger.data.user.email}}'
          subject: Welcome aboard
          body: 'Thanks for joining, {{trigger.data.user.name}}.'
```

| Propriété | Description                                                                                                       |
| --------- | ----------------------------------------------------------------------------------------------------------------- |
| `events`  | Tableau de `signUp`, `signIn`, `signOut`, `passwordReset`, `emailVerified`. **Obligatoire**, au moins une entrée. |

| Événement       | Se déclenche quand                                          |
| --------------- | ----------------------------------------------------------- |
| `signUp`        | Un compte est créé, par n'importe quelle stratégie activée. |
| `signIn`        | Une session est émise.                                      |
| `signOut`       | Une session est terminée par l'utilisateur.                 |
| `passwordReset` | Une réinitialisation de mot de passe aboutit.               |
| `emailVerified` | Un lien de vérification est suivi.                          |

`events` est la **seule** propriété du déclencheur. Il n'existe aucun moyen de restreindre un déclencheur d'authentification à un rôle, un domaine ou un fournisseur OAuth dans le déclencheur lui-même — faites-le dans la première action avec une barrière [`filter/continue`](/fr/docs/automation-data-actions).

:::callout
**`signUp` et `emailVerified` ne sont pas interchangeables.** Sous `requireEmailVerification: true`, `signUp` se déclenche pour un compte qui ne peut pas encore se connecter. Si un message de bienvenue ne doit atteindre que des boîtes réelles et joignables, déclenchez sur `emailVerified`.
:::

## Déclencheur de formulaire

Se déclenche lorsqu'un formulaire de premier niveau est soumis.

```yaml
forms:
  - name: contact-request
    # fields …

automations:
  - name: route-contact-request
    trigger:
      type: form
      form: contact-request
    actions:
      - name: createLead
        type: record
        operator: create
        props:
          table: leads
          fields: { email: '{{trigger.data.email}}' }
```

| Propriété | Description                                                                             |
| --------- | --------------------------------------------------------------------------------------- |
| `form`    | Référence `forms[].name`. **Obligatoire.** Voir [Formulaires](/fr/docs/forms-overview). |

La référence est validée par recoupement avec vos `forms[]` déclarés au décodage de la configuration : un formulaire renommé casse donc `sovrium validate` au lieu de laisser une automatisation qui ne se déclenche jamais.

:::callout
**`form` est un nom de formulaire, pas un chemin de page.** C'était une rupture nette avec une conception antérieure où le déclencheur pointait vers l'URL d'affichage du formulaire. Un formulaire atteignable depuis plusieurs pages a désormais un seul déclencheur, et non un par route.
:::

Les valeurs soumises arrivent à `{{trigger.data.<champ>}}`, indexées par nom de champ de formulaire. Pour un traitement qui doit être terminé avant que l'auteur de la soumission ne voie une réponse, préférez la gestion `onSuccess` du formulaire lui-même — un déclencheur de formulaire exécute l'automatisation indépendamment de la réponse à la soumission.

## Pages connexes

- [Présentation des déclencheurs](/fr/docs/automation-triggers) — les neuf types en un coup d'œil.
- [Présentation des formulaires](/fr/docs/forms-overview) — déclarer le `forms[].name` référencé ici.
- [Soumissions](/fr/docs/form-submissions) — ce qu'il advient de l'enregistrement soumis.
- [Actions d'authentification](/fr/docs/automation-auth-actions) — agir sur les utilisateurs depuis une automatisation.
- [Données et état](/fr/docs/automation-data-actions) — la barrière `filter/continue` pour restreindre les événements.
