Quickstart: Uw eerste Web IQ API-aanroepen maken

Maak binnen een paar minuten uw eerste Microsoft Web IQ REST API-aanroep. U zoekt op internet, inspecteert het antwoord en extraheert vervolgens inhoud uit een bekende URL.

API-sleutels zijn de snelste manier om Web IQ te evalueren. Gebruik Microsoft Entra ID voor productieworkloads.

Prerequisites

Tip

Gebruik de Web IQ Playground om aanvragen vanuit de browser te verzenden en code te genereren in cURL, Python, JavaScript, C#, Java, Go en Ruby.

1. Sla uw API-sleutel op

Plaats de sleutel in een omgevingsvariabele, zodat deze niet in de aanvraagvoorbeelden wordt herhaald en niet in uw broncode wordt geplaatst.

macOS of Linux

export WEBIQ_API_KEY="your-api-key"

Windows PowerShell

$env:WEBIQ_API_KEY="your-api-key"

Warning

Sla uw sleutel niet op in versiebeheer en stel deze niet bloot in browser- of client-sidecode. Sla productie-inloggegevens op in een secretmanager.

2. Zoeken op internet

Gebruik Web Search wanneer u een vraag of query hebt en wilt dat Web IQ relevante pagina's detecteert en rangschikt.

U wordt aangeraden om maxResults = 10, contentFormat = passage en maxLength = 3000 in elke aanvraag in te stellen als een geoptimaliseerd operationeel punt. Van daaruit kunt u deze instellingen verfijnen op basis van uw use-case.

Eindpunt:POST https://api.microsoft.ai/v3/search/web

cURL

curl --request POST "https://api.microsoft.ai/v3/search/web" \
  --header "x-apikey: $WEBIQ_API_KEY" \
  --header "content-type: application/json" \
  --data '{
    "query": "latest developments in retrieval augmented generation",
    "maxResults": 10,
    "contentFormat": "passage",
    "maxLength": 3000
  }'

Python

import os
import json
import requests

response = requests.post(
    "https://api.microsoft.ai/v3/search/web",
    headers={
        "x-apikey": os.environ["WEBIQ_API_KEY"],
        "content-type": "application/json",
    },
    json={
        "query": "latest developments in retrieval augmented generation",
        "maxResults": 10,
        "contentFormat": "passage",
        "maxLength": 3000,
    },
    timeout=30,
)
response.raise_for_status()
print(json.dumps(response.json(), indent=2))

JavaScript

Sla dit voorbeeld op als search.mjs en voer het uit met node search.mjs.

const response = await fetch("https://api.microsoft.ai/v3/search/web", {
  method: "POST",
  headers: {
    "x-apikey": process.env.WEBIQ_API_KEY,
    "content-type": "application/json",
  },
  body: JSON.stringify({
    query: "latest developments in retrieval augmented generation",
    maxResults: 10,
    contentFormat: "passage",
    maxLength: 3000,
  }),
});

if (!response.ok) {
  throw new Error(`Web Search failed: ${response.status} ${await response.text()}`);
}

console.log(JSON.stringify(await response.json(), null, 2));

3. Het antwoord begrijpen

Een geslaagde zoekopdracht op internet retourneert een webResults array. In dit verkorte voorbeeld ziet u de velden die u het vaakst gebruikt:

{
  "webResults": [
    {
      "title": "Example result",
      "url": "https://example.com/article",
      "content": "The query-relevant passage extracted from the page...",
      "crawledAt": "2026-07-18T12:00:00Z"
    }
  ],
  "traceId": "00000000000000000000000000000000"
}
  • title en url identificeren de bron.
  • content bevat de query-relevante passage omdat in de aanvraag contentFormat: "passage" is gebruikt.
  • traceId helpt Web IQ Support een aanvraag te onderzoeken.

