Google organic results with true rank and page blocks
crawl4ai.google.serp.organicOne Google results page as JSON: every organic result with its rank (position, and position_absolute counting the blocks above it), and each block Google showed (People also ask, local pack, videos, ...; the AI Overview when Google showed one: always with source=google, otherwise only when the answer came from Google directly, see note). Localised to a country, a language and optionally a city. When results is empty, empty_reason says why: google_no_results (Google matched nothing) or rescue_no_results (another provider may still have results).
- Price
- $0.00015/successZum Anbieterpreis
- Success rate
- 90,4 %Last 30 days · 916.596 calls
- Latency p50
- 4.9 sp95 11 s
- Last verified
- 09.10.2026Verified working
GEThttps://toolswitch.dev/v1/tools/crawl4ai.google.serp.organic?q=best+crm+software&country=usPreview- Uses platform quota
- Synchronous response
- Reads public data
Parameter
| Parameter | Typ | Erforderlich | Beschreibung | Beispiel |
|---|---|---|---|---|
| Abfrageparameter | ||||
q | Zeichenkette | Erforderlich | the query, up to 512 characters | best crm software |
num | Ganzzahl | Optional | results to return: a multiple of 10 from 10 to 100 (num/10 Google pages); default 10 | |
page | Ganzzahl | Optional | page over num, 1 to 30: num=10&page=2 is results 11-20 | |
time | Zeichenkette | Optional | Google's time filter | |
fresh | Zeichenkette | Optional | 1 skips the cache | |
source | Zeichenkette | Optional | auto (default) may answer from Crawl4AI's fallback page, which has no AI Overview; google answers from Google's own page only, with the AI Overview when Google shows one, and is a free 503 when Google cannot be reached | |
country | Zeichenkette | Optional | two-letter Google country (gl), default us | us |
language | Zeichenkette | Optional | Google interface language (hl), e.g. en or pt-br; default en | |
location | Zeichenkette | Optional | a city or region, e.g. Austin, TX; an unknown place answers 400 with the closest names | |
- Abfrageparameter
qZeichenketteErforderlichthe query, up to 512 characters
Beispiel:
best crm softwarenumGanzzahlOptionalresults to return: a multiple of 10 from 10 to 100 (num/10 Google pages); default 10
pageGanzzahlOptionalpage over num, 1 to 30: num=10&page=2 is results 11-20
timeZeichenketteOptionalGoogle's time filter
freshZeichenketteOptional1 skips the cache
sourceZeichenketteOptionalauto (default) may answer from Crawl4AI's fallback page, which has no AI Overview; google answers from Google's own page only, with the AI Overview when Google shows one, and is a free 503 when Google cannot be reached
countryZeichenketteOptionaltwo-letter Google country (gl), default us
Beispiel:
uslanguageZeichenketteOptionalGoogle interface language (hl), e.g. en or pt-br; default en
locationZeichenketteOptionala city or region, e.g. Austin, TX; an unknown place answers 400 with the closest names
Codebeispiele
Ersetze $TOOLSWITCH_KEY durch den in der Konsole erstellten Schlüssel.
curl -X GET 'https://toolswitch.dev/v1/tools/crawl4ai.google.serp.organic?q=best+crm+software&country=us' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/crawl4ai.google.serp.organic?q=best+crm+software&country=us",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/crawl4ai.google.serp.organic?q=best+crm+software&country=us", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());Diese Gateway-API ist eine Vorschauversion; URL und Authentifizierung können sich ändern. Die Beispielparameter sind Musterdaten. Aufrufe werden mit $0.00015/success einschließlich Servicegebühr abgerechnet.