# Suivi des événements

> Enregistrez ce que les gens font dans votre application et sur votre site sous forme d’événements d’espace de travail ou d’événements personnalisés, rattachez-les à des contacts et recevez-les dans vos webhooks.

Le suivi des événements vous permet d’enregistrer ce que les gens font dans votre propre produit : une commande, un changement de forfait, une inscription, la consultation d’un produit. Vous envoyez les événements depuis votre site web avec le script de suivi, ou depuis vos serveurs avec l’API. Emailit les stocke à côté des événements qu’il enregistre lui-même, les rattache à des contacts et peut les envoyer à vos webhooks.

Le suivi des événements est inclus dans les forfaits Pro, Business et Custom. Sur Pay as you go, l’envoi d’événements et la définition d’événements d’espace de travail renvoient `403` avec `"error": "plan_required"`, et les requêtes du script de suivi sont refusées.

## Trois portées d’événements

Chaque événement a un type, dont le préfixe indique la **portée** :

| Portée | Type | Qui le définit | Exemple |
| --- | --- | --- | --- |
| Système | `<name>` | Emailit. Ces événements enregistrent ce qui arrive à vos e-mails, à vos contacts et à vos autres ressources. Vous ne pouvez pas les envoyer. | `email.delivered` |
| Espace de travail | `w:<name>` | Votre espace de travail. Vous déclarez d’abord l’événement et le type de chaque propriété, et Emailit rejette les événements qui ne correspondent pas. | `w:customer.type` |
| Personnalisé | `c:<name>` | Personne. N’importe quel nom, avec n’importe quel objet JSON comme propriétés. | `c:order.completed` |

Utilisez un **événement d’espace de travail** lorsque plusieurs systèmes envoient le même événement et que vous voulez qu’ils restent cohérents, ou lorsque des personnes de votre équipe s’appuient sur ses champs. Utilisez un **événement personnalisé** lorsque vous voulez conserver votre propre structure de données, par exemple le format de commande de votre boutique, sans la déclarer au préalable. Vous pouvez commencer par un événement personnalisé et le définir plus tard comme événement d’espace de travail ; ce sont deux types distincts, donc `c:order.completed` et `w:order.completed` ne se mélangent pas.

## Noms d’événements

Les noms comptent de 1 à 100 lettres, chiffres, points, tirets ou traits de soulignement, et commencent par une lettre ou un chiffre : `customer.type`, `order-completed`, `cart_updated`. Les noms sont sensibles à la casse.

Les noms des propriétés des événements d’espace de travail suivent les mêmes règles, sans les points, car les filtres de webhook et les modèles utilisent les points pour accéder aux valeurs imbriquées.

## Moyens d’envoyer des événements

| Depuis | Comment | Identifiants |
| --- | --- | --- |
| Votre site web | Le [script de suivi](/fr/docs/events/tracking-script/) | Une clé de suivi publique, limitée à vos sites |
| Vos serveurs | [Envoyer un événement](/fr/docs/api-reference/events/send/) ou [Envoyer des événements par lot](/fr/docs/api-reference/events/batch/) | Une clé API **Full Access** ou **Events Only**. Voir [Envoyer des événements depuis votre backend](/fr/docs/events/send-events/). |
| Le tableau de bord | **Send event** dans **Email API → Events** | Votre session. Prévu pour tester un webhook ou une intégration. |

Il vaut mieux envoyer depuis vos serveurs les événements liés à l’argent, comme les commandes et les paiements. Les événements du navigateur peuvent être bloqués, et n’importe qui peut envoyer des événements avec une clé publique.

## Événements et contacts

Un événement peut désigner la personne qu’il concerne, par `email` ou par `contact_id`.

- Les contacts sont recherchés, jamais créés. Si aucun contact n’a cette adresse e-mail, l’adresse est tout de même enregistrée, et l’événement apparaît dans l’activité du contact dès que vous le créez.
- Un `contact_id` doit appartenir à un contact de l’espace de travail.
- Les événements sans personne peuvent porter un `anonymous_id`. Le script de suivi en ajoute un à chaque événement qu’il envoie.

