Doku
Hilfe

Fehler und Limits

Markdown

Antwortcodes, ihre Bedeutung und das weitere Vorgehen. Alle Fehler sind JSON und enthalten eine Request ID.

Vollständiger Leitfaden

Fehlerformat

Ein Fehler folgt dem Format der aufgerufenen API: Objekt error bei OpenAI, {"type": "error", "error": {...}} bei Anthropic und error mit den Feldern status und details bei Gemini. Deshalb erkennen SDKs sie als normale API-Fehler.

  • error.code und error.reason — Fehlerklasse aus der nachfolgenden Tabelle; beide stimmen überein. error.type — Standardwert des Formats (zum Beispiel invalid_request_error oder server_error).
  • error.request_id (bei Anthropic — request_id auf oberster Ebene), der Header X-Request-ID und das Ende des Meldungstexts enthalten die Request-ID.
  • Bei Gemini steht die Klasse in error.details: ErrorInfo.reason — derselbe Code in Großbuchstaben (zum Beispiel MODEL_OVERLOADED), domain — ailoot.ai; die Request-ID steht in RequestInfo.requestId.
  • Im Gemini-Format werden ein 5xx-Fehler, der nicht automatisch wiederholt werden darf, und result_pending_check mit Status 409 sowie status ABORTED zurückgegeben: So wiederholen Gemini SDK und CLI sie nicht selbstständig. Die Fehlerklasse steht in ErrorInfo.reason (zum Beispiel MODEL_TIMEOUT oder RESULT_PENDING_CHECK).
  • Eine Antwort im OpenAI-Format enthält außerdem die Felder auf oberster Ebene code und message — für ältere Clients.
{
  "code": "API_KEY_REQUIRED",
  "error": {
    "code": "invalid_api_key",
    "message": "No API key was sent with the request. Nothing was charged. Please check that the full key is sent in the Authorization header as \"Bearer <key>\". Request ID: 3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6.",
    "param": null,
    "reason": "invalid_api_key",
    "request_id": "3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6",
    "type": "invalid_request_error"
  },
  "message": "No API key was sent with the request. Nothing was charged. …"
}

Fehlercodes

