Codes de statut HTTP
Les erreurs HTTP sont renvoyées lorsqu'une requête ne peut pas être traitée au niveau transport.
| Code de statut↕ | Signification↕ |
|---|---|
| 400 | Argument invalide / mauvaise requête — la requête contient une entrée invalide. |
| 401 | Non autorisé — aucune information d'identification valide n'a été fournie. |
| 404 | Introuvable — la ressource demandée n'existe pas. |
| 409 | Conflit de ressource — la requête entre en conflit avec l'état actuel d'une ressource. |
| 412 | Précondition échouée — une condition requise n'était pas remplie avant le traitement. |
| 422 | Entité non traitable — le corps de la requête est structurellement valide mais contient des valeurs invalides. |
| 429 | Limite de débit atteinte — trop de requêtes sur une courte période. Utilisez un backoff exponentiel et réessayez. |
| 500 | Erreur interne du serveur — une défaillance inattendue côté serveur. Réessayez ; contactez le support si persistant. |
| 503 | Service indisponible — le service est temporairement hors ligne. Réessayez après un court délai. |
| 504 | Délai d'attente dépassé — le serveur n'a pas reçu de réponse à temps. Réessayez la requête. |
Format d'erreur GraphQL
Les erreurs au niveau application sont renvoyées sous forme de liste dans le champ errors du corps de réponse. Chaque erreur inclut un message, le path de l'opération ayant échoué, et un objet extensions avec le type d'erreur et l'identifiant de requête.
1
{2
"errors": [3
{4
"message": "Description of the error",5
"path": [6
"landedCostCalculate"7
],8
"extensions": {9
"errorType": "BAD_REQUEST",10
"requestId": "req_abc123"11
}12
}13
]14
}Classifications d'erreurs
Le champ extensions.errorType indique la catégorie de l'erreur et l'action recommandée.
| Classification↕ | Équivalent HTTP↕ | Signification↕ | Action↕ |
|---|---|---|---|
BAD_REQUEST | 400 | Entrée ou paramètres de requête invalides. | Corrigez la requête — vérifiez les champs requis, formats et valeurs. |
NOT_FOUND | 404 | Une ressource référencée n'existe pas. | Vérifiez les identifiants, codes et que les valeurs par défaut requises sont configurées. |
UNAVAILABLE | 503 | Le service ou l'option demandé n'est pas disponible pour cet itinéraire. | Essayez une autre méthode, un autre niveau de service ou une autre destination. |
PERMISSION_DENIED | 401 / 403 | Échec d'authentification ou d'autorisation. | Vérifiez les identifiants et les permissions du compte. |
FAILED_PRECONDITION | 412 | Une condition de configuration ou de préparation requise n'était pas remplie. | Vérifiez les paramètres de l'organisation ou contactez le support. |
INTERNAL | 500 | Une défaillance inattendue côté serveur s'est produite. | Réessayez la requête ; contactez le support si le problème persiste. |
UNKNOWN | 500 | Erreur inattendue sans classification supplémentaire. | Vérifiez le format de la requête ; contactez le support si le problème persiste. |
Erreurs API
Comprenez et résolvez les erreurs renvoyées par l'API GraphQL Zonos.
GraphQL
L'API Zonos renvoie deux types d'erreurs : des codes de statut HTTP pour les échecs au niveau transport, et des erreurs GraphQL pour les problèmes au niveau application. La plupart des erreurs sont des erreurs GraphQL qui incluent une classification dans le champ
extensionspour aider à identifier la cause et la résolution appropriée.