Google

Search Google

Returns normalized Google results, or encoded source HTML.

post/v1/google/search

Request

  • Base URL: https://api.prismcrawl.com
  • URL: https://api.prismcrawl.com/v1/google/search
  • Auth: API key in header x-api-key

Request body

output'json' | 'html' | 'md' | 'null' nullable

Response content format. md returns Markdown in data.content with data.format=md; the JSON success/request envelope remains. Accept: text/markdown also selects Markdown unless output or html=true is explicit. html is an alias for html=true and retains the existing Brotli/Base64 source format.

json_restrictorstring nullable

Select fields within data.content for JSON or Markdown. Supports comma-separated paths, non-negative array indices, half-open slices [0:3] (either bound may be omitted), [] and .{nested,subqueries}. Up to128 selections and16 levels. Missing fields are omitted; selected declared fields retain their zero defaults. The request envelope and credit headers remain. Include next_page_token when pagination is needed. Incompatible with HTML output. This changes response presentation only; tracing-enabled history retains the complete JSON result.

no_cacheboolean nullable

Accepted for compatibility. Searches are always fetched without a result cache for either value; normal successful-request billing applies.

querystring required

The search query. The UTF-8 representation must not exceed 8,192 bytes; non-ASCII characters may use more than one byte. When query_encoded is true, supply a URL-encoded query value; the 8,192-byte limit applies after decoding.

query_encodedboolean nullable

When true, query is already a URL-encoded query value and is sent without encoding it again. Use %HH escapes for reserved and non-ASCII characters; + or %20 represents a space and %2B a literal plus. Unreserved characters and !'()* may remain literal. Do not supply a URL or q= prefix. Malformed escapes, raw separators, and invalid UTF-8 are rejected. The decoded query must be nonempty and at most 8,192 UTF-8 bytes; the encoded value is limited to 24,576 characters. A query containing only unreserved characters is valid. Response search_parameters.q contains decoded text.

uulestring nullable

Raw Google-encoded location, forwarded unchanged. Accepts a w+/a+ prefix and a nonempty standard or URL-safe Base64 payload, with or without padding; existing values do not need to be converted. Mutually exclusive with location, coordinates, and radius. Google may ignore unsupported payloads; acceptance does not guarantee location targeting. Invalid types or formats return an uncharged HTTP 400 before a search is sent to Google. Normal search billing applies to accepted inputs.

htmlboolean nullable

Return Brotli-compressed, Base64-encoded source HTML instead of normalized JSON.

rewrite_linksboolean nullable

Set rewrite_links to true to replace Google /goto and /url anchor links in returned and archived HTML, including HTML archived for JSON requests. Default: false. JSON results are unaffected and have always used resolved destination URLs when available.

zero_traceboolean nullable

When true, PrismCrawl does not store the source HTML or parsed JSON. Audit and billing metadata is retained, but all other data is permanently discarded. Request history exposes only type ZERO_TRACE, the request HTTP status code, and whether the account was charged.

device'mobile' | 'tablet' | 'desktop' | 'null' nullable

Search as a mobile, tablet, or desktop device.

safe'active' | 'off' | 'null' nullable

Safe-search mode. active enables Google's filtering and Bing Strict SafeSearch; off requests unfiltered results. Search providers may still suppress content required by law or policy.

color_scheme'light' | 'dark' | 'null' nullable

Request the provider's light or dark result-page theme. This affects source-page presentation, not ranking, and providers may ignore it.

ludocidstring nullable

Google place CID as a nonzero unsigned 64-bit decimal string. Keep it as a string to preserve precision.

lsigstring nullable

Google place signature from a local result, used to select its map or Knowledge Graph view.

kgmidstring nullable

Google Knowledge Graph entity ID beginning with /m/ or /g/. Google may use the entity’s original search context.

sistring nullable

Native Google token selecting a cached search or Knowledge Graph tab. Google may use the token’s original search context.

ibpstring nullable

Native Google layout selector, for example gwp;0,7 to expand a place Knowledge Graph.

udsstring nullable

Native Google search-filter token returned in Google’s filter links.

pws0 | 1 | null nullable

