List run events
Returns the persisted events of a run in sequence order. Useful for replaying a finished run; for live runs use the stream endpoint.
Authorization
accessKey Organization or project Access Key created in the Dynamiq console. Used for deployed-app (Runs API), AI Gateway, traces collector, and management API requests. Send as Authorization: Bearer <access-key>.
In: header
Path Parameters
Run UUID.
Query Parameters
Page number (1-based).
Number of items per page.
Comma-separated sort fields. Prefix a field with - for descending order, e.g. sort=-started_at.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/v1/runs/497f6eca-6276-4993-bfeb-53cbbbba6f08/events"{
"data": [
{
"id": "d1a2b3c4-0001-4e5f-8293-a4b5c6d7e8f9",
"type": "run.started",
"sequence": 1,
"timestamp": "2026-06-10T09:15:21Z",
"data": {
"id": "8c2c8e2e-2f0a-4f4e-9f4f-6e1a52f0a001",
"object": "run",
"status": "started"
}
},
{
"id": "d1a2b3c4-0002-4e5f-8293-a4b5c6d7e8f9",
"type": "agent.tool_call.completed",
"sequence": 5,
"timestamp": "2026-06-10T09:15:29Z",
"data": {
"id": "5e6f7081-92a3-4b5c-8d7e-9f0a1b2c3d4e",
"object": "agent.tool_call",
"result": "{\"customer_tier\":\"pro\",\"open_tickets\":2}",
"input": {
"customer_id": "customer-7421"
},
"iteration": 1,
"tool": {
"name": "lookup-customer",
"type": "http-api-call"
}
}
}
],
"pagination": {
"page": 1,
"page_size": 25,
"page_count": 1,
"total_count": 2
}
}{
"error": {
"code": "unauthorized",
"message": "Unauthorized"
}
}{
"error": {
"code": "not_found",
"message": "Not Found"
}
}Send input to a run
Answers a pending human-feedback or approval request of a run. Only runs in `started` or `paused` status accept input; a paused run is resumed from its latest checkpoint first. The `request_id` must match the `id` of a pending request from the run's `input_requests` (or the corresponding `agent.human_feedback.requested` / `approval_request.created` event).
Stream run events (SSE)
Streams the run's events over Server-Sent Events in strict sequence order, starting from the beginning or from `after_sequence`. The stream closes after a terminal event (`run.completed`, `run.failed`, `run.canceled`). A `: heartbeat` comment is emitted every 15 seconds of inactivity.