Exa Search

Exa · Research & Search
POST /v1/searchWeb search engine for finding pages, retrieving similar pages, crawling, and dedicated code search across the open web for AI agents.
At a glance
| Field | Value |
|---|---|
| Model id | exa-search |
| Model release date | - |
| Input modalities | Text |
| Output modalities | Text |
| Context window | - |
| Weight precision | - |
| Features | web_search, semantic_search |
| Native inference | No |
| New | No |
| Supported endpoints | POST /v1/search |
Pricing
| Charge | Spec | Rate |
|---|---|---|
| Search, Auto or Fast (up to 10 results) | per search | $0.0084 |
| Search, Instant or Neural (up to 10 results) | per search | $0.0048 |
| Search, Deep (up to 10 results) | per search | $0.0144 |
| Find Similar (up to 10 results) | per search | $0.0048 |
| Each Result Above 10 | per page | $0.0012 |
| Result Summary | per page | $0.0012 |
| Contents: Text, Highlights or Summary (each) | per page | $0.0012 |
| Code Search | per request | $0.0048 |
Example request
curl https://api.empiriolabs.ai/v1/search \-H 'Authorization: Bearer $EMPIRIOLABS_API_KEY' \-H 'Content-Type: application/json' \-d '{"model": "exa-search", "query": "latest LLM benchmarks 2026"}'
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | yes | - | Search query (or URL for similar) |
operation | enum | no | "search" | search runs a web search, similar finds pages like a given URL, contents returns the text of given URLs, and code returns code context for a query. · Allowed: search, similar, contents, code |
search_type | enum | no | "auto" | Search algorithm: auto, instant, neural, deep, or fast. Alias of type. · Allowed: auto, instant, neural, deep, fast |
type | enum | no | "auto" | Search algorithm: auto, instant, neural, deep, or fast. auto picks the best mode per query. · Allowed: auto, instant, neural, deep, fast |
num_results | number | no | 10 | How many results to return (1-100). · Range: 1 – 100 |
category | enum | no | - | Restrict results to a category, such as research paper, news, or github. · Allowed: company, research paper, news, github, tweet, movie, song, personal site, pdf, linkedin profile, financial report |
include_domains | string | no | - | Comma-separated allowlist of domains. Only results from these domains are returned (e.g. arxiv.org, github.com). |
exclude_domains | string | no | - | Comma-separated denylist of domains to filter out of results. |
include_text | string | no | - | Comma-separated text snippets that must appear |
exclude_text | string | no | - | Comma-separated text snippets to exclude |
start_crawl_date | string | no | - | Only return results crawled after this date. ISO 8601 (e.g. 2024-01-01T00:00:00Z). |
end_crawl_date | string | no | - | Only return results crawled before this date. ISO 8601. |
start_published_date | string | no | - | Only return results published after this date. ISO 8601. |
end_published_date | string | no | - | Only return results published before this date. ISO 8601. |
return_text | boolean | no | true | Return each result’s full page text. Alias of text. |
show_content | boolean | no | true | Return each result’s full page text. Alias of text. |
text | boolean | no | true | Return each result’s full page text. |
text_max_chars | number | no | 2000 | Cap on the cleaned-text length per result. · Range: 100 – 100000 |
include_html_tags | boolean | no | false | Keep HTML tags in the extracted text. |
return_highlights | boolean | no | false | Get AI-selected key snippets from each result. Alias of highlights. Not used by operation code. |
highlights | boolean | no | false | Include relevant text snippets (“highlights”) per result. Not used by operation code. |
highlights_query | string | no | - | Query used to score which sentences become highlights. |
highlights_sentences | number | no | 3 | Number of sentences to include per highlight. · Range: 1 – 10 |
highlights_per_url | number | no | 3 | Max highlights returned per URL. · Range: 1 – 10 |
return_summary | boolean | no | false | Get an AI-generated summary of each result. Alias of summary. Not used by operation code. |
summary | boolean | no | false | Return an LLM-generated summary of each result. Not used by operation code. |
summary_query | string | no | - | Custom summary prompt (only when summary=True) |
livecrawl | enum | no | - | Fetch a fresh crawl instead of cached content: always, preferred, fallback or never. When omitted, Exa’s default applies. · Allowed: always, fallback, never, preferred |
subpages | number | no | 0 | Number of related subpages to fetch alongside each main result. · Range: 0 – 10 |
subpage_target | string | no | - | Keyword guiding which subpages to fetch (e.g. “pricing”). |
code_tokens | enum | no | "dynamic" | Max tokens of code to include when scraping code-heavy pages. · Allowed: dynamic, 5000, 10000, 20000 |
disable_formatting | boolean | no | false | Return the results as JSON instead of formatted Markdown. |
Notes
Operations
- search, similar pages, contents, code search
Search types
- Auto, Instant (sub-150ms), Neural (embeddings), Deep Search (Exa 2.1), Fast
Categories
- Company, Research Paper, News, PDF, GitHub, Tweet, Personal Site, LinkedIn Profile, Financial Report
Machine-readable schema: GET https://api.empiriolabs.ai/v1/models/exa-search.
