--- title: Google Search description: Search Google and get structured SERP results --- The Google Search scraper runs searches and returns structured SERP data: organic results (title, URL, description), related queries, people-also-ask questions, and any AI overview. ## Endpoint ```bash POST /api/v1/workspaces/{workspace_id}/scrapers/google_search/scrape ``` ## Inputs | Field | Default | Description | |-------|---------|-------------| | `queries` | required | 1–20 search terms or full Google Search URLs — terms are searched, URLs are scraped as-is | | `max_pages_per_query` | `1` | Result pages to fetch per query (max 10) | | `country_code` | — | Two-letter country to search from, e.g. `us`, `fr` | | `language_code` | — | Result language code (blank = Google default) | | `site` | — | Restrict results to a single domain, e.g. `example.com` | ## Example ```bash curl -X POST "$BASE_URL/api/v1/workspaces/1/scrapers/google_search/scrape" \ -H "Authorization: Bearer $SURFSENSE_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "queries": ["open source notebooklm alternative"], "max_pages_per_query": 2, "country_code": "us" }' ``` The response is `{ "items": [...] }` — one item per fetched SERP page. Billing is per SERP page. For the full input and output JSON schemas and generated code snippets in your language, open **API Playground → Google Search → Scrape** in your workspace.