# Introduction to Google Shopping Scraper

The **Google Shopping API** provides programmatic access to Google Shopping search results through a unified endpoint. \
It enables you to retrieve structured product listings, pricing, merchants, filters, and pagination data using our SERP-API.

This API is designed for **ecommerce intelligence, price comparison, product discovery, and market research**, supporting advanced filtering, sorting, localization, and merchant-level data retrieval.

### Authentication[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#authentication) <a href="#authentication" id="authentication"></a>

To access the SERP API, you must provide basic authentication credentials using the username and password provided by NetNut. Include these credentials in the HTTP request headers as follows:

`Authorization: Basic base64(username:password)`

Where base64(username:password) is the Base64-encoded string of your username and password concatenated with a colon (`:`) separator.

### Environments[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#environments) <a href="#environments" id="environments"></a>

* Base URL: `https://serp-api.netnut.io`
* Endpoint: `/search&udm=28`

### API Parameters & Specifications[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#api-parameters--specifications) <a href="#api-parameters--specifications" id="api-parameters--specifications"></a>

#### &#x20;Search Query[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#----search-query-) <a href="#search-query" id="search-query"></a>

| Name | Status   | Description                                                                                                                                                             |
| ---- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `q`  | Required | The 'q' parameter defines the query you want to search for. You can use any string that you would use in a regular Google search (e.g., `inurl:`, `site:`, `intitle:`). |

#### &#x20;Pagination[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#--pagination-) <a href="#pagination" id="pagination"></a>

| Name    | Status   | Description                                                                                                                                                                                                                                                                                                                                                                                             |
| ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `start` | Optional | <p>The <code>start</code> parameter controls the result offset used for pagination. <br>It specifies how many results to skip before returning data. For example, <code>start=0</code> (default) returns the first page, <code>start=10</code> returns the second page, <code>start=20</code> returns the third page, and so on. <br><strong>The parameter supports increments of 10 only</strong>.</p> |

#### &#x20;Geographic Location[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#--geographic-location--) <a href="#geographic-location" id="geographic-location"></a>

