Codes d'erreur
Les codes de decision.error : pourquoi Zarex n'a pas pu décider, et quoi faire.
Le SDK ne lève jamais d'erreur dans votre application. Quand Zarex ne peut pas décider, la requête passe, la décision est marquée degraded, et decision.error.code en donne la raison. Le même code apparaît dans vos logs.
onDegraded: (req, decision) => {
console.warn("Zarex n'a pas pu décider :", decision.error?.code);
},Les codes
| Code | Cause | Que faire |
|---|---|---|
unauthorized | Clé API absente, mal copiée ou révoquée. | Vérifiez ZAREX_KEY et que la clé est active dans le dashboard. |
quota_exceeded | Le quota mensuel de votre formule est atteint. | Les requêtes passent sans analyse jusqu'au mois suivant. Voir Compte et quota. |
ip_unresolved | L'adresse IP du visiteur est introuvable. | Réglez ipSource selon votre hébergement. Voir L'adresse IP du visiteur. |
timeout | Zarex n'a pas répondu dans le délai (timeoutMs, 500 ms par défaut). | Ponctuel : rien à faire. Fréquent : augmentez timeoutMs. |
network | Connexion à Zarex impossible ou coupée. | Vérifiez que votre serveur peut joindre Internet en HTTPS. |
circuit_open | Plusieurs échecs de suite : le SDK laisse passer sans attendre, pendant une courte pause. | Rien à faire : il réessaie tout seul. Si le message persiste, voir network. |
forbidden | La requête vers Zarex a été refusée. | Vérifiez la clé et le projet. |
invalid_request | Une règle n'a pas été acceptée. | Vérifiez la configuration de vos règles, et mettez le SDK à jour. |
server_error | Erreur passagère du côté de Zarex. | Rien à faire : la requête est passée. |
bad_response | Réponse illisible. | Rien à faire : la requête est passée. Mettez le SDK à jour si cela se répète. |
engine_error | Zarex n'a pas pu évaluer les règles. | Rien à faire : la requête est passée. |
internal_error | Erreur inattendue dans le SDK. | Mettez le SDK à jour ; si cela persiste, écrivez-nous. |
Au démarrage
Certaines erreurs de configuration sont détectées au démarrage de votre application, plutôt qu'en silence à chaque requête : ipSource manquant hors de Vercel, Fly.io et Cloudflare Workers, règle invalide (par exemple max négatif), plus de 10 règles, filtre sur un cookie sans inspectCookies… Le message indique la correction à faire.