<!-- twin of https://specstream.ai/migrate/exa-research -->
# Exa /research is retired: a cited report from $0.10 a call

Compared on Nov 13, 2026. The page: https://specstream.ai/migrate/exa-research

Exa's changelog of April 1, 2026 lists the `/research` endpoint as retired, replaced by `/search` with `type: "deep-reasoning"`. Since October 19 that type is legacy at $15 per 1,000 requests. For new requests Exa names `deep`, or Exa Agent for long-running research.

SpecStream is the live web data engine for teams and agents. `POST /v1/research` takes the question you sent to `/research` and returns a written report with the page behind each cited sentence, at $0.10, $0.30 or $1.00 a report.

[Get an API key](https://specstream.ai/signup?src=alternatives-migrate-exa-research&utm_source=alternatives-md&utm_campaign=migrate-exa-research&returnTo=%2Fworkspace%2Fsearch%3Froute%3Dexa-research) New accounts get $10 of credit, no card. It covers 100 quick reports or 33 standard reports.

## A research job on SpecStream, on Exa Deep and on Exa Agent

| | SpecStream | Exa /search, type deep | Exa Agent |
|---|---|---|---|
| Where a /research job goes | `POST /v1/research`, on the same key as the Search API and the Extract API | The replacement in Exa's April 1, 2026 notice is `type: "deep-reasoning"`, a legacy type since Oct 19, 2026. Exa names `deep` for new requests | Exa's choice for long-running research, list building and multi-hop enrichment. Released on June 16, 2026 |
| The call | `POST https://api.specstream.ai/v1/research`, then `GET /v1/research/{id}` until `status` is `completed` | `POST https://api.exa.ai/search` with `type: "deep"`. The reply comes in 4 to 15 seconds | `POST https://api.exa.ai/agent/runs`, then `GET /agent/runs/{id}` until `status` is `completed`, `failed` or `cancelled` |
| The question | `input`, up to 15,000 characters | `query`, with a `systemPrompt` that guides the research and up to 10 `additionalQueries` | `query`, with an `effort` mode and `input.data` to build on an existing dataset |
| How far it reads | `depth`: `quick`, `standard` (the default) or `deep`. About one minute, four minutes and five minutes | `deep-lite` in about 4 seconds, `deep` in 4 to 15 seconds, the legacy `deep-reasoning` in 12 to 40 seconds | `effort`: `minimal`, `low`, `medium`, `high` or `xhigh` at a fixed price, or the metered `auto` and `ultra`. An Ultra run takes a time budget of 5 minutes to 3 hours |
| The written answer | `report.content`, on every report, with `[1]` markers. `length` is `short`, `standard` or `long` | The selected search results under `results`. A synthesized answer comes back as `output.content` when you add an `outputSchema` | `output.text`, a natural-language answer |
| The sources | `report.citations` gives each cited sentence its page, read time and passage. `report.sources` lists every page read | Field-level citations in `output.grounding` | `output.grounding`: citations for text or structured fields, when emitted |
| JSON in place of text | `"output": {"type": "json", "schema": {...}}` with your JSON Schema | `outputSchema`, with at most 10 properties in total and at most 2 levels of nested objects | `outputSchema`, returned as validated JSON in `output.structured` |
| Price | $0.10 quick, $0.30 standard, $1.00 deep, shown as `price_usd` in the reply to the `POST`. Taken once, when the report is delivered. A cancelled report is not charged | $12 per 1,000 requests on `deep` and `deep-lite`, and $15 on the legacy `deep-reasoning`, for up to 10 results | $0.012, $0.025, $0.10, $0.50 or $1.00 a request at a fixed effort. `auto`, the default, is metered: $0.10 per Agent Compute Unit and $0.005 per search, up to a $5 cap. `ultra` is metered up to $20 |
| The most a run can cost | The price of its depth: $0.10, $0.30 or $1.00. Over MCP, `start_research` runs only after that price is approved as `confirm_max_cents` | The price of one request: $0.012 on `deep` | The cap of a metered run, $5 on `auto` and $20 on `ultra` by default. `budget.maxCostDollars` accepts $1 to $100 |
| Progress and stopping | `GET /v1/research/{id}/events`, server-sent events that resume with `Last-Event-ID`, or a `webhook`. `POST /v1/research/{id}/cancel` stops the report at no charge | One reply, in seconds | Server-sent events with `Accept: text/event-stream`. `POST /agent/runs/{id}/stop` ends a run and keeps the results gathered so far |

## Why /research users move to SpecStream

### What Exa changed, by date

April 1, 2026: Exa's changelog lists the `/research` endpoint among the legacy items it retired, replaced by `/search` with `type: "deep-reasoning"`. June 16: Exa released Exa Agent. October 19: `deep-reasoning` became a legacy type that keeps working at $15 per 1,000 requests, and Exa named two paths for new requests: `deep`, or Exa Agent for long-running research, list building and multi-hop enrichment.

So a team that moved its `/research` calls in April now runs on a legacy type, and its next move is a second rewrite: to a search type that answers in 4 to 15 seconds, or to an asynchronous agent with its own prices.

### One question in, a written report out

A `deep` request is a search. It returns the selected results, and a synthesized answer only when you add an `outputSchema` of at most 10 properties. Exa Agent returns `output.text`, and its citations are in `output.grounding` when emitted. A SpecStream research report has the same shape on every call: `report.content` is the text with `[1]` markers, `report.citations` gives each cited sentence its page, the time it was read and the passage that supports it, and `report.sources` lists every page read in the run. Your reader checks a sentence against its passage without opening the whole page.

### Three prices, shown when the report starts

Exa Agent has five fixed efforts from $0.012 to $1.00 a request. Its default mode, `auto`, bills what the run used, at $0.10 per Agent Compute Unit and $0.005 per search, up to a $5 cap. A SpecStream report costs $0.10 at `quick`, $0.30 at `standard` and $1.00 at `deep`. The reply to the `POST` shows the price as `price_usd`, the balance pays it once when the report is delivered, and a cancelled report costs nothing. See [pricing](https://specstream.ai/pricing?utm_source=alternatives&utm_campaign=migrate-exa-research) and [Exa Agent pricing](https://specstream.ai/exa-agent-pricing?utm_source=alternatives&utm_campaign=migrate-exa-research).

### A question gets a report, a list gets rows

Exa Agent takes both kinds of job in one product: deep research and list building with enrichment. On SpecStream each has its own call and its own price. A question that needs a written answer with its sources goes to `POST /v1/research`. A list, such as every company that matches your conditions with the same facts on each, goes to [Deep Search](https://specstream.ai/deep-search?utm_source=alternatives&utm_campaign=migrate-exa-research) at 5¢, 15¢ or $1 a delivered row, with the most the run can cost approved before it starts. The [Exa Research API alternative](https://specstream.ai/exa-research-api-alternative?utm_source=alternatives&utm_campaign=migrate-exa-research) page covers the list job.

### Your Exa /search code moves on the same key

SpecStream answers Exa's own `POST /search` at `https://api.specstream.ai/exa`, in Exa's JSON, for $1 per 1,000 searches of up to 10 results, against $4 on Exa's `lite` and $7 on `auto`. The same key runs the Search API, which scores 97.9 F-score on all 1,000 SimpleQA Verified questions ([benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=migrate-exa-research)), and the Extract API at $0.80 per 1,000 pages. The [Exa migration page](https://specstream.ai/migrate/exa?utm_source=alternatives&utm_campaign=migrate-exa-research) lists each parameter.

## Other Exa /research alternatives

### Linkup Research

SpecStream writes a cited report for $0.10, $0.30 or $1.00 in about one to five minutes, and the other three options price as follows. Linkup Research costs $0.25, $0.50, $1.50 or $2.50 a request by depth. A SpecStream standard report costs $0.30, under Linkup's `M` depth at $0.50, and a deep report costs $1.00, under Linkup's `L` at $1.50.

### Parallel Task API

Parallel prices a Task run by processor, from $5 to $2,400 per 1,000 runs. Its `pro` processor costs $100 per 1,000 runs and takes 2 to 10 minutes, and `ultra` costs $300 and takes 5 to 25 minutes. A SpecStream quick report costs the same $0.10 as a `pro` run and takes about a minute.

### Tavily Research

Tavily Research bills 4 to 110 credits a request on `mini` and 15 to 250 on `pro`, at $0.008 a credit pay as you go. That is $0.032 to $0.88 on `mini` and $0.12 to $2.00 on `pro`, known after the run. A SpecStream report has one price per depth, shown as `price_usd` when the report starts.

## How to move a /research call, step by step

1. Find the calls. Search your code for `/research`, and for `/search` requests that send `"type": "deep-reasoning"`, the type Exa's April notice moved them to.

2. Create a key under Agents & API in the workspace. New accounts get $10 of credit, no card.

3. Start the report. The research question goes in `input`, and `depth` sets how far it reads. The reply is `202` with the report's `id` and its `price_usd`.

```
curl -X POST https://api.specstream.ai/v1/research \
  -H "Authorization: Bearer $SPECSTREAM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"input": "Which US states passed a data privacy law in 2026, and when does each one take effect?", "depth": "standard"}'
```

4. Read it until `status` is `completed`. `report.content` is the text, `report.citations` holds the cited sentences and `report.sources` every page read.

```
curl https://api.specstream.ai/v1/research/REPORT_ID \
  -H "Authorization: Bearer $SPECSTREAM_API_KEY"
```

5. If your request has an `outputSchema`, send the same JSON Schema as `"output": {"type": "json", "schema": {...}}`. To follow a long report, read `GET /v1/research/{id}/events` or pass `"webhook": {"url": "https://..."}`. `include_domains` and `exclude_domains` choose the sites.

6. Send an `Idempotency-Key` header on the `POST`, so a retry returns the same report and is charged once. The [research report docs](https://specstream.ai/docs/research?utm_source=alternatives&utm_campaign=migrate-exa-research) list every field and error.

7. For the plain search calls beside it, keep the Exa SDK and change one argument:

```
from exa_py import Exa

exa = Exa(api_key=SPECSTREAM_KEY, base_url="https://api.specstream.ai/exa")
result = exa.search("state data privacy laws 2026", num_results=10)
```

An agent runs the same report over MCP at `https://api.specstream.ai/mcp`: `research_price` shows the price of each depth, `start_research` starts the report once the person who pays approves that price, and `get_research` reads it. The [MCP guide](https://specstream.ai/docs/mcp?utm_source=alternatives&utm_campaign=migrate-exa-research) has the setup for each client.

## Frequently asked questions

### Is the Exa /research endpoint still available?

No. Exa's changelog of April 1, 2026 lists the `/research` endpoint among the legacy items it retired, replaced by `/search` with `type: "deep-reasoning"`.

### What replaces Exa's /research endpoint?

Three paths exist in November 2026. Exa's April notice names `/search` with `type: "deep-reasoning"`, at $15 per 1,000 requests. Since October 19 that type is legacy, and Exa names `deep` at $12 per 1,000 requests, or Exa Agent at $0.012 to $1.00 a request. SpecStream's `POST /v1/research` returns a written report with its sources for $0.10, $0.30 or $1.00.

### Is Exa deep-reasoning deprecated?

It is a legacy type since October 19, 2026. It keeps working at $15 per 1,000 requests and answers in 12 to 40 seconds. Exa's changelog names `deep` for new requests, or Exa Agent for long-running research, list building and multi-hop enrichment.

### Where does a research job fit beside Exa Agent?

On SpecStream a research question is one call at $0.10, $0.30 or $1.00: `POST /v1/research` returns the written report with the page, read time and passage behind each cited sentence. Exa Agent is an asynchronous agent for list building, enrichment and deep research, at $0.012 to $1.00 a request by effort, or metered up to a $5 cap on `auto`. For lists, SpecStream Deep Search delivers rows at 5¢, 15¢ or $1 each.

### How much does a SpecStream research report cost?

$0.10 for a quick report, $0.30 for a standard report and $1.00 for a deep report. The price is taken once, when the report is delivered, and a cancelled report is not charged.

### How long does a research report take?

About 1 minute for a quick report, 4 minutes for a standard report and 5 minutes for a deep report. The `POST` answers `202` at once, and `GET /v1/research/{id}/events` streams the progress.

### Can I get JSON in place of a text report?

Yes, at the same $0.10, $0.30 or $1.00. Send `"output": {"type": "json", "schema": {...}}` with a JSON Schema. Exa's `deep` type takes an `outputSchema` of at most 10 properties in total.

### Does SpecStream answer Exa's /search call?

Yes, at $1 per 1,000 searches of up to 10 results. Set the base address to `https://api.specstream.ai/exa`, and `POST /exa/search` answers in Exa's JSON with the key in `x-api-key` or as a Bearer token.

## Sources

SpecStream wrote this page. Each rival figure comes from that company's own page.

- [Exa changelog](https://exa.ai/docs/changelog.md), read Nov 13, 2026
- [Exa pricing](https://exa.ai/docs/admin/pricing.md), read Nov 13, 2026
- [Exa Deep Search](https://exa.ai/docs/search/deep-search.md), read Nov 13, 2026
- [Exa Agent](https://exa.ai/docs/agent/quickstart.md), read Nov 13, 2026
- [Linkup pricing docs](https://docs.linkup.so/pages/documentation/development/pricing.md), read Nov 13, 2026
- [Parallel pricing](https://docs.parallel.ai/getting-started/pricing.md), read Nov 13, 2026
- [Tavily API credits](https://docs.tavily.com/documentation/api-credits.md), read Nov 13, 2026
- [SpecStream research reports](https://specstream.ai/docs/research), read Nov 13, 2026
- [SpecStream pricing](https://specstream.ai/pricing), read Nov 13, 2026
- [SpecStream benchmarks](https://specstream.ai/benchmarks), read Nov 13, 2026
- [SpecStream for agents](https://specstream.ai/agents.md), read Nov 13, 2026
