Use this AI search playground to test fresh web retrieval before wiring SiftQ into agents, RAG workflows, or production search pipelines.
Run a natural language query, inspect structured context, and see how real-time retrieval helps reduce LLM hallucinations.
Read the API Documentation for every parameter and response shape.
Enter a query to test the SiftQ web search API.
Press⌘↵or click Send
// no response yetcurl --location 'https://api.siftq.com/v1/search' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
"q": "who is the most beautiful woman in the world",
"scope": "webpage",
"size": "10",
"format": "chat_completions",
"includeSummary": false,
"includeRawContent": false,
"conciseSnippet": false
}'import os
import requests
response = requests.post(
"https://api.siftq.com/v1/search",
headers={
"Authorization": f"Bearer {os.environ[39;SIFTQ_API_KEY39;]}",
"Accept": "application/json",
"Content-Type": "application/json",
},
json={
"q": "who is the most beautiful woman in the world",
"scope": "webpage",
"size": "10",
"format": "chat_completions",
"includeSummary": False,
"includeRawContent": False,
"conciseSnippet": False
},
timeout=20,
)
response.raise_for_status()
data = response.json()
# scope="webpage" returns results under "webpages"
for hit in data.get("webpages", []):
print(hit.get("title"), "—", hit.get("link"))const response = await fetch("https://api.siftq.com/v1/search", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.SIFTQ_API_KEY}`,
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify({
"q": "who is the most beautiful woman in the world",
"scope": "webpage",
"size": "10",
"format": "chat_completions",
"includeSummary": false,
"includeRawContent": false,
"conciseSnippet": false
}),
});
if (!response.ok) {
throw new Error(`siftq request failed: ${response.status}`);
}
const data = await response.json();
// scope="webpage" returns results under "webpages"
(data.webpages ?? []).forEach((hit) => {
console.log(hit.title, "—", hit.link);
});