GET /api/v1/search (as query string parameters) and POST /api/v1/search (as JSON body fields). POST is preferred for location-bearing requests.
Core parameters
Intent values
When not set, the API auto-detects intent from the query. You can force a specific intent using common aliases:
The API also accepts full intent names (e.g.,
FallbackSearchIntent, VideoSearchIntent) and resolves matches flexibly through exact match, case-insensitive match, and substring match.
Output parameters
Locale and safety parameters
Date filtering
Use either
dateRange for relative filtering or dateFrom/dateTo for absolute date ranges. See filtering for examples and details.
Domain filtering
Both support wildcards:
*.example.com matches all subdomains. See filtering for examples and details.
Term filtering
Content filtering
Behavior parameters
The timeout parameter
timeout sets a target time, in milliseconds, for ranked results to come back. It works on
GET and POST /api/v1/search.
- Accepts an integer from 1000 to 30000. A value below 1000 is raised to 1000 (not an error); above
30000 is lowered to 30000. Sending
0, an empty value, or a non-numeric value means notimeoutis applied. - It’s a target, not a hard ceiling. Omit it for the mode’s normal speed. A larger value lets slower sources run longer, so the response can take close to that long. The search may run a little past it when it needs a moment more to return a useful page.
- Page text (
content=trueorextracts=true) is fetched afterward, on top of the target time. - With
searchMode=auto(the default), atimeoutsteps the resolved mode down to the richest one that fits it. An explicitsearchModeis always honored — a shorttimeoutwith an explicit mode just means fewer sources get time to answer.
Location parameters
Location can be passed as flat keys on GET or POST. Prefer POST for location-bearing requests — a request body keeps coordinates out of URL query strings and access logs.Examples
Paginated search
Deep mode with extracts
Filtered by date and domain
Multi-query search
Multi-query search accepts a JSON array of up to 5 queries and returns combined results in a single response. URL-encode the JSON array when passing it as a query parameter.
Next steps
Search modes
Automatic effort by default, manual control when you want it.
Filtering
Domain, date, and content filtering in depth.
Query operators
In-query operators like
site: and filetype:.Response format
Response structure and result types.

