Skip to main content
GET
Summarize run events

Authorizations

Authorization
string
header
required

Use a JWT bearer token or a Veryfront API key in the Authorization header.

Path Parameters

run_id
string
required
Minimum string length: 1

Query Parameters

buckets
integer
default:60

Number of time buckets spanning first_event_at up to 1 ms past last_event_at (1-500, default 60). Bucket boundaries are whole milliseconds and every bucket is at least 1 ms wide, so the response holds at most as many buckets as the span has milliseconds and may return fewer than requested (a 10 ms span returns at most 10).

Required range: 1 <= x <= 500
event_class
enum<string>

Event class to include: fact for state changes or delta for streaming fragments. If omitted, returns both.

Available options:
fact,
delta
event_type

Only events of these canonical types (comma-separated, repeatable, at most 32). A legacy-spelled stored row matches under the type it is served as.

is_error
enum<string>

If true, returns only events with is_error: true. If false, returns other events. If omitted, returns both.

Available options:
true,
false
start
string<date-time>

Only events created at or after this instant (ISO 8601 with a UTC offset, inclusive). A summary bucket start can be sent as is.

end
string<date-time>

Only events created before this instant (ISO 8601 with a UTC offset, exclusive). Must be later than start. A summary bucket end can be sent as is.

span_id
string

Only events whose envelope span_id, as served to the caller, is exactly this value (tool:, message:, step:, input_request:, run:, with a non-empty ).

Minimum string length: 1
turn_id
string

Only events whose envelope turn_id, as served to the caller, is exactly this value (message:, with a non-empty ).

Minimum string length: 1

Case-insensitive substring of the event payload JSON as served to the caller (1-200 characters after trimming, matched literally).

Required string length: 1 - 200
include_descendants
enum<string>
default:false

If true, includes events from readable descendant runs, up to 16 generations. Results share one event_id order and cursor. Each event retains its run_id and the payload visibility permitted for that run. Runs the caller cannot read are excluded. Defaults to false.

If at least one descendant is included, task or workflow runs without stored events do not contribute synthetic lifecycle events. Event IDs are allocated before commit. During active writes, ascending pagination can pass an ID that another run commits later.

Available options:
true,
false

Response

Run event summary

run_id
string
required
Minimum string length: 1
total
integer
required
Required range: x >= 0
error_count
integer
required
Required range: x >= 0
first_event_id
integer | null
required
Required range: x >= 0
last_event_id
integer | null
required
Required range: x >= 0
first_event_at
string<date-time> | null
required
last_event_at
string<date-time> | null
required
by_event_class
object
required
by_event_type
object[]
required
buckets
object[]
required

Half-open time buckets [start, end) covering first_event_at through last_event_at + 1 ms. Boundaries use whole milliseconds; widths differ by at most 1 ms. Boundaries can be passed directly as the event-list start and end filters. The bucket count cannot exceed the span in milliseconds. Empty if no events match.