| Name   | Status   | Description                                                                                                                                                                     |
| ------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `uule` | Optional | The 'uule' parameter is the Google encoded location you want to use for performing the Google search. [**Click here** ](https://indexguru.com/uule-generator)to generate a UULE |

#### &#x20;Localization[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#--localization--) <a href="#localization" id="localization"></a>

| Name           | Status   | Description                                                                                                                                                                                                                                                                                                |
| -------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `googleDomain` | Optional | <p>The <code>googleDomain</code> parameter defines the Google domain to use for the Google search. The default is <code>[www.google.com](http://www.google.com)</code>. <br>Please ensure you add "www" before the domain name.</p>                                                                        |
| `gl`           | Optional | The `gl` parameter defines the country to use for the Google search. It is a two-letter country code. For example - use `us` for the United States, `uk` for United Kingdom, etc.                                                                                                                          |
| `hl`           | Optional | The `hl` parameter defines the language to use for the Google search. It is a two-letter language code. For example - use `en` for English, `de` for German, etc. [**Access** ](https://cloud.google.com/translate/docs/languages)the Google languages page for a full list of supported Google languages. |
| `location`     | Optional | <p>Similarly to the  <code>gl</code> parameter it is another parameter  that defines the country to use for the Google search. <br>It is a two-letter country code. For example - use <code>us</code> for the United States, <code>uk</code> for United Kingdom, etc.</p>                                  |

#### &#x20;Advanced Filters[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#--advanced-filters--) <a href="#advanced-filters" id="advanced-filters"></a>

<table><thead><tr><th>Name</th><th width="222">Status</th><th>Description</th></tr></thead><tbody><tr><td><code>rawHtml</code></td><td>Optional</td><td>The 'rawHtml' parameter defines the final output you want. It can be set to <code>1 (true)</code> or <code>0 (false)</code> to get the raw html response.<br>for receiving html only (without parsing) set it to <code>2 (only)</code></td></tr><tr><td><code>shoprs</code></td><td>Optional</td><td>This parameter specifies a token containing metadata about the query and applied search filters. <br>When the token is provided, the <code>q</code> parameter may be omitted.<br>This parameter overrides the </td></tr><tr><td><code>safe</code></td><td>Optional</td><td>The 'safe' parameter defines the level of filtering for adult content. It can be set to <code>active</code> or <code>off</code>, by default Google blurs explicit content.</td></tr><tr><td><code>filter</code></td><td>Optional</td><td>The 'filter' parameter allows defining whether the filters for 'Omitted Results' and 'Similar Results' are enabled or disabled. Setting the parameter to <code>1</code> (default) enables these filters, and setting the parameter to <code>0</code> disables these filters.</td></tr><tr><td><code>nfpr</code></td><td>Optional</td><td>Parameter defines the exclusion of results from an auto-corrected query that is spelled wrong. It can be set to <code>1</code> to exclude these results, or <code>0</code> to include them (default).</td></tr><tr><td><code>device</code></td><td>Optional</td><td>The 'device' parameter defines the device to use to get the Google search results. The parameter can be set to <code>desktop</code> (default) to use a regular browser, tablet to use a tablet browser (currently using iPads), or <code>mobile</code> to use a mobile browser (currently using iPhones).</td></tr></tbody></table>

### Google Shopping Specific Filters <a href="#api-results-http-response" id="api-results-http-response"></a>

<table><thead><tr><th>Name</th><th width="222">Status</th><th>Description</th></tr></thead><tbody><tr><td><code>shoprs</code></td><td>Optional</td><td>This parameter defines a token that encapsulates the query context and applied search filters. When provided, the <code>q</code> parameter may be omitted. <br><strong>The token takes precedence and overrides all other filters listed in this table.</strong></td></tr><tr><td><code>sortBy</code></td><td>Optional</td><td><p></p><p>This parameter controls the sorting order of the results.</p><p>Available values:</p><p><code>1</code>: Price, low to high</p><p><code>2</code>: Price, high to low</p><p><code>3</code>: Ranking, high to low</p></td></tr><tr><td><code>minPrice</code></td><td>Optional</td><td>Specifies the minimum value for the price range filter</td></tr><tr><td><code>maxPrice</code></td><td>Optional</td><td>Specifies the maximum value for the price range filter</td></tr><tr><td><code>freeShipping</code></td><td>Optional</td><td>Boolean parameter (0/1 Or true/false) that limits the results to products that offer free shipping.<br></td></tr><tr><td><code>onSale</code></td><td>Optional</td><td>Boolean parameter (0/1 Or true/false) that limits the results to products that are on sale.</td></tr><tr><td><code>smallBusiness</code></td><td>Optional</td><td>Boolean parameter (0/1 Or true/false) that limits the results to products that are from small businesses.</td></tr></tbody></table>

### API Results structure[​](https://serp-api.netnut.io/docs/SERP/Getting%20Started#api-results-http-response) <a href="#api-results-http-response" id="api-results-http-response"></a>

```
{
  "url": "string",
  "general": {
    "searchEngine": "google_shopping",
    "language": "string",
    "device": "string",
    "searchType": "string",
    "pageTitle": "string",
    "timestamp": "string"
  },
  "input": {
    "originalUrl": "string",
    "jobId": "string"
  },
  "shoppingResults": [
    {
      "title": "string",
      "price": "string",
      "rawPrice": 0.0,
      "previousPrice": "string",
      "rawPreviousPrice": 0.0,
      "source": "string",
      "rating": 0.0,
      "reviews": 0,
      "tag": "string",
      "rank": 0
    }
  ],
  "pagination": {
    "currentPage": 0,
    "nextPage": 0,
    "nextPageLink": "string",
    "nextPageStart": 0
  }
}

```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.netnut.io/netnut-documentation/netnut-scraper-apis/serp-api/google-scraper/google-shopping/introduction-to-google-shopping-scraper.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
