Exa focuses on data extraction and search, helping teams gather, analyze, and visualize information from websites, APIs, or internal databases
Exa focuses on data extraction and search, helping teams gather, analyze, and visualize information from websites, APIs, or internal databases On Nagent, Exa is exposed as a fully-configurable ai web scraping integration that any agent can call — 18 actions, and API key authentication. No code is required to wire Exa into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Exa to automate the kinds of tasks ai web scraping teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Exa into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Exa, with input parameters and output schema. Drop these into any step of an agent built in Helix.
EXA_ANSWERGenerates a direct, citation-backed answer to a clear natural language question or topic using Exa's search, adept at both specific answers and detailed summaries for open-ended queries. Response contains an `answer` field (summary) and a `citations` field (supporting URLs). Citations may include low-credibility sources; verify authoritative references for factual use.
Input parameters
Set to `true` to include the full text content of the cited source documents in the `citations` part of the response. Defaults to `false`.
Specifies the search model to use. 'exa' uses a single, direct query. 'exa-pro' uses two expanded queries for potentially more comprehensive results. Allowed values are 'exa' or 'exa-pro'. Defaults to 'exa'.
The natural language question or search query for which an answer is sought. The query should be specific enough to guide the search effectively. Include concrete entities, dates, locations, or jurisdictions to avoid ambiguous results. For time-sensitive data, include explicit time framing (e.g., 'as of 2024') since results may reflect stale information.
Set to `true` to receive the response as a stream of server-sent events (SSE). This is useful for displaying results incrementally. Defaults to `false`.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_CREATE_IMPORTTool to create a new import to upload data into a Webset. Use when you need to initialize an import before uploading the data file.
Input parameters
CSV-specific settings for the import.
Size of the import in bytes.
Number of items in the import.
Title of the import.
Entity information for the import.
Format of the import file (e.g., 'csv').
Additional metadata for the import.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_CREATE_MONITORTool to create a new Monitor. Use when you need to schedule automated updates for a Webset without manual runs.
Input parameters
How often the monitor will run.
Behavior to perform when monitor runs.
Key-value pairs to associate with the Monitor.
The ID of the Webset to attach this Monitor to.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_CREATE_RESEARCHCreates an asynchronous research task that explores the web, gathers sources, synthesizes findings, and returns results with citations. The API responds immediately with a researchId for polling completion status. Use this when you need to generate: 1. Structured JSON matching an outputSchema you provide 2. A detailed markdown report when no schema is provided After creation, poll the research task status using the researchId to retrieve the final results when completed.
Input parameters
Research models available for Exa research tasks.
Instructions for what research should be conducted. This is the natural language prompt describing the research question or topic to explore.
Optional JSON schema to structure the research output. If provided, the API will return structured JSON matching this schema. If omitted, the API returns a detailed markdown report.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_CREATE_WEBSETTool to create a new Webset with search, import, and enrichment setup. Use when you need to configure and seed a Webset in one call.
Input parameters
Import data from existing Websets or Imports.
Initial search configuration for the Webset.
Arbitrary key-value pairs to associate with this Webset.
External identifier to reference the Webset in your system.
Enrichments to apply to Webset items.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_DELETE_IMPORTTool to delete an existing import. Use when you need to permanently remove an import by its ID.
Input parameters
The ID of the import to delete.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_DELETE_WEBSETTool to delete a Webset. Use after confirming the Webset ID to permanently remove the Webset and all its items.
Input parameters
The id or externalId of the Webset to delete.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_FIND_SIMILARFinds web pages semantically similar to a given URL using embeddings-based search, optionally retrieving full text, highlights, or summaries for results.
Input parameters
The URL for which to find semantically similar web pages. This must be a valid and accessible web address. Must be fully qualified (include scheme and domain); do not pass partial paths, redirect stubs, or snippet text. Specific, content-rich URLs yield more diverse results than generic landing pages.
Set to true to request the full text content of each similar page. Defaults to false. Combining text=true with large num_results produces very large payloads; prefer highlights or summary when processing size is constrained.
Set to true to request a generated summary for each similar page. Defaults to false.
Set to true to request relevant text snippets (highlights) from each similar page. Defaults to false.
The desired number of similar web pages to return. Must be an integer between 1 and 100, inclusive. Defaults to 10.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_GET_API_KEYTool to retrieve details of a specific API key by its ID. Use when you need to fetch information about an API key in the team management context.
Input parameters
The unique identifier of the API key to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_GET_CONTENTS_ACTIONRetrieves configurable text and highlights from a list of Exa document IDs or publicly accessible URLs. Calls may partially succeed — always inspect the per-item `statuses` array for errors like CRAWL_NOT_FOUND, CRAWL_LIVECRAWL_TIMEOUT, CRAWL_UNKNOWN_ERROR, or SOURCE_NOT_AVAILABLE. Retrieved text is nested under `results\[i\].text`, not a top-level field.
Input parameters
A list of document IDs (strings obtained from Exa search results) or fully qualified URLs (e.g., 'https://example.com/article') for which to retrieve content. At least one ID or URL must be provided.
Controls text extraction. Accepts a boolean or a `TextOptions` object. If `True` (the default), extracts full-page text using default settings. If `False`, no text is extracted. Provide a `TextOptions` object to customize text extraction (e.g., `max_characters`, `include_html_tags`).
Controls highlight extraction. Accepts a boolean or `HighlightOptions`. If `True`, extracts AI highlights (default settings); if `False`, no highlights. Use `HighlightOptions` for custom settings (e.g., `num_sentences`, `query`). Default is `None` (no highlights extracted).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_GET_EVENTTool to get details of a specific event by its ID. Use when you have an event ID and need its full details.
Input parameters
The unique identifier of the event to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_GET_RESEARCHTool to retrieve the status and results of a previously created research task. Use the unique researchId returned from POST /research/v1 to poll until the task is finished.
Input parameters
Set to 'true' to include the detailed event log of all operations performed. Defaults to false.
Set to 'true' to receive real-time updates via Server-Sent Events (SSE). Defaults to false.
The unique identifier of the research task to retrieve. This ID is returned when creating a research task via POST /research/v1.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_LIST_EVENTSTool to list all events that have occurred in the system. Use when you need to paginate through the event history.
Input parameters
The number of results to return (1–200, default 25).
Filter events by one or more event types.
The cursor to paginate through the results.
Filter events created at or after this UTC timestamp (inclusive). Must be a valid ISO 8601 datetime string.
Filter events created at or before this UTC timestamp (inclusive). Must be a valid ISO 8601 datetime string.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_LIST_IMPORTSTool to list all imports for the Webset. Use when you need to paginate through and monitor import jobs.
Input parameters
The number of results to return (1–200, default 25).
The cursor to paginate through the results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_LIST_RESEARCHTool to retrieve a paginated list of your research tasks. Use when you need to view or monitor research jobs with cursor-based pagination.
Input parameters
The number of results to return (1–50, default 10).
The cursor to paginate through the results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_LIST_WEBHOOKSTool to list all webhooks for Websets. Use when you need to view existing webhooks and paginate through results.
Input parameters
Number of results to return per page.
Pagination cursor returned by a previous call. Must be at least 1 character if provided.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_SEARCHPerforms a web search using the Exa engine, useful for queries requiring advanced filtering, specific content categories, or AI-optimized prompting. Returns snippets and metadata only — use EXA_GET_CONTENTS_ACTION on returned URLs to retrieve full page content. No pagination; issue multiple calls with varied queries or date windows for broader coverage. IMPORTANT CONSTRAINTS: - includeDomains and excludeDomains are MUTUALLY EXCLUSIVE: You can use ONE or the OTHER, but NEVER both in the same request. Providing both will cause a validation error. TYPE-SPECIFIC PARAMETER COMPATIBILITY: - type='keyword': Fast exact matching. Does NOT support useAutoprompt, includeDomains, or excludeDomains. - type='neural': AI semantic search. Supports all parameters including useAutoprompt and domain filters. - type='auto': Smart routing. Supports all parameters.
Input parameters
Types of search available in Exa.
The search query string. When type='keyword', do not use 'site:' operator or link markup (e.g., '<url>') as these are invalid for keyword queries.
Data categories for focused search in Exa.
Desired number of search results. Must be between 1 and 100 (inclusive). Defaults to 10. No pagination is available; larger values increase latency without guaranteeing better coverage.
A list containing exactly one phrase (up to 5 words) that must NOT be present in the webpage text. Only one phrase is allowed per request. Example: \['outdated information'\] (correct) vs \['outdated', 'wrong'\] (incorrect - API will reject multiple phrases).
A list containing exactly one phrase (up to 5 words) that must be present in the webpage text. Only one phrase is allowed per request. Example: \['machine learning applications'\] (correct) vs \['machine', 'learning'\] (incorrect - API will reject multiple phrases).
Filters results to include only those crawled by Exa before this ISO 8601 date.
If true, Exa converts the query to an Exa-optimized prompt for potentially better results. Not supported when type='keyword'.
MUTUALLY EXCLUSIVE WITH includeDomains - provide ONLY ONE of includeDomains or excludeDomains, never both. A list of domain names to specifically exclude from the search results. Must be valid domain names containing at least one dot (e.g., 'example.com', 'www.example.com' are valid). Supports subdomain wildcards (e.g., '*.amazon.com') and path filtering (e.g., 'example.com/path'). Must be without protocol (e.g., 'example.com' not 'https://example.com') and without angle brackets. ONLY supported when type='neural' or type='auto' (NOT supported for type='keyword' or category='company').
MUTUALLY EXCLUSIVE WITH excludeDomains - provide ONLY ONE of includeDomains or excludeDomains, never both. A list of domain names to specifically include in the search results. Must be valid domain names containing at least one dot (e.g., 'example.com', 'www.example.com' are valid). Supports subdomain wildcards (e.g., '*.substack.com') and path filtering (e.g., 'example.com/blog'). Must be without protocol (e.g., 'example.com' not 'https://example.com') and without angle brackets. ONLY supported when type='neural' or type='auto' (NOT supported for type='keyword' or category='company').
Filters results to include only those crawled by Exa after this ISO 8601 date. Filters by when Exa crawled the page, not when it was published — use startPublishedDate/endPublishedDate for publication-date filtering.
Filters results to include only those published before this ISO 8601 date. NOTE: This filter is NOT supported when category='company' and will be ignored.
Filters results to include only those published after this ISO 8601 date. NOTE: This filter is NOT supported when category='company' and will be ignored.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
EXA_UPDATE_IMPORTTool to update an import configuration by ID. Use when you need to modify an import's title or metadata.
Input parameters
The ID of the import to update.
New title for the import. Leave null if unchanged.
Key-value pairs to attach to the import. Leave null if unchanged.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 38 agents privately built on Nagent that already use Exa.
Build on Nagent
Connect Exa to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Exa, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Exa is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Exa is connected, you configure its 18 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Exa steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Exa event fires, the agent kicks off automatically.
Every Exa action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Exa ships with 18 pre-built ai web scraping actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Exa together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Exa-based workflows tailored to your business.