Skip to main content
POST
Monitor AI Mode Responses
Extract structured data from Google AI Mode, with automatic detection of places, shopping cards, ads, inline products, videos, and map entries. Shopping cards and inline products carry a productResultToken that gets their merchant offers.
Web search enabledThis endpoint uses AI Mode’s default interface, which combines web search results with AI-generated responses.

Request parameters

prompt and one of country or gl are required; there is no default country. Every other field is optional and listed in the request body schema below.

Response schema

Includes common response fields plus the sections below. The generated response schema on this page lists every field, including text and markdown.

Usage examples

Overriding the interface language

hl is independent of the country, so a German-language answer from a US-targeted request is one field:
Without hl, cloro derives the language from the country — which picks one dominant language for multilingual countries such as CH, BE, and CA.

City-level geo-targeting

Pair location with country to target a city or region. It accepts Google canonical location names.

UULE geo-targeting

When you generate your own UULE values, pass uule instead of location — the two are mutually exclusive:

Authorizations

Authorization
string
header
required

cloro API key as a bearer token. One key grants every endpoint in this spec; per-key scopes are not available, so a client cannot request a narrower permission. Keys are created and revoked in the dashboard.

Body

application/json

Request parameters for monitoring AI Mode responses

prompt
string
required

The prompt to send to AI Mode

Required string length: 1 - 10000
Example:

"What are the best laptops for programming?"

country
enum<string>
required

Country/region code for localized response, using ISO 3166-1 alpha-2 country codes.

Available options:
AD,
AE,
AF,
AG,
AI,
AL,
AM,
AO,
AQ,
AR,
AS,
AT,
AU,
AW,
AX,
AZ,
BA,
BB,
BD,
BE,
BF,
BG,
BH,
BI,
BJ,
BL,
BM,
BN,
BO,
BQ,
BR,
BS,
BT,
BV,
BW,
BY,
BZ,
CA,
CC,
CD,
CF,
CG,
CH,
CI,
CK,
CL,
CM,
CN,
CO,
CR,
CU,
CV,
CW,
CX,
CY,
CZ,
DE,
DJ,
DK,
DM,
DO,
DZ,
EC,
EE,
EG,
EH,
ER,
ES,
ET,
FI,
FJ,
FK,
FM,
FO,
FR,
GA,
GB,
GD,
GE,
GF,
GG,
GH,
GI,
GL,
GM,
GN,
GP,
GQ,
GR,
GS,
GT,
GU,
GW,
GY,
HK,
HM,
HN,
HR,
HT,
HU,
ID,
IE,
IL,
IM,
IN,
IO,
IQ,
IR,
IS,
IT,
JE,
JM,
JO,
JP,
KE,
KG,
KH,
KI,
KM,
KN,
KP,
KR,
KW,
KY,
KZ,
LA,
LB,
LC,
LI,
LK,
LR,
LS,
LT,
LU,
LV,
LY,
MA,
MC,
MD,
ME,
MF,
MG,
MH,
MK,
ML,
MM,
MN,
MO,
MP,
MQ,
MR,
MS,
MT,
MU,
MV,
MW,
MX,
MY,
MZ,
NA,
NC,
NE,
NF,
NG,
NI,
NL,
NO,
NP,
NR,
NU,
NZ,
OM,
PA,
PE,
PF,
PG,
PH,
PK,
PL,
PM,
PN,
PR,
PS,
PT,
PW,
PY,
QA,
RE,
RO,
RS,
RU,
RW,
SA,
SB,
SC,
SD,
SE,
SG,
SH,
SI,
SJ,
SK,
SL,
SM,
SN,
SO,
SR,
SS,
ST,
SV,
SX,
SY,
SZ,
TC,
TD,
TF,
TG,
TH,
TJ,
TK,
TL,
TM,
TN,
TO,
TR,
TT,
TV,
TW,
TZ,
UA,
UG,
UM,
US,
UY,
UZ,
VA,
VC,
VE,
VG,
VI,
VN,
VU,
WF,
WS,
XK,
YE,
YT,
ZA,
ZM,
ZW
Example:

"US"

gl
string

Alternative to country, using Google's own parameter name for the result geography. Same ISO 3166-1 alpha-2 codes, accepted in either case (us or US), and must be a country the endpoint supports — see GET /v1/countries. Provide country or gl; sending both with different values is a 400.

Example:

"us"

hl
string

Interface language, as Google's own hl parameter (e.g. en, de, pt-BR). Free-form and case-insensitive — Google owns the list of codes. Overrides the language cloro derives from the country, so the interface language and the result geography can differ.

Example:

"en"

location
string

Google canonical location name for geo-targeted results, in comma-separated format: 'City,Region,Country' (see https://developers.google.com/google-ads/api/reference/data/geotargets for all ~100,000 supported locations). Use alongside 'country' for city-level precision. Mutually exclusive with 'uule' — provide one or the other, not both. When both location and uule are omitted, cloro pins results to the country's canonical location (e.g. Portugal for PT) where it has one; otherwise Google geolocates from the proxy's exit IP.

Example:

"New York,New York,United States"

uule
string

Pre-encoded Google UULE string for precise geo-targeting. Use this when you have a pre-built UULE value instead of a location name. Mutually exclusive with 'location' — provide one or the other, not both.

Example:

"w+CAIQICIeV2VzdCBOZXcgWW9yayxOZXcgSmVyc2V5"

device
enum<string>
default:desktop

Device type for search results

Available options:
desktop,
mobile
Example:

"desktop"

include
object

Optional flags for including additional response formats

Response

successful AI Mode monitoring response

success
boolean
required
Example:

true

result
object
required

AI Mode response data