Google Shopping Results Scraper
Pricing
from $0.23 / 1,000 item extracteds
Google Shopping Results Scraper
Extract Google Shopping product results by keyword, country, language, price range, and max item count for price and merchant research.
Google Shopping Results Scraper
Pricing
from $0.23 / 1,000 item extracteds
Extract Google Shopping product results by keyword, country, language, price range, and max item count for price and merchant research.
You can access the Google Shopping Results Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "0.2", "x-build-id": "8p9Fjx8IhBDABX7iJ" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/fetch_cat~google-shopping-results-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-fetch_cat-google-shopping-results-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/fetch_cat~google-shopping-results-scraper/runs": { "post": { "operationId": "runs-sync-fetch_cat-google-shopping-results-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/fetch_cat~google-shopping-results-scraper/run-sync": { "post": { "operationId": "run-sync-fetch_cat-google-shopping-results-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "required": [ "queries" ], "properties": { "queries": { "title": "Shopping queries", "minItems": 1, "type": "array", "description": "Product names, SKUs, categories, or comparison terms. Results are allocated fairly across queries.", "items": { "type": "string" } }, "maxItems": { "title": "Maximum results", "minimum": 1, "maximum": 1000, "type": "integer", "description": "Hard total cap across all queries.", "default": 20 }, "maxItemsPerQuery": { "title": "Maximum results per query", "minimum": 1, "maximum": 1000, "type": "integer", "description": "Optional hard cap for each query. Defaults to the total maximum." }, "country": { "title": "Country code", "minLength": 2, "maxLength": 2, "type": "string", "description": "Two-letter Google Shopping country code, such as US, GB, CA, AU, or DE.", "default": "US" }, "language": { "title": "Language code", "type": "string", "description": "Google interface language, such as en, es, de, fr, or it.", "default": "en" }, "merchant": { "title": "Merchant or store", "type": "string", "description": "Only save results whose visible merchant contains this store name." }, "condition": { "title": "Product condition", "enum": [ "any", "new", "used", "refurbished" ], "type": "string", "description": "Ask Google for any, new, used, or refurbished products.", "default": "any" }, "minPrice": { "title": "Minimum price", "minimum": 0, "type": "number", "description": "Numeric lower price bound." }, "maxPrice": { "title": "Maximum price", "minimum": 0, "type": "number", "description": "Numeric upper price bound." }, "onSale": { "title": "On-sale products only", "type": "boolean", "description": "Only save results with a visible sale, deal, original price, or discount.", "default": false }, "freeShipping": { "title": "Free shipping only", "type": "boolean", "description": "Only save results that explicitly advertise free shipping or delivery.", "default": false }, "freeReturns": { "title": "Free returns only", "type": "boolean", "description": "Only save results that explicitly advertise free returns.", "default": false }, "sort": { "title": "Sort order", "enum": [ "relevance", "priceAsc", "priceDesc", "rating" ], "type": "string", "description": "Order requested from Google Shopping.", "default": "relevance" }, "startPage": { "title": "Start page", "minimum": 1, "maximum": 100, "type": "integer", "description": "First Shopping results page to request.", "default": 1 }, "maxPages": { "title": "Maximum pages per query", "minimum": 1, "maximum": 10, "type": "integer", "description": "Hard page-request cap for each query (up to 10).", "default": 1 }, "requestTimeoutSecs": { "title": "Request timeout (seconds)", "minimum": 5, "maximum": 120, "type": "integer", "description": "Per-page timeout. Timeout and partial outcomes are recorded in the run summary.", "default": 45 }, "proxyConfiguration": { "title": "Proxy configuration", "type": "object", "description": "The default GOOGLE_SERP proxy is recommended for Google Shopping.", "default": { "useApifyProxy": true, "apifyProxyGroups": [ "GOOGLE_SERP" ], "apifyProxyCountry": "US" } } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for Google Shopping Results Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: