Snabbstart: Gör dina första WEB IQ API-anrop

Gör ditt första Microsoft WEB IQ REST API-anrop på några minuter. Du söker på webben, inspekterar svaret och extraherar sedan innehåll från en känd URL.

API-nycklar är det snabbaste sättet att utvärdera webb-IQ. Använd Microsoft Entra ID för produktionsarbetsbelastningar.

Prerequisites

Tip

Använd Web IQ Playground för att skicka begäranden från webbläsaren och generera kod i cURL, Python, JavaScript, C#, Java, Go och Ruby.

1. Lagra din API-nyckel

Placera nyckeln i en miljövariabel så att exempel på begäran inte upprepar den och du inte placerar den i källkoden.

macOS eller Linux

export WEBIQ_API_KEY="your-api-key"

Windows PowerShell

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

Varning

Checka inte in nyckeln i versionshantering eller exponera den i webbläsaren eller kod på klientsidan. Lagra autentiseringsuppgifter för produktion i en hemlighetshanterare.

2. Sök på webben

Använd Webbsökning när du har en fråga eller sökfråga och vill att Web IQ ska identifiera och rangordna relevanta sidor.

Vi rekommenderar att du anger maxResults = 10, contentFormat = passage och maxLength = 3000 i varje begäran för optimal drift. Därifrån kan du finjustera de här inställningarna baserat på ditt användningsfall.

Slutpunkt: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

Spara det här exemplet som search.mjs och kör det med 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. Förstå svaret

En lyckad webbsökning returnerar en webResults matris. Det här förkortade exemplet visar de fält som du använder oftast:

{
  "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 och url identifierar källan.
  • content innehåller den frågereleventa passagen eftersom begäran använde contentFormat: "passage".
  • traceId hjälper Web IQ Support att undersöka en begäran.

I REST-svar och MCP-verktygsresultat utelämnas modellfält med null, tomma strängvärden ("") eller tomma list-/arrayvärden ([]), inklusive fält för kapslade resultatobjekt. Behandla ett frånvarande strängfält som otillgängligt och ett frånvarande listfält som att det inte har några element. Endast blankstegssträngar, false, 0, tomma ordböcker, enskilda array-/ordboksposter och inbäddad rå JSON bevaras. Rotmatriser och protokollomslutande samlingar som MCP content är oförändrade.

Se API-referensen för webbsökning för alla parametrar och svarsfält.

4. Välj Webbsökning eller Bläddra

Börja med Använd Vad du får
En fråga eller sökfråga Webbsökning Rangordnade sidor med frågerelevent innehåll
En specifik URL Bläddra Extraherat innehåll från den sidan

Ett vanligt grounding-arbetsflöde använder båda slutpunkter: sök efter relevanta källor, välj en resultat-URL och bläddra sedan i url:en när du behöver mer fullständigt sidinnehåll.

5. Extrahera innehåll från en URL

Använd Bläddra när du redan vet vilken sida du vill läsa. liveCrawl: "fallback" ber webb-IQ att crawla sidan när den inte redan är tillgänglig i indexet.

Slutpunkt: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

Spara det här exemplet som browse.mjs och kör det med 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));

Ett lyckat 200 svar innehåller sidan url, title, extraherad contentoch en traceId. En live-genomsökning kan returnera 202 med retryAfter; vänta så länge och skicka sedan samma begäran igen. Se API-referensen för Browse för det fullständiga svarskontraktet.

Troubleshooting

Status Vad du bör kontrollera
401 Unauthorized Bekräfta att WEBIQ_API_KEY har angetts och att begäran skickar den i rubriken x-apikey.
415 Unsupported Media Type Skicka content-type: application/json.
429 Too Many Requests Vänta innan du försöker igen och minska begärandefrekvensen.
Bläddra 404 Not Found Bekräfta att URL:en är offentlig och giltig. Använd liveCrawl: "fallback" när indexerat innehåll kanske inte är tillgängligt.
Bläddra 202 Accepted Vänta på den returnerade retryAfter väntetiden och försök sedan igen med samma begäran.

För andra fel, spara detta traceId och se Felhantering eller kontakta Web IQ Support.

Nästa steg