Send a query and get the results page back as data: ranked organic results, People also ask and related searches. Pick the country, language and time range. No proxies, no CAPTCHAs, no HTML parsing.
curl -X POST https://scrapingbot.io/api/v1/google \ -H "x-api-key: YOUR_API_KEY" \ -H "content-type: application/json" \ -d '{ "endpoint": "/search", "params": { "q": "best espresso machine", "gl": "us" } }'
{ "success": true, "searchParameters": { "q": "best espresso machine", "gl": "us", … }, "organic": [{ "position": 1, "title": "The Best Espresso Machine", "link": "https://coffeegeek.com/opinions/state-of-coffee/…", "snippet": "The Breville Bambino Plus: The Best Espresso …", "date": "Apr 7, 2024" }, …], "peopleAlsoAsk": [ { "question": "What is the best espresso machine for home use?" }, … ], "relatedSearches": [ { "query": "Best espresso machine for home" }, … ], "duration": "1.27", "statusCode": 200, "creditsUsed": 10 }
Each part of a Google results page becomes its own field, in the order Google ranked it. Store it, diff it, or hand it straight to your model.
organic
Every blue link on the page, in order.
date, sitelinks and the rating fields appear when Google shows them for that result.
peopleAlsoAsk
The questions Google expands under the results.
Left out of the response when the page has no such box.
relatedSearches
The suggested searches at the bottom of the page.
Left out of the response when the page has none.
searchParameters
Your query echoed back with the options you sent.
Handy for storing alongside the results.
Every call is a POST to /api/v1/google with /search as the endpoint and your parameters. Change the country, language, page or time range without changing anything else.
POST https://scrapingbot.io/api/v1/google x-api-key: YOUR_API_KEY content-type: application/json { "endpoint": "/search", "params": { "q": "running shoes", "gl": "gb", "hl": "en", "page": 2 } }
You can also send the key as a Bearer token or an api_key query parameter.
q required
The search query. Operators such as site:, quotes and - work as they do on Google.
gl
Country to search from, e.g. us, gb, de.
hl
Interface language, e.g. en, es, fr.
page
Results page, starting at 1. Each page holds up to 10 results.
num
Results per page, up to 10.
tbs
Time filter: qdr:h hour, qdr:d day, qdr:w week, qdr:m month, qdr:y year.
autocorrect
Set false to search the query exactly as typed.
safe
SafeSearch filtering on or off.
lr, cr, as_sitesearch, …
Advanced Google parameters, passed through as given.
Every parameter, with examples, is in the Google docs. New to SERP data? Read why DIY Google scraping breaks.
A few patterns we see often, and the parameters behind each one.
Record where your pages and your competitors’ rank for each keyword, country by country, every day.
Collect People also ask questions and related searches to find what people want to know about a topic.
Search your brand or topic with a time filter on a schedule and catch new pages as soon as Google indexes them.
Give your agent fresh search results to cite, through the API or the googleSearch tool on the MCP server.
A Google call costs 10 credits, and only when it succeeds. Every endpoint costs the same.
creditsUsed field, and your dashboard logs every request with its status, duration and credits.
Every successful Google call
10credits
The parts of a Google web results page as JSON: organic results (position, title, link, snippet, and date, sitelinks or ratings when Google shows them), peopleAlsoAsk questions and relatedSearches. Ads, maps, images, news and shopping blocks are not included.
Up to 10 organic results, which is one Google results page. Ask for the next ones with page: 2, 3 and so on. Positions are counted within each page.
Yes. Set gl to a country code and hl to a language code, for example "gl": "de", "hl": "de" for German results as seen from Germany.
Yes. Add tbs with qdr:h, qdr:d, qdr:w, qdr:m or qdr:y for the past hour, day, week, month or year.
Yes. Every call runs a fresh search, so results reflect Google at the time of the request.
10 credits per successful search. Errors and timeouts are refunded automatically, and a request without q is rejected for free. New accounts get 100 free credits, enough for 10 searches.
Use this API for Google. The Website API rejects google.com search URLs and points you here, because structured results are cheaper and more reliable than parsing the HTML.
Yes. The ScrapingBot MCP server includes a googleSearch tool, so Claude, Cursor and other MCP clients can search Google with your API key.
Create an account, copy your API key and run your first search in a few minutes. No credit card required.