Google organic search results for a keyword, live
dataforseo.google.serp.organicLive Google organic results for a keyword — rank, title, URL, snippet — by location
- Price
- $0.002/callAt provider cost
- Success rate
- 99.9%Last 30 days · 142,638 calls
- Latency p50
- 10 sp95 26 s
- Last verified
- Jul 28, 2026Verified working
POSThttps://toolswitch.dev/v1/tools/dataforseo.google.serp.organicPreviewTry onlineComing soonProvider docs ↗
- Uses platform quota
- Synchronous response
- Reads public data
Parameters
POST body is an array with exactly 1 task object (Live endpoints do not support multi-task arrays). `/live/regular` is the cheap variant used here: plain organic + a few SERP feature types. `/live/advanced` costs more and adds the full set of SERP features (people_also_ask, AI overview, images, videos, …) — switch paths if you need those elements.
This tool has no parameters. See provider docs ↗ Provider docs
Code samples
Replace $TOOLSWITCH_KEY with the key you created in the console.
Preview
curl -X POST 'https://toolswitch.dev/v1/tools/dataforseo.google.serp.organic' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY" \
-H "Content-Type: application/json" \
--data-raw '[{"depth":10,"keyword":"coffee","language_code":"en","location_code":2840}]'import os
import json
import requests
response = requests.request(
"POST",
"https://toolswitch.dev/v1/tools/dataforseo.google.serp.organic",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
json=json.loads("[{\"depth\":10,\"keyword\":\"coffee\",\"language_code\":\"en\",\"location_code\":2840}]"),
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/dataforseo.google.serp.organic", {
method: "POST",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
"Content-Type": "application/json",
},
body: JSON.stringify(JSON.parse("[{\"depth\":10,\"keyword\":\"coffee\",\"language_code\":\"en\",\"location_code\":2840}]")),
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());This gateway API is in preview; its URL and authentication may change. The example parameters are sample data. Calls are billed at $0.002/call, including the service fee.