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

Antwortformat: jedes Feld einer Suche erklärt

Eine Suchantwort ist ein einziges JSON-Objekt: einige Felder zum Aufruf, dann ein sortiertes results-Array. Jedes Ergebnis gibt an, ob seine Seite gelesen wurde, und enthält dann den Inhalt. Hier finden Sie jedes Feld, mit den Status, die ein Agent behandeln sollte.

Zuletzt aktualisiert: · 6 Min. Lesezeit

Kurze Antwort

Was gibt die LLMWebSearch API für eine Suche zurück?

LLMWebSearch gibt JSON mit query, created_at, credits_used und einem sortierten results-Array zurück. Jedes Ergebnis hat seine Position, Titel, URL, Host und Snippet sowie einen content_status; wenn er ok ist, steht der Hauptinhalt der Seite in content mit einem word_count. Eine Suche mit bis zu 3 gelesenen Seiten kostet 1 Credit, ab 1,20 $/1K Suchanfragen Stand Oktober 2026. Ohne KYC; mit Krypto bezahlen.

Welche Felder beschreiben den Aufruf?

Oberste Ebene einer /search-Antwort.

FieldTypeBedeutung
querystringDie Suchanfrage, wie wir sie ausgeführt haben, nach dem Entfernen von Leerzeichen
created_atstringWann die Suche ausgeführt wurde, ISO 8601 in UTC
credits_usedintegerWas der Aufruf gekostet hat: 1 oder 2, wenn read 4 bis 10 war
resultsarraySortierte Ergebnisse, bestes zuerst, höchstens max_results Einträge

Welche Felder enthält jedes Ergebnis?

Ein Feld, das die Seite oder das Suchergebnis nicht liefert, wird weggelassen statt leer gesendet.

FieldTypeWenn vorhandenBedeutung
positionintegerImmerPosition in der Suche, beginnend bei 1
titlestringImmerTitel des Ergebnisses
urlstringImmerAdresse der Seite
hoststringImmerHostname der Seite, praktisch zum Gruppieren oder Zitieren
snippetstringImmerKurzer Auszug, den die Suche anzeigt
published_atstringWenn ein Datum bekannt istVeröffentlichungsdatum von der Seite oder aus dem Suchergebnis
content_statusstringImmerOb die Seite gelesen wurde und falls nicht, warum
contentstringWenn content_status gleich ok istHauptinhalt als Markdown oder reiner Text, abgeschnitten bei max_chars
word_countintegerWenn content_status gleich ok istWörter im gesamten extrahierten Text, gezählt vor dem Abschneiden
target_statusintegerMit target_refusedDer HTTP-Status, den die Website geantwortet hat, etwa 403 oder 429

Was bedeutet jeder content_status?

Nichts davon ändert den Preis der Suchanfrage. Diese Angaben beschreiben eine einzelne Seite, nie den gesamten Aufruf.

content_statusBedeutungWas ein Agent tun sollte
okDie Seite wurde gelesen; content enthält ihren HaupttextVerwenden Sie ihn und zitieren Sie die url
not_requestedDas Ergebnis liegt über dem read-ZählerErhöhen Sie read oder lesen Sie die Seite bei Bedarf über /extract
blocked_by_robotsDie robots.txt der Website erlaubt unserem Reader auf dieser Seite keinen ZugriffVerlassen Sie sich auf das Snippet oder eine andere Quelle
blocked_by_site_policyDie Website deklariert Content-Signal: ai-input=noVerlassen Sie sich auf das Snippet oder eine andere Quelle
target_refusedDie Website hat die Anfrage abgelehnt; siehe target_statusVersuchen Sie die Seite nicht erneut; nutzen Sie eine andere Quelle
fetch_failedDNS-, TLS- oder Verbindungsfehler oder die Seite existiert nicht mehrVersuchen Sie ein anderes Ergebnis; ein späterer erneuter Versuch kann klappen
fetch_timeoutDie Seite hat nicht innerhalb von 15 Sekunden geantwortetVersuchen Sie ein anderes Ergebnis; ein späterer erneuter Versuch kann klappen
unsupported_contentDer Link ist eine Datei, die wir nicht in Text umwandeln könnenVerwenden Sie das Snippet oder ein anderes Ergebnis

Wie sieht eine vollständige Antwort aus?

Das folgende Beispiel fragte 5 Ergebnisse ab, von denen die ersten 4 gelesen wurden, daher kostete es 2 Credits. Ergebnisse 1 und 3 wurden gelesen. Ergebnis 2 gehört zu einer Website, deren robots.txt unseren Reader aussperrt, Ergebnis 4 hat die Anfrage abgelehnt, und Ergebnis 5 liegt über read. Titel, URLs und Werte sind beispielhaft.

