
# Suivre les événements avec keenauth events tail

`keenauth events tail` lit l'API d'événements de votre environnement et affiche chaque événement client au fur et à mesure de son apparition, par exemple `user.created`. Les événements sont les mêmes que les envois des webhooks : même enveloppe et même `id`. Utilisez cette commande pour observer ce que recevra votre intégration, ou pour vérifier qu'une action a bien produit l'événement attendu. Appuyez sur Ctrl-C pour arrêter ; la commande se termine alors avec le code 0.

La commande nécessite l'autorisation `events:read`. Elle fonctionne avec une clé d'API et avec une session ouverte par `keenauth login`.

## Utilisation

```sh
keenauth events tail --types user.created,user.updated
```

| Option | Description |
|---|---|
| `--types` | Uniquement ces types d'événements, séparés par des virgules ou répétés. |
| `--org` | Uniquement les événements de cette organisation (`org_…`). |
| `--payload` | `thin` (par défaut) ou `full`. `full` inclut la ressource et nécessite également l'autorisation `users:read`. |
| `--after` | Point de départ : `latest` (par défaut) n'affiche que les événements qui surviennent à partir de maintenant ; un curseur affiché par une exécution précédente reprend à partir de ce point. |
| `--interval` | Délai entre deux vérifications lorsqu'il n'y a pas de nouvel événement, de `1s` à `60s`. Par défaut : `5s`. |
| `--output`, `-o` | `table`, `json` ou `yaml`. Sans cette option, la CLI affiche un tableau dans un terminal et du JSON sinon. |

Un filtre, un curseur ou un intervalle invalide arrête la commande avec le code 2 avant l'envoi de toute requête.

## Sortie

- `table` : une ligne par événement, avec l'heure, le type, le numéro de séquence et l'identifiant de l'événement.
- `json` : chaque événement exactement tel que le serveur l'a envoyé, un objet JSON par ligne (JSON délimité par des retours à la ligne). C'est la valeur par défaut lorsque la sortie standard n'est pas un terminal.
- `yaml` : un document YAML par événement, commençant chacun par `---`.

Les événements sont affichés dans l'ordre des événements de l'environnement (`seq`). Lorsque vous arrêtez la commande, elle affiche sur l'erreur standard le curseur à partir duquel reprendre :

```text
to continue from here: --after <cursor>
```

Exécutez plus tard `keenauth events tail --after <cursor>` pour afficher les événements manqués entre-temps. Les événements sont conservés pendant 30 jours.

## Fonctionnement du suivi

La commande demande les événements postérieurs à son curseur, les affiche, puis déplace le curseur vers celui que renvoie la réponse. Lorsque la réponse indique que d'autres événements sont en attente, elle redemande immédiatement ; sinon, elle attend `--interval` avant de redemander.

## Codes de sortie

| Code | Signification |
|---|---|
| `0` | Arrêtée avec Ctrl-C. |
| `1` | Une erreur serveur ou une défaillance réseau, par exemple un curseur appartenant à un autre environnement. |
| `2` | Erreur d'utilisation : filtre, curseur, intervalle ou format de sortie invalide. Aucune requête n'a été envoyée. |
| `3` | L'identifiant d'authentification est absent, ou le serveur a répondu `401` ou `403`. |
| `4` | Le plan n'inclut pas cette fonctionnalité (`403` avec `plan_feature_unavailable`). |
