Fehler
Aufbau und Bedeutung von Fehlerantworten.
Jeder Fehler kommt mit dem passenden HTTP-Status und dem Inhaltstyp application/problem+json
nach RFC 9457.
{
"type": "https://docs.hfoods.de/docs/developers/errors#validation",
"title": "Ungültige Eingabe",
"status": 422,
"code": "validation_failed",
"detail": "Mindestens ein Feld ist ungültig.",
"requestId": "req_8f3a2c",
"errors": [
{ "field": "/items/0/quantity", "code": "too_small", "message": "Die Menge muss mindestens 1 sein." }
]
}codeist für dein Programm gedacht. Er ändert sich innerhalb einer Hauptversion nie.titleunddetailsind für Menschen gedacht und können sich ändern. Werte sie nicht aus.requestIdsteht auch im HeaderRequest-Id. Nenne sie bei Rückfragen an den Support.
Statuscodes
| Status | Bedeutung | Wiederholen? |
|---|---|---|
| 400 | Die Anfrage ist fehlerhaft aufgebaut. | Nein, erst korrigieren |
| 401 | Kein oder ein ungültiger Schlüssel. | Nein |
| 403 | Der Schlüssel darf das nicht. | Nein |
| 404 | Nicht gefunden oder gehört nicht zu deinem Schlüssel. | Nein |
| 409 | Der Zustand lässt die Aktion nicht zu, oder der Idempotency-Key wurde mit anderem Inhalt benutzt. | Nein |
| 422 | Die Eingabe ist inhaltlich ungültig. | Nein, erst korrigieren |
| 429 | Zu viele Anfragen. | Ja, nach Retry-After Sekunden |
| 500, 502, 503 | Fehler bei hfoods. | Ja, mit wachsender Pause und demselben Idempotency-Key |
Validierung
Bei Status 422 steht in errors je ungültigem Feld ein Eintrag. field zeigt als JSON-Pointer
auf die Stelle in deiner Anfrage.