Skip to main content
Filter search results by publication date to find recent breakthroughs or analyse historical trends.

Parameters

Both are optional and work independently or together. Dates use ISO 8601 format: YYYY-MM-DD.
Dates must match YYYY-MM-DD exactly. "3/15/2024", "March 15, 2024", and "15-03-2024" are all invalid.
A bare date is inclusive to the end of that day. To cut off at a precise instant, pass a full ISO-8601 datetime ("2026-07-24T04:27:00.000Z") together with historical_cache: true — see Point-in-time backtests. Without historical_cache, a date with a time component returns HTTP 400, because nothing downstream consumes the precision.

Examples

Point-in-time backtests

A date range alone filters on each result’s publication date. That is not the same as asking what was knowable at a past moment — a page published before your cutoff can still have been re-crawled since, and carry text written after it. Set historical_cache: true to run the query as a point-in-time search: results come from the newest snapshot captured inside your window rather than the latest crawl. This also unlocks sub-day cutoffs on start_date/end_date.
string
default:"prefer"
How strictly to hold the cutoff.
Under the default "prefer", a query with no in-window snapshot falls back to a live crawl, so a result can contain information published after your cutoff. If you are evaluating a model or strategy against history, use "only".
historical_cache_strict requires valyu-py >= 2.12.2 or valyu-js >= 2.10.2. Sub-day ISO-8601 date bounds require valyu-js >= 2.10.2; any version of valyu-py accepts them.
More specific date ranges typically improve response times and relevance.

Source filtering

Filter by domain and dataset

Search quickstart

All search parameters