Was sind die Limits und Fehlermeldungen der API?
Wie viele Anfragen dürfen Sie stellen?
Die API begrenzt die Anzahl der Anfragen pro Minute und Konto.
Überschreiten Sie dieses Limit, erhalten Sie den Statuscode 429 sowie einen Header, der angibt, wie lange Sie warten müssen:
Solange alles reibungslos läuft, gibt es keine Header, die Ihren Verbrauch protokollieren. Beachten Sie daher den Wert von Retry-After und behalten Sie selbst im Blick, wie viele Anfragen Sie senden. Zwischenspeichern (cachen) Sie außerdem Daten, die sich selten ändern: Die Felder einer Liste müssen Sie nicht bei jedem Seitenaufruf neu abrufen, einmal pro Tag reicht völlig aus.
Wie sieht eine Fehlermeldung aus?
Alle Fehlermeldungen sind gleich aufgebaut, sodass Sie diese zentral an einer Stelle abfangen können. Jeder Fehler wird als JSON zurückgegeben und enthält ein type, ein message sowie meistens einen code und den parameter, der den Fehler verursacht hat.
Das Feld type kann drei Werte annehmen: invalid_request, wenn der Aufruf selbst fehlerhaft ist, invalid_input, wenn die übermittelten Daten nicht stimmen, und internal, wenn aufseiten von Laposta ein Fehler auftritt.
Statuscodes
Die API verwendet reguläre HTTP-Statuscodes, um anzugeben, wie die Anfrage verlaufen ist.
Ein nicht existierendes Objekt liefert keinen 404-, sondern einen 400-Statuscode mit dem Fehlercode 203. Prüfen Sie daher nicht auf 404, um festzustellen, ob eine Liste oder ein Abonnent existiert, da Sie diesen Code nur bei einem nicht existierenden Pfad erhalten.
Fehlercodes
Bei invalid_input wird ein numerischer Code mitgeliefert, sodass Sie den Fehler in eine verständliche Nachricht für Ihre eigenen Benutzer übersetzen können. Zusammen mit parameter wissen Sie genau, um welches Feld es sich handelt.
Eine ID aus einem anderen Konto erzeugt dieselbe Meldung wie eine ID, die überhaupt nicht existiert: Unknown list mit dem Code 203. Das ist beabsichtigt, damit keine Rückschlüsse auf die Inhalte anderer Konten möglich sind.