# Codes d'erreur

Générés depuis le code : `php artisan docs:generer`.

Toute erreur de l'API porte un bloc `error` en plus des champs historiques
`success` et `message` :

```json
{
  "success": false,
  "message": "Le domaine expéditeur n'est pas dans ceux autorisés pour cette clé.",
  "error": {
    "code": "SENDER_DOMAIN_NOT_ALLOWED",
    "message": "Le domaine expéditeur n'est pas dans ceux autorisés pour cette clé.",
    "retryable": false,
    "resolution": { "action": "use_allowed_sender_domain" },
    "documentation": "https://vaemail.fr/docs/errors#sender_domain_not_allowed"
  }
}
```

`code` est stable : on en ajoute, on n'en renomme pas. Un programme peut brancher son
comportement dessus. `retryable` dit si le même appel peut aboutir plus tard sans rien
changer ; quand il vaut `false`, relancer à l'identique ne sert à rien.

## Liste des codes

### `DOMAIN_NOT_VERIFIED`

Le domaine d'envoi n'est pas authentifié.

### `RECIPIENT_SUPPRESSED`

Destinataire dans la liste de suppression.

### `TEMPLATE_NOT_FOUND`

Template transactionnel introuvable.

### `MESSAGE_NOT_FOUND`

Message introuvable.

### `CONTENT_REQUIRED`

Fournir « html » ou « template_id ».

### `QUOTA_EXCEEDED`

Quota mensuel atteint.

### `DAILY_LIMIT_REACHED`

Plafond journalier de la clé d'API atteint.

### `TOO_MANY_RECIPIENTS`

Plus de destinataires que ce que la clé autorise.

### `SENDER_DOMAIN_NOT_ALLOWED`

Domaine expéditeur hors de ceux autorisés pour cette clé.

### `INSUFFICIENT_SCOPE`

La clé d'API ne porte pas la portée nécessaire.

### `IDEMPOTENCY_KEY_REUSED`

Clé d'idempotence déjà utilisée avec un contenu différent.

### `UNAUTHORIZED`

Clé API manquante, invalide ou compte désactivé.

### `VALIDATION_FAILED`

Paramètres invalides.

### `RATE_LIMITED`

Trop de requêtes.