Les événements rattachés à un contact apparaissent dans l’**Activity log** du contact, à côté des e-mails qu’il a reçus. Les événements d’espace de travail qui ont un titre y affichent ce titre.

## Où vont les événements

- **Le journal des événements.** **Email API → Events** liste tous les événements dans l’onglet **Log**. Filtrez par **Scope** pour ne voir que les événements système, d’espace de travail ou personnalisés. Avec l’API, utilisez le paramètre `scope` de [Lister les événements](/fr/docs/api-reference/events/list/).
- **Webhooks.** Abonnez un webhook à un type comme `c:order.completed`, ou à tous les événements d’espace de travail ou personnalisés avec `w:*` et `c:*`. Un webhook dont l’option **All events** est activée ne les reçoit pas, sauf si vous les choisissez aussi. Consultez [Types d’événements](/fr/docs/webhooks/event-types/#workspace-and-custom-events).
- **Contacts.** Consultez [Événements et contacts](#events-and-contacts).
- **Automatisations.** Un [déclencheur](/fr/docs/automations/triggers/#custom-event) **Custom event** démarre une exécution pour le contact de l’événement, éventuellement uniquement quand ses propriétés correspondent. Les mêmes événements peuvent mettre fin à des exécutions, remplir des objectifs et reprendre des étapes **Wait until**. Seuls les événements que vous envoyez depuis votre serveur avec l’[API des événements](/fr/docs/events/send-events/) ont cet effet : toute personne qui dispose de votre clé de suivi publique peut nommer un visiteur, donc les événements du [script de suivi](/fr/docs/events/tracking-script/#identify-visitors) sont enregistrés et parviennent aux webhooks, mais ne démarrent pas, ne terminent pas et ne font pas avancer les exécutions. Le déclencheur **Custom event** est inclus dans les forfaits Business et Custom, et les conditions de sortie, les objectifs et les attentes sur ces événements dans les forfaits Pro, Business et Custom. Consultez [Conditions de sortie et objectifs](/fr/docs/automations/exits-and-goals/).

## Conservation

Les événements font partie des **Logs** de votre espace de travail : ils sont donc conservés pendant la durée de conservation des logs de votre forfait, puis supprimés. Consultez [Conservation des données](/fr/docs/data-retention/). Conservez dans vos propres systèmes les commandes et les autres données dont vous avez besoin plus longtemps.

## Limites

| | Pay as you go | Pro | Business | Custom |
| --- | --- | --- | --- | --- |
| Types d’événements d’espace de travail et personnalisés | — | 100 | 1 000 | Illimité |
| Script de suivi pour site web | — | Inclus | Inclus | Inclus |

- Les **types d’événements** sont les types distincts d’événements d’espace de travail et personnalisés qu’un espace de travail envoie, comme `c:order.completed` et `w:customer.type`. Les types déjà envoyés continuent de fonctionner. Une fois que l’espace de travail a utilisé le nombre de types de son forfait, les événements d’un nouveau type sont rejetés avec `422`.
- Événements d’espace de travail : autant que le forfait compte de types d’événements, chacun avec 50 propriétés au maximum.
- Propriétés des événements personnalisés : 32 Ko de JSON et 8 niveaux d’imbrication au maximum.
- 100 événements au maximum par requête de lot.
- 25 clés de suivi par espace de travail.

Les autres limites figurent dans [Limites et quotas](/fr/docs/limits/#other-limits).

## Voir aussi

  - [Événements d’espace de travail](/fr/docs/events/workspace-events/): Définissez des événements et les types de leurs propriétés.
  - [Envoyer des événements depuis votre backend](/fr/docs/events/send-events/): Enregistrez des événements avec l’API.
  - [Script de suivi](/fr/docs/events/tracking-script/): Envoyez des événements depuis votre site web.
  - [API des événements](/fr/docs/api-reference/events/): Envoyer, lister et récupérer des événements.

---
Source: https://emailit.com/fr/docs/events/
