POST Submit Search
Fan a prompt out to the selected AI sources
https://api.anakin.io/v1/ai-visibility/searchStart an AI Visibility search. The response returns immediately with a search_id and status: "running"; each source's answer is persisted the moment its engine finishes. Poll GET /v1/ai-visibility/search/{id} or subscribe to the ai.search.completed webhook event — note that webhook deliveries carry bounded previews only, with the full answers always fetched from the event's result_url (see Event Types & Payloads).
Every submit runs fresh — results are never served from cache, because AI engine answers change constantly. Submitting the same prompt twice creates two separate runs, each billed normally.
Submissions are rate-limited to 15 per minute per account, and query is capped at 2,000 characters (longer requests return 400 invalid_request).
Request Body
{
"query": "Best coding agents in 2026",
"sources": ["chatgpt", "gemini", "google-ai-overview"],
"country": "us"
}| Parameter | Type | Description |
|---|---|---|
query required | string | The prompt sent verbatim to every selected AI engine |
sources | string[] | Source slugs to query (see List Sources). Omit to query every enabled source |
country | string | Search geography — 2-letter ISO code (e.g. us, in), same geo targeting as the URL scraper. Engines are queried from that region; answers (and whether Google serves an AI Overview at all) vary by geography. Defaults to us; retries of a source reuse the run's country |
Response
200 OK{
"search_id": "3d9db7ff-6ea3-4107-88ce-7f39ecf48a84",
"status": "running",
"results": [],
"country": "us"
}Response Fields
| Field | Type | Description |
|---|---|---|
search_id | string | Identifier to poll for this run's results |
status | string | Always running — results arrive per source as the engines answer |
results | array | Always empty at submission — poll to see results fill in |
country | string | The normalized search geography this run executes from |
Code Examples
curl -X POST https://api.anakin.io/v1/ai-visibility/search \
-H "X-API-Key: your_api_key" \
-H "Content-Type: application/json" \
-d '{
"query": "Best coding agents in 2026",
"sources": ["chatgpt", "gemini"]
}'import requests
resp = requests.post(
"https://api.anakin.io/v1/ai-visibility/search",
headers={"X-API-Key": "your_api_key"},
json={"query": "Best coding agents in 2026", "sources": ["chatgpt", "gemini"]},
)
search_id = resp.json()["search_id"]const resp = await fetch("https://api.anakin.io/v1/ai-visibility/search", {
method: "POST",
headers: { "X-API-Key": "your_api_key", "Content-Type": "application/json" },
body: JSON.stringify({
query: "Best coding agents in 2026",
sources: ["chatgpt", "gemini"],
}),
});
const { search_id } = await resp.json();