How It Works
The Research API is an asynchronous, multi-step pipeline that transforms open-ended questions into grounded reports. You provide natural-language instructions (e.g. “Compare the hardware roadmaps of the top GPU manufacturers”) and an optional JSON Schema describing the output you want. Under the hood, Exa agents perform multiple steps:-
Planning – Your natural-language
instructions
are parsed by an LLM that decomposes the task into one or more research steps. - Searching – Specialized search agents issue semantic and keyword queries to Exa’s search engine, continuously expanding and refining the result set until they can fulfil the request.
-
Reasoning & synthesis – Reasoning models combine facts across sources and return structured JSON (if you provide
outputSchema
) or a detailed markdown report.
researchId
. You can poll the request until it is complete or failed, or list all tasks to monitor progress in bulk.
Best Practices
- Be explicit – Clear, scoped instructions lead to faster tasks and higher-quality answers. You should describe (1) what information you want (2) how the agent should find that information and (3) how the agent should compose it’s final report.
- Keep schemas small – 1-5 root fields is the sweet spot. If you need more, create multiple tasks.
- Use enums – Tight schema constraints improve accuracy and reduce hallucinations.
Models
The Research API offers two advanced agentic researcher models that break down your instructions, search the web, extract and reason over facts, and return structured answers with citations.- exa-research (default) adapts to the difficulty of the task, using more or less compute for individual steps. Recommended for most use cases.
- exa-research-pro maximizes quality by using the highest reasoning capability for every step. Recommended for the most complex, multi-step research tasks.
Model | p50 (seconds) | p90 (seconds) |
---|---|---|
exa-research | 45 | 90 |
exa-research-pro | 90 | 180 |
Pricing
The Research API now uses variable usage-based pricing. You are billed based on how much work and reasoning the research agent does.You are ONLY charged for tasks that complete successfully.
Operation | exa-research | exa-research-pro | Notes |
---|---|---|---|
Search | $5/1k searches | $5/1k searches | Each unique search query issued by the agent |
Page read | $5/1k pages read | $10/1k pages read | One “page” = 1,000 tokens from the web |
Reasoning tokens | $5/1M tokens | $5/1M tokens | Specific LLM tokens used for reasoning and synthesis |
A research task with
exa-research
that performs 6 searches, reads 20 pages of content, and uses 1,000 reasoning tokens would cost:
For exa-research-pro
, the same task would cost:
Examples
Competitive Landscape Table
Compare the current flagship GPUs from NVIDIA, AMD, and Intel and extract pricing, TDP, and release date.Market Size Estimate
Estimate the total global market size (USD) for battery recycling in 2030 with a clear methodology.Timeline of Key Events
Build a timeline of major OpenAI product releases from 2015 – 2023.FAQs
Who is the Research API for?
Who is the Research API for?
Product teams, analysts, researchers, and anyone who needs structured answers that require reading multiple web sources — without having to build their own search + scraping + LLM pipeline.
How is this different from the /answer endpoint?
How is this different from the /answer endpoint?
/answer
is designed for single-shot Q&A. The Research API handles
long-running, multi-step investigations. It’s suitable for tasks that
require complex reasoning over web data.How long do tasks take?
How long do tasks take?
Tasks generally complete in 20–40 seconds. Simple tasks that can be solved
with few searches complete faster, while complex schema’s targeting niche
subjects may take longer.
What are best practices for writing instructions?
What are best practices for writing instructions?
Be explicit about the objective and any constraints - Specify the time
range or types of sources to consult if important - Use imperative verbs
(“Compare”, “List”, “Summarize”) - Keep it under 4096 characters
How large can my output schema be?
How large can my output schema be?
You must have ≤ 8 root fields. It must not be more than 5 fields deep.
What happens if my schema validation fails?
What happens if my schema validation fails?
If your schema is not valid, an error will surface before the task is
created with a message about what is invalid. You will not be charged for
such requests.