Google organic results
dataforseo/serp_google_organic_liveReturn a parsed Google results page for a query in a given market.
- call
- Price: —
- DataForSEO
- 3 min
Overview
Runs a live web search and returns the whole results page decomposed into structured elements rather than markup. Beyond the ten blue links it captures the surrounding furniture — featured snippets, related questions, knowledge panels, local packs, ads, video and image blocks, AI overviews — each labelled by type and carrying both its rank among its own kind and its absolute position on the page. The market and language decide which engine edition is queried, so the same query can be compared across countries.
One results page, broken into typed and ranked elements with their titles, URLs, domains, and descriptions.
Input
These go in the input object of the run request.
| Field | Type | Required | Description |
|---|---|---|---|
| keyword | string | Yes | Keyword. |
| location_code | integer | No | Search engine location code. Required if you don't specify location_name or location_coordinate. |
| language_code | string | No | Search engine language code. Optional. if you specify language_name. |
| location_name | string | No | Full name of search engine location. Required if you don't specify location_code or location_coordinate. |
| depth | integer | No | How many results to parse. Default: 10Maximum: 200 |
| device | string | No | Which device to emulate. Allowed: desktop, mobile Default: "desktop" |
| target | string | No | Only return results from this domain, written without a scheme or `www`. |
Requests up to 1 MB.
Example
Use your own API key and a saved idempotency key for each new job. Replace image or media placeholders with your own publicly reachable HTTPS URLs. Keep the same key and request body when recovering a timeout.
# Set once per job; reuse this key and the identical body after a timeout.
: "${AGENTSKY_IDEMPOTENCY_KEY:?Set a unique, saved key for this job}"
curl --fail-with-body https://gateway.agentsky.dev/v1/run \
-H "authorization: Bearer $AGENTSKY_API_KEY" \
-H "content-type: application/json" \
-H "Idempotency-Key: $AGENTSKY_IDEMPOTENCY_KEY" \
-d '{"provider":"dataforseo","endpoint":"serp_google_organic_live","input":{"language_code":"en","location_code":2840,"keyword":"albert einstein"}}'
# If status is READY/RUNNING, poll GET /v1/runs/{runId} with the same API key.Pricing
— per call using your plan when signed in. Reported usage is billed under your account plan. Read the final customer charge from price.amount.value after the run finishes. A RUNNING response is not the final bill.
