Key Features

  • Asynchronous: Submit instructions via POST /research/v1 and receive a researchId immediately. 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=true when polling to receive real-time Server-Sent Events as the agent thinks, searches, and writes.

How It Works

  1. Create a task with your instructions and optional output schema via POST /research/v1.
  2. The agent plans by decomposing your instructions into targeted sub-tasks.
  3. Each sub-task searches the web and crawls relevant pages to gather information.
  4. Findings are synthesized into a final output with citations.
  5. Retrieve the completed result via GET /research/v1/{researchId} or list all tasks with GET /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.

Next Steps