Skip to main content
AEO (Answer Engine Optimization) gives your agent tools to understand and optimize for AI search. Track how LLMs like ChatGPT, Claude, Gemini, and Perplexity respond to queries, monitor brand mentions in AI responses, scrape ChatGPT Search results with citations, and analyze AI search volume trends.

CLI First

SDK

Per-user and AccountKit-gated; usage is metered against the tenant’s plan (see Customer Billing). Full surface in the aeo sub-client; also available to agents via agentTools().

Endpoints

APIEndpointDescriptionSpeedCost
LLM ResponsesPOST /v1/aeo/llm-responses/:platformGet responses from ChatGPT, Claude, Gemini, PerplexityLive (~5-15s)30 credits
LLM ResponsesPOST /v1/aeo/llm-responses/:platform/taskAsync task submission (chatgpt, claude, gemini only)Standard30 credits
LLM ResponsesGET /v1/aeo/llm-responses/:platform/task/:idRetrieve async task resultsGETFree
LLM ResponsesGET /v1/aeo/llm-responses/:platform/tasks-readyCheck for completed tasksGETFree
LLM ResponsesGET /v1/aeo/llm-responses/:platform/modelsList available models for a platformGETFree
LLM ScraperPOST /v1/aeo/llm-scraper/chatgptScrape ChatGPT Search (advanced format)Live30 credits
LLM ScraperPOST /v1/aeo/llm-scraper/chatgpt/htmlScrape ChatGPT Search (HTML format)Live30 credits
LLM ScraperPOST /v1/aeo/llm-scraper/chatgpt/taskAsync scraper task submissionStandard30 credits
LLM ScraperGET /v1/aeo/llm-scraper/chatgpt/task/:idRetrieve scraper results (advanced)GETFree
LLM ScraperGET /v1/aeo/llm-scraper/chatgpt/task/:id/htmlRetrieve scraper results (HTML)GETFree
LLM ScraperGET /v1/aeo/llm-scraper/chatgpt/tasks-readyCheck for completed scraper tasksGETFree
AI KeywordsPOST /v1/aeo/ai-keywords/search-volumeAI search volume estimatesLive20 credits
LLM MentionsPOST /v1/aeo/llm-mentions/searchDetailed mentions with counts and cited linksLive20 credits
LLM MentionsPOST /v1/aeo/llm-mentions/aggregated-metricsConsolidated metrics across dimensionsLive20 credits
LLM MentionsPOST /v1/aeo/llm-mentions/cross-aggregated-metricsCompare metrics across multiple targetsLive20 credits
LLM MentionsPOST /v1/aeo/llm-mentions/top-domainsMost frequently mentioned domainsLive20 credits
LLM MentionsPOST /v1/aeo/llm-mentions/top-pagesTop mentioned pages for a keywordLive20 credits
GeneralPOST /v1/aeo/id-listList task IDs across all sub-APIsPOSTFree

LLM Responses

Get responses from major AI models to see what they say about your brand, product, or topic.
LLMLive EndpointStandard (async)Models
ChatGPTPOST /v1/aeo/llm-responses/chatgpttask, task/:id, tasks-readyGET .../chatgpt/models
ClaudePOST /v1/aeo/llm-responses/claudetask, task/:id, tasks-readyGET .../claude/models
GeminiPOST /v1/aeo/llm-responses/geminitask, task/:id, tasks-readyGET .../gemini/models
PerplexityPOST /v1/aeo/llm-responses/perplexityLive only — no asyncGET .../perplexity/models
Response:

Parameters

ParamTypeRequiredDefaultDescription
user_promptstringYesQuery to send to the LLM
model_namestringYesModel to use (e.g. “gpt-4o-mini”)
location_codenumberNoLocation code
language_codestringNoLanguage code
The CLI maps --keyword to user_prompt and defaults model_name to gpt-4o-mini if --model is not specified.

When to use

  • Monitoring what LLMs say about your brand or product
  • Comparing how different AI models describe a topic
  • Identifying which competitors get mentioned in AI responses
  • Auditing AI search visibility across platforms

LLM Scraper

Scrape ChatGPT Search results including citations, source links, and structured response data. Two output formats: advanced (structured JSON) and HTML (raw rendered output).
EndpointDescriptionMethod
POST /v1/aeo/llm-scraper/chatgptScrape ChatGPT Search (advanced format)Live
POST /v1/aeo/llm-scraper/chatgpt/htmlScrape ChatGPT Search (HTML format)Live
POST /v1/aeo/llm-scraper/chatgpt/taskSubmit async scraping taskStandard
GET /v1/aeo/llm-scraper/chatgpt/task/:idGet results (advanced format)GET
GET /v1/aeo/llm-scraper/chatgpt/task/:id/htmlGet results (HTML format)GET
GET /v1/aeo/llm-scraper/chatgpt/tasks-readyCheck for completed tasksGET

Parameters

ParamTypeRequiredDefaultDescription
keywordstringYesQuery to send to ChatGPT Search
location_codenumberNoLocation code
language_codestringNoLanguage code

When to use

  • Getting full ChatGPT Search results with source citations
  • Analyzing which sources ChatGPT cites for your keywords
  • Comparing live ChatGPT output vs. LLM Responses API data

AI Keyword Data

Get search volume estimates for keywords in AI search engines.
Response:

Parameters

ParamTypeRequiredDefaultDescription
keywordsstring[]YesKeywords to check (up to 1000)
location_codenumberNoLocation code

When to use

  • Estimating AI search demand before creating content
  • Comparing traditional vs. AI search volume
  • Prioritizing keywords for AEO optimization

LLM Mentions

Track how often brands, domains, and keywords appear in LLM responses. All endpoints use Live method.
EndpointDescription
searchDetailed mentions data with counts and cited links
aggregated-metricsConsolidated metrics across dimensions
cross-aggregated-metricsCompare metrics across multiple targets
top-domainsMost frequently mentioned domains for a keyword
top-pagesTop mentioned pages for a keyword
Response:

Parameters

ParamTypeRequiredDefaultDescription
keywordstringkeyword OR domain (exactly one required)
domainstringkeyword OR domain (exactly one required)
targetobject[]YesTargets to track, array of objects with domain key
location_codenumberNoLocation code
date_fromstringNoStart date (YYYY-MM-DD)
date_tostringNoEnd date (YYYY-MM-DD)

When to use

  • Monitoring your brand’s presence in AI-generated answers
  • Benchmarking competitor visibility across LLMs
  • Identifying which domains dominate AI search for your keywords
  • Tracking mention trends over time

Error Handling

ErrorCauseRecovery
insufficient_creditsNot enough creditsCheck balance with GET /v1/status
invalid_llmUnknown LLM platform nameUse chatgpt, claude, gemini, or perplexity
invalid_keywordsEmpty or malformed keyword listProvide at least one keyword string
invalid_inputPlatform doesn’t support async tasksPerplexity is live-only; use chatgpt, claude, or gemini for tasks
provider_errorData provider returned an errorRetry after a few seconds
Perplexity only supports the Live method — no async task endpoints. For batch processing across multiple LLMs, submit async tasks for ChatGPT, Claude, and Gemini, then use live calls for Perplexity.

Typical Workflow

Credit Costs

OperationCredits
LLM Responses live30
LLM Responses task_post30
LLM Scraper live30
LLM Scraper task_post30
AI Keywords live20
LLM Mentions live20
Models GETFree
Task retrieval (task/:id, tasks-ready)Free
id-listFree