Ohne KYC — kein Ausweis, kein Selfie, keine Dokumente. Mit Krypto bezahlen: BTC, USDT, USDC, ETH, SOL, LTC
Sprache: Deutsch
API-Schlüssel erhalten

Docs · API reference

Fehler und Seitenstatus: was fehlgeschlagen ist und ob ein erneuter Versuch sinnvoll ist

Es gibt zwei Arten von Problemen. Ein HTTP-Fehler bedeutet, dass der gesamte Aufruf fehlgeschlagen ist, und er kostet nichts. Ein Seitenstatus bedeutet, dass die Suche funktioniert hat, aber eine Seite nicht gelesen werden konnte; er steht innerhalb einer normalen 200-Antwort. Agents sollten beide unterschiedlich behandeln.

Zuletzt aktualisiert: · 5 Min. Lesezeit

Kurze Antwort

Welche Fehler kann die LLMWebSearch API zurückgeben, und werden sie berechnet?

LLMWebSearch hat sechs HTTP-Fehler: 400 invalid_parameter, 401 invalid_api_key, 402 insufficient_credits, 429 rate_limited, 502 search_failed und 504 search_timeout. Keiner wird berechnet. Seiten, die nicht gelesen werden können, zeigen stattdessen einen content_status innerhalb eines 200. Eine funktionierende Suchanfrage kostet 1 Credit, ab 1,20 $/1K Suchanfragen Stand Oktober 2026. Ohne KYC; mit Krypto bezahlen.

Welche HTTP-Fehler gibt es?

Der Body ist immer {"error": {"code": "…", "message": "…"}}. Kein Fehler verbraucht ein Credit.

HTTPcodeUrsacheErneut versuchen?
400invalid_parameterEin erforderlicher Parameter fehlt oder ein Wert liegt außerhalb des gültigen BereichsNein: Anfrage korrigieren
401invalid_api_keyDer API-Schlüssel fehlt, ist falsch oder wurde widerrufenNein: API-Schlüssel prüfen
402insufficient_creditsDas Guthaben reicht nicht für diesen AufrufNein: Pack kaufen
429rate_limitedMehr Aufrufe pro Minute als das Konto erlaubtJa, nach einer Pause
502search_failedDie Suchanfrage konnte nicht abgeschlossen werdenJa, mit Backoff
504search_timeoutKein Suchergebnis innerhalb von 30 SekundenJa, mit Backoff

Wie unterscheidet sich ein Seitenstatus von einem Fehler?

Ein Seitenstatus beschreibt ein einzelnes Ergebnis, nicht den Aufruf. Die Suche lief, die Ergebnisse sind da, und credits_used ist wie gewohnt gesetzt. Nur der Inhalt dieser einen Seite fehlt, und content_status sagt warum: blocked_by_robots, blocked_by_site_policy, target_refused, fetch_failed, fetch_timeout oder unsupported_content.

Behandeln Sie diese nicht als Fehlschläge, bei denen die ganze Suche wiederholt werden muss. Nutzen Sie die anderen Ergebnisse, das Snippet der fehlenden Seite oder eine andere Quelle. Die Seite Antwortformat erklärt jeden Status in einer Tabelle.

Warum wiederholen Sie nie trotz einer Ablehnung?

Weil eine Ablehnung die Antwort der Webseite ist, und die respektieren wir. Unser Reader respektiert robots.txt: Er stellt sich als LLMWebSearch vor, befolgt die Regeln, die eine Website für ihn oder für alle Roboter schreibt, und lässt den Inhalt jeder Seite aus, die er nicht lesen darf. Eine Website, die in ihrer robots.txt Content-Signal: ai-input=no setzt, hält ihre Seiten aus dem Inhalt Ihrer Ergebnisse heraus. Wenn eine Webseite unseren Reader mit einem 403, einem 429 oder einer Challenge-Seite zurückweist, melden wir das als target_refused mit dem Status der Webseite in target_status.

Wenn eine Website unseren Reader abweist, kommt das Ergebnis ohne Inhalt und mit dem Status der Website zurück: Wir lösen niemals CAPTCHAs, melden uns nicht in Konten an und umgehen weder eine Sperre noch eine Paywall. Wir wiederholen auch nicht mit einer anderen Identität oder einem getarnten Browser. Ihr Agent sollte bei so einer Seite nicht in einer Schleife hängen: Das Ergebnis ändert sich nicht, und die Webseite hat Nein gesagt.

Wann sollte mein Code wiederholen?

Nur bei 429, 502 und 504. Warten Sie, dann versuchen Sie es erneut, verdoppeln Sie die Wartezeit jedes Mal und fügen Sie etwas Zufall hinzu, damit parallele Worker nicht im Gleichschritt wiederholen. Drei bis fünf Versuche reichen; danach melden Sie den Fehler.

