Zum Inhalt springen

Error Handling

Die LIVOI API verwendet für Fehler ein einheitliches JSON-Schema. Clients können dadurch Status, Fehlermeldung und Detailursachen konsistent auswerten.

Die Fehlerrückgabe umfasst:

  • status_code: HTTP-Statuscode als String
  • status_message: textuelle Beschreibung aus dem HTTP-Status, z. B. Forbidden oder Unprocessable Entity
  • errors: Liste mit Error-Objekten

Ein Error-Objekt kann diese optionalen Felder enthalten:

  • info
  • type
  • context
  • cause

cause kann ein einzelnes Objekt oder eine Liste sein. Bei Validierungsfehlern wird typischerweise eine Liste erzeugt. Cause-Einträge können details, value, location und code enthalten.

{
"status_code": "403",
"status_message": "Forbidden",
"errors": [
{
"info": "Missing permission for agents.read."
}
]
}

HTTP 422 ist bei Pydantic-Feldvalidierung und Dynamic Query häufig. Die Statusphrase lautet aktuell Unprocessable Entity.

{
"status_code": "422",
"status_message": "Unprocessable Entity",
"errors": [
{
"info": "Validation failed.",
"type": "ValidationError",
"cause": [
{
"details": "Input should be greater than or equal to 1",
"value": 0,
"location": ["body", "page", "number"],
"code": "greater_than_equal"
}
]
}
]
}
CodeStatusBeschreibung
200OKStandardantwort für erfolgreiche HTTP-Anfragen. Die Ressource wurde erfolgreich abgerufen oder verarbeitet.
201CreatedDie Anfrage war erfolgreich und eine neue Ressource wurde erstellt. Wird typischerweise bei POST-Anfragen verwendet.
204No ContentDie Anfrage war erfolgreich, aber es gibt keinen Inhalt zurückzugeben. Häufig bei DELETE-Operationen.

Für Dynamic Query sind in den Route-Spezifikationen insbesondere 400, 401, 403, 404, 422 und 500 hinterlegt.