Zonder KYC — geen ID, geen selfie, geen documenten. Betalen met crypto: BTC, USDT, USDC, ETH, SOL, LTC
Taal: Nederlands
Vraag een API-sleutel aan

Docs · API-referentie

Responseformaat: elk veld van een zoekopdracht, uitgelegd

Een zoekantwoord is één JSON-object: een paar velden over de aanroep, dan een gerangschikte results-array. Elk resultaat zegt of de webpagina is gelezen en bevat zo ja de hoofdinhoud. Hier is elk veld, met de statussen die een agent moet afhandelen.

Laatst bijgewerkt: · 6 min leestijd

Snel antwoord

Wat retourneert de LLMWebSearch API voor een zoekopdracht?

LLMWebSearch retourneert JSON met de query, created_at, credits_used en een gerangschikte results-array. Elk resultaat heeft zijn positie, titel, URL, host en snippet, en een content_status; als die ok is, staat de hoofdinhoud van de webpagina in content met een word_count. Eén zoekopdracht met maximaal 3 gelezen pagina's kost 1 credit, vanaf US$ 1,20/1K zoekopdrachten per oktober 2026. Zonder KYC; betalen met crypto.

Welke velden beschrijven de aanroep?

Topniveau van een /search-response.

FieldTypeBetekenis
querystringDe zoekopdracht zoals wij die hebben uitgevoerd, na het trimmen van spaties
created_atstringWanneer de zoekopdracht liep, ISO 8601 in UTC
credits_usedintegerWat de aanroep kostte: 1, of 2 wanneer read 4 tot 10 was
resultsarrayGerangschikte resultaten, beste eerst, maximaal max_results items

Welke velden bevat elk resultaat?

Een veld dat de webpagina of het zoekresultaat niet levert, wordt weggelaten in plaats van leeg verzonden.

FieldTypeIndien aanwezigBetekenis
positionintegerAltijdPositie in de zoekopdracht, beginnend bij 1
titlestringAltijdTitel van het resultaat
urlstringAltijdAdres van de webpagina
hoststringAltijdHostnaam van de webpagina, handig voor groeperen of citeren
snippetstringAltijdKorte samenvatting die de zoekopdracht toont
published_atstringWanneer een datum bekend isPublicatiedatum van de pagina of het zoekresultaat
content_statusstringAltijdOf de pagina is gelezen, en zo niet, waarom
contentstringWanneer content_status ok isHoofdinhoud als Markdown of platte tekst, afgekapt op max_chars
word_countintegerWanneer content_status ok isWoorden in de hele geëxtraheerde tekst, geteld vóór het afkappen
target_statusintegerMet target_refusedDe HTTP-status die de site antwoordde, zoals 403 of 429

Wat betekent elke content_status?

Geen van deze verandert de prijs van de zoekopdracht. Ze beschrijven één pagina, nooit de hele call.

content_statusBetekenisWat een agent moet doen
okDe pagina is gelezen; content bevat de hoofdtekstGebruik het en citeer de url
not_requestedHet resultaat valt buiten het aantal van readVerhoog read, of lees het indien nodig via /extract
blocked_by_robotsDe robots.txt van de site staat onze reader niet toe op deze paginaVertrouw op het snippet of een andere bron
blocked_by_site_policyDe site verklaart Content-Signal: ai-input=noVertrouw op het snippet of een andere bron
target_refusedDe site weigerde het verzoek; zie target_statusProbeer de pagina niet opnieuw; gebruik een andere bron
fetch_failedDNS-, TLS- of verbindingsfout, of de pagina bestaat niet meerProbeer een ander resultaat; een latere poging kan werken
fetch_timeoutDe pagina antwoordde niet binnen 15 secondenProbeer een ander resultaat; een latere poging kan werken
unsupported_contentDe link is een bestand dat we niet naar tekst kunnen omzettenGebruik het snippet of een ander resultaat

Hoe ziet een volledig response eruit?

Het onderstaande voorbeeld vroeg 5 resultaten aan waarvan de eerste 4 werden gelezen, dus het kostte 2 credits. Resultaten 1 en 3 werden gelezen. Resultaat 2 hoort bij een site waarvan de robots.txt onze reader buiten houdt, resultaat 4 weigerde het verzoek, en resultaat 5 valt buiten read. Titels, URL's en waarden zijn illustratief.

POST /search response (illustratief)
{
  "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"
    }
  ]
}

Welke resultaten krijgen een paginastatus anders dan not_requested?

Alleen de eerste read resultaten, en elk item van een /extract-aanroep. Dat zijn de pagina's die onze reader daadwerkelijk heeft geprobeerd. Alles na de read-telling blijft not_requested, wat de site ook zou hebben geantwoord.

De volgorde verandert nooit: de reader werkt op posities 1, 2, 3 enzovoort, nooit op een later resultaat in plaats van een eerder resultaat dat mislukte. Als een agent een vervanging nodig heeft voor een geweigerde pagina, kan het het volgende resultaat lezen via /extract.

Hoe ziet een extract-respons eruit?

/extract retourneert credits_used en een results-array in de volgorde van de URL's die je hebt verzonden. Elk item heeft de url en een content_status; met ok voegt het title, content en word_count toe, en met target_refused voegt het target_status toe. Er is geen position, host of snippet, omdat er geen zoekopdracht is uitgevoerd.

De extract-referentie toont een compleet voorbeeld en legt uit hoe de credits worden geteld.

Hoe zet ik resultaten om in context voor een model?

Nummer de bronnen, houd de URL bij elk ervan en geef alleen door wat het model nodig heeft. Een compacte opzet werkt goed: [1] title — url, dan de inhoud van die pagina, dan de volgende bron. Vraag het model om te citeren met dezelfde nummers.

Als een resultaat geen inhoud heeft, geef het model dan de snippet en zeg dat het alleen een snippet is. Zo voorkom je antwoorden die zijn gebaseerd op een pagina die het model nooit heeft gezien. De Python-pagina heeft een korte loop die dit allemaal doet binnen een tokenbudget.

Responsformaat: veelgestelde vragen

Is de inhoud altijd Markdown?

Standaard Markdown. Stuur format: "text" om platte tekst zonder opmaak te krijgen, bijvoorbeeld als je alleen woorden telt of pagina's classificeert. De veldnaam blijft content.

Waarom ontbreekt published_at bij sommige resultaten?

Veel pagina's vermelden geen datum, en sommige zoekresultaten tonen er ook geen. In dat geval wordt het veld weggelaten, dus controleer of het aanwezig is voordat je het gebruikt.

Kunnen er later nieuwe velden verschijnen?

Ja. In versie 1 kunnen velden worden toegevoegd, maar ze worden nooit hernoemd of verwijderd. Schrijf je parser zo dat velden die hij niet kent worden genegeerd.

Wordt de inhoud aan jullie kant opgeslagen?

Nee. We trainen geen enkel model op je zoekopdrachten of op wat de API teruggeeft, en we voegen geen eigen regel toe tegen het opslaan van resultaten; de rechten van de sites waarvan je pagina's leest, gelden nog steeds. Ons requestlog bewaart alleen een korte trace van elke aanroep, beschreven op de privacy-pagina.

Vanaf US$ 1,20/1K zoekopdrachten · zonder KYC

Vraag een API-sleutel aan