Wiederholen Sie nie 400, 401 oder 402: Dieselbe Anfrage liefert dieselbe Antwort, bis Sie etwas ändern. Bei Seiten können fetch_failed und fetch_timeout später funktionieren, über eine neue Suchanfrage oder einen /extract-Aufruf. target_refused, blocked_by_robots und blocked_by_site_policy sind endgültig.

Python: 429, 502 und 504 mit exponentiellem Backoff wiederholen
import os
import random
import time

import requests

API = "https://llmwebsearch.com/api/v1/search"
HEADERS = {"Authorization": "Bearer " + os.environ["LLMWEBSEARCH_API_KEY"]}
RETRY_ON = {429, 502, 504}


def search(body, attempts=5):
    delay = 1.0
    for attempt in range(1, attempts + 1):
        resp = requests.post(API, headers=HEADERS, json=body, timeout=60)
        if resp.status_code == 200:
            return resp.json()
        err = resp.json().get("error", {})
        if resp.status_code not in RETRY_ON or attempt == attempts:
            raise RuntimeError(f"{resp.status_code} {err.get('code')}: {err.get('message')}")
        time.sleep(delay + random.uniform(0, delay / 2))
        delay = min(delay * 2, 30)


data = search({"q": "how to rotate api keys without downtime"})
unread = [r["url"] for r in data["results"] if r["content_status"] not in ("ok", "not_requested")]
print("credits:", data["credits_used"], "| pages not read:", unread)

Was soll ich bei 402 insufficient_credits tun?

Anhalten und aufladen. Der Aufruf wurde nicht ausgeführt und kostete nichts. Damit Sie nicht mitten in einem langen Job anhalten müssen, prüfen Sie zuerst Ihr Guthaben mit GET https://llmwebsearch.com/api/v1/credits, was kostenlos ist, und vergleichen Sie es mit der Anzahl der geplanten Suchanfragen. Denken Sie daran, dass eine Suche mit read über 3 zwei Credits braucht.

Credits stammen aus Packs, die Sie mit Ihrem Krypto-Guthaben kaufen. Search-Credits verfallen nicht: Was Sie diesen Monat nicht verbrauchen, ist nächstes Jahr noch da.

Wie bleibe ich unter dem Rate Limit?

Begrenzen Sie, wie viele Aufrufe gleichzeitig in Ihrem eigenen Code laufen. Jedes Konto hat ein Aufruflimit pro Minute, das im Dashboard angezeigt wird; fragen Sie den Support, und es kann erhöht werden. Ein kleiner Pool paralleler Worker, vier bis acht für die meisten Agenten, hält ein gleichmäßiges Tempo ohne Spitzen. Die Seiten Python und Node.js zeigen jeweils so einen Pool.

Wenn Sie dann einen 429 bekommen, pausieren Sie vor dem nächsten Versuch, statt ihn sofort abzufeuern. Ein sofortiger erneuter Versuch fügt nur weitere abgelehnte Aufrufe hinzu.

Fehler: häufige Fragen

Kostet eine Suche, bei der jede Seite abgelehnt wurde, trotzdem einen Credit?

Ja, wenn die Suche selbst funktioniert hat: Sie erhalten trotzdem die gerankten Ergebnisse und Snippets. Der Preis einer Suche hängt nicht davon ab, wie viele ihrer Seiten gelesen werden konnten.

Wird ein 401 durch einen widerrufenen Schlüssel verursacht?

Das kann sein. Ein widerrufener Schlüssel, ein Tippfehler, ein fehlendes Präfix Bearer oder ein Header, der uns nie erreicht hat, ergeben alle 401 invalid_api_key. Erstellen Sie einen API-Schlüssel pro Agent, App oder Teamkollegen und widerrufen Sie jeden davon im Dashboard, ohne die anderen zu berühren.

Warum hat eine Seite fetch_timeout zurückgegeben?

Seiten werden parallel gelesen, und eine Seite, die länger als 15 Sekunden braucht, wird ohne Inhalt zurückgegeben, damit sie nicht die ganze Antwort aufhält. Langsame Seiten antworten manchmal bei einem späteren Versuch.

Kann ich meine fehlgeschlagenen Aufrufe sehen?

Ja. Der Verlauf im Dashboard listet Ihre Aufrufe 30 Tage lang auf, auch fehlgeschlagene, mit ihrem Status und ihren Credits. Fehlgeschlagene Aufrufe zeigen 0 Credits.

Ab 1,20 $/1K Suchanfragen · ohne KYC

API-Schlüssel erhalten