Exa is a modern AI search engine with SERP API, website crawler tools, and deep research API. Power your app with web search AI and web crawling API.
OpenRouter

How OpenRouter gives 400+ models web search with Exa

73M
Search queries to date
400+
Models connected
25T
Tokens first week of May
Company
OpenRouter
Industry
AI Infrastructure
Size
10-50
API
Search API via openrouter:web_search
OpenRouter has a laser focus on bringing a great developer experience to all language models, and Exa is the best way we've found for grounding AI in the real world in a model-agnostic way.
Alex Atallah
CEO, OpenRouter
Alex Atallah

About OpenRouter

One API for hundreds of models

OpenRouter gives developers one API for hundreds of models across labs, providers, and open-source ecosystems. Teams can switch models without rebuilding auth, rate limits, billing, or usage reporting every time.

When Exa and OpenRouter first worked together, the goal was simple: bring live web data to models that did not have search built in. Exa became the search engine behind that launch. Last year, OpenRouter had powered 2.36M+ search queries with Exa. Today, that number is 73M search queries to date.

The Challenge

High-quality, low-latency web search across every model

OpenRouter's first web-search experience made search available through plugins and online model variants. That gave developers a simple one-shot way to add live web context and proved there was real demand for search-enabled models.

OpenRouter's public rankings show weekly model usage in trillions of tokens, with the leaderboard changing quickly across labs, providers, and open-source ecosystems. Open-source and open-weight model usage has also taken off, giving developers more real choices for cost, latency, and quality.

As model choice expanded, that one-shot search path needed to become more agentic. If a developer is routing between many models, search should travel with them. They should be able to define one tool once, switch models, and keep the same result shape, usage tracking, and citations.

The Solution

Server-side agentic web search

OpenRouter is evolving that plugin-powered search experience into server-side tool calls. Developers can now add tools: [{ type: "openrouter:web_search" }] to a request, and the model can decide when to search, what to search for, and whether it needs to search again.

OpenRouter runs the search on the server and passes URLs, titles, snippets, and citations back to the model. The same tool definition works across supported tool-calling models, so teams can change models without rewriting their web-search integration.

One tool for every model

Use openrouter:web_search across supported models instead of maintaining a separate search setup for each provider.

Agentic search loops

Models can search zero, one, or many times in a request. Developers can cap results with max_total_results.

Exa highlights and citations

OpenRouter uses Exa highlights to pass concise excerpts into the model, then surfaces grounded results with URL citations.

Why Exa

Search context built for model consumption

With Exa as an engine option, OpenRouter can give models relevant excerpts instead of dumping long pages into context. Exa selects the passages that match the query, and OpenRouter returns them as cited web context.

That matters more when the model is choosing when to search. It may run more than one query, inspect sources, and combine the results into an answer. Better context per result makes that loop more useful without forcing every developer to build search and retrieval themselves.

Adaptive context

Exa can choose highlight sizes adaptively, or developers can set search_context_size when they want a larger context budget.

Domain controls

OpenRouter exposes allowed and excluded domain filters for teams that need tighter control over web grounding.

Unified usage tracking

Responses include server tool usage, including how many web search requests happened during the model call.

Results

OpenRouter and Exa brought 400+ offline models online

OpenRouter turned web search from a model-specific add-on into shared infrastructure across its model marketplace. Developers can keep routing across hundreds of models while giving offline models the same path to fresh web context, citations, and server-side tool usage.

73M queries

Search queries powered to date across OpenRouter's web-connected model experience, up from 2.36M+ last year.

400+ models online

Developers can bring web context to hundreds of otherwise offline models through one OpenRouter tool interface.

Tool-native search

Models can decide when to search, choose queries, and call the tool multiple times in one request.

Try it on OpenRouter

Add tools: [{ type: "openrouter:web_search" }] to a request and let supported models call web search server-side.Read docs
Implementation

Integrate Exa APIs

Search API

Returns results and their contents

Neural search
Keyword-based search
Relevant results

Answer API

Get an LLM answer to a question.

Fast
Summarized answers
Combined keyword and neural search