# Errors

L'API ITCare utilise les codes de réponse HTTP conventionnels pour indiquer le succès ou l'échec d'une demande API.

En règle générale :

* Les codes **`2xx`** indiquent un succès.
* Les codes **`4xx`** indiquent des paramètres incorrects ou incomplets (par exemple, un paramètre requis a été omis, ou une opération a échoué avec une tierce partie, etc.)
* Les codes de l'ordre de **`5xx`** indiquent une erreur avec les serveurs d'ITCare.

Ce tableau présente d'autres exemples de codes de réponse HTTP.

<table><thead><tr><th width="133.33333333333331">Code</th><th>Description</th><th>Réponse</th></tr></thead><tbody><tr><td><code>200</code></td><td>Demande traitée avec succès</td><td>Varie en fonction de la demande</td></tr><tr><td><code>201</code></td><td>Objet créé avec succès</td><td>Objet créé</td></tr><tr><td><code>202</code></td><td>Ordre de création de l'objet traité avec succès, la demande sera traitée de manière asynchrone</td><td>Objet vide ou objet de suivi décrivant le traitement de la demande asynchrone</td></tr><tr><td><code>400</code></td><td>Mauvaise requête - Erreur de syntaxe ou de cohérence dans la requête. Doit être corrigée par l'émetteur</td><td>Blanc ou indication de l'erreur à corriger du côté du client</td></tr><tr><td><code>401</code></td><td>Accès non autorisé à la ressource</td><td>Vide</td></tr><tr><td><code>403</code></td><td>Accès non autorisé</td><td>Vide</td></tr><tr><td><code>404</code></td><td>Ressource non existante</td><td>Vide</td></tr><tr><td><code>409</code></td><td>Conflit</td><td>Vide</td></tr><tr><td><code>422</code></td><td>Donnée incohérente</td><td>Vide</td></tr><tr><td><code>500</code></td><td>Erreur fatale de l'API</td><td>Vide</td></tr><tr><td><code>503</code></td><td>Service temporairement indisponible</td><td>Vide</td></tr></tbody></table>

ITCare produit également un message d'erreur et un code d'erreur formaté en JSON :

```json

{
    "status": "BAD_REQUEST",
    "errorCode": "INVALID_FIELD_VALUE",
    "errorDesc": "name",
    "errorMessage": "Error on field 'name'
}


```
