Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Effectuez votre premier appel à l’API REST Microsoft Web IQ en quelques minutes. Vous allez effectuer une recherche sur le web, inspecter la réponse, puis extraire du contenu à partir d’une URL connue.
Les clés API sont le moyen le plus rapide d’évaluer Web IQ. Pour les charges de travail de production, utilisez Microsoft Entra ID.
Prerequisites
- Une clé d’API Web IQ provenant de Profile Management.
Tip
Utilisez Web IQ Playground pour envoyer des requêtes à partir du navigateur et générer du code dans cURL, Python, JavaScript, C#, Java, Go et Ruby.
1. Stockez votre clé API
Placez la clé dans une variable d’environnement afin que les exemples de requête ne la répètent pas et ne l’incluent pas dans votre code source.
macOS ou Linux
export WEBIQ_API_KEY="your-api-key"
Windows PowerShell
$env:WEBIQ_API_KEY="your-api-key"
Warning
Ne commitez pas votre clé dans le contrôle de version et ne l’exposez pas dans le code côté navigateur ou côté client. Stockez les informations d’identification de production dans un gestionnaire de secrets.
2. Rechercher sur le web
Utilisez la recherche web lorsque vous avez une question ou une requête et souhaitez que Web IQ découvre et classe les pages pertinentes.
Nous vous recommandons de définir maxResults = 10, contentFormat = passageet maxLength = 3000 sur chaque requête en tant que point d’exploitation optimisé. À partir de là, vous pouvez affiner ces paramètres en fonction de votre cas d’usage.
Point de terminaison :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
Enregistrez cet exemple comme search.mjs et exécutez-le avec 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. Comprendre la réponse
Une recherche web réussie retourne un tableau webResults. Cet exemple abrégé montre les champs que vous utiliserez le plus souvent :
{
"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"
}
-
titleeturlidentifient la source. -
contentcontient le passage pertinent pour la requête, car la requête utilisaitcontentFormat: "passage". -
traceIdaide web IQ Support à examiner une demande.
Dans les réponses REST et les résultats de l’outil MCP, les champs de modèle avec des valeurs null, de chaîne vide ("") ou de liste/tableau vide ([]) sont omis, y compris les champs d’objets de résultats imbriqués. Traitez un champ de chaîne absent comme indisponible et un champ de liste absent comme n’ayant aucun élément. Les chaînes contenant uniquement des espaces, false, 0, les dictionnaires vides, les entrées de tableau/dictionnaire individuelles et le JSON brut incorporé sont conservés. Les tableaux racines et les collections d’enveloppes de protocole telles que MCP content sont inchangés.
Consultez la référence de l’API Recherche web pour tous les paramètres et champs de réponse.
4. Choisir la recherche Web ou Parcourir
| Commencez par | Utiliser | Ce que vous obtenez |
|---|---|---|
| Une question ou une requête de recherche | Recherche web | Pages classées avec du contenu pertinent pour la requête |
| Une URL spécifique | Parcourir | Contenu extrait de cette page |
Un flux de travail de base courant utilise les deux points de terminaison API : recherchez des sources pertinentes, sélectionnez une URL de résultat, puis parcourez cette URL lorsque vous avez besoin d’un contenu de page plus complet.
5. Extraire du contenu d’une URL
Utilisez Browse lorsque vous connaissez déjà la page que vous souhaitez lire.
liveCrawl: "fallback" demande à Web IQ d’analyser la page lorsqu’elle n’est pas déjà disponible dans l’index.
Point de terminaison :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
Enregistrez cet exemple comme browse.mjs et exécutez-le avec 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));
Une réponse réussie 200 inclut la page url, title, l’élément extrait content, et un traceId. Une analyse dynamique peut retourner 202 avec retryAfter; attendre cette durée, puis renvoyer la même requête. Consultez la référence de l’API Browse pour le contrat de réponse complet.
Troubleshooting
| Status | Que vérifier |
|---|---|
401 Unauthorized |
Vérifiez que WEBIQ_API_KEY est défini et que la requête l’envoie dans l’en-tête x-apikey. |
415 Unsupported Media Type |
Envoyer content-type: application/json. |
429 Too Many Requests |
Attendez avant de réessayer et réduisez la fréquence des requêtes. |
Parcourir 404 Not Found |
Vérifiez que l’URL est publique et valide. Utiliser liveCrawl: "fallback" lorsque le contenu indexé peut être indisponible. |
Parcourir 202 Accepted |
Attendez la durée renvoyée retryAfter, puis réessayez la même requête. |
Pour d’autres échecs, enregistrez le traceId et consultez la gestion des erreurs ou contactez le support Web IQ.
Étapes suivantes
- Explorez les références de l’API Web Search et Parcourir.
- Utilisez les sdk Python et TypeScript.
- Installez le serveur MCP dans Claude Code, Cursor ou VS Code.
- Configurez l’authentification de production avec Microsoft Entra ID.