Welcome

We’re honored that you’re reading our docs in 2026. These docs serve two audiences: human readers, and coding agents that should read this guide instead.

Why choose Exa?

Exa is a custom search engine built for AIs. Our API is the only that offers:

Search types for any agent

Whether you’re building a fast chatbot or a deep research tool, Exa has custom search types with appropriate latency-quality profiles, from 200ms instant search to 60s deep search.See all search types →

Type Speed Best For
auto ~1s Default
instant ~200ms Real-time apps (e.g., chat, voice)
fast ~450ms Speed with minimal quality sacrifice
deep-lite ~2s to 10s Lightweight synthesized search output
deep 5s to 60s Complex queries requiring multi-step reasoning with structured outputs
deep-reasoning 10s to 60s Higher-reasoning synthesized output for harder research tasks

10x token-efficient contents

LLMs just want dense information! At Exa, we train models that take full webpages and condense them into just the tokens an LLM needs. This saves LLM costs and also produces better RAG evals in most cases — we call it highlights.We can also use LLMs to process information on our end, returning structured outputs or grounded answers.See all contents types →

LLM Outputs

Type Description
Structured outputs Use output_schema with any search type to extract structured JSON from search results
LLM summaries AI-generated overviews of each result’s content
Grounded answers Full answers with citations via /answer, or use output_schema on /search for grounded text or structured extraction

Webpage Content

Type Description
Highlights 10x token efficient extracts of only the relevant tokens from a webpage. 4000 characters recommended.
Full text Full webpage text, when full comprehensiveness needed

Custom data types

Agents can parallel process gigantic quantities of precise information. Exa has custom indexes of 1B+ people, 50M+ companies, 100M+ research papers, and more.See all data types →

Category Best For
company 50M+ company pages and metadata
people 1B+ people and metadata (e.g., job, education)
research paper 100M+ full papers
news Current events, journalism
personal site Blogs, personal pages
financial report SEC filings, earnings reports

Common use cases

Web search tool

Give any agent the ability to search the web in real time.See example code →

results = exa.search(
  "news about Iran",
  type="auto",
  contents={"highlights": True},
)

Data enrichment / Structured output

Extract structured JSON from the web with custom schemas. Deeper search types work best for harder synthesis tasks.See example code →

result = exa.search(
  "top aerospace companies",
  type="deep",
  output_schema={
    "type": "object",
    "required": ["companies"],
    "properties": {
      "companies": {
        "type": "array",
        "items": {
          "type": "object",
          "required": ["company_name", "ceo_name"],
          "properties": {
            "company_name": {"type": "string"},
            "ceo_name": {"type": "string"}
          }
        }
      }
    }
  }
)

output_schema, system_prompt, and stream work across all search types. For more demanding synthesis, prefer deeper search types like deep-lite or deep.

Company/People research

Find and enrich companies/people with dozens of fields.See example code →

company_results = exa.search(
  "agtech companies in the US that have raised series A",
  type="auto",
  category="company",
  contents={"text": {"max_characters": 20000}}
)

people_results = exa.search(
  "software engineers that work at fintech companies",
  type="auto",
  category="people",
  contents={"text": {"max_characters": 20000}}
)

Human Quickstart

Get your API key from the Exa Dashboard.

Python

pip install exa-py
from exa_py import Exa

exa = Exa(api_key="your-api-key")

result = exa.search(
  "blog post about artificial intelligence",
  type="auto",
  contents={"highlights": True},
)

JavaScript

npm install exa-js
import Exa from "exa-js";

const exa = new Exa("your-api-key");

const result = await exa.search("blog post about artificial intelligence", {
  type: "auto",
  contents: {
    highlights: true,
  },
});

cURL

curl -X POST "https://api.exa.ai/search" \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "query": "blog post about artificial intelligence",
    "type": "auto",
    "contents": {
      "highlights": true
    }
  }'

Next