Skip to main content
Search the web and get structured results:
Output:

Search with Intent

Pass the optional purpose parameter to state why you are searching — the goal the results will be used for. It is always optional, but supplying it gives the search additional intent signal beyond the raw keywords, helping deliver better-quality results.

Include or Exclude Sites

Use include_domains to restrict results to specific domains, and exclude_domains to remove domains from the results. Both take a comma-separated list of domains.
To exclude specific sites, use exclude_domains:
cURL
Deprecated: domain filtering via site:/-site: operators inside the query string still works, but prefer include_domains / exclude_domains above.
cURL
cURL
Get results localized to a specific country and language:
When only language is provided, location auto-resolves to the most common pairing (e.g. frFR, jaJP). See the Reference for details.

Search + Fetch Pipeline

Combine Search with Fetch to get full page content from top results:

Freshness Filter

Use recency_minutes when you want a freshness window relative to now.
Use after_date and before_date when you want a calendar date range.
Use domain_type=news to retrieve recent news articles. Results include publisher and date fields.
Use domain_type=research_paper to search academic papers. Results include authors, venue, year, and cited_by_count fields.

Research Paper Search by Publication Year

Use pub_year_min / pub_year_max with domain_type=research_paper to scope results to a publication-year range (inclusive integers, 0-9999, with pub_year_min <= pub_year_max when both are set). These replace after_date / before_date / recency_minutes, which are not supported for domain_type=research_paper.

Search Reference

Full parameter and response docs

Fetch Examples

Extract page content from URLs