Key Features
-
Asynchronous: Submit instructions via
POST /research/v1and receive aresearchIdimmediately. Poll or stream for results — tasks can run from seconds to minutes depending on complexity. - Multi-step reasoning: The agent iteratively plans, searches, crawls, and synthesizes. It decomposes your instructions into sub-tasks, runs them in parallel, and combines findings into a single output.
-
Structured output: Optionally provide an
outputSchema(JSON Schema) to get validated, parsed JSON back instead of free-form text. -
Streaming: Pass
?stream=truewhen polling to receive real-time Server-Sent Events as the agent thinks, searches, and writes.
How It Works
- Create a task with your instructions and optional output schema via
POST /research/v1. - The agent plans by decomposing your instructions into targeted sub-tasks.
- Each sub-task searches the web and crawls relevant pages to gather information.
- Findings are synthesized into a final output with citations.
- Retrieve the completed result via
GET /research/v1/{researchId}or list all tasks withGET /research/v1.
Models
| Model | Description |
|---|---|
exa-research-fast | Fastest, lowest cost |
exa-research | Balanced speed and quality (default) |
exa-research-pro | Most thorough analysis and strongest reasoning |
Task Lifecycle
Tasks progress through these statuses:pending → running → completed | failed | canceled
Only completed tasks are billed. The costDollars field on completed tasks provides a detailed breakdown of searches, pages crawled, and reasoning tokens used.

