Documentation has been updated: see help center and changelog in one place.
🆕Explore
LogoLogo
Oxylabs dashboardContact usProduct
English
  • Documentation
  • Help center
  • Changelog
English
  • Overview
  • PROXIES
    • Integration Guides
      • Get IP Address for Integrations
      • Residential Proxies Guides
        • AdsPower
        • Android
        • ClonBrowser
        • Dolphin Anty
        • FoxyProxy
        • Ghost Browser
        • GoLogin
        • Helium Scraper
        • Incogniton
        • iOS
        • Kameleo
        • Lalicat Browser
        • MacOS
        • MoreLogin
        • MuLogin
        • Multilogin
        • Nstbrowser
        • Octoparse
        • Oxy® Proxy Extension for Chrome
        • ParseHub
        • Playwright
        • Proxifier
        • Puppeteer
        • Selenium
        • SEO Neo
        • SessionBox
        • Shadowrocket
        • Super Proxy
        • SwitchyOmega
        • Ubuntu
        • VMLogin
        • WebHarvy
        • Hidemyacc
      • ISP Proxies Guides
        • AdsPower
        • Android
        • Dolphin Anty
        • FoxyProxy
        • GoLogin
        • Incogniton
        • iOS
        • Lalicat Browser
        • MacOS
        • MoreLogin
        • MuLogin
        • Multilogin
        • Nstbrowser
        • Octoparse
        • Oxy® Proxy Extension for Chrome
        • Proxifier
        • SEO Neo
        • Shadowrocket
        • Sphere
        • Super Proxy
        • SwitchyOmega
        • Ubuntu
        • Hidemyacc
      • Mobile Proxies Guides
        • AdsPower
        • Android
        • ClonBrowser
        • Dolphin Anty
        • Ghost Browser
        • GoLogin
        • Helium Scraper
        • Incogniton
        • iOS
        • Kameleo
        • Lalicat Browser
        • MacOS
        • MoreLogin
        • MuLogin
        • Multilogin
        • Nstbrowser
        • Octoparse
        • Oxy® Proxy Extension for Chrome
        • ParseHub
        • Playwright
        • Proxifier
        • Puppeteer
        • Selenium
        • SEO Neo
        • SessionBox
        • Shadowrocket
        • SwitchyOmega
        • Ubuntu
        • VMLogin
        • WebHarvy
      • Dedicated Datacenter Proxies Guides
        • Enterprise
          • Dolphin Anty
          • FoxyProxy
          • GoLogin
          • Lalicat Browser
          • MoreLogin
          • MuLogin
          • Nstbrowser
          • Octoparse
          • Oxy® Proxy Extension for Chrome
          • Proxifier
          • SEO Neo
          • Shadowrocket
          • Sphere
          • Super Proxy
          • SwitchyOmega
          • Ubuntu
          • Hidemyacc
        • Self-Service
          • Android
          • Dolphin Anty
          • FoxyProxy
          • GoLogin
          • iOS
          • Lalicat Browser
          • MacOS
          • MoreLogin
          • MuLogin
          • Nstbrowser
          • Octoparse
          • Oxy® Proxy Extension for Chrome
          • Proxifier
          • SEO Neo
          • Shadowrocket
          • Sphere
          • Super Proxy
          • SwitchyOmega
          • Ubuntu
          • Hidemyacc
      • Datacenter Proxies Guides
        • AdsPower
        • Android
        • Dolphin Anty
        • FoxyProxy
        • GoLogin
        • iOS
        • Lalicat Browser
        • MacOS
        • MoreLogin
        • MuLogin
        • Nstbrowser
        • Octoparse
        • Oxy® Proxy Extension for Chrome
        • Proxifier
        • SEO Neo
        • Shadowrocket
        • Super Proxy
        • SwitchyOmega
        • Ubuntu
        • Hidemyacc
    • Residential Proxies
      • Getting Started
      • Making Requests
        • Entry Node for China
      • Location Settings
        • Country
        • City
        • State
        • Continent
        • ZIP/Postal code
        • Coordinates
        • ASN Targeting
      • Session Control
        • Sticky Proxy Entry Nodes
      • Protocols
      • Whitelisting IPs
        • Requests with Whitelisted IPs
      • Endpoint Generator
      • Restricted Targets
      • Public API
      • Response Codes
    • ISP Proxies
      • Making Requests
      • Proxy List
      • Proxy Rotation
      • Location Settings
      • Protocols
      • Whitelisting IPs
      • Response Codes
      • Restricted Targets
      • Fair usage policy
    • Mobile Proxies
      • Getting Started
      • Making Requests
        • Entry Node for China
      • Location Settings
        • Country
        • City
        • State
        • Continent
        • Coordinates
        • ASN Targeting
      • Session Control
        • Sticky Proxy Entry Nodes
      • Protocols
      • Whitelisting IPs
      • Endpoint Generator
      • Restricted Targets
      • Public API
      • Response Codes
    • Datacenter Proxies
      • Proxy List
      • IP Control
      • Select Country
      • Protocols
      • Whitelisting
      • Response Codes
      • Restricted Targets
      • Fair usage policy
      • Free Datacenter IPs
    • Dedicated Datacenter Proxies
      • Enterprise
        • Getting Started
        • Proxy List
        • Making Requests
        • Protocols
        • Whitelisting IPs
          • Dashboard
          • RESTful
            • Getting Whitelisted IPs List
            • Adding a Whitelisted IP
            • Removing a Whitelisted IP
            • Saving Changes (5min Cooldown)
        • Datacenter Proxy API
        • Proxy Rotator - Optional
        • Response Codes
      • Self-Service
        • Getting Started
        • Making Requests
        • Proxy List
        • Proxy Rotation
        • Location Settings
        • Protocols
        • Whitelisting IPs
        • Response Codes
        • Restricted Targets
        • Fair usage policy
    • Dedicated ISP Proxies
      • Getting Started
      • Proxy List
      • Making Requests
      • Protocols
      • Whitelisting IPs (RESTful)
        • Getting Whitelisted IPs List
        • Adding a Whitelisted IP
        • Removing a Whitelisted IP
        • Saving Changes (5min Cooldown)
      • Proxy API
      • Proxy Rotator - Optional
      • Response Codes
  • Advanced proxy solutions
    • Web Unblocker
      • Getting Started
      • Making Requests
        • Session
        • Geo-location
        • Headers & Cookies
        • Custom status code
        • POST requests
      • Headless Browser
        • JavaScript rendering
        • Browser instructions (Beta)
          • List of instructions
      • Sample Response
      • Response Codes
      • Rate Limits
      • Migration Guides
        • From Bright Data Web Unlocker
      • Usage Statistics
      • Billing Information
  • VIDEO DATA
    • High-Bandwidth Proxies
      • YouTube Downloader (yt_dlp) integration
  • Video Data API
  • Scraping Solutions
    • Web Scraper API
      • Integration Methods
        • Realtime
        • Push-Pull
        • Proxy Endpoint
      • Features
        • Localization
          • Proxy Location
          • SERP Localization
          • E-Commerce Localization
          • Domain, Locale, Results Language
        • JS Rendering & Browser Control
          • JavaScript Rendering
          • Browser Instructions
            • List of instructions
          • Capturing network requests (Fetch/XHR)
        • Result Processing & Storage
          • Dedicated Parsers
          • Custom Parser
            • Getting started
            • Parsing instruction examples
            • List of functions
              • Function examples
          • Download Images
          • Cloud Storage
        • HTTP Context & Job Management
          • Headers, Cookies, Method
          • User Agent Type
          • Client Notes
        • Scheduler
      • Solutions for AI Workflows
        • Model Context Protocol (MCP)
        • LangChain
        • LlamaIndex
      • Targets
        • Google
          • Search
            • Web Search
            • AI Overviews
            • Image Search
            • News Search
            • Local Search
            • Reverse Image Search
            • Google Suggest
          • Ads Max
          • Shopping
            • Shopping Product
            • Shopping Search
            • Shopping Pricing
          • Trends: Explore
          • Travel: Hotels
          • Lens
          • URL
        • Amazon
          • Product
          • Search
          • Pricing
          • Sellers
          • Best Sellers
          • Reviews
          • Questions & Answers
          • URL
        • YouTube
          • YouTube Scraping Guide for AI
          • YouTube Search
          • YouTube Video Trainability
          • YouTube Metadata
          • YouTube Downloader
          • YouTube Transcript
        • Generic Target
        • Walmart
          • Search
          • Product
        • Ebay
        • Etsy
          • Search
          • Product
        • Bing
          • Search
          • URL
        • ChatGPT
        • North American E-Commerce
          • Best Buy
            • Search
            • Product
          • Target
            • Search
            • Product
            • Category
          • Kroger
            • Product
            • Search
            • URL
          • Bed Bath & Beyond
          • Costco
          • Menards
          • Petco
          • Staples
          • Grainger
          • Instacart
        • European E-Commerce
          • Allegro
            • Search
            • Product
          • Idealo
          • Mediamarkt
          • Cdiscount
        • Asian E-Commerce
          • Alibaba
          • Aliexpress
          • Lazada
          • Rakuten
          • Tokopedia
          • Flipkart
          • Avnet
          • Indiamart
        • Latin American E-Commerce
          • Mercado Livre
          • Magazine Luiza
          • Falabella
          • Dcard
      • Restricted Targets
      • Response Codes
      • Usage and Billing
        • Usage Statistics
        • Traffic and Billing
        • Rate Limits
    • OxyCopilot
    • Unblocking Browser
      • Chrome
      • Firefox
      • Device Type
      • Restricted Targets
      • Integration with MCP
  • Dashboard
    • Teams
    • Billing Information
      • Accessing Billing Information
      • Managing Payment Methods
      • Updating Billing Information
      • Canceling a Subscription
    • IP Replacement
  • Guides for Scraper APIs
    • Python SDK
    • Go SDK
    • Forming Requests
    • Forming URLs
    • Using Postman
  • Useful links
    • Oxylabs Dashboard
    • Release Notes
    • Network status
    • Open Source Tools
      • Oxy Parser
      • Oxy Mouse
      • Web Scraper API Scheduler
    • Discord Community
    • GitHub
    • Scraping Experts
  • SUPPORT
    • FAQ
    • Have a Question?
