Erreurs
Dernière mise à jour : 22 juin 2026
Lorsqu'une requête échoue, WEEGLOO renvoie un corps d'erreur au format uniforme accompagné d'un code de statut HTTP. La forme du corps de réponse est la même quelle que soit l'API (CMA, CDA, ACMA, ACDA, Upload, Auth) sur laquelle l'échec s'est produit. Ainsi, dès que vous savez traiter un seul format, vous pouvez aiguiller toutes les erreurs de la même manière. Cette page rassemble en un seul endroit ce format commun et les codes d'erreur les plus fréquents.
Format de la réponse d'erreur
Le corps d'erreur se présente sous la forme suivante. Ci-dessous, la réponse reçue lors de la consultation d'un WebHosting inexistant.
{
"requestId": "GeR3sEbvWdgvv9eW2NXeanpj2wo6qbkVXgIW7Qd3ea6",
"sys": {
"id": "RxcgyPTSuk4GDy6s",
"type": "NotFound",
"code": "WGL404001",
"timestamp": 1781785683556
},
"details": {
"space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } }
},
"reason": "WebHosting(...) has been deleted or does not exist.",
"suggestion": "Please verify WebHosting and try again."
}La signification de chaque clé est la suivante.
| Clé | Type | Description |
|---|---|---|
requestId | string | Identifiant de suivi de cette requête. Transmettez cette valeur lorsque vous contactez le support pour qu'il retrouve rapidement la requête concernée. |
sys.type | string | Catégorie de l'erreur. Indique une grande famille telle que Unauthorized, Forbidden, NotFound, Unprocessable, Conflict ou TooManyRequest. |
sys.code | string | Code d'erreur détaillé (par exemple WGL409005). Employez cette valeur pour aiguiller au niveau du code. |
sys.timestamp | integer | Instant de survenue de l'erreur (epoch millis). |
reason | string | Cause de l'échec, lisible par un humain. |
suggestion | string | Indice pour aider à la résolution. |
details | object (facultatif) | Informations complémentaires. Y figurent un Refer désignant la ressource concernée, la liste des éléments en erreur de validation (errors), etc. Peut être absent selon le genre d'erreur. |
L'aiguillage se fait selon l'unité dont vous avez besoin, sys.type (grande famille) ou sys.code (code détaillé). Pour un même sys.type, un sys.code différent correspond à une cause différente ; si un traitement précis est nécessaire, fondez-vous sur sys.code.
En cas d'échec de validation, details.errors contient les éléments en infraction. Voici la réponse obtenue en plaçant dans le corps une propriété absente du schéma, ce qui fait échouer la validation.
{
"requestId": "yJ8KpQ2mWtnLrZ4Xv7BcEadfh3sNuMvKbGT5Pq9wRsx",
"sys": {
"id": "Lm2Nq9Tr8KdW4xZc",
"type": "BadRequest",
"code": "WGL400006",
"timestamp": 1781776000000
},
"details": {
"errors": [
{ "path": "", "message": "property 'X' is not defined in the schema", "property": "X" }
]
},
"reason": "Some values do not satisfy validation rules.",
"suggestion": "Please check the request body and try again."
}Chaque élément de details.errors contient l'emplacement en infraction (path), une explication (message) et le nom de la propriété concernée (property). S'il y a plusieurs éléments, il y en a un par valeur en infraction.
Codes fréquents
Voici les codes d'erreur que l'on rencontre souvent.
| Code | Catégorie | Signification | Situation courante |
|---|---|---|---|
WEB401001 | Unauthorized | Le jeton n'est pas valide | Le jeton Bearer de l'en-tête Authorization a expiré ou est incorrect. |
WGL403001 | Forbidden | Permission manquante | Le rôle de l'appelant n'autorise pas cette opération. |
WGL404001 | NotFound | La ressource est absente ou supprimée | Consultation avec un sys.id incorrect, ou appel d'une fonctionnalité pas encore configurée (par exemple, domaine personnalisé non rattaché). |
WGL400006 | BadRequest | La valeur du corps enfreint les règles de validation | Le corps a été envoyé avec une clé de champ ou un type incorrect. Les éléments en infraction figurent dans details.errors. |
WGL409005 | Conflict | La ressource a été modifiée entre-temps | L'en-tête X-Weegloo-Version est absent ou diffère de la version actuelle (voir Conventions). |
WGL422007 | Unprocessable | Impossible d'archiver car l'élément est publié | Pour archiver un Content ou un Media, il faut d'abord le dépublier. |
WGL422009 | Unprocessable | Impossible de supprimer car l'élément est publié | Pour supprimer un Content ou un Media publié, il faut d'abord le dépublier. |
WGL429001 | TooManyRequest | Limite du forfait dépassée | Le nombre de ressources créées, comme Organization ou Space, dépasse la limite du forfait actuel. Passer à un forfait supérieur relève la limite. |
Les codes ci-dessus ne sont qu'une partie des plus fréquents. Selon l'opération et la ressource, il peut en exister bien d'autres. Quel que soit le code reçu, identifiez la grande famille avec sys.type, puis vérifiez la cause précise et la piste de résolution avec reason et suggestion.
Documents associés
- Conventions : la règle de concurrence
X-Weegloo-Versionpour éviterWGL409005. - Propriétés système (sys) : l'état de publication (
status) et le cycle de vie désigné parWGL422007etWGL422009.