In REST-antwoorden en MCP-hulpprogrammaresultaten worden modelvelden met null, lege tekenreeks ("") of lege lijst/array ([]) weggelaten, inclusief velden van geneste resultaatobjecten. Behandel een afwezig tekenreeksveld als niet beschikbaar en een afwezig lijstveld als zonder items. Tekenreeksen met alleen witruimte, false, 0, lege woordenboeken, afzonderlijke array-/woordenboekvermeldingen en ingesloten onbewerkte JSON blijven behouden. Hoofdniveau-arrays en protocol-envelopcollecties zoals MCP content zijn ongewijzigd.

Zie de webzoekopdrachten-API-verwijzing voor alle parameters en antwoordvelden.

4. Kies Web zoeken of Bladeren

Beginnen met Gebruiken Wat u krijgt
Een vraag of zoekquery Zoeken op internet Gerangschikte pagina’s met zoekopdrachtrelevante inhoud
Een specifieke URL navigeren Geëxtraheerde inhoud van die pagina

Een algemene workflow voor onderbouwing maakt gebruik van beide eindpunten: zoek naar relevante bronnen, selecteer een resultaat-URL en blader vervolgens door die URL wanneer u meer volledige pagina-inhoud nodig hebt.

5. Inhoud extraheren uit een URL

Gebruik Browse wanneer u al weet welke pagina u wilt lezen. liveCrawl: "fallback" vraagt web-IQ om de pagina te verkennen wanneer deze nog niet beschikbaar is in de index.

Eindpunt:POST https://api.microsoft.ai/v3/browse

cURL

curl --request POST "https://api.microsoft.ai/v3/browse" \
  --header "x-apikey: $WEBIQ_API_KEY" \
  --header "content-type: application/json" \
  --data '{
    "url": "https://news.microsoft.com/source/",
    "contentFormat": "markdown",
    "maxLength": 3000,
    "liveCrawl": "fallback"
  }'

Python

import os
import json
import requests

response = requests.post(
    "https://api.microsoft.ai/v3/browse",
    headers={
        "x-apikey": os.environ["WEBIQ_API_KEY"],
        "content-type": "application/json",
    },
    json={
        "url": "https://news.microsoft.com/source/",
        "contentFormat": "markdown",
        "maxLength": 3000,
        "liveCrawl": "fallback",
    },
    timeout=30,
)
response.raise_for_status()
print(json.dumps(response.json(), indent=2))

JavaScript

Sla dit voorbeeld op als browse.mjs en voer het uit met node browse.mjs.

const response = await fetch("https://api.microsoft.ai/v3/browse", {
  method: "POST",
  headers: {
    "x-apikey": process.env.WEBIQ_API_KEY,
    "content-type": "application/json",
  },
  body: JSON.stringify({
    url: "https://news.microsoft.com/source/",
    contentFormat: "markdown",
    maxLength: 3000,
    liveCrawl: "fallback",
  }),
});

if (!response.ok) {
  throw new Error(`Browse failed: ${response.status} ${await response.text()}`);
}

console.log(JSON.stringify(await response.json(), null, 2));

Een geslaagde 200 respons bevat de pagina url, title, geëxtraheerd content, en een traceId. Een live verkenning kan 202 met retryAfter retourneren; wacht die tijd af en verzend dezelfde aanvraag opnieuw. Zie de naslaginformatie over de browse-API voor het volledige antwoordcontract.

Troubleshooting

Status Wat u moet controleren
401 Unauthorized Controleer of WEBIQ_API_KEY is ingesteld en de aanvraag deze in de x-apikey header verzendt.
415 Unsupported Media Type Verzend content-type: application/json.
429 Too Many Requests Wacht voordat u het opnieuw probeert en verlaag de aanvraagfrequentie.
Bladeren 404 Not Found Controleer of de URL openbaar en geldig is. Gebruik liveCrawl: "fallback" wanneer geïndexeerde inhoud mogelijk niet beschikbaar is.
Bladeren 202 Accepted Wacht op de geretourneerde retryAfter wachttijd en voer dezelfde aanvraag opnieuw uit.

Voor andere fouten slaat u de traceId op en zie Foutafhandeling of neemt u contact op met web IQ-ondersteuning.

Volgende stappen