Powered by GitBook
On this page
  • Request samples
  • Request parameter values
  • Generic
  • Localization
  • Pagination
  • Filtering
  • Other
  • Context parameters
  • Data structure and processing
  • Data dictionary
  • Working with Multiple AI Overviews
  • Item
  • Recipe
  • Instruction

Was this helpful?

  1. Scraping Solutions
  2. Web Scraper API
  3. Targets
  4. Google
  5. Search

AI Overviews

PreviousWeb SearchNextImage Search

Last updated 2 months ago

Was this helpful?

The google_search source is designed to retrieve AI Overview (formerly known as Search Generative Experience (SGE)) results.

Important update: The schema structure for AI Overview results has changed from a single ai_overview object to an array of ai_overviews to accommodate multiple AI Overview blocks in a single response. Additional AI overview sometimes appears in the “People also ask for” or “Things to know” sections. Please update your parsing logic accordingly.

Explore for some of the AI Overview SERP features.

Request samples

curl 'https://realtime.oxylabs.io/v1/queries' \
--user 'USERNAME:PASSWORD' \
-H 'Content-Type: application/json' \
-d '{
        "source": "google_search",
        "query": "Emporio Armani EA3192"
    }'
import requests
from pprint import pprint

# Updated payload.
payload = {
    'source': 'google_search',
    'query': 'Emporio Armani EA3192',
}

