2xx Erfolg ·
3xx Umleitung ·
4xx Client-Fehler ·
5xx Server-Fehler
HTTP-Statuscodes sind die Antwortcodes, die ein Server an den Client zurücksendet. Sie geben Aufschluss über den Erfolg oder Misserfolg einer Anfrage – unverzichtbar für die Fehlersuche und API-Entwicklung.
2xx-Statuscodes zeigen an, dass die Anfrage erfolgreich war und der Server die erwartete Antwort geliefert hat. Sie sind das Ziel jeder HTTP-Anfrage.
| Code | Bedeutung | Beschreibung |
|---|---|---|
| 200 OK | Erfolg | Die Anfrage war erfolgreich. Die Antwort enthält die angeforderten Daten. |
| 201 Created | Erstellt | Die Anfrage wurde erfolgreich ausgeführt und eine neue Ressource wurde erstellt (z.B. bei POST). |
| 202 Accepted | Akzeptiert | Die Anfrage wurde zur Verarbeitung angenommen, aber die Verarbeitung ist noch nicht abgeschlossen. |
| 204 No Content | Kein Inhalt | Die Anfrage war erfolgreich, aber der Server sendet keinen Inhalt (z.B. bei DELETE). |
| 206 Partial Content | Teilinhalt | Der Server sendet nur einen Teil der Ressource (z.B. bei Range-Requests für große Dateien). |
201 Created bei erfolgreichen POST- oder PUT-Anfragen, die eine neue Ressource anlegen. Der Location-Header sollte die URL der neuen Ressource enthalten.
3xx-Statuscodes zeigen an, dass die angeforderte Ressource an einer anderen URL zu finden ist. Sie werden für Weiterleitungen und Umleitungen verwendet.
| Code | Bedeutung | Beschreibung |
|---|---|---|
| 301 Moved Permanently | Dauerhaft verschoben | Die Ressource wurde dauerhaft an eine neue URL verschoben. Search Engines aktualisieren den Index. |
| 302 Found | Gefunden (temporär) | Temporäre Weiterleitung – die Methode kann sich ändern (z.B. POST → GET). |
| 303 See Other | Siehe andere | Wird nach POST verwendet, um auf eine andere Ressource umzuleiten (immer GET). |
| 304 Not Modified | Nicht verändert | Die Ressource wurde seit dem letzten Abruf nicht verändert (Cache). |
| 307 Temporary Redirect | Temporäre Umleitung | Wie 302, aber die HTTP-Methode bleibt erhalten (z.B. POST bleibt POST). |
| 308 Permanent Redirect | Permanente Umleitung | Wie 301, aber die HTTP-Methode bleibt erhalten (z.B. POST bleibt POST). |
301 (permanent) für dauerhafte Änderungen und 302 (temporär) für vorübergehende Umleitungen. Für APIs mit POST-Anfragen bevorzugen Sie 307 oder 308.
4xx-Statuscodes zeigen an, dass der Client einen Fehler gemacht hat – z.B. eine ungültige Anfrage, fehlende Authentifizierung oder der Zugriff auf eine nicht existierende Ressource.
| Code | Bedeutung | Beschreibung |
|---|---|---|
| 400 Bad Request | Fehlerhafte Anfrage | Die Anfrage ist syntaktisch falsch oder kann nicht verarbeitet werden (z.B. JSON-Fehler). |
| 401 Unauthorized | Nicht autorisiert | Authentifizierung ist erforderlich, aber nicht erfolgt oder ungültig. |
| 403 Forbidden | Verboten | Der Client ist authentifiziert, hat aber keine Berechtigung für die Ressource. |
| 404 Not Found | Nicht gefunden | Die angeforderte Ressource existiert nicht auf dem Server. |
| 405 Method Not Allowed | Methode nicht erlaubt | Die verwendete HTTP-Methode wird für diese Ressource nicht unterstützt. |
| 409 Conflict | Konflikt | Die Anfrage kann aufgrund eines Konflikts mit dem aktuellen Zustand nicht verarbeitet werden. |
| 429 Too Many Requests | Zu viele Anfragen | Der Client hat das Ratenlimit überschritten (Rate Limiting). |
| 422 Unprocessable Entity | Unverarbeitbare Entität | Die Anfrage ist syntaktisch korrekt, aber semantisch fehlerhaft (z.B. Validierungsfehler). |
404 für Ressourcen, die nicht existieren, und 403 für Zugriffsverweigerung. 401 sollte verwendet werden, wenn der Client sich authentifizieren muss. 429 hilft bei der Implementierung von Rate Limiting.
5xx-Statuscodes zeigen an, dass der Server einen Fehler hat – sei es ein interner Fehler, ein Gateway-Problem oder eine Überlastung.
| Code | Bedeutung | Beschreibung |
|---|---|---|
| 500 Internal Server Error | Interner Server-Fehler | Allgemeiner Fehler – der Server hat einen unerwarteten Fehler erlebt. |
| 501 Not Implemented | Nicht implementiert | Die Anfrage-Methode wird vom Server nicht unterstützt. |
| 502 Bad Gateway | Fehlerhafter Gateway | Der Server (Gateway/Proxy) hat eine ungültige Antwort von einem Upstream-Server erhalten. |
| 503 Service Unavailable | Dienst nicht verfügbar | Der Server ist vorübergehend nicht erreichbar (Überlastung oder Wartung). |
| 504 Gateway Timeout | Gateway-Zeitüberschreitung | Der Server (Gateway) hat keine rechtzeitige Antwort vom Upstream-Server erhalten. |
| 505 HTTP Version Not Supported | HTTP-Version nicht unterstützt | Die verwendete HTTP-Version wird vom Server nicht unterstützt. |
| 507 Insufficient Storage | Unzureichender Speicher | Der Server hat nicht genügend Speicherplatz für die Anfrage. |
502 und 504 treten häufig bei Proxy-Konfigurationen (wie NGINX) auf. 503 ist ideal für geplante Wartungsarbeiten – kombinieren Sie es mit einem Retry-After-Header.
200
301
404
500
200 OK ·
301 Moved Permanently ·
404 Not Found ·
500 Internal Server Error