DataForSEO AiOptimization API

The AiOptimization API from DataForSEO — 44 operation(s) for aioptimization.

Operations 44

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /v3/ai_optimization/chat_gpt/llm_scraper/locations List locations for the ChatGPT scraper · Chat gpt llm scraper locations #
Ask an LLM
“Which locations can I target when scraping ChatGPT search results?”
“Where do I find location codes for ChatGPT scraper tasks?”
Tell an agent
List all locations supported by the ChatGPT LLM scraper.
Get every ChatGPT scraper location code across all countries.
GET /v3/ai_optimization/chat_gpt/llm_scraper/locations/{country} List ChatGPT scraper locations in a country · Chat gpt llm scraper locations country #
Ask an LLM
“Which ChatGPT scraper locations exist within one specific country?”
“Can I filter the ChatGPT scraper location list by country code?”
Tell an agent
List ChatGPT scraper locations in country {country}.
Show the ChatGPT scraper location codes for {country} only.
GET /v3/ai_optimization/chat_gpt/llm_scraper/languages List languages for the ChatGPT scraper · Chat gpt llm scraper languages #
Ask an LLM
“What languages does the ChatGPT LLM scraper support?”
“Can I scrape ChatGPT search answers in languages other than English?”
Tell an agent
List the languages supported by the ChatGPT LLM scraper.
Get the ChatGPT scraper language codes.
POST /v3/ai_optimization/chat_gpt/llm_scraper/task_post Queue a ChatGPT search scraping task · Chat gpt llm scraper task post #
Ask an LLM
“How do I queue a ChatGPT search scrape to collect later instead of waiting live?”
“Can I set a postback URL to be notified when a ChatGPT scrape finishes?”
Tell an agent
Queue a ChatGPT scraper task for my keyword in the US and English.
Submit an asynchronous ChatGPT search scrape with a postback URL.
GET /v3/ai_optimization/chat_gpt/llm_scraper/tasks_ready List completed ChatGPT scraper tasks · Chat gpt llm scraper tasks ready #
Ask an LLM
“Which of my queued ChatGPT scraper tasks are finished but not yet collected?”
“How can I find ChatGPT scrape results that are ready without a postback URL?”
Tell an agent
List my completed ChatGPT scraper tasks that haven't been collected.
Check which ChatGPT scrape tasks are ready to download.
GET /v3/ai_optimization/chat_gpt/llm_scraper/task_get/advanced/{id} Get structured results of a ChatGPT scrape · Chat gpt llm scraper task get advanced #
Ask an LLM
“How do I fetch the parsed, structured output of a ChatGPT scraper task I queued?”
“Can I get ChatGPT search results as structured data rather than HTML?”
Tell an agent
Get the advanced structured results of ChatGPT scraper task {id}.
Fetch parsed ChatGPT answer data for task {id}.
GET /v3/ai_optimization/chat_gpt/llm_scraper/task_get/html/{id} Get raw HTML of a queued ChatGPT scrape · Chat gpt llm scraper task get html #
Ask an LLM
“Can I download the raw HTML page of a ChatGPT scraper task I already queued?”
“Where do I get the HTML version of a completed ChatGPT scrape?”
Tell an agent
Download the raw HTML for ChatGPT scraper task {id}.
Get the HTML results page of queued ChatGPT task {id}.
POST /v3/ai_optimization/chat_gpt/llm_scraper/live/advanced Scrape ChatGPT search results live · Chat gpt llm scraper live advanced #
Ask an LLM
“Can I get structured ChatGPT search results immediately in one call?”
“What does ChatGPT show for my keyword in a given location right now?”
Tell an agent
Scrape ChatGPT search results live for my keyword and return structured data.
Run a real-time ChatGPT search for this query in the UK.
POST /v3/ai_optimization/chat_gpt/llm_scraper/live/html Get live raw HTML of ChatGPT results · Chat gpt llm scraper live html #
Ask an LLM
“Can I get the raw HTML of ChatGPT results for a keyword in real time?”
“Is there a live call that returns ChatGPT's results page as HTML?”
Tell an agent
Fetch the live raw HTML of ChatGPT results for my keyword.
Get ChatGPT's results page HTML right now for this query and location.
GET /v3/ai_optimization/llm_mentions/locations_and_languages List locations and languages for LLM Mentions · Llm mentions locations and languages #
Ask an LLM
“Which locations and languages are supported for tracking brand mentions in AI answers?”
“Where do I get location codes for LLM Mentions requests?”
Tell an agent
List the locations and languages supported by LLM Mentions.
Get LLM Mentions location and language codes.
GET /v3/ai_optimization/llm_mentions/available_filters List filters for LLM Mentions · Llm mentions available filters #
Ask an LLM
“What filters can I apply to LLM Mentions queries?”
“Which fields can I filter on when analyzing AI search mentions?”
Tell an agent
Show the filters available for LLM Mentions endpoints.
Get the LLM Mentions filter fields and operators.
POST /v3/ai_optimization/llm_mentions/search/live Search mentions in AI search answers · Llm mentions search live #
Ask an LLM
“Where is my brand or domain mentioned in Google AI Overviews or ChatGPT answers?”
“Can I search individual LLM mentions with their metrics for a location and language?”
Tell an agent
Search ChatGPT answers for mentions of my brand.
Find individual Google AI Overview mentions of my domain.
POST /v3/ai_optimization/llm_mentions/top_pages/live Rank pages most mentioned in AI answers · Llm mentions top pages live #
Ask an LLM
“Which pages are cited most often in AI answers about my target keyword?”
“Can I see LLM mention metrics grouped by page?”
Tell an agent
List the most-mentioned pages in AI answers for my target.
Rank pages by LLM mentions on ChatGPT for this keyword.
POST /v3/ai_optimization/llm_mentions/top_domains/live Rank domains most mentioned in AI answers · Llm mentions top domains live #
Ask an LLM
“Which domains get mentioned most in AI Overviews for my topic?”
“Can I see LLM mention metrics grouped by domain?”
Tell an agent
List the most-mentioned domains in AI answers for my target.
Rank domains by Google AI Overview mentions for this keyword.
POST /v3/ai_optimization/llm_mentions/aggregated_metrics/live Get aggregated AI mention metrics · Llm mentions aggregated metrics live #
Ask an LLM
“What are the total mention metrics for my keywords or domains in AI search?”
“Can I get one rolled-up summary of LLM mentions for a target list?”
Tell an agent
Get aggregated LLM mention metrics for my domain.
Summarize total AI search mentions for these keywords.
POST /v3/ai_optimization/llm_mentions/cross_aggregated_metrics/live Compare AI mention metrics across targets · Llm mentions cross aggregated metrics live #
Ask an LLM
“Can I compare LLM mention metrics side by side for several targets with custom grouping keys?”
“How do my domain's AI mentions stack up against other targets, one result per target?”
Tell an agent
Compare cross-aggregated LLM mention metrics for my domain and two others.
Group AI mention metrics by custom keys for each target in my list.
GET /v3/ai_optimization/chat_gpt/llm_responses/models List available ChatGPT models · Chat gpt llm responses models #
Ask an LLM
“Which ChatGPT models can I request responses from?”
“What GPT model names are valid for LLM Responses?”
Tell an agent
List the ChatGPT models available for LLM Responses.
Get the valid GPT model names.
POST /v3/ai_optimization/chat_gpt/llm_responses/live Get a live ChatGPT model response · Chat gpt llm responses live #
Ask an LLM
“Can I send a prompt to a specific ChatGPT model and get a structured answer immediately?”
“How do I see what a GPT model answers to my prompt in real time?”
Tell an agent
Ask a ChatGPT model my prompt live and return the structured response.
Get a real-time GPT response to this question.
POST /v3/ai_optimization/chat_gpt/llm_responses/task_post Queue a ChatGPT response task · Chat gpt llm responses task post #
Ask an LLM
“Can I queue prompts to a ChatGPT model and collect the responses later?”
“Is there an asynchronous way to get ChatGPT answers for many prompts?”
Tell an agent
Queue a ChatGPT LLM response task for my prompt.
Submit these prompts to a GPT model as background tasks.
GET /v3/ai_optimization/chat_gpt/llm_responses/tasks_ready List completed ChatGPT response tasks · Chat gpt llm responses tasks ready #
Ask an LLM
“Which of my queued ChatGPT response tasks are done but not collected?”
“How do I find ready ChatGPT answers when I didn't set a postback URL?”
Tell an agent
List my completed ChatGPT response tasks waiting to be collected.
Check which GPT response tasks are ready.
GET /v3/ai_optimization/chat_gpt/llm_responses/task_get/{id} Get the result of a ChatGPT response task · Chat gpt llm responses task get #
Ask an LLM
“How do I retrieve the ChatGPT answer for a response task I queued earlier?”
“Can I fetch a queued GPT response by its task ID?”
Tell an agent
Get the ChatGPT response for task {id}.
Fetch the GPT model answer from queued task {id}.
GET /v3/ai_optimization/claude/llm_responses/models List available Claude models · Claude llm responses models #
Ask an LLM
“Which Claude models can I request responses from?”
“What Claude model names are valid for LLM Responses?”
Tell an agent
List the Claude models available for LLM Responses.
Get the valid Claude model names.
POST /v3/ai_optimization/claude/llm_responses/live Get a live Claude model response · Claude llm responses live #
Ask an LLM
“What would Claude reply if I gave it this exact prompt, returned on the spot?”
“Which Claude model version answers my brand question, and what does it say live?”
Tell an agent
Ask a Claude model my prompt live and return the structured response.
Get a real-time Claude response to this question.
POST /v3/ai_optimization/claude/llm_responses/task_post Queue a Claude response task · Claude llm responses task post #
Ask an LLM
“Is there a batch mode for sending many prompts to Claude without waiting on each one?”
“Can Claude prompt tasks be submitted now and picked up when they complete?”
Tell an agent
Queue a Claude LLM response task for my prompt.
Submit these prompts to a Claude model as background tasks.
GET /v3/ai_optimization/claude/llm_responses/tasks_ready List completed Claude response tasks · Claude llm responses tasks ready #
Ask an LLM
“Which of my submitted Claude prompts have finished processing but not been picked up?”
“Without a postback, where do I see which Claude response jobs are complete?”
Tell an agent
List my completed Claude response tasks waiting to be collected.
Check which Claude response tasks are ready.
GET /v3/ai_optimization/claude/llm_responses/task_get/{id} Get the result of a Claude response task · Claude llm responses task get #
Ask an LLM
“Where do I pick up the finished Claude reply for a job I submitted?”
“Can I read the Claude output of an earlier background task using its ID?”
Tell an agent
Get the Claude response for task {id}.
Fetch the Claude model answer from queued task {id}.
GET /v3/ai_optimization/gemini/llm_responses/models List available Gemini models · Gemini llm responses models #
Ask an LLM
“Which Gemini models can I request responses from?”
“What Gemini model names are valid for LLM Responses?”
Tell an agent
List the Gemini models available for LLM Responses.
Get the valid Gemini model names.
POST /v3/ai_optimization/gemini/llm_responses/task_post Queue a Gemini response task · Gemini llm responses task post #
Ask an LLM
“Is there a deferred mode for running a batch of prompts through Gemini?”
“Can I submit Gemini prompt jobs now and pick up the replies once they're done?”
Tell an agent
Queue a Gemini LLM response task for my prompt.
Submit these prompts to a Gemini model as background tasks.
GET /v3/ai_optimization/gemini/llm_responses/tasks_ready List completed Gemini response tasks · Gemini llm responses tasks ready #
Ask an LLM
“Which of my queued Gemini response tasks are done but not collected?”
“How do I find ready Gemini model answers when I didn't set a postback URL?”
Tell an agent
List my completed Gemini response tasks waiting to be collected.
Check which Gemini model response tasks are ready.
GET /v3/ai_optimization/gemini/llm_responses/task_get/{id} Get the result of a Gemini response task · Gemini llm responses task get #
Ask an LLM
“Where do I pick up the finished Gemini model reply for a job ID?”
“Can I read the output of an earlier Gemini background prompt job?”
Tell an agent
Get the Gemini model response for task {id}.
Fetch the Gemini answer from queued response task {id}.
POST /v3/ai_optimization/gemini/llm_responses/live Get a live Gemini model response · Gemini llm responses live #
Ask an LLM
“What would Gemini reply to this exact prompt if I asked it synchronously?”
“Which Gemini model should I name to get an instant structured reply to my question?”
Tell an agent
Ask a Gemini model my prompt live and return the structured response.
Get a real-time Gemini model response to this question.
GET /v3/ai_optimization/gemini/llm_scraper/locations List locations for the Gemini scraper · Gemini llm scraper locations #
Ask an LLM
“Which locations can I target when scraping Gemini results?”
“Where do I find location codes for Gemini scraper tasks?”
Tell an agent
List all locations supported by the Gemini LLM scraper.
Get the Gemini scraper location codes.
GET /v3/ai_optimization/gemini/llm_scraper/languages List languages for the Gemini scraper · Gemini llm scraper languages #
Ask an LLM
“What languages does the Gemini LLM scraper support?”
“Can I scrape Gemini results in languages other than English?”
Tell an agent
List the languages supported by the Gemini LLM scraper.
Get the Gemini scraper language codes.
POST /v3/ai_optimization/gemini/llm_scraper/task_post Queue a Gemini scraping task · Gemini llm scraper task post #
Ask an LLM
“What's the asynchronous way to capture what Gemini shows for a keyword?”
“Can I schedule a Gemini results capture and get pinged at a callback URL when done?”
Tell an agent
Set up a background Gemini scrape for this keyword, location and language.
Create a Gemini scraping job that notifies my callback URL when finished.
GET /v3/ai_optimization/gemini/llm_scraper/tasks_ready List completed Gemini scraper tasks · Gemini llm scraper tasks ready #
Ask an LLM
“Are any of my Gemini scraping jobs complete and waiting to be picked up?”
“Without a callback URL, where do I see which Gemini scrapes are done?”
Tell an agent
Show Gemini scraping jobs that are complete but still uncollected.
Check for finished Gemini scrape jobs I haven't downloaded.
GET /v3/ai_optimization/gemini/llm_scraper/task_get/advanced/{id} Get structured results of a Gemini scrape · Gemini llm scraper task get advanced #
Ask an LLM
“Where do I read the parsed Gemini answer from a scraping job I submitted?”
“Can a finished Gemini scrape job be returned as structured fields instead of a page?”
Tell an agent
Get the advanced structured results of Gemini scraper task {id}.
Fetch parsed Gemini answer data for scrape task {id}.
GET /v3/ai_optimization/gemini/llm_scraper/task_get/html/{id} Get raw HTML of a queued Gemini scrape · Gemini llm scraper task get html #
Ask an LLM
“Is the unparsed Gemini page markup available for a scraping job I submitted earlier?”
“Where do I get the HTML version of a completed Gemini scrape?”
Tell an agent
Download the raw HTML for Gemini scraper task {id}.
Get the HTML results page of queued Gemini task {id}.
POST /v3/ai_optimization/gemini/llm_scraper/live/advanced Scrape Gemini results live · Gemini llm scraper live advanced #
Ask an LLM
“Can I get structured Gemini results for a keyword immediately in one call?”
“Which sources and text does Gemini return for my query in a chosen market at this moment?”
Tell an agent
Scrape Gemini results live for my keyword and return structured data.
Run a real-time Gemini scrape for this query in Germany.
POST /v3/ai_optimization/gemini/llm_scraper/live/html Get live raw HTML of Gemini results · Gemini llm scraper live html #
Ask an LLM
“Can I capture Gemini's unparsed page markup for a query synchronously?”
“Which call hands back Gemini's answer page source without queuing a job?”
Tell an agent
Fetch the live raw HTML of Gemini results for my keyword.
Grab Gemini's answer page source immediately for this query and market.
GET /v3/ai_optimization/perplexity/llm_responses/models List available Perplexity models · Perplexity llm responses models #
Ask an LLM
“Which Perplexity models can I request responses from?”
“What Perplexity model names are valid for LLM Responses?”
Tell an agent
List the Perplexity models available for LLM Responses.
Get the valid Perplexity model names.
POST /v3/ai_optimization/perplexity/llm_responses/live Get a live Perplexity model response · Perplexity llm responses live #
Ask an LLM
“Can I send a prompt to a Perplexity model and get a structured answer immediately?”
“What does Perplexity answer to my prompt in real time?”
Tell an agent
Ask a Perplexity model my prompt live and return the structured response.
Get a real-time Perplexity response to this question.
GET /v3/ai_optimization/ai_keyword_data/available_filters List filters for AI Keyword Data · Ai keyword data available filters #
Ask an LLM
“What filters can I use with AI Keyword Data requests?”
“Which fields are filterable when querying AI search volume?”
Tell an agent
Show the filters available for AI Keyword Data endpoints.
Get the AI Keyword Data filter fields.
GET /v3/ai_optimization/ai_keyword_data/locations_and_languages List locations and languages for AI Keyword Data · Ai keyword data locations and languages #
Ask an LLM
“Which locations and languages does AI Keyword Data support?”
“Where do I get location codes for AI search volume lookups?”
Tell an agent
List the locations and languages supported by AI Keyword Data.
Get AI Keyword Data location and language codes.
POST /v3/ai_optimization/ai_keyword_data/keywords_search_volume/live Get AI search volume for keywords · Ai keyword data keywords search volume live #
Ask an LLM
“How often are my keywords used in AI tools?”
“Can DataForSEO estimate AI search volume for a list of target keywords?”
Tell an agent
Get the estimated AI tool search volume for these keywords.
Check how much my target keywords are used in AI tools.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dataforseo:dataforseo-aioptimization-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dataforseo-aioptimization-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DataForSEO AI Optimization API
  description: DataForSEO API is the starting point on your journey towards building powerful SEO software. With DataForSEO you can get all the data you need to build an efficient application while also saving your time and budget. DataForSEO API is using the REST technology for interchanging data between your application and our service. The data exchange is made through the widely used HTTP protocol, which allows applying our API to almost all programming languages.
  version: 1.0.0
servers:
- url: https://api.dataforseo.com
- url: https://sandbox.dataforseo.com
tags:


# --- truncated at 32 KB (279 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dataforseo/refs/heads/main/openapi/dataforseo-aioptimization-api-openapi.yml