# Get response.
response = requests.request(
    'POST',
    'https://realtime.oxylabs.io/v1/queries',
    auth=('user', 'pass1'),
    json=payload,
)

# Print prettified response to stdout.
pprint(response.json())
<?php

$params = [
    'source' => 'google_search',
    'query' => 'Emporio Armani EA3192',
];

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://realtime.oxylabs.io/v1/queries");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_USERPWD, "user" . ":" . "pass1");

$headers = [];
$headers[] = "Content-Type: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
echo $result;

if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
https://realtime.oxylabs.io/v1/queries?source=google_search&query=Emporio%20Armani%20EA3192&access_token=12345abcde
{
    "source": "google_search",
    "query": "Emporio Armani EA3192"
}

We use synchronous integration method in our examples. If you would like to use or asynchronous integration, refer to the section.

Request parameter values

Generic

Basic setup and customization options for scraping Google Web search results.

Parameter
Description
Default Value

source

Sets the scraper.

google_search

query

UTF-encoded keyword.

-

render

-

parse

false

callback_url

-

user_agent_type

desktop

- mandatory parameter

Google Advanced Search Operators

{
    "source": "google_search",
    "query": "iphone 15 launch inurl:apple",
}

Localization

Adapt search results to specific geographical locations, domains, and languages.

