search tool that retrieves source documents
from the Bigdata.com content platform. By default the tool searches across the
full corpus, with the agent choosing which queries to run. The tools_configs
field on a request lets you constrain that search at the protocol level —
restricting which entities, time windows, sources, or tags the tool may
consider, and tuning how results are ranked.
This page is the reference for tools_configs.search: the shape of the
configuration, the semantics of each filter, and worked examples for the most
common scoping patterns.
tools_configs only affects the Research Agent (/v1/research-agent).
Workflows scope their search at the template level via content_filter on the
template definition; see
Creating templates.The shape of a config
Thetools_configs field on the Research Agent request accepts an object with
exactly one key, "search", whose value is a SearchToolConfig:
SearchToolConfig has two optional members:
query_filters— narrows which content the search tool may return.ranking_parameters— influences how matching content is ordered.
{"search": {}}) is
equivalent to no config at all.
query_filters
query_filters has four optional components. They are independent and may be
combined freely; the search tool returns only documents that satisfy every
component you specify.
| Component | Restricts results to… |
|---|---|
entities | Documents mentioning a specific set of entity IDs. |
period | A specific time window. |
content | A specific set of document IDs or sources. |
tags | Your privately-uploaded documents carrying any of the given file tags. |
entities
EntityFilter selects content based on the entities mentioned in a document.
It uses three set-style operators that combine with AND:
| Operator | Meaning |
|---|---|
all_of | Document must mention all of these entity IDs. |
any_of | Document must mention at least one of these entity IDs. |
none_of | Document must mention none of these entity IDs (exclusion). |
D8442A (NVIDIA) or 4E4980
(Apple). Resolve them with the
Knowledge Graph endpoints
(find_companies, find_etfs, find_organizations, etc.) or with the
find_companies / find_securities MCP tools.
period
DateRange restricts content to a specific time window. Both start and
end are ISO 8601 timestamps in UTC, and both are inclusive.
{"start": "2026-01-01T00:00:00Z"} searches everything from the start date
forward.
For the Workflows API, time scoping has an additional rolling-window option
(last_24_hours, last_7_days, etc.) at the request level. The Research
Agent does not currently expose those rolling values via tools_configs;
use explicit start and end instead.
content
ContentFilter selects content by document or source identifier. Like
EntityFilter, it composes three operators:
| Operator | Meaning |
|---|---|
all_of | Match documents satisfying all of these item filters. |
any_of | Match documents satisfying at least one of these item filters. |
none_of | Exclude documents satisfying any of these item filters. |
all_of / any_of / none_of is one of:
{"type": "DOCUMENT_ID", "document_ids": [...]}— up to 1000 unique Bigdata.com document IDs.{"type": "SOURCE_TYPE", "sources_ids": [...]}— up to 1000 unique source IDs. Resolve source IDs withfind_sources(Knowledge Graph) or thefind_securitiesMCP tool.
tags
tags filters on the user-defined labels you attach to your own
privately-uploaded documents — the same file tags you set when uploading
content (see
Upload and search your content).
It does not classify Bigdata.com’s public content by topic or document type.
Provide up to 1000 tag names; a document is eligible if it carries any of them
(OR within the set).
content sources or entities instead — tags only applies to your
uploaded content.
Combining filters
Filters compose with AND across components. The example below scopes research to a specific company within a date window:ranking_parameters
RankingParameters influences how matching documents are ordered (it does
not filter content). Two knobs are available, each on a 1-10 scale:
| Field | Effect |
|---|---|
freshness_boost | Higher values prioritize more recently published content. |
source_boost | Higher values prioritize results from high-quality, authoritative sources. |
freshness_boost for fast-
moving topics (breaking news, recent earnings) and source_boost for
research that should lean on flagship publications and regulatory filings.
Common patterns
Single-company analysis
Scope the entire research session to one entity. Useful for company tearsheets and equity-research briefs.Peer comparison
Allow any of a small set of companies; the agent decides which to retrieve per query.Recent-events focus
Restrict to the last quarter and bias ranking toward freshness.Authoritative-source mode
Lean on a curated allowlist of high-quality sources and boost source quality.Hard exclusion
Permanently rule out a noisy source for an entire conversation.Worked example: end-to-end
The script below runs a Research Agent request with a tightly scoped search config and prints the streamed answer.Tips and pitfalls
- Filters are AND across components. Adding more filter components
narrows the result set; if the agent reports “no relevant sources found,”
the scope is likely too tight. Relax
periodorentitiesfirst. all_ofvsany_offor entities matters.all_of: ["D8442A", "D58A18"]requires documents that mention both NVIDIA and AMD — often empty for broad queries.any_ofis usually what you want for peer comparisons.none_ofis a hard exclusion. It applies to every search the agent performs in this request; use it sparingly and only for sources you are certain are noise.- Entity and source IDs must be valid. The agent will not surface a helpful error if you pass a typo; it will simply find no matches. Resolve IDs through the Knowledge Graph endpoints before using them.
- Date ranges are inclusive. A
period.endof2026-04-30T23:59:59Zincludes documents published on April 30;2026-05-01T00:00:00Zwould include the first second of May as well.
Next steps
Streaming responses
Reference for every message type, including the canonical Python handler.
Structured output extraction
Combine
tools_configs with structured_output_schema to extract typed JSON from scoped research.Multi-turn conversations
Carry a search config across follow-up turns by persisting the conversation.
Knowledge Graph: find companies
Resolve entity IDs for use in
entities.all_of and entities.any_of.