Skip to main content
POST
Exa Agent Runs submit
Hand a research task to an agent that works in the background. query and an Idempotency-Key are required; effort trades depth against time, outputSchema shapes the result, dataSources restricts where it looks, and previousRunId continues an earlier run. Asynchronous. Submitting returns HTTP 202 and a job envelope — id, object, endpoint, status, createdAt, completedAt, pricing, output, error — with output still null. Poll get_exa_agent_run until terminal; output then carries text, structured and grounding. A one-sentence question completed in well under a minute. Billed at a flat rate per run — pricing.billingMode is fixed_request, so unlike a Firecrawl crawl the price does not grow with what it finds. Use it when a report is the deliverable. For an answer you read in one sitting, post_exa_answer returns in about two seconds. Send a fresh Idempotency-Key per distinct task.
First time? Point any MCP client at https://mcp.aisa.one/mcp — Claude Code, Codex, Cursor, VS Code and the rest. Authorization is OAuth: the client opens a browser, you click Allow once, and there is no key to paste. Your agent then reaches every endpoint through a few meta tools: search, list_categories, get_details and batch_quote are free, batch_use is billed per call. Setup per client is in Connect via MCP; the live tool list and what each call costs are on aisa.one/mcp.
Set this endpoint up in your agent →

Request contract

  • Method and path: POST /apis/v1/exa/agent/runs
  • Availability: enabled
  • Request URL template: https://api.aisa.one/apis/v1/exa/agent/runs
  • Idempotency-Key: header; required
  • X-AISA-Max-Price-USD: header; optional
  • X-AISA-Cost-Mode: header; optional
  • Runtime facts: d10529a4463a002dd39ad505e0bc30212230a00b2034082221e854d90728a9b8
Complete OpenAPI definition Effective request and pricing declaration (including authentication and referenced schemas):

Cost and request rules

Default request estimate: $0.1 USD (not a fixed price). Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.
  • Default request reference estimate (USD): 0.1

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string
required

Trimmed UTF-8 length must be 1 through 191 bytes.

Pattern: \S
X-AISA-Max-Price-USD
string

Optional maximum customer authorization in USD, validated by the runtime price parser.

X-AISA-Cost-Mode
enum<string>

Return a read-only cost quote instead of submitting a job.

Available options:
quote

Body

application/json
query
string
required

Non-empty query after trimming whitespace.

Pattern: \S
effort
enum<string> | null
default:minimal

Only minimal effort is supported; omitted, empty and null values normalize to minimal.

Available options:
null,
,
minimal
systemPrompt
string | null

Response

Read-only cost quote when X-AISA-Cost-Mode is quote; no job is created.

currency
string | null
required
estimate_kind
string | null
required
estimated_at
string<date-time> | null
required
estimated_cost_micros_usd
integer | null
required
may_exceed_estimate
boolean | null
required
object
string | null
required
max_cost_micros_usd
integer | null
metadata
object | null
pricing_version
string | null