POST /search-Antwort (beispielhaft)
{
  "query": "how to rotate api keys without downtime",
  "created_at": "2026-10-22T10:15:04Z",
  "credits_used": 2,
  "results": [
    {
      "position": 1,
      "title": "Rotating API keys",
      "url": "https://docs.example.com/security/key-rotation",
      "host": "docs.example.com",
      "snippet": "Create a second key, deploy it everywhere, then revoke the first one.",
      "published_at": "2026-09-30",
      "content_status": "ok",
      "content": "# Rotating API keys\n\n## Zero-downtime rotation\n\n1. Create a second key.\n2. Deploy it to every service.\n3. Revoke the old key.",
      "word_count": 948
    },
    {
      "position": 2,
      "title": "Key rotation checklist",
      "url": "https://blog.example.org/key-rotation-checklist",
      "host": "blog.example.org",
      "snippet": "Keep two keys active during the switch and alert on the old one.",
      "content_status": "blocked_by_robots"
    },
    {
      "position": 3,
      "title": "Secrets management basics",
      "url": "https://security.example.net/secrets-basics",
      "host": "security.example.net",
      "snippet": "Never commit keys to a repository.",
      "content_status": "ok",
      "content": "# Secrets management basics\n\n**Never** commit keys to a repository.",
      "word_count": 1310
    },
    {
      "position": 4,
      "title": "Key management service guide",
      "url": "https://cloud.example.com/kms-guide",
      "host": "cloud.example.com",
      "snippet": "Store keys in a managed vault and rotate them on a schedule.",
      "content_status": "target_refused",
      "target_status": 403
    },
    {
      "position": 5,
      "title": "API key best practices",
      "url": "https://dev.example.com/api-key-best-practices",
      "host": "dev.example.com",
      "snippet": "Scope each key to one service and one environment.",
      "content_status": "not_requested"
    }
  ]
}

Welche Ergebnisse erhalten einen Seitenstatus, der nicht not_requested ist?

Nur die ersten read Ergebnisse und jeder Eintrag eines /extract-Aufrufs. Das sind die Seiten, die unser Reader tatsächlich versucht hat. Alles nach der Anzahl von read bleibt not_requested, was auch immer die Seite geantwortet hätte.

Die Reihenfolge ändert sich nie: Der Reader arbeitet an Position 1, 2, 3 und so weiter, nie an einem späteren Ergebnis statt an einem früheren, das fehlgeschlagen ist. Wenn ein Agent einen Ersatz für eine abgelehnte Seite braucht, kann er das nächste Ergebnis über /extract lesen.

Wie sieht eine Extract-Antwort aus?

/extract gibt credits_used und ein results-Array in der Reihenfolge der URLs zurück, die Sie gesendet haben. Jeder Eintrag hat die url und eine content_status; mit ok kommen title, content und word_count hinzu, mit target_refused kommt target_status hinzu. Es gibt kein position, host oder snippet, weil keine Suche lief.

Die Extract-Referenz zeigt ein vollständiges Beispiel und erklärt, wie die Credits dafür gezählt werden.

Wie mache ich aus Ergebnissen Kontext für ein Modell?

Nummerieren Sie die Quellen, behalten Sie die URL neben jeder bei und übergeben Sie nur, was das Modell braucht. Ein kompaktes Layout funktioniert gut: [1] title — url, dann der Inhalt dieser Seite, dann die nächste Quelle. Bitten Sie das Modell, mit denselben Nummern zu zitieren.

Wenn ein Ergebnis keinen Inhalt hat, geben Sie dem Modell stattdessen seinen Snippet und sagen Sie, dass es nur ein Snippet ist. So vermeiden Sie Antworten, die auf einer Seite basieren, die das Modell nie gesehen hat. Die Python-Seite enthält eine kurze Schleife, die all das innerhalb eines Token-Budgets erledigt.

Antwortformat: häufige Fragen

Ist der Inhalt immer Markdown?

Standardmäßig Markdown. Senden Sie format: "text", um reinen Text ohne Markup zu erhalten, zum Beispiel wenn Sie nur Wörter zählen oder Seiten klassifizieren. Der Feldname bleibt content.

Warum fehlt published_at bei manchen Ergebnissen?

Viele Seiten geben kein Datum an, und manche Suchergebnisse zeigen auch keines. In diesem Fall wird das Feld weggelassen, prüfen Sie also, ob es vorhanden ist, bevor Sie es verwenden.

Können später neue Felder hinzugefügt werden?

Ja. In Version 1 können Felder hinzugefügt, aber nie umbenannt oder entfernt werden. Schreiben Sie Ihren Parser so, dass er unbekannte Felder ignoriert.

Wird der Inhalt auf Ihrer Seite gespeichert?

Nein. Wir trainieren kein Modell mit Ihren Suchanfragen oder mit dem, was die API zurückgibt, und wir stellen keine eigene Regel gegen das Speichern von Ergebnissen auf; die Rechte der Websites, deren Seiten Sie lesen, gelten weiterhin. Unser Request-Log enthält nur eine kurze Spur jedes Aufrufs, beschrieben auf der Datenschutzseite.

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

API-Schlüssel erhalten