Parameter
Description
Default Value

geo_location

-

domain

com

locale

-

context: results_language

-

Pagination

Controls for managing the pagination and retrieval of search results.

Parameter
Description
Default Value

start_page

Starting page number.

1

pages

Number of pages to retrieve.

1

limit

Number of results to retrieve in each page.

10

context:limit_per_page

-

Continuous scroll support

The SERP Scraper API fully supports Google Search continuous scroll. It automatically detects continuous scrolling layouts, efficiently loading the requested organic results without any extra parameters required.

Limit per page

To use this feature, include a JSON array with JSON objects containing the following data:

Parameter
Description
Example

page

The number of the page you would like to scrape. Any integer value greater than 0 will work

1

limit

The number of results on the page in question. Any integer value between 1 and 100 (inclusive) will work.

90

Request sample

{
    "source": "google_search",
    "query": "adidas",
    "parse": true,
    "context": [
        {
            "key": "limit_per_page",
            "value": [
                {"page": 1, "limit": 10},
                {"page": 2, "limit": 90}
                    ]
        }]
}

Filtering

Parameter
Description
Default Value

context: filter

Setting the value of this parameter to 0 lets you see results that would otherwise be excluded due to similarity to other results.

1

context: safe_search

Safe search. Set to true to enable it.

false

context: udm

-

context: tbm

To-be-matched or tbm parameter. Accepted values are: app, blg, bks, dsc, isch, nws, pts, plcs, rcp, lcl

-

context: tbs

-

udm and tbm context parameters cannot be used together in a single scraping request; please select only one. Using both simultaneously may lead to conflicts or unexpected behavior.

Other

Additional advanced settings and controls for specialized requirements.

Parameter
Description
Default Value

context: fpstate

Setting the fpstate value to aig will make Google load more apps. This parameter is only useful if used together with the render parameter.

-

context: nfpr

true will turn off spelling auto-correction

false

Context parameters

All context parameters should be added to the context array as objects with key and value pairs, e.g.:

...
"context": [
    {
        "key": "filter",
        "value": "0"
    }
]
...

Data structure and processing

Data dictionary

All of the available keys within AI Overview SERP feature are defined in the table below:

Note: the examples below reflect the new schema structure with ai_overviews as an array.

Key (results.ai_overview)
Description
Type

answer_text

General information about the Google Search query term.

array

bullet_list

Indicates information on items rendered in a bulleted list within the AI Overview SERP feature.

array

products

A list of products with their respective details.

object

source_panel

A list of sources used to generate AI Overview result in Google SERP feature.

object

additional_questions

A list of additional questions with their respective details.

object

recipes

A list of recipes with their respective details.

object

info_list

A list of information most frequently used to represent steps of a process relevant to the search query.

array

pos_overall

An indication of the position of the AI Overview SERP feature result among all available Google SERP results.

Working with Multiple AI Overviews

Since AI Overviews are now returned as an array, you'll need to iterate through them:

// Processing all AI Overviews in a response
response.results.ai_overviews.forEach((aiOverview, index) => {
  console.log(`Processing AI Overview #${index + 1}`);
  // Process individual components
  if (aiOverview.answer_text) {
    // Handle answer text
  }
  if (aiOverview.bullet_list) {
    // Handle bullet lists
  }
  // And so on...
});
# Processing all AI Overviews in a response
for index, ai_overview in enumerate(response['results']['ai_overviews']):
    print(f"Processing AI Overview #{index + 1}")
    # Process individual components
    if 'answer_text' in ai_overview:
        answer_texts = ai_overview['answer_text']
        for answer in answer_texts:
            # Process each answer text
            if 'text' in answer:
                for text_item in answer['text']:
                    print(f"Answer text: {text_item}")
    
    if 'bullet_list' in ai_overview:
        bullet_lists = ai_overview['bullet_list']
        for bullet_list in bullet_lists:
            if 'list_title' in bullet_list:
                print(f"List title: {bullet_list['list_title']}")
            if 'points' in bullet_list:
                for point in bullet_list['points']:
                    print(f"- {point}")
    # Continue processing other elements...
