WEB DATA

Google Search

Retrieve structured Google results for a query, location, language, and device.

POSThttps://api.sukidata.com/v1/serp

QUICKSTART

Make a request

Send your API key in the Authorization header and your search settings as JSON.

cURL
curl --request POST \
  --url https://api.sukidata.com/v1/serp \
  --header "Authorization: Bearer $SUKIDATA_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
    "q": "coffee shops in seattle",
    "location": "Seattle, Washington, United States",
    "hl": "en",
    "device": "desktop"
  }'

REQUEST BODY

Common parameters

qstring · required

Search query. Google operators such as site:, inurl:, and intitle: are supported.

locationstring

Supported Google location name or ID. Use the location lookup endpoint to find exact values.

google_domain gl hlstring

Google domain, two-letter country code, and interface language. Defaults are google.com, us, and en.

devicestring

desktop, tablet, or mobile. The default is desktop.

tbmstring

Google result type, including images, local, videos, news, shopping, and patents. Omit it for regular web search.

startinteger

Zero-based result offset. The default is 0.

asyncboolean

Set to true to receive the search ID immediately and query the result later. Defaults to false.

RESPONSE

Structured search results

A completed response includes search metadata and the result groups present on the Google page.

Example response
{
  "search_metadata": {
    "id": "serp_example",
    "status": "Success",
    "created_at": "2026-09-22T00:00:00Z",
    "total_time_taken": 1.2
  },
  "search_parameters": {
    "engine": "google",
    "q": "coffee shops in seattle",
    "google_domain": "google.com",
    "gl": "us",
    "hl": "en",
    "device": "desktop"
  },
  "search_information": {
    "query_displayed": "coffee shops in seattle",
    "total_results": 1250000
  },
  "organic_results": [
    {
      "position": 1,
      "title": "Seattle Coffee Guide",
      "link": "https://example.com/seattle-coffee",
      "snippet": "Discover neighborhood coffee shops in Seattle."
    }
  ]
}
search_metadataRequest status, identifiers, timing, and result file links.
search_parametersNormalized parameters used for the search.
organic_resultsRanked organic results with titles, links, and snippets.
answer_box knowledge_graphEnhanced result blocks when Google returns them.
local_results top_storiesLocal and news-oriented groups when present.
paginationAvailable navigation details for later result pages.
Still processing?Even a synchronous request can return Queued or Processing after its wait ends. Use search_metadata.id with GET /v1/serp/{search_id} until the status is Success or Error. Do not submit a new search to check progress. A successful search may have no organic results.

BILLING

Credit usage

Google Search uses Web Data credits. Read X-Sukidata-Credits-Used for the final charge. See Web Data billing for rates and free responses.

Need help with a request? Email support@sukidata.com and include the X-Request-ID response header.

Handle errors

  • 400: check that q is nonempty and parameter values are valid.
  • 401: check your API key; 402: add Web Data credits.
  • 503: the service is temporarily unavailable; wait before trying again.

Also check search_metadata.status in HTTP 200 responses. Error means the search failed; the error object contains its code and message.