Skip to main content
POST
Live Google AI Mode SERP
Returns Google’s AI Mode answer for a query, with the sources it cites on Google, synchronously. Returns keyword, type, se_domain, location_code, language_code, check_url, datetime, spell, refinement_chips, item_types, items_count and items. Measured at 57 KB for a ten-result Google query. ⚠️ Three result depths exist for the same query and differ by two orders of magnitude: regular measured 4.8 KB, advanced 57 KB, and html 2.4 MB. advanced is the default choice; take regular when only the ranked list matters and html only to check what the parser dropped. Wrapped in DataForSEO’s envelope: data in tasks[0].result, outcome in tasks[0].status_code - a rejected request still returns HTTP 200.

Example

First time? Point any MCP client at https://mcp.aisa.one/mcp — Claude Code, Codex, Cursor, VS Code and the rest. Authorization is OAuth: the client opens a browser, you click Allow once, and there is no key to paste. The commands per client, and what each call costs, are on aisa.one/mcp.
Set this endpoint up in your agent →

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
keyword
string
required

keyword required field you can specify up to 700 characters in the keyword field all %## will be decoded (plus character ‘+’ will be decoded to a space character) if you need to use the “%” character for your keyword, please specify it as “%25”; if you need to use the “+” character for your keyword, please specify it as “%2B” learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article

location_code
integer

search engine location code required field if you don't specify location_name or location_coordinate if you use this field, you don't need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to the https://api.dataforseo.com/v3/serp/google/locations Note: check Google Search Help for the list of countries where AI Mode is currently available

location_name
string

full name of search engine location required field if you don't specify location_code or location_coordinate if you use this field, you don't need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to the https://api.dataforseo.com/v3/serp/google/locations Note: check Google Search Help for the list of countries where AI Mode is currently available

location_coordinate
string

GPS coordinates of a location required field if you don't specify location_name or location_code if you use this field, you don't need to specify location_name or location_code location_coordinate parameter should be specified in the "latitude,longitude,zoom" format if "zoom" is not specified, 9z will be applied as a default value the maximum number of decimal digits for "latitude" and "longitude": 7 the minimum value for "zoom": 4z the maximum value for "zoom": 18z example: 52.6178549,-155.352142,18z

language_name
string

full name of search engine language required field if you don't specify language_code; if you use this field, you don't need to specify language_code; you can receive the list of available languages of the search engine with their language_name by making a separate request to the https://api.dataforseo.com/v3/serp/google/ai_mode/languages;

language_code
string

search engine language code required field if you don't specify language_name; if you use this field, you don't need to specify language_name; you can receive the list of available languages of the search engine with their language_code by making a separate request to the https://api.dataforseo.com/v3/serp/google/ai_mode/languages

device
string

device type optional field return results for a specific device type can take the values:desktop, mobile default value: desktop

calculate_rectangles
boolean

calculate pixel rankings for SERP elements in advanced results optional field pixel ranking refers to the distance between the result snippet and top left corner of the screen; Visit Help Center to learn more>> by default, the parameter is set to false Note: if set to true, the charge per task will be multiplied by 2

browser_screen_width
integer

browser screen width optional field you can set a custom browser screen width to calculate pixel rankings for a particular device; can be specified within the following range: 240-9999; by default, the parameter is set to: 1920 for desktop; 360 for mobile on android; 375 for mobile on iOS; Note: to use this parameter, set calculate_rectangles to true

browser_screen_height
integer

browser screen height optional field you can set a custom browser screen height to calculate pixel rankings for a particular device; can be specified within the following range: 240-9999; by default, the parameter is set to: 1080 for desktop; 640 for mobile on android; 812 for mobile on iOS; Note: to use this parameter, set calculate_rectangles to true

browser_screen_resolution_ratio
number

browser screen resolution ratio optional field you can set a custom browser screen resolution ratio to calculate pixel rankings for a particular device; can be specified within the following range: 0.5-3; by default, the parameter is set to: 1 for desktop; 3 for mobile on android; 3 for mobile on iOS; Note: to use this parameter, set calculate_rectangles to true

Response

Successful operation

version
string

The current version of the API

status_code
integer

general status code you can find the full list of the response codes here

status_message
string

general informational message you can find the full list of general informational messages here

time
string

total execution time, seconds

cost
number

Total tasks cost, USD

tasks_count
integer

The number of tasks in the tasks array

tasks_error
integer

The number of tasks in the tasks array returned with an error

tasks
string[]

Array of tasks

tasks[].result
string[]

array of results

tasks[].result[].keyword
string

keyword received in a POST array the keyword is returned with decoded %## (plus symbol '+' will be decoded to a space character)

tasks[].result[].type
string

type of element

tasks[].result[].se_domain
string

search engine domain in a POST array

tasks[].result[].location_code
integer

location code in a POST array

tasks[].result[].language_code
string

language code in a POST array

tasks[].result[].check_url
string

direct URL to search engine results you can use it to make sure that we provided exact results

tasks[].result[].item_types
string[]

types of search results in SERP contains types of search results (items) found in SERP. possible item types: ai_overview

tasks[].result[].items_count
integer

the number of results returned in the items array

tasks[].result[].items
string[]

items of the element