ai_citations
The pages and domains AI answers cite when they mention you.
POST https://geondex.com/api/v1/citations- Cost: 35 credits
- MCP tool:
ai_citations - Auth:
Authorization: Bearer gx_…(see Authentication) - Try it: Open ai_citations in the playground
Which pages or domains AI answers cite most when they mention your brand or site: where your AI visibility actually comes from, and which third-party pages to get onto. 35 credits.
Not available on every deployment: returns 404 not_found when this server is not configured for it. GET /me lists what is configured.
Request
Request body (JSON)
brand·string· optional — Your brand name as people write it, e.g. TTSensei. Finds answers whose text names you. Give brand or domain, not both. 1–100 charactersdomain·string· optional — Your site, e.g. ttsensei.com (no scheme). Finds answers that cite a page on it, subdomains included. Give brand or domain, not both. 3–253 charactersplatform·"google" | "chatgpt"· optional — google = Google AI Overviews (any location). chatgpt = ChatGPT (United States / English only). Default"google"location·string· optional — Country or city by name, e.g. United States, Germany, or London,England,United Kingdom. 2–100 characters. Default"United States"language·string· optional — Language by name, e.g. English, German. 2–50 characters. Default"English"groupBy·"pages" | "domains"· optional — domains = which sites get cited; pages = which exact URLs. Default"domains"limit·integer· optional — How many top pages or domains to return, 1-10. 1–10. Default10
Example request
curl -s https://geondex.com/api/v1/citations -H "Authorization: Bearer gx_YOUR_KEY" -H "content-type: application/json" -d '{"brand":"TTSensei","groupBy":"domains","limit":3}'Response
200 with the envelope every tool returns: a one-line summary, the full data, and credits: { charged, remaining }. On a free call charged is 0 and remaining is null.
Fields of data
groupBy·"pages" | "domains"total·number— All AI answers that match the target, the base thatshareis measured againstitems·object[]items[].key·string— The domain, or the page URL when groupBy is pagesitems[].mentions·number— Matching answers that cite this keyitems[].aiSearchVolume·number | null— Estimated monthly AI searches behind those answers; null when unknownitems[].share·number— mentions / total, in percent, one decimal
Example response
Real-shaped, checked against the output schema by a test. Long lists are shortened.
{
"summary": "Top cited domain in AI answers that mention TTSensei: www.reddit.com (30% of 40); 3 shown.",
"data": {
"groupBy": "domains",
"total": 40,
"items": [
{
"key": "www.reddit.com",
"mentions": 12,
"aiSearchVolume": 2100,
"share": 30
},
{
"key": "www.tabletennisdaily.com",
"mentions": 9,
"aiSearchVolume": 1300,
"share": 22.5
},
{
"key": "ttsensei.com",
"mentions": 7,
"aiSearchVolume": null,
"share": 17.5
}
]
},
"credits": {
"charged": 35,
"remaining": 95
}
}Errors
Every error has the body {"error":{"code":"…","message":"…"}} and is not charged.
| HTTP | When |
|---|---|
400 | Bad input |
401 | Missing or invalid key |
402 | Out of credits |
404 | Tool not available on this server |
429 | Rate limited |
502 | Upstream failure |
Every error.code and what to do about it: Errors & rate limits.