HTTPKlasse (reason)Was passiert istWas tun
400invalid_requestUngültiger Request: falscher Body oder Parameter; das Modell unterstützt ein Feld, einen Anhang oder ein Werkzeug des Requests nicht; der Schlüssel wurde in der Adresse übermittelt Korrigieren Sie den Request anhand des Fehlertexts: Entfernen Sie nicht unterstützte Felder, Anhänge oder Werkzeuge; übermitteln Sie den Schlüssel im Header. Eine Ablehnung wegen eines nicht unterstützten Felds, Anhangs oder Werkzeugs erfolgt vor der Reservierung — es wurde nichts abgebucht
400context_length_exceededDer Request überschreitet das Kontextfenster des ModellsKürzen Sie den Verlauf oder wählen Sie ein Modell mit größerem Kontextfenster
400content_policy_violationDer Request wurde aufgrund der Modellrichtlinien abgelehntFormulieren Sie den Request um
401invalid_api_keyDer Schlüssel fehlt oder ist ungültigPrüfen Sie, ob der vollständige Schlüssel übermittelt wurde
401api_key_disabledDer Schlüssel ist deaktiviertAktivieren Sie den Schlüssel oder erstellen Sie einen neuen
402insufficient_balance, insufficient_quotaDas frei verfügbare Guthaben reicht nicht einmal für die Mindestreservierung (insufficient_quota — derselbe Fall in der für das OpenAI SDK üblichen Form)Laden Sie Guthaben auf oder reduzieren Sie max_tokens
402api_key_quota_exhaustedDas gesamte Ausgabenlimit des Schlüssels ist aufgebrauchtErhöhen Sie das Schlüssellimit im Kundenbereich
402payment_disputedAuf dem Konto besteht eine Schuld aus einer angefochtenen ZahlungNeue Requests bleiben bis zur Begleichung ausgesetzt — kontaktieren Sie den Support
403api_key_expiredDer Schlüssel ist abgelaufenErstellen Sie einen neuen Schlüssel
403account_inactiveIhr Konto ist deaktiviertKontaktieren Sie den Support
403permission_deniedDer Schlüssel darf diesen Request nicht ausführen (zum Beispiel aufgrund der IP-Adresse)Prüfen Sie die Einschränkungen des Schlüssels
404model_not_foundDieses Modell existiert nichtGleichen Sie die ID mit /v1/models ab
404unsupported_endpointDas Modell funktioniert in diesem Format nichtWählen Sie ein anderes Format oder Modell
404not_foundDieser Pfad oder dieses Objekt existiert nicht (zum Beispiel ein Auftrag)Prüfen Sie Adresse und ID
409duplicate_requestDer Vorgang mit demselben Idempotenzschlüssel wurde bereits angenommen und möglicherweise abgeschlossenPrüfen Sie das Ergebnis des ersten Vorgangs; senden Sie keinen neuen
409not_ready, video_not_readyDas Video oder ein anderer Auftrag ist noch nicht fertigFragen Sie den Status später erneut ab
409, 503result_pending_checkDas Ergebnis des Requests wird noch geprüft. Bei einem Videoauftrag zeigt dies das Flag result_pending_check: true in der Statusantwort an; der Auftrag selbst bleibt in_progressSenden Sie den Request nicht erneut — der Status erscheint im Verlauf (GET https://ailoot.ai/api/v1/usage). Erstellen Sie einen Videoauftrag nicht erneut: Prüfen Sie ihn später über GET /v1/videos/{id}
410model_retiredDas Modell wird nicht mehr angebotenWählen Sie eine neue Version in GET /v1/models
413request_too_largeDer Request-Body ist zu großVerkleinern Sie die Dateien oder kürzen Sie den Verlauf
429rate_limit_exceeded, gateway_concurrency_limit, gateway_queue_fullZu viele Requests oder gleichzeitige Requests Ihres KontosWarten Sie (Header Retry-After, üblicherweise 10 s) und versuchen Sie es erneut
429usage_limit_reachedDas Ausgabenlimit des Schlüssels für ein Zeitfenster ist aufgebraucht (5 Stunden, 1 Tag oder 7 Tage)Warten Sie auf ein neues Zeitfenster oder erhöhen Sie das Schlüssellimit
500internal_errorAiloot-FehlerKontaktieren Sie den Support mit der Request ID
502invalid_model_response, empty_response, incomplete_responseDas Modell hat eine ungültige, leere oder unvollständige Antwort geliefertSuchen Sie die Request ID im Verlauf des Kundenbereichs. Ist dort ein Ergebnis oder eine Abbuchung vorhanden, erzeugt eine Wiederholung einen zweiten kostenpflichtigen Request. Ein fehlender Eintrag belegt weder, dass der Request nicht gesendet wurde, noch, dass er nicht ausgeführt wurde: Senden Sie ihn bei unbekanntem Sendestatus nicht erneut; wenden Sie sich mit der Request ID an den Support.
502result_not_deliveredDas Ergebnis wurde aufgrund eines Fehlers von Ailoot nicht ausgeliefert; die Reservierung wurde freigegeben bzw. die Abbuchung erstattetSie können den Request erneut senden
503model_overloadedDas Modell ist vorübergehend überlastetBei X-Should-Retry: true wiederholen Sie den Request nach Retry-After Sekunden; bei false prüfen Sie zuerst die Request ID im Verlauf
503model_unavailableDas Modell ist vorübergehend nicht verfügbarWählen Sie ein anderes Modell. Bei X-Should-Retry: true wiederholen Sie den Request nach Retry-After Sekunden; bei false prüfen Sie zuerst die Request ID im Verlauf
503service_unavailableVorübergehende Störung bei AilootBei X-Should-Retry: true wiederholen Sie den Request nach Retry-After Sekunden; bei false prüfen Sie zuerst die Request ID im Verlauf
503charge_not_confirmedKeine Antwort ausgeliefert: Die Abbuchung konnte nicht bestätigt werden; die Reservierung wurde freigegeben, es wurde nichts abgebuchtBei X-Should-Retry: true wiederholen Sie den Request nach Retry-After Sekunden; bei false prüfen Sie zuerst die Request ID im Verlauf
504model_timeoutDas Modell hat nicht rechtzeitig geantwortet; das Ergebnis kann noch erscheinenSenden Sie den Request erst erneut, nachdem Sie die Request ID im Verlauf geprüft haben

Die Codes für Modellantworten und Ergebnisprüfung (502, 503 und 504) beziehen sich nun auf das Modell oder den Request: model_unavailable, model_timeout, invalid_model_response, incomplete_response, charge_not_confirmed und result_pending_check. Vergleicht Ihr Code error.code mit früheren Werten, ersetzen Sie diese durch die Codes der Tabelle; bei der Zuordnung alter zu neuen Codes hilft der Support.

Wann Sie einen Request wiederholen können

  • Prüfen Sie zuerst X-Should-Retry: Bei false, result_pending_check oder model_timeout wiederholen Sie nicht automatisch. Suchen Sie die Request ID im Verlauf des Kundenbereichs: Dort sehen Sie Ergebnis und Abbuchung.
  • Eine Wiederholung ist bei X-Should-Retry: true sicher: Warten Sie Retry-After Sekunden. Bei 5xx reicht der Code allein nicht aus: Das Ergebnis könnte bereits vorliegen. Prüfen Sie zuerst den Verlauf im Kundenbereich oder kontaktieren Sie den Support mit der Request ID. Das ist besonders wichtig bei Bildern, Video, Musik und langen Agentenschritten.
  • Eine Wiederholung hilft nicht: 400, 401, 402, 403, 404 — korrigieren Sie zuerst Request, Schlüssel oder Guthaben.

Limits

Request-Häufigkeit und gleichzeitige Requests sind für Ihr gesamtes Konto begrenzt, nicht je Schlüssel. Bei Überschreitung erhalten Sie 429 rate_limit_exceeded mit dem Header Retry-After: 10. Ist das Modell selbst überlastet — 503 model_overloaded mit Retry-After: 30. Benötigen Sie eine höhere Last, kontaktieren Sie den Support.

Ausgabenlimits werden je Schlüssel festgelegt: gesamtes Limit — 402 api_key_quota_exhausted, Zeitfenster von 5 Stunden, 1 Tag und 7 Tagen — 429 usage_limit_reached. Mehr dazu — Schlüssel und API-Adresse.

NVIDIA-Modelle: Warteschlange

Die Modellliste lässt sich auch ohne Guthaben abrufen; für eine Generierung muss die Reservierung gedeckt sein. NVIDIA-Modelle (Nemotron und andere) verwenden eine gemeinsame Warteschlange: Bei hoher Last kann die Antwort später eintreffen oder ein Fehler „Modell vorübergehend überlastet“ mit dem Header Retry-After erscheinen — versuchen Sie es nach der angegebenen Zeit erneut. Die Preise stehen im Katalog; abgerechnet wird wie bei den übrigen Modellen.

Größenlimits legt das Modell fest: Kontextfenster (wie viele Tokens Sie senden können) und maximale Antwortlänge. Sie stehen im Katalog.

Verlauf und Ausgaben

Verlauf und Ausgaben · GET https://ailoot.ai/api/v1/usage · JWT · Authorization: Bearer $TOKEN

JWT ≠ sk-… · Anmeldung und Sitzungen

Noch Fragen? Senden Sie uns die Request ID und eine Beschreibung — wir helfen Ihnen weiter.Support kontaktieren