Extract Google search results, organic rankings, result URLs, titles, snippets, and related queries as structured JSON for SERP monitoring, rank tracking, and search visibility workflows.
Structured output
Use Crawlora's Google Search API to collect public Google SERP data without maintaining your own parser, proxy routing, retries, or response normalization layer. The endpoint returns structured JSON that can power rank trackers, SEO dashboards, keyword monitoring tools, competitor research, and AI search workflows.
SERP workflows
Crawlora helps teams record where domains rank in Google, which result URLs and snippets appear, and how positions change over time across keywords, countries, and languages.
SERP monitoring workflowsRequest schema
These parameters come from the active Google search API catalog entry.
| Parameter | Type | Required | Description | Example |
|---|
Example JSON
This example is rendered from the active endpoint catalog so the page stays aligned with Docs and Playground.
{
"code": 200,
"msg": "OK",
"data": {
"result": [
{
"position": 1,
"title": "ChatGPT",
"website_name": "ChatGPT",
"icon": "",
"link": "https://chatgpt.com/",
"Snippet": "ChatGPT helps you get answers and create."
}
],
"ai_overview": {
"heading": "AI Overview",
"summary": "ChatGPT is a generative AI chatbot developed by OpenAI that can answer questions and hold conversations.",
"sources": [
"https://openai.com/chatgpt/"
]
},
"people_also_ask": [
{
"question": "What is ChatGPT used for?"
}
]
}
}Endpoint catalog
/google/searchReturns normalized Google web search results. Results are fetched through proxied browser renderers that race several concurrent renders per request and return the first clean result, with stale-cache fallback when available. The endpoint returns 503 when Google serves a challenge page or unusable HTML. Rate limit is enforced at 1 request per second, and if the limit is exceeded a 429 status code is returned with rate limit headers.
MCP tool google_search
Managed execution
Crawlora wraps request handling, proxy-aware collection, response parsing, and documented error behavior behind a stable API surface for supported public Google search result pages.
Request logic for Google web search result pages
Proxy-aware collection and retry-aware execution where supported
Challenge-aware behavior for unusable upstream responses
Normalized JSON responses with Playground-tested examples
Credit-based usage tied to documented endpoint costs
Crawlora detects unusable upstream responses and returns documented errors instead of silently returning broken HTML.
Build or buy
Use this comparison to decide whether to maintain scraping infrastructure internally or call a managed endpoint.
| Requirement | Building internally | Crawlora |
|---|---|---|
| Proxy rotation | Buy, test, rotate, and monitor proxy pools. | Use managed proxy-aware collection where supported. |
| Parser maintenance | Maintain selectors as Google layouts change. | Use parsers maintained behind the API. |
| Schema normalization | Design and version your own response model. | Receive documented JSON fields from the catalog. |
| Retries and error classification | Classify challenges, empty pages, and upstream failures yourself. | Receive documented errors for unusable upstream responses. |
| Endpoint docs | Write and maintain internal API documentation. | Use generated Docs pages from the active endpoint catalog. |
| Playground testing | Build a test console for developers. | Test the same endpoint in Playground before shipping. |
| Usage billing | Create your own metering and limits. | Use credit-based usage and plan limits. |
| Monitoring | Instrument request volume and failures from scratch. | Use Crawlora's documented status and usage workflow. |
Crawlora is not the official Google Custom Search or Programmable Search API. Crawlora provides structured public web data extraction endpoints for supported Google search result pages. If your use case requires Google's official licensed search API, use Google's official API.
Related APIs
Connect this endpoint with adjacent Crawlora search, monitoring, docs, and pricing pages.
Compare Google visibility with Bing SERP data.
OpenAdd Brave Search results to cross-engine monitoring workflows.
OpenPair SERP tracking with search demand and trend discovery.
OpenTrack keyword rankings, result changes, and search visibility.
OpenBuild keyword tracking dashboards from recurring search result snapshots.
OpenStore recurring SERP checks for keyword, URL, and competitor monitoring.
OpenCheck keyword positions and ranking URLs with structured Google result snapshots.
OpenUse Crawlora as the data layer behind agency and SaaS SEO reports.
OpenHow to scrape Google Search
Crawlora's /google/search endpoint is a POST that takes a keyword, country, language, result limit and page and returns the Google web results page as normalized JSON — organic results with positions, titles, URLs, hostnames and snippets, plus related queries and pagination metadata. Requests are fetched through proxied browser renderers that race several renders and return the first clean result, with a stale-cache fallback; a Google challenge page returns a documented error, not broken HTML.
POST /google/search with a JSON body: keyword, country (for example us), language (en), limit (up to the documented maximum) and page. Country and language decide which Google front end answers, so a rank tracker should pin both per keyword rather than accept defaults.
Each organic row carries position, title, link, website_name (hostname) and Snippet. Position is the on-page rank Google served for that locale and page, which is what rank tracking needs; match your domain on website_name and record the position with a fetched-at timestamp.
Increase page and keep limit constant to read beyond the first result page. Store one row per keyword per page per run so movement between runs is a diff, not a re-parse.
Use Crawlora's /google/news and /google/videos endpoints (GET, with q, country and lang) for the news and video verticals, /google/suggest for autocomplete completions, and /google/jobs for job listings. Bing, Brave and DuckDuckGo search endpoints return the same shape, so cross-engine visibility is the same code with a different path.
FAQ
Answers for developers evaluating Crawlora for supported public search result pages.
Yes. Crawlora provides a Google Search endpoint for supported public Google search result pages and returns normalized JSON through a documented API route.
Yes. Each response includes organic result positions, titles, URLs, and snippets, so you can record keyword rankings over time and detect SERP changes. Pair recurring snapshots with the SERP monitoring use case to build a Google rank tracker.
The catalog example includes organic results with positions, titles, URLs, descriptions, hostnames, and pagination metadata, plus related queries when Google includes them.
Yes. The Google Search endpoint accepts keyword, country, language, limit, and page parameters.
Crawlora detects unusable upstream responses and returns documented errors instead of silently returning broken HTML. Customers should handle errors, retries, and upstream availability changes in their integrations.
No. Crawlora is not the official Google Custom Search or Programmable Search API. Crawlora provides structured public web data extraction endpoints for supported Google search result pages. If your use case requires Google's official licensed search API, use Google's official API.
POST to Crawlora's /google/search endpoint with a keyword, country, language, limit and page. The response is the results page as JSON: organic rows with position, title, link, hostname and snippet, related queries, and pagination metadata. No proxies, browser or parser to run on your side.
Yes. Each organic row's position is the rank Google served for that keyword, country, language and page at request time. That is the literal SERP, not a relevance-ranked list, so it works for rank tracking and share-of-voice.
The request races several proxied browser renders and returns the first clean result, with a stale-cache fallback. If no clean result is available, Crawlora returns a documented error code instead of a challenge page dressed as a result, and the call is not billed as a success.
Yes. Crawlora's /google/news, /google/videos and /google/suggest endpoints are GETs that take q plus country and lang; /google/jobs is a POST. They share the API key and credit pool with web search.
Collecting public search result pages is generally permissible for research and monitoring when you respect Google's terms, rate limits and applicable law; the results themselves are public. Use the data responsibly and review the legal basics before collecting at scale.
Test /google/search in Playground, inspect the current response schema in Docs, and compare credit-based usage on the pricing page.