Gestion des erreurs
L'API utilise les codes de statut HTTP standards et retourne des réponses d'erreur structurées.
Format de réponse d'erreur
{
"error": {
"code": "error_code",
"message": "Description lisible de l'erreur"
},
"request_id": "req_abc123"
}
Codes de statut HTTP
| Statut | Signification | Quand |
|---|---|---|
| 200 | OK | Requête réussie |
| 400 | Bad Request | Paramètres manquants ou invalides |
| 401 | Unauthorized | Clé API invalide ou manquante |
| 429 | Too Many Requests | Limite de débit dépassée |
| 500 | Internal Server Error | Erreur côté serveur |
Codes d'erreur
bad_request
La requête manque de paramètres requis ou contient des données invalides.
{
"error": {
"code": "bad_request",
"message": "email or domain parameter is required"
}
}
unauthorized
La clé API est manquante, invalide ou révoquée.
{
"error": {
"code": "unauthorized",
"message": "Invalid or missing API key"
}
}
rate_limited
Vous avez dépassé la limite de débit de votre plan.
{
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded"
}
}
Consultez l'en-tête X-RateLimit-Reset pour savoir quand réessayer. Voir Limites de débit pour plus de détails.
internal_error
Une erreur inattendue s'est produite de notre côté.
{
"error": {
"code": "internal_error",
"message": "Internal server error"
}
}
Si cela persiste, contactez le support avec votre request_id.
Bonnes pratiques
- Vérifiez toujours le code de statut HTTP avant d'analyser le corps de la réponse
- Implémentez un backoff exponentiel pour les erreurs
429et500 - Loggez le
request_idpour le débogage et les demandes de support - Gérez les erreurs réseau gracieusement — timeouts, échecs DNS, etc.