Zur Navigation springen

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.

KontotypAnfragen pro Minute
Kostenlos30
Bezahlt120

Überschreiten Sie dieses Limit, erhalten Sie den Statuscode 429 sowie einen Header, der angibt, wie lange Sie warten müssen:

HTTP/1.1 429 Too Many Requests
Retry-After: 60
{
"error": {
"type": "invalid_request",
"message": "Rate limit exceeded, try again after 60 seconds"
}
}

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.

{
"error": {
"type": "invalid_input",
"message": "Email: invalid address",
"code": 208,
"parameter": "email"
}
}

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.

CodeBedeutung
200Erfolgreich.
201Erfolgreich, und es wurde etwas erstellt.
400Etwas stimmt nicht mit der Anfrage oder den übermittelten Daten.
401Kein gültiger Schlüssel übermittelt oder dieser Endpoint ist für dieses Konto nicht aktiviert.
402Die Daten waren korrekt, aber die Anfrage wurde nicht ausgeführt.
404Dieser Pfad existiert nicht.
429Zu viele Anfragen innerhalb einer Minute.
500Aufseiten von Laposta ist ein Fehler aufgetreten.

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.

CodeBedeutung
201Der Parameter ist leer.
202Der angegebene Wert hat nicht das richtige Format.
203Der angegebene Wert existiert nicht, zum Beispiel eine ID, die nicht zu diesem Konto gehört.
204Der Wert existiert bereits.
205Der Wert ist keine Zahl.
206Der Wert ist nicht true oder false.
207Der Wert ist kein Datum.
208Der Wert ist keine E-Mail-Adresse.
209Der Wert ist keine URL.
210Der Wert ist kein gültiges JSON.
999Es liegt ein anderer Fehler bei diesem Wert vor.

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.

Verwandte Artikel