Skip to content

Fehler & Statuscodes ​

Fehlerformat ​

Fehler werden immer als JSON-Objekt mit einem message-Feld zurückgegeben:

json
{
  "message": "Access to the requested resource is denied."
}

Aus Sicherheitsgründen werden serverseitige Fehlerdetails nicht nach außen gegeben – bei 5xx-Fehlern wird stets eine generische Meldung zurückgegeben.

Statuscodes ​

StatusBedeutungTypische Ursache
200OKRequest erfolgreich
200OK (mit message)Einzelne Endpunkte melden "bereits erledigt"-Zustände als 200 mit message
302RedirectEndpunkt leitet auf eine Download-URL weiter (z. B. Datei-Downloads), Location-Header beachten
400Fachlicher FehlerVorbedingung nicht erfüllt (z. B. Status verbietet die Aktion)
403Zugriff verweigertUngültige/abgelaufene HMAC-Signatur, wiederverwendete hmac_unique, fehlende Rechte, Origin nicht freigegeben oder Verbindung von der Kund:in gelöscht bzw. Zugang gesperrt
404Nicht gefundenAngefragte Ressource existiert nicht
406ValidierungsfehlerRequest-Parameter ungültig – die message enthält ein JSON-Array mit {field, value, rule, params} pro verletztem Feld
409KonfliktAktueller Zustand passt nicht zur Aktion, z. B. Aktivierung beim Pairing noch ausstehend (codesetup/get), Auto-Sync bereits aktiv oder Tarif-Limit erreicht
410GoneEinmal-Ressource abgelaufen (z. B. codesetup, datahandler)
422Unprocessable EntityFachlicher Zustand verhindert die Aktion (z. B. ungültiger Status-Übergang)
423LockedRessource ist schreibgeschützt (z. B. geschützte Datei)
500ServerfehlerInterner Fehler, generische Meldung
501Nicht implementiertBereich oder Aktion existiert nicht
503Rate LimitZu viele Anfragen – siehe unten

Rate Limiting ​

Die API limitiert eingehende Requests auf 250 Requests pro Sekunde und IP-Adresse. Bei Überschreitung antwortet der vorgeschaltete Proxy mit 503.

Fehlerbehandlung im Client ​

text
200          → Response verarbeiten
302          → Location-Header folgen (manuelle Weiterleitung)
403          → HMAC-Signatur, Zeitstempel und Origin prüfen; stimmt alles, hat die Kund:in
               die Verbindung evtl. gelöscht (mein.ebonaut.de) – nicht erneut senden
406          → message der Nutzer:in anzeigen / Request korrigieren
409          → bei codesetup/get: weiter pollen; sonst Zustand der Ressource prüfen
500/501/503  → mit Backoff wiederholen, bei Dauerfehler Support kontaktieren

Mit 🌈 entwickelt in Berlin 🐻 & Köln ⛪
Hosting zu 100% in Deutschland 🇩🇪