Skip to navigation

Exa (web search)

Use Exa to search the web from an Agent or a Flow. Exa is available as the built-in Exa tool for Agents and as the Exa Search API provider for the AI Search Flow step. Exa uses neural and keyword search and returns results with optional summaries, highlights, and full page text.

Set up Exa

You can use Exa without an Exa account. Without your own key, Exa calls use a Runtype platform key, and Runtype tracks their cost as platform-key spend. For how platform keys are billed and limited, see Platform keys vs. BYOK.

To use your own Exa account, follow these steps:

  1. Create an account at Exa.
  2. Get an Exa API key.
  3. In Runtype, go to Settings > Integrations.
  4. Find Exa.
  5. In Exa API Key, enter your key.
  6. Click Save Key.

To go back to the platform key, click Remove Key in the Exa section.

Add Exa to an Agent

To add Exa to an Agent, follow these steps:

  1. Open your Agent.
  2. In the tools strip, click Add tool. The tool picker opens.
  3. In the Web search category, select Exa.
  4. Close the picker and save the Agent.

To attach Exa in an Agent definition, add builtin:exa to tools.toolIds:

Agent tools configuration
{
"tools": {
"toolIds": ["builtin:exa"]
}
}

You can list builtin:exa in the same tools configuration as runtime tools that you define for a single request. For details, see Runtime tools.

Tool parameters

When an Agent calls Exa, the model supplies these parameters. If the model leaves out an optional parameter, the tool uses the listed default.

ParameterDescriptionRequirement or default
querySearch query.Required.
searchTypeSelect auto, neural for semantic search, or keyword for traditional search.Optional. Defaults to auto.
numResultsSet the number of results from 1 to 10.Optional. Defaults to 5.
summaryInclude an AI-generated summary for each result.Optional. Defaults to true.
highlightsInclude relevant highlights from each result.Optional. Defaults to true.
textInclude the full page text for each result.Optional. Defaults to false.
includeDomainsRestrict results to specific domains.Optional.
excludeDomainsExclude specific domains from results.Optional.
startPublishedDateFilter results published after an ISO 8601 date.Optional.
endPublishedDateFilter results published before an ISO 8601 date.Optional.

Tool results

The tool returns the search query, the Exa results, and a result count. Each item in results includes fields such as title, url, publishedDate, author, and, when requested, summary, highlights, and text:

Exa tool result
{
"success": true,
"query": "open-source vector databases",
"results": [
{
"title": "Example article",
"url": "https://example.com/article",
"publishedDate": "2026-05-01T00:00:00.000Z",
"summary": "A comparison of open-source vector databases.",
"highlights": ["..."]
}
],
"resultCount": 1
}

Use Exa in a Flow

To search with Exa in a Flow, follow these steps:

  1. Add an AI Search step.
  2. In Search for, enter the query. You can use variables, for example {{topic}}.
  3. In the provider list, select Exa Search API.
  4. In returning, set the number of results.

The Exa Search API option appears only when Exa is available to your account.

The step’s Exa Options settings control what Exa returns:

  • search type: Auto (Recommended), Neural Search, or Keyword Search.
  • Content Options: turn on Include full page text, Include AI summary, or Include highlights. All three are off by default.
  • category filter: limit results to one Exa category, such as research paper.

The Only search these domains and Exclude these domains filters also apply to Exa. The Date Range fields don’t apply to Exa. To filter an Exa search by date, set exaStartPublishedDate and exaEndPublishedDate in the step definition.

Step configuration

In a Flow definition, an AI Search step that uses Exa has type: "search" and provider: "exa":

AI Search step with Exa
{
"type": "search",
"name": "Research topic",
"config": {
"provider": "exa",
"query": "{{topic}}",
"outputVariable": "searchOutput",
"exaSearchType": "auto",
"exaNumResults": 10,
"exaContents": { "summary": true, "highlights": true }
}
}

The step accepts these Exa fields:

FieldDescription
exaSearchTypeauto, neural, or keyword. Defaults to auto.
exaNumResultsNumber of results from 1 to 100. When unset, the step uses maxResults, then 5.
exaContentsObject with the booleans text, summary, and highlights.
exaCategoryExa category to search in.
exaIncludeDomains, exaExcludeDomainsDomain lists. When unset, the step uses allowedDomains and blockedDomains.
exaStartPublishedDate, exaEndPublishedDatePublication date range, as an ISO 8601 date (2026-01-01) or datetime (2026-01-01T00:00:00Z).
exaStartCrawlDate, exaEndCrawlDateRange for when Exa crawled the page, in the same format.

Step output

The step writes an object with query, results, citations, and metadata to its output variable. Each result includes title, url, content, publishedDate, author, and score, plus summary, highlights, and text when you request them. Each citation includes id, url, title, source (the site’s hostname), publishedDate, and author.

To use the results in a later Prompt step, reference the output variable:

Prompt step
Summarize these search results and cite each source:
{{searchOutput.results}}
Sources: {{searchOutput.citations}}

By default, a failed AI Search step doesn’t stop the Flow. It writes { "error": "...", "results": [] }, or the step’s default value, to the output variable. To stop the Flow instead, change the step’s error handling. For details, see Flow step types overview.

Troubleshooting

The following table lists common Exa errors. The Agent tool and the Flow step word the missing-key error differently, and the Agent tool adds the prefix Exa search failed: to most errors.

ErrorCauseFix
Exa API key not configured or Exa API key required but not providedNo Exa key is available for your account.Add your Exa API key in Settings > Integrations.
Platform key spend credit is exhaustedYour platform-key credit balance is used up. The Agent tool reports this.Set a default payment method in Billing, or add your own Exa key.
Exa API error (STATUS): ...Exa rejected the request. For example, your key is invalid or out of quota.Check your key and usage in the Exa dashboard. To use the platform key instead, remove your key.

Use cases

Use Exa for the following tasks:

  • Research current information across web sources.
  • Verify claims against web sources.
  • Find reference material for content creation.
  • Find companies or contacts for lead generation.
  • Research sites that block automated requests. Exa retrieves content through its own infrastructure, so it can work when Fetch URL requests are blocked.

Next steps

Continue with these pages: