---
source_url: "https://exa.ai/docs/changelog"
title: Changelog - Exa
mirrored_at: 2026-08-24T03:02:26.189Z
host: exa.ai
cited_in_42a: true
mirror_canonical: "https://index.42a.ai/exa.ai/docs/changelog"
---

> **Original source:** https://exa.ai/docs/changelog

## Publication research

We significantly expanded and improved research over academic publications.

-   **350M publications**: search across an index of 350 million publications.
-   **Richer organization and people results**: searches now return both organizations and their affiliated people, each as a detailed, enriched profile spanning publications, top collaborators, research areas, and funding.
-   **Agentic people and organization search**: agents can now search over people and organizations.
-   **Public retrieval benchmark**: we released a public benchmark for publication retrieval.
-   **New `publication` search category**: query scholarly results with `category: "publication"`, which replaces the `research paper` category.
-   **Deprecated categories**: the `pdf`, `github`, and `tweet` search categories are being deprecated.
-   **`startCrawlDate` / `endCrawlDate`**: deprecated parameters are now ignored for all teams while remaining accepted for compatibility.

Query it via the API with the `publication` [search category](https://exa.ai/docs/reference/search-api-guide), or [try it in the dashboard →](https://dashboard.exa.ai/playground/search?type=instant).

## Exa Agent and Exa Connect in MCP

Exa Agent is now available within Exa MCP. Use it from Claude, Cursor, or any other MCP client when the task needs more than a single search call.Enable the Agent tool with `https://mcp.exa.ai/mcp?tools=agent_run`, then call `agent_run` to run the agent through completion and return its output.Exa Connect data sources are available through the Agent flow, so you can attach premium data partners when a run needs more than web search alone.[Read the Exa MCP guide →](https://exa.ai/docs/reference/exa-mcp) · [Read the Exa Agent guide →](https://exa.ai/docs/reference/agent-api-guide) · [Announcement tweet →](https://x.com/ExaAILabs/status/2072389192458592672)

## Introducing Exa Agent

We released a new class of frontier web research agents that are accessible via API.Exa Agent API supports parameters including a natural-language query, `effort` mode, `outputSchema` for structured outputs, and `input.data` to build upon an existing dataset.[Read the Exa Agent API guide →](https://exa.ai/docs/reference/agent-api-guide)

## Introducing Exa Connect

Exa Connect gives Exa Agent live access to the world’s public and private data. It launched with Similarweb, Fiber.ai, Baselayer, Financial Datasets, Affiliate.com, Particle, Jinko, and Additional Partners. You attach them via `dataSources` on `POST /agent/runs`.[Read the Exa Connect guide →](https://exa.ai/docs/reference/agent-api/connect/overview) · [Announcement tweet →](https://x.com/ExaAILabs/status/2069842203577651283)

## API Deprecation Notice

We retired a few legacy items from the Exa API:

-   **`/research` endpoint**: replaced by `/search` with `type: "deep-reasoning"`.
-   **`resolvedSearchType` and `highlightScores` (response fields)**: returned `null` from April 15, removed May 1.
-   **`startCrawlDate` / `endCrawlDate` (deprecated request parameters)**: silently ignored from April 15.

[Migrate to Deep search →](https://exa.ai/docs/reference/search)

## Introducing Exa Monitors

Monitors run Exa searches on a schedule and deliver results to your webhook, deduplicated against previous runs so you only get new content.

-   **Track topics over time**: competitor news, funding rounds, regulatory changes, research papers.
-   **Structured results**: return plain text or typed JSON via `outputSchema`.
-   **Flexible scheduling**: run on an interval (minimum 1 hour) or trigger manually.

[Read the Monitors API guide →](https://exa.ai/docs/reference/monitors-api-guide)

## Exa Deep Revamp

Exa Deep is faster, cheaper, and now supports structured outputs with field-level grounding.

-   **New `deep-reasoning` type** for higher-effort tasks (12-50s); `deep` runs in 4-12s.
-   **20% lower price** for regular `deep` search.
-   **Structured outputs** via `outputSchema`, with `output.content` and `output.grounding` (field-level citations and confidence) in the response.

See the [Exa Pricing Update](#exa-pricing-update) below for full pricing.[Read the Search API reference →](https://exa.ai/docs/reference/search)

## Exa Pricing Update

We simplified and lowered pricing. Contents for the first 10 search results are now included for free, and the new pricing applies automatically with no action needed.

-   **Search with contents**: $7 per 1k requests (10 results, text + highlights included); $1 per 1k additional results.
-   **Summaries**: $1 per 1k, on both search and contents.
-   **Exa Deep**: $12 per 1k requests; **Deep (Reasoning)** $15 per 1k.
-   **Contents endpoint**: $1 per 1k pages per content type.

[View current pricing →](https://exa.ai/pricing)

## Introducing Exa Instant Search

Exa Instant is our fastest search type, combining improved neural search quality with sub-150ms latency. Enable it with `type="instant"`.

-   **Built for real-time**: chat apps, voice AI, coding agents, autocomplete, and live suggestions.
-   **State-of-the-art quality** at the lowest latency we offer.

[Read the Search API guide →](https://exa.ai/docs/reference/search-api-guide) · [Try it in the dashboard →](https://dashboard.exa.ai/playground/search?type=instant)

## Highlights, content freshness, and MCP updates

Three improvements to content extraction and access:

-   **`maxCharacters` for highlights**: now the preferred way to control highlight length. `numSentences` and `highlightsPerUrl` are deprecated.
-   **`maxAgeHours` for content freshness**: age-based control replacing boolean `livecrawl` (`0` always crawls, `-1` cache-only, `24` crawls if older than 24h).
-   **Exa MCP free tier**: try it unauthenticated at 3 QPS and 150 calls/day; add an API key for full access.

[Content freshness docs →](https://exa.ai/docs/reference/livecrawling-contents) · [Exa MCP →](https://exa.ai/docs/reference/exa-mcp)

## Introducing Exa Company Search

Company search now uses a fine-tuned retrieval model and entity-matching pipeline. Use `type="auto"`, `category="company"`.

-   **Accurate across attributes**: industry, geography, funding stage, and employee count.
-   **Structured entity data**: results return typed company info (workforce, HQ, financials, web traffic).
-   **Use cases**: sales prospecting, market research, and supply chain workflows.

[Read the Company Search docs →](https://exa.ai/docs/reference/verticals/company) · [Read the benchmark blog →](https://exa.ai/blog/company-search-benchmarks)

## Introducing Exa People Search

People search now spans 1B+ public profiles via a hybrid retrieval system. The `linkedin` category is replaced by the new `people` category.

-   **Broader coverage**: profiles across the whole web, not just LinkedIn.
-   **Better accuracy**: fine-tuned embeddings for role, skill, and company queries.
-   **Use cases**: sales, recruiting, and market research.

[Read the People Search docs →](https://exa.ai/docs/reference/verticals/people) · [Read the benchmark blog →](https://exa.ai/blog/people-search-benchmark)

## JS SDK: highlights restored

Highlights are back in the JavaScript SDK as of `exa-js` v2.0.11, returning key sentences with relevance scores. Pass `highlights: true` or `highlights: { maxCharacters, query }` in search and contents calls.[Read the JavaScript SDK docs →](https://exa.ai/docs/sdks/javascript-sdk)

## New Deep Search Type

Exa Deep finds better results by running multiple searches at once and returning high-quality context for each result. Enable it with `type="deep"`.

-   **Query expansion**: send one query and we generate variations, or supply your own with `additionalQueries`.
-   **Parallel search and smart ranking** across your query and all variations.
-   **Detailed summaries** for each result.

[Read the Search API reference →](https://exa.ai/docs/reference/search)

## Added Language Filtering

Exa now detects your query language and returns results only in that language. Enabled by default for all users, with no setup required.[Read the Search API guide →](https://exa.ai/docs/reference/search-api-guide)

## SDK changes: highlights removed and contents returned by default

A major SDK version with breaking changes:

-   **Contents by default**: search now includes page contents; opt out for faster searches.
-   **Highlights removed from SDKs**: later restored in the JS SDK; see [JS SDK: highlights restored](#js-sdk-highlights-restored).
-   **`use_autoprompt` deprecated**: removed from all API responses.

[Read the Python SDK docs →](https://exa.ai/docs/sdks/python-sdk)

## Domain Path Filter Support

`includeDomains` and `excludeDomains` now support finer targeting:

-   **Path-specific filtering**: e.g. `exa.ai/blog` or `linkedin.com/company`.
-   **Subdomain wildcards**: e.g. `*.substack.com`.

Useful for scoping searches to blogs, product catalogs, or directories.[Read the Search API reference →](https://exa.ai/docs/reference/search)

## Geolocation Filter Support

The new `userLocation` parameter biases results toward a user’s region, passed as an [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) country code (e.g. `"us"`, `"fr"`). Useful for multi-regional apps, regional-language content, and local discovery.[Read the Search API reference →](https://exa.ai/docs/reference/search)

## New Fast Search Type

Exa Fast uses streamlined search models with p50 latency below 425ms. Enable it with `type="fast"`.

-   **Same Exa index** of high-quality content as neural search.
-   **Full parameter compatibility** with other search types.
-   **Built for** fast web grounding, agentic workflows, and low-latency products.

[Read the Search API guide →](https://exa.ai/docs/reference/search-api-guide) · [Try it in the dashboard →](https://dashboard.exa.ai/playground/search?q=blog%20post%20about%20AI&filters=%7B%22text%22%3A%22true%22%2C%22type%22%3A%22fast%22%2C%22livecrawl%22%3A%22never%22%7D)

## Score Deprecation in Auto Search

A new Auto search architecture can no longer produce meaningful relevance scores, so the `score` field is being removed from Auto search results.

-   **Auto search**: no longer returns `score`; results are already ranked by relevance.
-   **Neural search**: scores are unchanged. Set `type="neural"` if you depend on them.

[Read the Search API reference →](https://exa.ai/docs/reference/search)

## Markdown Contents as Default

All endpoints now return clean markdown by default, which is better for LLMs, RAG, and general text processing. No action needed.

-   **`includeHtmlTags=false` (default)**: content processed into clean markdown.
-   **`includeHtmlTags=true`**: raw HTML without markdown processing.

Either way, boilerplate like ads and navigation is stripped.[Read the Contents docs →](https://exa.ai/docs/reference/contents-retrieval)

## New Livecrawl Option: Preferred

Historical entry: the `livecrawl` string parameter is now deprecated. For new integrations, use `maxAgeHours` with `livecrawlTimeout`. See [Content Freshness](https://exa.ai/docs/reference/livecrawling-contents).

The deprecated `livecrawl: "preferred"` option attempts a fresh crawl but falls back to cached content when crawling fails (unlike `"always"`, which errors). Ideal for production apps that want fresh content without failing on temporarily unavailable sites.[Read the Content Freshness docs →](https://exa.ai/docs/reference/livecrawling-contents)

## Contents Endpoint Status Changes

`/contents` now returns a per-URL `statuses` field instead of a single HTTP error, so you can handle each URL’s outcome individually. The endpoint only errors on internal issues.

-   **`status`**: `"success"` or `"error"` per URL.
-   **`error.tag`**: e.g. `CRAWL_NOT_FOUND`, `CRAWL_TIMEOUT`, `SOURCE_NOT_AVAILABLE`, with an `httpStatusCode`.

[Read the error codes reference →](https://exa.ai/docs/reference/error-codes)

## Auto search as Default

Auto search is now the default, automatically routing each query to the best search method. No action needed; set `type="neural"` to keep the previous behavior.[Learn about Exa’s search types →](https://exa.ai/docs/reference/search-api-guide)