Web research run by id, with status, answer and citations.
Retrieve a single Agent run by ID.
Job web.research.status
telipot run exa.web.research.status \
--input-json '{"id":"agent_run_01j"}' \
--quotePrice
Price unknownPriced· before it runs
exa.web.research.status
Price unknownYour plan
Whose account it uses
1The person asking
not needed2Your company’s Exa plan
Selected identity for this example3Our account
not usedWhat it sends
{
"id": "agent_run_01j"
}Your Exa login is added for you. Your AI never sees it.
What it costs
Unknown
not listed, never free
| source | docs · exa.ai/docs/admin/pricing · checked 2026-10-05 |
| confidence | unknown |
| note | The pricing page lists no rate for reading a run; the run's own charge is reported in its costDollars.total. |
Preview the price first. --quote runs nothing.
For developers · run it
Shell · runs the task on the named account
telipot run exa.web.research.status \
--input-json '{"id":"agent_run_01j"}'id string · required · 1 to 200 | Agent run id, as returned when the run was created. Ids carry the agent_run_ prefix. |
id string | Run id with the agent_run_ prefix |
object string | |
status string | |
stopReason string | null | Why the run stopped; null while it is queued or running |
createdAt string | |
completedAt string | null | |
request object | null | The request fields stored with the run |
output object | |
usage object | |
costDollars object |
Full output schema · JSONNested fields and constraints
Output JSON Schema
{
"type": "object",
"required": [
"id",
"object",
"status",
"stopReason",
"createdAt",
"completedAt",
"request",
"output",
"usage",
"costDollars"
],
"properties": {
"id": {
"type": "string",
"description": "Run id with the agent_run_ prefix"
},
"object": {
"type": "string",
"const": "agent_run"
},
"status": {
"type": "string",
"enum": [
"queued",
"running",
"completed",
"failed",
"cancelled"
]
},
"stopReason": {
"anyOf": [
{
"type": "string",
"enum": [
"schema_satisfied",
"budget_reached",
"time_limit_reached",
"stopped",
"error",
"cancelled"
]
},
{
"type": "null"
}
],
"description": "Why the run stopped; null while it is queued or running"
},
"createdAt": {
"type": "string"
},
"completedAt": {
"type": [
"string",
"null"
]
},
"request": {
"type": [
"object",
"null"
],
"description": "The request fields stored with the run"
},
"output": {
"type": "object",
"required": [
"text",
"structured",
"grounding"
],
"properties": {
"text": {
"type": "string",
"description": "Natural-language answer or summary"
},
"structured": {
"description": "JSON shaped by outputSchema; null when no schema was given"
},
"grounding": {
"type": "array",
"description": "Field-level citations",
"items": {
"type": "object",
"required": [
"field",
"citations"
],
"properties": {
"field": {
"type": "string"
},
"citations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"title": {
"type": "string"
}
}
}
},
"confidence": {
"anyOf": [
{
"type": "string",
"enum": [
"low",
"medium",
"high"
]
},
{
"type": "null"
}
]
}
}
}
}
}
},
"usage": {
"type": "object",
"required": [
"agentComputeUnits",
"searches",
"emails",
"phoneNumbers"
],
"properties": {
"agentComputeUnits": {
"type": "number"
},
"searches": {
"type": "integer"
},
"emails": {
"type": "integer"
},
"phoneNumbers": {
"type": "integer"
},
"dataSources": {
"type": "object"
}
}
},
"costDollars": {
"type": "object",
"required": [
"total",
"agentCompute",
"search",
"emails",
"phoneNumbers"
],
"properties": {
"total": {
"type": "number"
},
"agentCompute": {
"type": "number"
},
"search": {
"type": "number"
},
"emails": {
"type": "number"
},
"phoneNumbers": {
"type": "number"
},
"dataSources": {
"type": "object"
}
}
}
}
}A real answer
No example captured yet: one is recorded when telipot catalog verify passes.

