Skip to main content
POST
Monitor Google Search Results

Overview

The Google Search endpoint extracts structured data from Google Search results, including organic results, sponsored ads, People Also Ask questions, related searches, and optional AI Overview data.
AI Overview location availability might be different than regular Google Search availability. Use the countries endpoint with model=aioverview to check supported countries, as the available locations differ from Google Search (model=google) availability.

Request parameters

Required parameters:
  • query (string): The search query to execute on Google (1-10,000 characters)
Optional parameters:
  • country (string): ISO 3166-1 alpha-2 country code for localized results. Defaults to US
  • 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.
  • pages (integer): Number of search results pages to scrape (1-10). Defaults to 1
  • include.html (boolean): Include raw HTML response. Defaults to false
  • include.aioverview (object): Include Google AI Overview. Set markdown: true for markdown formatting. Defaults to false (not included)
  • include.paaAioverview (boolean): Hydrate AI-Overview-type People Also Ask items with markdown content and cited sources. Defaults to false
Additional credit costEnabling include.aioverview adds +2 credits. Enabling include.paaAioverview adds +2 credits. Using both adds +4 credits total. Each page beyond the first adds +2 credits (e.g. pages: 3 adds +4, pages: 10 adds +18). See providers for full pricing details.

Requesting AI Overview

To request AI Overview data, nest the aioverview object under the include parameter:
AI Overview options:
  • markdown (boolean): Include AI Overview formatted as Markdown. Defaults to false
  • When aioverview is not included in the request, no AI Overview data will be returned

Error handling

AI Overview behaviorWhen include.aioverview is requested and Google doesn’t return an AI Overview for a specific query (after several retries), the API returns aioverview: null in a 200 response. All other Google search data is returned normally.Some regions are not supported for AI Overview at all and return an UnsupportedInputError when include.aioverview is set — this is a region-level error, not a query failure. Use the /v1/countries endpoint with model=aioverview to check which regions are currently supported before sending requests.

Response objects

The response includes the following sections. See each subpage for the full schema and examples. result.html is also returned when include.html is true.
result.knowledgeGraph, result.shoppingCards, result.peopleAreSaying, and result.localResults are omitted from result when the corresponding panel does not appear on the SERP. Treat them as optional rather than expecting null or an empty array.

Usage examples

Scrape multiple pages

This will scrape the first 3 pages of Google search results, combining all organic results, People Also Ask questions, and related searches into a single response. The peopleAlsoAsk results include a page field indicating which page each question appeared on.

City and state-level geo-targeting

The location parameter accepts any Google canonical location name — including US states and regions, not just cities. Use the Google Ads geo target reference to look up canonical names for the ~100,000 supported locations.
For state-level targeting:

UULE geo-targeting

For advanced geo-targeting, use uule with a pre-encoded Google UULE string instead of location. This is useful when you generate your own UULE values for precise location control:
location and uule are mutually exclusive: provide one or the other, not both. Use location for city-level targeting with canonical names, and uule when you need to supply a pre-encoded UULE string.

Hydrate People Also Ask with AI Overview content

To get AI-Overview-type People Also Ask items with markdown content and cited sources:
You can combine this with AI Overview extraction:

Authorizations

Authorization
string
header
required

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

Body

application/json

Request parameters for monitoring Google search results

query
string
required

The search query to execute on Google

Required string length: 1 - 10000
Example:

"best laptops for programming"

country
string
required

ISO 3166-1 alpha-2 country code for localized search results

Example:

"US"

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"

pages
integer
default:1

Number of search results pages to scrape (1-10)

Required range: 1 <= x <= 10
Example:

3

include
object

Optional flags for including additional response data

Response

successful Google monitoring response

success
boolean
required
Example:

true

result
object
required

Google search results data