<?php
// Processing all AI Overviews in a response
if (isset($response['results']['ai_overviews']) && is_array($response['results']['ai_overviews'])) {
    foreach ($response['results']['ai_overviews'] as $index => $aiOverview) {
        $indexNumber = $index + 1;
        echo "Processing AI Overview #{$indexNumber}\n";
        
        // Process answer text
        if (isset($aiOverview['answer_text']) && is_array($aiOverview['answer_text'])) {
            foreach ($aiOverview['answer_text'] as $answer) {
                if (isset($answer['text']) && is_array($answer['text'])) {
                    foreach ($answer['text'] as $textItem) {
                        echo "Answer text: {$textItem}\n";
                    }
                }
            }
        }
        
        // Process bullet lists
        if (isset($aiOverview['bullet_list']) && is_array($aiOverview['bullet_list'])) {
            foreach ($aiOverview['bullet_list'] as $bulletList) {
                if (isset($bulletList['list_title'])) {
                    echo "List title: {$bulletList['list_title']}\n";
                }
                if (isset($bulletList['points']) && is_array($bulletList['points'])) {
                    foreach ($bulletList['points'] as $point) {
                        echo "- {$point}\n";
                    }
                }
            }
        }
        // Continue processing other elements...
    }
}
?>

In most cases, there will be only one AI Overview, but your code should be prepared to handle multiple entries.

Item

In the following example, "Emporio Armani EA3192" query was used.

...
  "ai_overviews": [
    {
      "answer_text": [
        {
          "text": [
            "Emporio Armani is a luxury brand known for its timeless designs and commitment to Italian craftsmanship.",
            "The Emporio Armani EA3192 is a pair of prescription glasses that are designed for men.",
            "They have a rectangular frame that is made from hypoallergenic, lightweight plastic.",
            "The lenses are UV and anti-reflective.",
            "Here are some insights from reviews:"
          ],
          "pos": 1
        }
      ],
      "bullet_list": [
        {
          "list_title": "Pros",
          "points": [
            "Comfortable",
            "Minimal branding"
          ],
          "pos": 1
        }
      ],
      "products": {
        "items": [
          {
            "product_name": "Emporio Armani Men Eyeglasses Shiny Black Size: 53",
            "price": "$163.00",
            "previous_price": null,
            "seller": "Lenscrafters",
            "shipping": "Free delivery",
            "url": "https://www.lenscrafters.com/lc-us/emporio-armani/8056597975810?srsltid=AfmBOoqWO55KIJevhQp_c5OAp0JOM_8Uza3_gCvn9S4x4Vz342AUSQewzJI",
            "pos": 1
          }
        ]
      },
      "source_panel": {
        "items": [
          {
            "url": "https://www.italist.com/magazine/what-is-emporio-armani/#:~:text=Emporio%20Armani%20is%20a%20luxury,reinforce%20the%20perception%20of%20luxury.",
            "source": "italist.com",
            "date": "May 5, 2023",
            "title": "What is Emporio Armani and is Emporio Armani a luxury brand?",
            "pos": 1
          },
        ...
        ]
      },
      "additional_questions": {
        "items": [
          {
           "question": "Is Emporio Armani the same as Giorgio Armani?",
           "pos": 1
          }
        ]
      },
      "pos_overall": 1
    }
  ],
...

Answer text

Key (results.ai_overviews.answer_text)
Description
Type

text

A short answer on the Google Search query.

array

pos

An indicator denoting the position of a given item among all AI Overview answer results.

integer

Bullet list

Key (results.ai_overviews.bullet_list)
Description
Type

list_title

The title of the bullet list.

string

points

The items rendered in the bullet list. All items are comma-separated.

array

pos

An indicator denoting the position of a given item among all AI Overview bullet list results.

integer

Products

Key (results.ai_overviews.products)
Description
Type

items

A list of products with their respective details.

array

items.product_name

The name of the product.

string

items.price

The current price of the product.

string

items.previous_price

The initial price of the product (if applicable).

string

items.seller

The seller of the product.

string

items.shipping

The type of shipping available for the product.

string

items.url

The URL of the product.

string

items.pos

An indicator denoting the position of a given item among all AI Overview Product results.

integer

Source panel

Key (results.ai_overviews.source_panel)
Description
Type

items

A list of sources used to generate AI Overview result in Google SERP feature.

object

items.url

The URL of the website.

string

items.source

The name of the website.

string

items.date

The date when the article has been published.

string

items.title

The title of the article.

string

items.pos

