Skip to main content
GET
/
browsers
/
{id}
/
telemetry
/
events
JavaScript
import Kernel from '@onkernel/sdk';

const client = new Kernel({
  apiKey: process.env['KERNEL_API_KEY'], // This is the default and can be omitted
});

// Automatically fetches more pages as needed.
for await (const telemetryEventsResponse of client.browsers.telemetry.events('id')) {
  console.log(telemetryEventsResponse.event);
}
[
  {
    "seq": 2,
    "event": {
      "ts": 123,
      "type": "<string>",
      "category": "<string>",
      "source": {
        "event": "<string>",
        "metadata": {}
      },
      "data": {
        "session_id": "<string>",
        "target_id": "<string>",
        "frame_id": "<string>",
        "loader_id": "<string>",
        "url": "<string>",
        "nav_seq": 123,
        "level": "<string>",
        "text": "<string>",
        "args": [
          "<string>"
        ],
        "stack_trace": {
          "callFrames": [
            {
              "functionName": "<string>",
              "scriptId": "<string>",
              "url": "<string>",
              "lineNumber": 123,
              "columnNumber": 123
            }
          ],
          "description": "<string>",
          "parent": "<unknown>"
        }
      },
      "truncated": true
    }
  }
]

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Browser session ID

Query Parameters

offset
integer

Opaque pagination cursor: pass the X-Next-Offset value from the previous response to fetch the next page. When set, paging continues from this cursor and since is ignored, while until still bounds the page. It is not an event's seq field, so do not derive it from the response body.

Required range: x >= 0
since
string

Start of the window: an RFC-3339 timestamp, or a duration like 5m meaning that long ago. Defaults to 5m. Ignored when offset is set.

until
string

End of the window (exclusive): an RFC-3339 timestamp, or a duration like 5m meaning that long ago.

limit
integer
default:20

Maximum number of events per page. Defaults to 20.

Required range: 1 <= x <= 100
category
enum<string>[]

Restrict results to these event categories. Repeat the parameter for multiple values.

Available options:
console,
network,
page,
interaction,
control,
connection,
system,
screenshot,
captcha,
monitor

Response

A page of telemetry events in ascending sequence order.

seq
integer<int64>
required

Process-monotonic sequence number assigned by the browser VM. Pass as Last-Event-ID on reconnect to resume without gaps. Gaps in received seq values indicate dropped events.

Required range: x >= 1
event
console_log · object
required

Union type representing any browser telemetry event. Discriminated on type. Each event's category determines when it is captured. The CDP collector-health events (monitor_disconnected, monitor_reconnected, monitor_reconnect_failed, monitor_init_failed) use the monitor category, which is not user-configurable: it flows automatically whenever any CDP category (console, network, page, interaction) is captured, and is silent otherwise. monitor_screenshot uses the opt-in screenshot category. All other event types are controlled by their per-category enable/disable flags.