Requests Google personalization off (0) or permits it (1). Omit to leave Google’s default unchanged. This does not disable location, language, or device effects, and does not personalize results to a PrismCrawl account.

nfpr0 | 1 | null nullable

Controls Google query correction. 1 asks Google to search the submitted query without automatic spelling correction; 0 keeps normal correction behavior.

filter0 | 1 | null nullable

Requests Google duplicate-result filtering (1) or disables it (0). Google documents this behavior for Programmable Search, but does not guarantee it for the consumer HTML endpoint used here.

lrstring nullable

Restrict Google result documents by language using lang_<code> syntax. Join alternatives with |, for example lang_fr|lang_de.

crstring nullable

Restrict Google result documents by country using country<CC> syntax. Join alternatives with |, for example countryUS|countryCA.

startinteger nullable

Zero-based result offset. Off-grid values are accepted.

google_domain'google.com' | 'google.ad' | 'google.ae' | 'google.com.af' | 'google.com.ag' | 'google.al' | 'google.am' | 'google.co.ao' | 'google.com.ar' | 'google.as' | 'google.at' | 'google.com.au' | 'google.az' | 'google.ba' | 'google.com.bd' | 'google.be' | 'google.bf' | 'google.bg' | 'google.com.bh' | 'google.bi' | 'google.bj' | 'google.com.bn' | 'google.com.bo' | 'google.com.br' | 'google.bs' | 'google.bt' | 'google.co.bw' | 'google.by' | 'google.com.bz' | 'google.ca' | 'google.cd' | 'google.cf' | 'google.cg' | 'google.ch' | 'google.ci' | 'google.co.ck' | 'google.cl' | 'google.cm' | 'google.com.co' | 'google.co.cr' | 'google.com.cu' | 'google.cv' | 'google.com.cy' | 'google.cz' | 'google.de' | 'google.dj' | 'google.dk' | 'google.dm' | 'google.com.do' | 'google.dz' | 'google.com.ec' | 'google.ee' | 'google.com.eg' | 'google.es' | 'google.com.et' | 'google.fi' | 'google.com.fj' | 'google.fm' | 'google.fr' | 'google.ga' | 'google.ge' | 'google.gg' | 'google.com.gh' | 'google.com.gi' | 'google.gl' | 'google.gm' | 'google.gr' | 'google.com.gt' | 'google.gy' | 'google.com.hk' | 'google.hn' | 'google.hr' | 'google.ht' | 'google.hu' | 'google.co.id' | 'google.ie' | 'google.co.il' | 'google.im' | 'google.co.in' | 'google.iq' | 'google.is' | 'google.it' | 'google.je' | 'google.com.jm' | 'google.jo' | 'google.co.jp' | 'google.co.ke' | 'google.com.kh' | 'google.ki' | 'google.kg' | 'google.co.kr' | 'google.com.kw' | 'google.kz' | 'google.la' | 'google.com.lb' | 'google.li' | 'google.lk' | 'google.co.ls' | 'google.lt' | 'google.lu' | 'google.lv' | 'google.com.ly' | 'google.co.ma' | 'google.md' | 'google.me' | 'google.mg' | 'google.mk' | 'google.ml' | 'google.com.mm' | 'google.mn' | 'google.com.mt' | 'google.mu' | 'google.mv' | 'google.mw' | 'google.com.mx' | 'google.com.my' | 'google.co.mz' | 'google.com.na' | 'google.com.ng' | 'google.com.ni' | 'google.ne' | 'google.nl' | 'google.no' | 'google.com.np' | 'google.nr' | 'google.nu' | 'google.co.nz' | 'google.com.om' | 'google.com.pa' | 'google.com.pe' | 'google.com.pg' | 'google.com.ph' | 'google.com.pk' | 'google.pl' | 'google.pn' | 'google.com.pr' | 'google.ps' | 'google.pt' | 'google.com.py' | 'google.com.qa' | 'google.ro' | 'google.ru' | 'google.rw' | 'google.com.sa' | 'google.com.sb' | 'google.sc' | 'google.se' | 'google.com.sg' | 'google.sh' | 'google.si' | 'google.sk' | 'google.com.sl' | 'google.sn' | 'google.so' | 'google.sm' | 'google.sr' | 'google.st' | 'google.com.sv' | 'google.td' | 'google.tg' | 'google.co.th' | 'google.com.tj' | 'google.tl' | 'google.tm' | 'google.tn' | 'google.to' | 'google.com.tr' | 'google.tt' | 'google.com.tw' | 'google.co.tz' | 'google.com.ua' | 'google.co.ug' | 'google.co.uk' | 'google.com.uy' | 'google.co.uz' | 'google.com.vc' | 'google.co.ve' | 'google.co.vi' | 'google.com.vn' | 'google.vu' | 'google.ws' | 'google.rs' | 'google.co.za' | 'google.co.zm' | 'google.co.zw' | 'google.cat' | 'null' nullable

