About Exa Public API
Review the Service identity, supported languages, protocol versions, and source metadata discovered by the directory.Service details
Service Id
795c0305-b304-4be3-8084-be969382fd23
Service origin
https://api.exa.ai
ListedSeptember 24, 2026, 6:50 PM
Last checkedSeptember 24, 2026, 8:07 PM
Protocol details
SourceOpenAPI
Endpoints
Endpoint details are saved from the OpenAPI document. Authentication requirements and prices are advertised information, not a verified payment or access guarantee. The document may contain additional endpoints.GET/agent/runs
List runs
List Agent runs for your team, ordered from newest to oldest.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/agent/runs
Create a run
Create an asynchronous Agent run. By default, the API returns the run object immediately. Set `Accept: text/event-stream` to stream run lifecycle events until the run reaches a terminal status.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/agent/runs/{id}
Delete a run
Delete a stored Agent run.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/agent/runs/{id}
Get a run
Retrieve a single Agent run by ID.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/agent/runs/{id}/cancel
Cancel a run
Cancel a queued or running Agent run immediately without returning any results. You are billed for usage accrued before cancellation. If the run has already reached a terminal status, the API returns the existing run.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/agent/runs/{id}/events
List run events
List stored events for an Agent run. Set `Accept: text/event-stream` to replay stored events as server-sent events. Use `cursor` for JSON pagination or `Last-Event-ID` for SSE replay.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/agent/runs/{id}/stop
Stop a run
Complete a running Agent run early, returning the results gathered so far. You are billed for usage accrued before the stop. Currently supported only for `ultra` effort runs. If the run has already reached a terminal status, the API returns the existing run.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/answer
Answer
Performs a search based on the query and generates either a direct answer or a detailed summary with citations, depending on the query type.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/batches
List batches
List batches for your team, ordered from newest to oldest.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/batches
Create a batch
Create a batch of requests to run asynchronously. Each request is dispatched to its target route and results are made available for download when the batch completes.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/batches/{id}
Delete a batch
Soft-delete a batch in a terminal status.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/batches/{id}
Get a batch
Retrieve a single batch by ID.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/batches/{id}/cancel
Cancel a batch
Request cancellation of a batch. The batch stops scheduling new requests and drains in-flight work before settling to `cancelled`. Cancelling a batch that is already `cancelling` or `cancelled` is idempotent and returns the batch unchanged. A batch that has already reached a terminal status (`completed` or `expired`) cannot be cancelled and the request fails with a 409.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/contents
Contents
Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/findSimilarDeprecated
Find similar links
Find links similar to the provided URL and optionally retrieve their contents. Deprecated: prefer `/search` with a query describing the source.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/monitors
List monitors
Lists all monitors for the authenticated team. Supports filtering by status and cursor-based pagination.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/monitors
Create a monitor
Creates a new Monitor to run recurring Exa searches on a schedule. Monitors automatically execute your search query on a recurring schedule and deliver results to your webhook endpoint with automatic deduplication: - **Date-based filtering** only fetches content since the last run - **Semantic deduplication** tracks previous outputs to surface only new developments The response includes a `webhookSecret` that is only returned once at creation time. Store it securely for webhook signature verification.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/monitors/batch
Batch action on monitors
Perform a batch action on monitors matching the provided filters. Supported actions: - **delete**: Permanently remove matching monitors - **pause**: Pause matching monitors - **unpause**: Unpause matching monitors Use `dry_run: true` (the default) to preview which monitors would be affected before performing the action. Results are paginated via the `limit` parameter; loop until `has_more` is `false` to process all matching monitors.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/monitors/{id}
Delete a monitor
Deletes a monitor. This cannot be undone.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/monitors/{id}
Get a monitor
Retrieves a single monitor by its ID.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.PATCH/monitors/{id}
Update a monitor
Updates an existing monitor. All fields are optional. For `search`, you can send a partial object containing only the fields you want to change. Set `trigger` to `null` to remove the schedule.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/monitors/{id}/runs
List runs
Lists all runs for a monitor with cursor-based pagination. Runs are returned in reverse chronological order.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/monitors/{id}/runs/{runId}
Get a run
Retrieves a single run by its ID, including the full output if the run is completed.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/monitors/{id}/trigger
Trigger a monitor
Triggers a run immediately, regardless of the schedule. Works for monitors with status `active` or `paused`.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/search
Search
Perform a search with an Exa prompt-engineered query and retrieve a list of relevant results. Optionally get contents.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/events
List all Events
List all events that have occurred in the system. You can paginate through the results using the `cursor` parameter.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/events/{id}
Get an Event
Get a single Event by id. You can subscribe to Events by creating a Webhook.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/imports
List Imports
Lists all imports for the Webset.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/imports
Create an Import
Creates a new import to upload your data into Websets. Imports can be used to: - **Enrich**: Enhance your data with additional information using our AI-powered enrichment engine - **Search**: Query your data using Websets' agentic search with natural language filters - **Exclude**: Prevent duplicate or already known results from appearing in your searches Once the import is created, you can upload your data to the returned `uploadUrl` until `uploadValidUntil` (by default 1 hour).Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/imports/{id}
Delete Import
Deletes a import.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/imports/{id}
Get Import
Gets a specific import.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.PATCH/v0/imports/{id}
Update Import
Updates a import configuration.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/monitors
List Monitors
Lists all monitors for the Webset.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/monitors
Create a Monitor
Creates a new `Monitor` to continuously keep your Websets updated with fresh data. Monitors automatically run on your defined schedule to ensure your Websets stay current without manual intervention: - **Find new content**: Execute `search` operations to discover fresh items matching your criteria - **Update existing content**: Run `refresh` operations to update items contents and enrichments - **Automated scheduling**: Configure `cron` expressions and `timezone` for precise scheduling controlPrice unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/monitors/{id}
Delete Monitor
Deletes a monitor.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/monitors/{id}
Get Monitor
Gets a specific monitor.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.PATCH/v0/monitors/{id}
Update Monitor
Updates a monitor configuration.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/monitors/{monitor}/runs
List Monitor Runs
Lists all runs for the Monitor.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/monitors/{monitor}/runs/{id}
Get Monitor Run
Gets a specific monitor run.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/teams/me
Get team info
Returns information about the authenticated team, including current concurrency usage and limits.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/webhooks
List webhooks
Returns the active Webhooks for your team. You can paginate through the results using the `cursor` parameter.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/webhooks
Create a Webhook
Creates a Webhook that delivers the selected events to your URL as they occur. The response includes the signing `secret` used to verify deliveries; it is only returned on creation.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/webhooks/{id}
Delete a Webhook
Deletes a Webhook. Its status becomes `inactive`, which stops future webhook deliveries to its URL.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/webhooks/{id}
Get a Webhook
Returns a Webhook by id, including its status, subscribed events, target URL, and metadata. The signing `secret` is not returned.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.PATCH/v0/webhooks/{id}
Update a Webhook
Updates the target URL, subscribed events, or metadata of a Webhook. Omitted fields are left unchanged.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/webhooks/{id}/attempts
List webhook attempts
List all attempts made by a Webhook ordered in descending order.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets
List all Websets
Returns a list of Websets. You can paginate through the results using the `cursor` parameter. You can filter results using the `search` parameter to find Websets by ID, external ID, or title.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets
Create a Webset
Creates a new Webset with optional search, import, and enrichment configurations. The Webset will automatically begin processing once created. You can specify an `externalId` to reference the Webset with your own identifiers for easier integration.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/preview
Preview a webset
Preview how a search query will be decomposed before creating a webset. This endpoint performs the same query analysis that happens during webset creation, allowing you to see the detected entity type, generated search criteria, and available enrichment columns in advance. Use this to help users understand how their search will be interpreted before committing to a full webset creation.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/websets/{id}
Delete a Webset
Deletes a Webset. Once deleted, the Webset and all its Items will no longer be available.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets/{id}
Get a Webset
Returns a Webset by `id` or `externalId`, including its status, searches, imports, enrichments, and monitors. Pass `expand=items` to include up to the first 100 items in the response.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{id}
Update a Webset
Updates the `title` or `metadata` of a Webset. Searches, imports, and enrichments are managed through their own endpoints.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{id}/cancel
Cancel a running Webset
Cancels all operations being performed on a Webset. Any enrichment or search will be stopped and the Webset will be marked as `idle`.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{webset}/enrichments
Create an Enrichment
Create an Enrichment for a Webset.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/websets/{webset}/enrichments/{id}
Delete an Enrichment
When deleting an Enrichment, any running enrichments will be canceled and all existing `enrichment_result` generated by this Enrichment will no longer be available.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets/{webset}/enrichments/{id}
Get an Enrichment
Returns an Enrichment configured on a Webset, including its status, description, format, and options.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.PATCH/v0/websets/{webset}/enrichments/{id}
Update an Enrichment
Update an Enrichment configuration for a Webset.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{webset}/enrichments/{id}/cancel
Cancel a running Enrichment
All running enrichments will be canceled. You can not resume an Enrichment after it has been canceled.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets/{webset}/items
List all Items for a Webset
Returns a list of Webset Items. You can paginate through the Items using the `cursor` parameter.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.DELETE/v0/websets/{webset}/items/{id}
Delete an Item
Deletes an Item from the Webset. This will cancel any enrichment process for it.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets/{webset}/items/{id}
Get an Item
Returns a Webset Item.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{webset}/searches
Create a Search
Creates a new Search for the Webset. The default behavior is to reuse the previous Search results and evaluate them against the new criteria.Price unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.GET/v0/websets/{webset}/searches/{id}
Get a Search
Gets a Search by idPrice unavailableThe operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.POST/v0/websets/{webset}/searches/{id}/cancel