> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://platform.bctrl.ai/llms.txt.
> For full documentation content, see https://platform.bctrl.ai/llms-full.txt.

# Run Events

> List and wait for machine-readable events from a run.

Run events are machine-readable observations emitted by a run. Use them when you need precise event data for browser navigation, pages, contexts, artifacts, commands, tool calls, and other run-scoped records.

Start from the runtime and get the active run.

```ts
const run = await runtime.currentRun();
```

## List events

```ts
const { events, nextCursor } = await run.events.list({
  type: ["page.load"],
  limit: 100,
});

for (const event of events) {
  console.log(event.time, event.type, event.source);
}
```

## Wait for an event

```ts
const { event, timedOut } = await run.events.wait({
  type: ["page.load"],
  timeoutMs: 30_000,
});

if (timedOut) {
  throw new Error("Timed out waiting for page load");
}
```

## HTTP equivalents

```http
GET /v1/runs/{runId}/events
POST /v1/runs/{runId}/events/wait
```

## Related

* [Runs](/sdk/core-concepts/runs)
* [Run Commands](/sdk/observability/run-commands)
* [Run Artifacts](/sdk/observability/run-artifacts)