Google domain used for the search, written without a scheme or www. prefix. This is independent of gl, hl, location, and coordinates. Supported values follow the search-capable entries in Google's current domain list; google.cn is excluded. Case-insensitive.

gl'ad' | 'ae' | 'af' | 'ag' | 'ai' | 'al' | 'am' | 'an' | 'ao' | 'aq' | 'ar' | 'as' | 'at' | 'au' | 'aw' | 'ax' | 'az' | 'ba' | 'bb' | 'bd' | 'be' | 'bf' | 'bg' | 'bh' | 'bi' | 'bj' | 'bl' | 'bm' | 'bn' | 'bo' | 'bq' | 'br' | 'bs' | 'bt' | 'bv' | 'bw' | 'by' | 'bz' | 'ca' | 'cc' | 'cd' | 'cf' | 'cg' | 'ch' | 'ci' | 'ck' | 'cl' | 'cm' | 'cn' | 'co' | 'cr' | 'cs' | 'cu' | 'cv' | 'cw' | 'cx' | 'cy' | 'cz' | 'de' | 'dj' | 'dk' | 'dm' | 'do' | 'dz' | 'ec' | 'ee' | 'eg' | 'eh' | 'er' | 'es' | 'et' | 'fi' | 'fj' | 'fk' | 'fm' | 'fo' | 'fr' | 'ga' | 'gb' | 'gd' | 'ge' | 'gf' | 'gg' | 'gh' | 'gi' | 'gl' | 'gm' | 'gn' | 'gp' | 'gq' | 'gr' | 'gs' | 'gt' | 'gu' | 'gw' | 'gy' | 'hk' | 'hm' | 'hn' | 'hr' | 'ht' | 'hu' | 'id' | 'ie' | 'il' | 'im' | 'in' | 'io' | 'iq' | 'ir' | 'is' | 'it' | 'je' | 'jm' | 'jo' | 'jp' | 'ke' | 'kg' | 'kh' | 'ki' | 'km' | 'kn' | 'kp' | 'kr' | 'kw' | 'ky' | 'kz' | 'la' | 'lb' | 'lc' | 'li' | 'lk' | 'lr' | 'ls' | 'lt' | 'lu' | 'lv' | 'ly' | 'ma' | 'mc' | 'md' | 'me' | 'mf' | 'mg' | 'mh' | 'mk' | 'ml' | 'mm' | 'mn' | 'mo' | 'mp' | 'mq' | 'mr' | 'ms' | 'mt' | 'mu' | 'mv' | 'mw' | 'mx' | 'my' | 'mz' | 'na' | 'nc' | 'ne' | 'nf' | 'ng' | 'ni' | 'nl' | 'no' | 'np' | 'nr' | 'nu' | 'nz' | 'om' | 'pa' | 'pe' | 'pf' | 'pg' | 'ph' | 'pk' | 'pl' | 'pm' | 'pn' | 'pr' | 'ps' | 'pt' | 'pw' | 'py' | 'qa' | 're' | 'ro' | 'rs' | 'ru' | 'rw' | 'sa' | 'sb' | 'sc' | 'sd' | 'se' | 'sg' | 'sh' | 'si' | 'sj' | 'sk' | 'sl' | 'sm' | 'sn' | 'so' | 'sr' | 'ss' | 'st' | 'sv' | 'sx' | 'sy' | 'sz' | 'tc' | 'td' | 'tf' | 'tg' | 'th' | 'tj' | 'tk' | 'tl' | 'tm' | 'tn' | 'to' | 'tr' | 'tt' | 'tv' | 'tw' | 'tz' | 'ua' | 'ug' | 'uk' | 'um' | 'us' | 'uy' | 'uz' | 'va' | 'vc' | 've' | 'vg' | 'vi' | 'vn' | 'vu' | 'wf' | 'ws' | 'ye' | 'yt' | 'za' | 'zm' | 'zw' | 'null' nullable

