OperationEvent
One event in an operation’s stream. Over SSE each event is sent as id: <seq>, event: <type>,
data: <this object as JSON>. Reconnect with Last-Event-ID to resume. The stream ends with an
operation.finished event.
Fields
Section titled “Fields”| Field | Type | Description |
|---|---|---|
seq * |
integer | |
operation_id * |
string | |
type * |
operation.status, step.started, step.succeeded, step.failed, step.retrying, progress, log, approval.requested, approval.decided, operation.finished, heartbeat |
|
step |
string or null | |
message |
string | |
data |
object | |
at * |
string (date-time) |
* always present
Example
Section titled “Example”{ "seq": 7, "operation_id": "op_01jbx2m9k7q4r8t5v6w3y0z1op", "type": "step.succeeded", "step": "build", "message": "Built image in 1 min 12 s", "data": { "image_digest": "sha256:4b1f0e9d8c7b6a5948372615f4e3d2c1b0a9f8e7d6c5b4a3928170f6e5d4c3b2" }, "at": "2026-10-23T14:03:13Z"}