# serp402 Google Shopping API

> serp402 Google Shopping API is a paid API for AI agents from serp402.com, paid per call via x402, $0.05/call, status unknown (last checked 2026-10-31).

Scrapes Google Shopping search results and returns structured JSON with product position, price, rating, source, and link data

## Facts

- Endpoint: POST https://serp402.com/api/v1/google-shopping?utm_source=zero.xyz
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/serp402-google-shopping-api-937ff061
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_h5sT--cASNoVcxXqYzIr_

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability serp402-google-shopping-api-937ff061 -d '<json body>'
```

Example prompt: Search Google Shopping for wireless noise-cancelling headphones under $150, sorted by price low to high, in the US market in English — give me the top results with prices, ratings, and seller links.

## When to prefer this

Choose this endpoint when you need structured Google Shopping product data — prices, ratings, sellers, and links — without managing API keys or subscriptions. It is ideal for price comparison, deal hunting, product research, and market analysis tasks. At $0.05 per call with no account required, it suits low-to-medium volume agentic workflows. Prefer this over Bing Shopping when Google's broader product index and retailer coverage is needed.

## Known failure modes

- Query returns no results for highly specific or misspelled search terms
- Location or country code not recognized — falls back to default region
- Simultaneous use of uule and location parameters causes conflict error
- Google Shopping layout changes may temporarily break field extraction
- Rate limiting or upstream blocking may return empty or partial results
- Invalid sort_by value returns unordered results

## How this service works

Google Shopping: Position, price, rating, source, link, and more Structured JSON, USD 0.05 per call in USDC — no API key, no account, no subscription, no minimum. Not affiliated with, endorsed by or an official channel of any of the services the results come from. All trademarks and copyright remain the property of their respective owners.

## Output

Returns structured JSON containing an array of Google Shopping product listings, each with position ranking, product title, price (in local currency), seller/source name, product page link, thumbnail image URL, star rating, review count, and sale status where available.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "q": {
   "type": "string"
  },
  "gl": {
   "type": "string",
   "description": "country to use for the Google search. It's a two-letter country code. (e.g., us for the United States, uk for United Kingdom, or fr for France) Head to the…"
  },
  "hl": {
   "type": "string",
   "description": "language to use for the Google Shopping search. It's a two or three-letter language code. (e.g., en for English, es for Spanish, or fr for French), optionally…"
  },
  "safe": {
   "type": "string",
   "description": "level of filtering for adult content. It can be set to active or off , by default Google will omit explicit content."
  },
  "uule": {
   "type": "string",
   "description": "Parameter is the Google encoded location you want to use for the search. uule and location parameters can't be used together. For consistent results with…"
  },
  "start": {
   "type": "string",
   "description": "Parameter is intended to define the result offset for pagination. Google Shopping's current layout does not support offset pagination: the start parameter is…"
  },
  "shoprs": {
   "type": "string",
   "description": "The parameter defines the token that includes metadata about query and search filter(s). Providing q parameter alongside the shoprs is not required. To apply…"
  },
  "on_sale": {
   "type": "string",
   "description": "Show only products that are on sale. This parameter overrides corresponding filter embedded into shoprs parameter."
  },
  "sort_by": {
   "type": "string",
   "description": "sorting order of the results. Available options: 1 - Price: low to high 2 - Price: high to low This parameter overrides corresponding filter embedded into…"
  },
  "location": {
   "type": "string",
   "description": "from where you want the search to originate. If several locations match the location requested, we'll pick the most popular one. Head to the /locations.json…"
  },
  "max_price": {
   "type": "string",
   "description": "Upper bound of price range query. This parameter overrides corresponding filter embedded into shoprs parameter."
  },
  "min_price": {
   "type": "string",
   "description": "Lower bound of price range query. This parameter overrides corresponding filter embedded into shoprs parameter."
  },
  "free_shipping": {
   "type": "string",
   "description": "Show only products with free shipping. This parameter overrides corresponding filter embedded into shoprs parameter."
  },
  "google_domain": {
   "ty
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/serp402-google-shopping-api-937ff061/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from serp402.com](https://www.zero.xyz/host/serp402.com/llms.txt)
