Get Agent Run Detail
Returns the full details of an agent run, including the complete process timeline, linked sources, and linked entities. Unlike the lightweight status endpoint, this returns the entire process event array.
Request
GET /api/v1/agent/run/{runId}
Path Parameters
| Parameter | Type | Description |
|---|
runId | string | Agent run ID |
| Header | Required | Description |
|---|
Authorization | Yes | API key in Bearer snorbe_... format |
The workspace is automatically resolved from your API key. No workspaceId parameter required.
This endpoint returns the full process timeline which can be large for long-running agent executions. For lightweight status polling, use the Get Run Status endpoint instead.
Response
{
"id": "clrun001",
"status": "completed",
"process": [],
"createdAt": "2026-04-01T09:00:00.000Z",
"updatedAt": "2026-04-01T09:05:00.000Z",
"agentId": "clagent001",
"agentName": "research-agent",
"linkedSources": [
{
"id": "clsrc001",
"url": "https://example.com/paper",
"title": "Research Paper",
"sourceType": "public"
},
{
"id": "clsrc002",
"url": "https://example.com/report",
"title": "Industry Report",
"sourceType": "private"
}
],
"linkedEntityIds": ["clxxx001", "clxxx002", "clxxx003"],
"linkedEntities": [
{
"id": "clxxx001",
"label": "Lithium-Ion Battery",
"category": "technology",
"kind": "entity"
},
{
"id": "clxxx002",
"label": "Solid-State Electrolyte",
"category": "technology",
"kind": "material"
}
],
"images": [
{
"imageUrl": "https://example.com/photo-1.jpg",
"thumbnailUrl": "https://example.com/thumb-1.jpg",
"title": "Lithium-ion battery diagram",
"link": "https://example.com/article-1"
}
]
}
Returns null if the agent run is not found.
Response Fields
| Field | Type | Description |
|---|
id | string | Agent run ID |
status | string | Run status (completed, running, error, etc.) |
process | object[] | Array of process events from the agent run |
createdAt | string | Run creation timestamp (ISO 8601) |
updatedAt | string | Run last update timestamp (ISO 8601) |
agentId | string | Agent ID that executed this run |
agentName | string | Agent name |
linkedSources | object[] | Sources used in this agent run |
linkedSources[].id | string | Source ID |
linkedSources[].url | string | Source URL |
linkedSources[].title | string | Source title |
linkedSources[].sourceType | string | Source type (public or private) |
linkedEntityIds | string[] | Entity IDs linked to this agent run |
linkedEntities | object[] | Entity summaries linked to this agent run |
linkedEntities[].id | string | Entity ID |
linkedEntities[].label | string | Entity name |
linkedEntities[].category | string | Entity category |
linkedEntities[].kind | string | Entity kind |
images | object[] | Images extracted from the process. Aggregated from search image SERPs, skill output files, and bodyLinks images in source summaries (deduplicated) |
images[].imageUrl | string | Image URL |
images[].thumbnailUrl | string | undefined | Thumbnail URL (present only when sourced via Serper) |
images[].title | string | undefined | Image title / alt text |
images[].link | string | undefined | URL of the originating page |
The process field is an array of process events collected during the agent run. See the SSE streaming docs for the full list of event types and their payloads.
Examples
curl "https://app.snorbe.deskrex.ai/api/v1/agent/run/clrun001" \
-H "Authorization: Bearer snorbe_your_api_key_here"
Error Responses
| HTTP Status | Description |
|---|
| 401 | Invalid, expired, or missing API key |
| 404 | Agent run not found (returns null body) |