An indicator denoting the position of a given item among all AI Overview source panel results.

integer

Additional questions

Key (results.ai_overviews.additional_questions)
Description
Type

items.question

A list of comma-separated Additional questions relevant to the original search query.

array

items.pos

An indicator denoting the position of a given item among all AI Overview additional questions results.

integer

Recipe

In the following example, "recipe for an apple pie" query was used.

...  
 "ai_overviews": [
   {
      "recipes": {
        "items": [
          {
            "description": "This simple recipe features a homemade crust, Granny Smith apples, and warm spices.",
            "image": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/...",
            "source": "Allrecipes",
            "rating": "4.8",
            "rating_count": "13K",
            "duration": "90 min",
            "url": "https://www.allrecipes.com/recipe/12682/apple-pie-by-grandma-ople/",
            "title": "Apple Pie by Grandma Ople"
          },
...
        ]
      }
    }
  ],
...

Recipes

Key (results.ai_overviews.recipes)
Description
Type

items

A list of recipes with their respective details.

array

items.description

A short description of the recipe.

string

items.image

A base64-encoded thumbnail image of the recipe.

string

items.source

The name of the site where the recipe is published.

string

items.rating

The rating of the recipe.

string

items.rating_count

The number of ratings.

string

items.duration

The time that is needed to prepare the dish.

string

items.url

The URL to the full recipe.

string

items.title

The title of the recipe.

string

In the following example, "recipe of a juicy succulent steak" query was used.

Info list

Key (results.ai_overviews.info_list)
Description
Type

list_title

The title of the list.

string

list_items

Contains a list of items with their respective details.

array

list_items.title

The title of the section within the list.

string

list_items.content

A short description of the section.

string

list_item.pos

An indicator denoting the position of a given item among all AI Overview Info list results.

integer

Instruction

In the following example, "docker exec commands explained" query was used.

...
  "ai_overviews": [
    {
      "answer_text": [
        {
          "text": [
            "The docker execExecIn computing, exec is a functionality of an operating system that runs an executable file in the context of an already existing process, replacing the previous executable...",
            "It is a powerful tool that can be used for a variety of tasks, such as troubleshooting a container, running a script, or installing software."
          ],
          "pos": 1
        },
        {
          "text": [
            "The syntax for the docker exec command is as follows:"
          ],
          "command": [
            "docker exec [OPTIONS] CONTAINER COMMAND [ARG...]"
          ],
          "pos": 2
        },
        ...
        }
      ]
    }
  ],
...

Answer text command

Key (results.ai_overviews.answer_text)
Description
Type

command

An instruction given to a computer or software to perform a specific task.

string

Enables JavaScript rendering when set to html. .

Returns parsed data when set to true. Explore output .

URL to your callback endpoint. .

Device type and browser. The full list can be found .

When scraping, you might find it useful to combine Google advanced search operators with your query. It enables you to customize the scope of the search, ensuring that the results are more relevant and focused. Explore these special commands and . See an example below.

The geographical location that the result should be adapted for. Using this parameter correctly is extremely important to get the right data. For more information, read about our suggested geo_location parameter structures

Domain localization for Google. The full list of available domains can be found .

Accept-Language header value which changes your Google search page web interface language. .

Results language. List of supported Google languages can be found . Learn how to use context parameters .

Scrape multiple pages using the same IP address and session (cookie set). By specifying the page numbers in a JSON array with the page key and indicating the number of organic results per page using the limit key, you can minimize the chance of seeing overlapping organic results across pages (e.g., the last organic result on the first page being the same as the first organic result on the second page). .

Options to filter and refine search results based on various criteria. Learn how to use context parameters .

udm parameter allows switching between different search tabs, such as images, places, or videos, to customize the type of results displayed. Find the accepted values .

This parameter is like a container for more obscure google parameters, like limiting/sorting results by date as well as other filters some of which depend on the tbm parameter (e.g. tbs=app_os:1 is only available with tbm value app). More info .

Explore examples of AI Overview results below, categorized by different search queries: , , .

Note: details are rendered in the same array as for , however, one new type of key (command) appears for instruction related type of query

here
here
Realtime
Proxy Endpoint
Push-Pull
integration methods
data dictionary
here
Item
Recipes
Instruction
item related search query
here
More info
here
here
here
data dictionary
See example
here
here.
More info
here
More info