ai_keyword_volume
Monthly AI search volume for up to 1,000 keywords.
POST https://geondex.com/api/v1/ai-volume- Cost: 1 / 10 keywords, min 5
- MCP tool:
ai_keyword_volume - Auth:
Authorization: Bearer gx_…(see Authentication) - Try it: Open ai_keyword_volume in the playground
How often each phrase is asked in AI search (AI Overviews and chat assistants) per month, with a 12-month trend. Google search volume is a different number — see keyword_volume. 1 credit per 10 distinct keywords, minimum 5.
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)
keywords·string[]· required — Up to 1,000 phrases in ONE call. Duplicates are collapsed. 1 credit per 10 distinct keywords, minimum 5 credits per call — anything up to 50 keywords costs the same 5 credits, so batch. 1–1,000 itemslocation·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"
Example request
curl -s https://geondex.com/api/v1/ai-volume -H "Authorization: Bearer gx_YOUR_KEY" -H "content-type: application/json" -d '{"keywords":["table tennis blade","best table tennis blade for beginners","ttsensei blade finder"]}'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
rows·object[]rows[].keyword·stringrows[].aiSearchVolume·number | null— Monthly AI search volume, latest; null when there is no datarows[].trend·object[]— AI search volume per month; empty when there is no datarows[].trend[].year·numberrows[].trend[].month·number— 1-12rows[].trend[].volume·number | null
Example response
Real-shaped, checked against the output schema by a test. Long lists are shortened.
{
"summary": "3 keywords; highest AI volume \"table tennis blade\" at 1450/mo.",
"data": {
"rows": [
{
"keyword": "table tennis blade",
"aiSearchVolume": 1450,
"trend": [
{
"year": 2026,
"month": 8,
"volume": 1620
},
{
"year": 2026,
"month": 7,
"volume": 1480
},
{
"year": 2026,
"month": 6,
"volume": 1390
},
{
"year": 2026,
"month": 5,
"volume": 1310
},
{
"year": 2026,
"month": 4,
"volume": 1270
},
{
"year": 2026,
"month": 3,
"volume": 1180
},
{
"year": 2026,
"month": 2,
"volume": 1040
},
{
"year": 2026,
"month": 1,
"volume": 990
},
{
"year": 2025,
"month": 12,
"volume": 1120
},
{
"year": 2025,
"month": 11,
"volume": 870
},
{
"year": 2025,
"month": 10,
"volume": 760
},
{
"year": 2025,
"month": 9,
"volume": 690
}
]
},
{
"keyword": "best table tennis blade for beginners",
"aiSearchVolume": 320,
"trend": [
{
"year": 2026,
"month": 8,
"volume": 340
},
{
"year": 2026,
"month": 7,
"volume": 330
},
{
"year": 2026,
"month": 6,
"volume": 310
},
{
"year": 2026,
"month": 5,
"volume": 290
},
{
"year": 2026,
"month": 4,
"volume": 300
},
{
"year": 2026,
"month": 3,
"volume": 260
},
{
"year": 2026,
"month": 2,
"volume": 240
},
{
"year": 2026,
"month": 1,
"volume": 250
},
{
"year": 2025,
"month": 12,
"volume": 280
},
{
"year": 2025,
"month": 11,
"volume": 190
},
{
"year": 2025,
"month": 10,
"volume": 170
},
{
"year": 2025,
"month": 9,
"volume": 150
}
]
},
{
"keyword": "ttsensei blade finder",
"aiSearchVolume": null,
"trend": []
}
]
},
"credits": {
"charged": 5,
"remaining": 160
}
}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.