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. Merchant offers behind each product cluster are available on request as product results.
Web search enabledThis endpoint uses AI Mode’s default interface, which combines web search results with AI-generated responses.

Request parameters

Required parameters:
  • prompt (string): The query to send to AI Mode (1-10,000 characters)
  • country (string): ISO 3166-1 alpha-2 country code (uppercase) for localized results. Required — there is no default
Optional parameters:
  • hl (string): Interface language, as Google’s own hl parameter (en, de, pt-BR, …). Overrides the language cloro derives from the country, so the interface language and the result geography can differ. Free-form — Google owns the list of codes
  • gl (string): Alternative to country, using Google’s own parameter name. Same country codes, accepted in either case. Provide country or gl; sending both with different values is a 400
  • location (string): Google canonical location name for geo-targeted results (e.g., New York,New York,United States). See Google’s geo target list for all ~100,000 supported locations. Mutually exclusive with uule. When both location and uule are omitted, cloro defaults location to the requested country’s canonical name (e.g. Portugal for country: "PT") so results pin to the country instead of the proxy’s exit IP. Pass location or uule explicitly when you need city- or region-level precision
  • 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
  • device (string): Device type for search results. Options: desktop (default), mobile
  • include.markdown (boolean): Include markdown-formatted response. Defaults to false
  • include.html (boolean): Include raw HTML response. Defaults to false
  • include.expandProducts (boolean): Fetch merchant offers for the product clusters in the response (up to 6) and return them as result.productResults. Opt-in, off by default
  • include.googleGoto (boolean): Return Google’s encrypted redirect links instead of their destinations. See Google redirect links. Defaults to false
Additional credit costinclude.expandProducts charges +1 credit per product cluster returned in result.productResults, capped at +6. The surcharge is applied after the scrape, so it scales with what Google actually surfaces: clusters skipped by the cap, or dropped because their product viewer could not be fetched, are not charged. Requests without the flag are unaffected. See providers for pricing details.

Response objects

Response schema

Includes common response fields plus:

Core response fields

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.

Expanding merchant offers

cloro follows each cluster’s product viewer and returns direct merchant URLs, prices, installment terms, and delivery/returns badges as result.productResults. Clusters are deduplicated across shoppingCards and inlineProducts, and expansion is capped at 6 per scrape.

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, rotated, and revoked at https://dashboard.cloro.dev/api-keys. Full details, including the versioning and deprecation policy, are at https://cloro.dev/auth.md.

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
string
required

Country/region code for localized response

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.

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