Google Search API endpoints
Choose a Google search type and send its request using the Google Search API. This guide builds on the Quickstart and covers the five search types with dedicated entries in the Scrapeless API reference.
All five use the same HTTP endpoint and the actor scraper.google.search. The input.tbm value selects the search type.
Request and authentication
POST https://api.scrapeless.com/api/v1/scraper/request
x-api-token: YOUR_API_KEY
Content-Type: application/jsonReplace YOUR_API_KEY with your Scrapeless API key. Send one JSON object containing actor and input.
Choose a search type
| Search type | input.tbm | Request input |
|---|---|---|
| Google Search | Omit | Search query in q |
| Google Images | isch | Image search query in q |
| Google Local | lcl | Local search query in q |
| Google Videos | vid | Video search query in q |
| Google Shopping | shop | Shopping search query in q |
These are search modes of one endpoint. Keep the HTTP URL, authentication header, and actor unchanged when switching modes.
Google Search
Omit tbm for regular web search.
curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"actor": "scraper.google.search",
"input": {
"q": "coffee",
"hl": "en",
"gl": "us"
}
}'The Quickstart includes a web-search response with organic_results, pagination, and other query-dependent sections. Do not assume that every query returns every section.
Google Images
Set tbm to isch to request image search. The request below uses the default Google domain.
curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"actor": "scraper.google.search",
"input": {
"q": "Apple Iphone16",
"hl": "en",
"gl": "us",
"tbm": "isch"
}
}'Google Local
Set tbm to lcl to request local search.
curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"actor": "scraper.google.search",
"input": {
"q": "coffee shops",
"hl": "en",
"gl": "us",
"tbm": "lcl"
}
}'For city-level targeting, add location inside input, such as "Austin, Texas, United States". Use either location or uule, never both in one request.
For Local search pagination, start must be a multiple of 20: 0, 20, 40, and so on.
Google Videos
Set tbm to vid. This example retains the request fields shown in the dedicated API reference.
curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"actor": "scraper.google.search",
"input": {
"engine": "google.search",
"q": "Coffee",
"google_domain": "google.com",
"start": 0,
"num": 10,
"tbm": "vid"
}
}'Google Shopping
Set tbm to shop. This example retains the request fields shown in the dedicated API reference.
curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
--header 'x-api-token: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"actor": "scraper.google.search",
"input": {
"engine": "google.search",
"q": "Coffee",
"google_domain": "google.com",
"start": 0,
"num": 10,
"tbm": "shop"
}
}'Common search controls
Set these fields inside input:
| Parameter | Purpose |
|---|---|
q | Required search query. |
gl | Search country, such as us. |
hl | Search language, such as en. |
google_domain | Google domain; defaults to google.com. |
location | Search origin, preferably specified at city level. |
uule | Encoded Google location; mutually exclusive with location. |
start | Result offset. Web search uses 0, 10, 20, and so on. |
num | Requested maximum result count. |
tbs | Advanced search filters. |
The parameter reference warns that num can increase latency or affect specialized result types. Omit it unless needed; a requested count is not a guarantee of that many results. The Videos and Shopping examples above preserve the documented value of 10.
See Google Search parameters for the complete parameter descriptions. The current device support listed there is desktop.
Read the result
- HTTP
200: read the JSON result. - HTTP
201: savetaskIdand retrieve the existing task using the result endpoint.
curl --request GET 'https://api.scrapeless.com/api/v1/scraper/result/YOUR_TASK_ID' \
--header 'x-api-token: YOUR_API_KEY'Replace YOUR_TASK_ID with the returned ID. See Results and Polling for the complete workflow.
Response sections vary by search type and query. The dedicated API specifications currently declare a generic object for successful responses; the regular Google Search example is not a schema for Images, Local, Videos, or Shopping.