Two-letter Google result-country code. Matching results are boosted rather than strictly filtered. Case-insensitive.

hl'af' | 'sq' | 'am' | 'ar' | 'hy' | 'az' | 'bn' | 'bg' | 'my' | 'ca' | 'zh-CN' | 'zh-TW' | 'hr' | 'cs' | 'da' | 'nl' | 'en-GB' | 'en' | 'en-US' | 'et' | 'fil' | 'fi' | 'fr-CA' | 'fr' | 'ka' | 'de' | 'el' | 'gu' | 'iw' | 'he' | 'hi' | 'hu' | 'is' | 'id' | 'it' | 'ja' | 'kn' | 'kk' | 'km' | 'ko' | 'ky' | 'lo' | 'lv' | 'lt' | 'mk' | 'ms' | 'ml' | 'mr' | 'mn' | 'ne' | 'no' | 'fa' | 'pl' | 'pt-BR' | 'pt-PT' | 'pa' | 'ro' | 'ru' | 'sr-Latn' | 'sr' | 'si' | 'sk' | 'sl' | 'es-419' | 'es' | 'sw' | 'sv' | 'ta' | 'te' | 'th' | 'tr' | 'uk' | 'ur' | 'uz' | 'vi' | 'cy' | 'null' nullable

Google interface language. This can also influence result selection for international queries. Case-insensitive.

locationstring nullable

An Active Google Canonical Name from the pinned geo-target dataset. Mutually exclusive with coordinates and uule.

radiusinteger nullable

Radius in meters used to bias results around coordinates; results outside it may still appear. Requires coordinates. The maximum is 199 for desktop or an omitted device, and 1,000 for mobile or tablet.

tbsstring nullable

Google's native comma-separated key:value advanced-filter container, up to 512 characters. It supports time filters, sorting, and filters associated with a selected search tab. Relative time ranges use qdr:<unit>[amount]; custom inclusive ranges use cdr:1,cd_min:M/D/YYYY,cd_max:M/D/YYYY. Native filters may vary by search vertical and Google market. The unreliable li verbatim filter is not supported.

tbm'nws' | 'vid' | 'isch' | 'shop' | 'lcl' | 'bks' | 'null' nullable

Select a supported Google search vertical using its native tbm code. Mutually exclusive with udm. News (nws) does not support the site: operator; use /v1/google/news for site-filtered news queries.

udm1 | 2 | 6 | 7 | 12 | 14 | 28 | 36 | 50 | null nullable

Select a supported Google search tab using its native numeric udm value: 1 (Local), 2 (Images), 6 (Forums), 7 (Videos), 12 (News), 14 (Web), 28 (Shopping), 36 (Books), or 50 (AI Mode). Availability may vary by market. Mutually exclusive with tbm. News (12) does not support the site: operator; use /v1/google/news for site-filtered news queries.

Example request

{
  "json_restrictor": "results[].{title,url},has_next_page,next_page_token",
  "query": "best espresso machines",
  "uule": "w+CAIQICIaQXVzdGluLFRleGFzLFVuaXRlZCBTdGF0ZXM",
  "lr": "lang_fr",
  "cr": "countryFR",
  "start": 10,
  "google_domain": "google.co.uk",
  "location": "Austin,Texas,United States",
  "coordinates": {
    "latitude": 30.2672,
    "longitude": -97.7431
  },
  "radius": 150,
  "tbs": "qdr:h",
  "tbm": "nws",
  "udm": 2
}

Response

Search completed.

OR
OR
OR

Changes

No recorded changes to this operation across all 1 revision of this API.