Jetzt starten
Zum Inhalt
API

Limits & Fehler

Anfragelimits, HTTP-Fehler und Wiederholungsstrategien für eine zuverlässige Integration.

Anfragelimits

Die folgenden Werte entsprechen der Standardkonfiguration. Limits für angemeldete Anfragen gelten pro Konto, auch wenn mehrere API-Schlüssel verwendet werden. Nicht angemeldete Anfragen werden anhand der IP-Adresse begrenzt.

Anfragelimits der Plattform
AnfrageartStandardlimit
Allgemeine authentifizierte API-Anfragen, z. B. Auftragsstatus und Ergebnisabruf 120 pro Minute
Allgemeine nicht authentifizierte Anfragen 30 pro Minute
Einzelauftrag erstellen 60 pro Minute
CSV-Auftrag erstellen 10 pro Minute
Vorab-Zeitschätzung 120 pro Minute
Aufladung anstoßen 10 pro Minute
API-Schlüssel erstellen 10 pro Stunde
Supportanfrage senden 5 pro Stunde
Anmelden / Registrieren 10 pro Minute / 5 pro Stunde
Bestätigungsmail erneut anfordern / E-Mail bestätigen 5 pro Stunde / 20 pro Stunde
Passwort ändern 10 pro Stunde
Passwortzurücksetzung anfordern / bestätigen 5 pro Stunde / 20 pro Stunde

Auf Endpunkten mit einem eigenen Limit ersetzt dieses das allgemeine Standardlimit. Bei Überschreitung antwortet die API mit HTTP 429. Beachten Sie den Header Retry-After und warten Sie die angegebene Zahl von Sekunden.

Dateien und Antwortseiten

  • Maximal 50.000 Datenzeilen und 10 MiB pro CSV-Datei.
  • Ein Einzelauftrag enthält genau ein Objekt unter input_data.
  • Auftragsliste: standardmäßig 50 Einträge, maximal 1.000 pro Seite.
  • Datensatzlisten: standardmäßig und maximal 1.000 Datensätze pro Seite.
  • Buchungsliste: standardmäßig 50 Einträge, maximal 500 pro Seite.

Teilen Sie größere Eingabelisten in mehrere Dateien und beachten Sie das nötige Guthaben. Die Zahl angenommener Anfragen ist keine Zusage über parallele Verarbeitung oder Bearbeitungsdauer.

HTTP-Fehler behandeln

Fehlerreferenz
StatusTypischer GrundReaktion
400 Ungültige Pflichtfelder, nicht lesbare CSV-Struktur, falsches Produkt oder eine unzulässige Auftragsaktion. detail oder die feldbezogenen Fehlermeldungen lesen und die Eingabe korrigieren.
403 Fehlende/ungültige Anmeldung, inaktiver Schlüssel, unbestätigte E-Mail oder ein API-Schlüssel auf console.krake.run. Header, Konto und API-Host prüfen. Nicht automatisch wiederholen.
402 Guthaben reicht für den angefragten Auftrag nicht aus. Guthaben aufladen oder die Liste verkleinern.
404 Kennung nicht vorhanden, falscher Produktpräfix, fremder Auftrag, bereits gelöschter Datensatz oder auf dem API-Host nicht freigegebener Pfad. Host, Produktpräfix und Kennung prüfen; ein anderer API-Schlüssel desselben Kontos ändert die Auftragszugehörigkeit nicht.
405 Falsche HTTP-Methode. Mit der Endpunktreferenz vergleichen, etwa POST für die Auftragserstellung.
406 Ein nicht unterstütztes Antwortformat wird angefordert. Accept: application/json verwenden; CSV nur beim Export, Ereignisstrom beim Fortschritt.
410 Die Datensätze des Auftrags wurden nach Ablauf der Aufbewahrungsfrist gelöscht. Betrifft Export, Datensatzlisten, Neustart und nachträgliche Abrechnung. Auf lokale Sicherung zurückgreifen oder einen neuen Auftrag erstellen.
413 Eine vorgelagerte Uploadgrenze wurde überschritten. Datei verkleinern. Die Dateiprüfung der API selbst meldet Überschreitungen auch als 400.
415 Falscher Request-Content-Type. JSON für Einzelaufträge, Multipart für CSV verwenden.
429 Anfragelimit erreicht. Retry-After beachten und die Anfragerate reduzieren.
500, 502, 503 Interner Fehler oder vorübergehend nicht verfügbarer Dienst; Zahlungsendpunkte können den Zahlungsanbieter als Ursache nennen. Leseanfragen mit wachsendem Abstand wiederholen; bei POST zuerst prüfen, ob die Aktion bereits ausgeführt wurde.

Die API verwendet derzeit auch englische Fehlermeldungen. Werten Sie HTTP-Status und strukturierte Felder aus, statt sich auf einen bestimmten Wortlaut zu verlassen.

Fehlerantworten

Beispiel einer abgelehnten Einzelanfrage wegen unzureichenden Guthabens:

{
  "detail": "Insufficient balance.",
  "balance_eur": "0.0000",
  "required_eur": "0.0300"
}

Der Preis ist hier nur ein Beispiel. Bei CSV-Aufträgen heißen die ergänzenden Felder estimated_cost_eur und topup_required_eur. Validierungsfehler können stattdessen unter Feldnamen wie input_data, file oder product stehen.

Im Feld code stehen unter anderem results_expired für gelöschte Datensätze sowie batch_failed und batch_stopped_empty für einen Export ohne Ergebnisse. Nicht jeder Fehler enthält ein solches Feld.

Anfragen zuverlässig wiederholen

  1. Speichern Sie die Auftragskennung unmittelbar nach HTTP 202.
  2. Fragen Sie Status in sinnvollen Abständen ab, beispielsweise alle fünf Sekunden. Mehrere gleichzeitige Aufträge teilen sich das Leselimit.
  3. Beenden Sie das Polling bei einem Endzustand und folgen Sie beim Ergebnisabruf der Paginierung.
  4. Wiederholen Sie temporär fehlgeschlagene Leseanfragen mit wachsendem Abstand und einer kleinen zufälligen Verzögerung.
  5. Prüfen Sie nach einem unklaren POST-Ausgang die Auftragsliste, bevor Sie erneut einen kostenpflichtigen Auftrag erstellen.

Bei HTTP 400, 402 und 403 ist zunächst eine Änderung an Eingabe, Guthaben oder Anmeldung erforderlich. Ein endloser Retry behebt diese Ursachen nicht.