# Fehler

> Der Fehlerkatalog: HTTP-Status, OperationOutcome-Fehlercodes und was bei jedem zu tun ist.

Source: https://developers.anpheros.com/de/guides/errors

Unter `/fhir/R4` sind Fehler `OperationOutcome`; anderswo `{"error": {"type", "message", "field"?}}`. Jede Antwort enthält `Anpheros-Request-Id`; zitieren Sie diese, wenn Sie sich an den Support wenden.

| HTTP | `issue.code` / `type` | Bedeutung | Was zu tun ist |
|---|---|---|---|
| 400 | `invalid`, `structure`, `value` | fehlerhaftes JSON, ungültiges FHIR, Wert nicht in einem erforderlichen Wertesatz, nicht unterstützter Suchparameter, nicht unterstützter Geltungsbereichsfilter | Anforderung korrigieren; die Meldung nennt das Feld |
| 400 | `too-costly` | Ressourcenverschachtelung > 64 Ebenen, Text > 10.000 Zeichen | Ressource vereinfachen |
| 401 | `login` | fehlende, unbekannte, abgelaufene oder widerrufene Anmeldeinformation; Zustimmung nicht mehr aktiv; die Antwort enthält `WWW-Authenticate: Bearer realm="anpheros"` (mit `error="invalid_token"`, wenn eine Anmeldeinformation gesendet wurde) | neu authentifizieren; für OAuth, aktualisieren oder neu zustimmen |
| 403 | `forbidden` | Geltungsbereich, Eigentümerschaft (von einer anderen Organisation geschrieben), schreibgeschütztes Recht, nur für Administratoren | richtigen Geltungsbereich anfordern; eigene Ressource schreiben |
| 404 | `not-found` | existiert für diesen Aufrufer nicht | niemals von einem 404 auf Existenz schließen |
| 409 | `conflict` | Idempotenzschlüssel in Bearbeitung; Dokument bereits final; Endpunktlimit | kurzzeitig erneut versuchen / neuen Schlüssel verwenden |
| 410 | `deleted` | Ressource oder Datei gelöscht | — |
| 412 | `conflict` | Versionskonflikt `If-Match` | erneut lesen, dann aktualisieren |
| 413 | `too-costly` | Body oder Dokument über dem Limit | aufteilen oder komprimieren |
| 422 | `not-found` / `invalid` | referenzierter Patient existiert für Sie nicht; Ressource zwischen Patienten verschoben; Idempotenzschlüssel mit anderem Body wiederverwendet | Referenz korrigieren |
| 429 | `throttled` | Ratenbegrenzung pro Anmeldeinformation oder pro IP | `Retry-After` Sekunden warten; die SDKs tun dies |
| 503 | `transient` | Dokumentenspeicher nicht verfügbar | mit Backoff erneut versuchen |
| 500 | `exception` | unerwarteter Fehler, protokolliert und mit der Anforderungs-ID auditiert | Anforderungs-ID melden |
