CDP

interface CDP

Thin wrapper of Chrome DevTools Protocol.

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Audits domain allows investigation of page violations and possible improvements.

Link copied to clipboard

Defines commands and events for Autofill.

Link copied to clipboard

Defines events for background web platform features.

Link copied to clipboard

This domain allows configuring virtual Bluetooth devices to test the web-bluetooth API.

Link copied to clipboard

The Browser domain defines methods and events for browser managing.

Link copied to clipboard
Link copied to clipboard

A domain for interacting with Cast, Presentation API, and Remote Playback API functionalities.

Link copied to clipboard
val CDP.cdp: CDP
Link copied to clipboard

This domain is deprecated - use Runtime or Log instead.

Link copied to clipboard
val CDP.css: CSS

This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) have an associated id used in subsequent operations on the related object. Each object type has a specific id structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the get*ForNode() calls (which accept a DOM node id). A client can also keep track of stylesheets via the styleSheetAdded/styleSheetRemoved events and subsequently load the required stylesheet contents using the getStyleSheet[Text]() methods.

Link copied to clipboard

Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing breakpoints, stepping through execution, exploring stack traces, etc.

Link copied to clipboard
Link copied to clipboard
val CDP.dom: DOM

This domain exposes DOM read/write operations. Each DOM Node is represented with its mirror object that has an id. This id can be used to get additional information on the Node, resolve it into the JavaScript object wrapper, etc. It is important that client receives DOM events only for the nodes that are known to the client. Backend keeps track of the nodes that were sent to the client and never sends the same node twice. It is client's responsibility to collect information about the nodes that were sent to the client. Note that iframe owner elements will return corresponding document elements as their child nodes.

Link copied to clipboard

DOM debugging allows setting breakpoints on particular DOM operations and events. JavaScript execution will stop on these operations as if there was a regular breakpoint set.

Link copied to clipboard

This domain facilitates obtaining document snapshots with DOM, layout, and style information.

Link copied to clipboard

Query and modify DOM storage.

Link copied to clipboard

This domain emulates different environments for the page.

Link copied to clipboard

EventBreakpoints permits setting JavaScript breakpoints on operations and events occurring in native code invoked from JavaScript. Once breakpoint is hit, it is reported through Debugger domain, similarly to regular breakpoints being hit.

Link copied to clipboard
abstract val events: Flow<Message.Event>
Link copied to clipboard

Defines commands and events for browser extensions.

Link copied to clipboard

This domain allows interacting with the FedCM dialog.

Link copied to clipboard

A domain for letting clients substitute browser's network layer with client code.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

This domain provides experimental commands only supported in headless mode.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val CDP.io: IO

Input/Output operations for streams produced by DevTools.

Link copied to clipboard
Link copied to clipboard
val CDP.log: Log

Provides access to log entries.

Link copied to clipboard

This domain allows detailed inspection of media elements

Link copied to clipboard
Link copied to clipboard

Network domain allows tracking network activities of the page. It exposes information about http, file, data and other requests and responses, their headers, bodies, timing, etc.

Link copied to clipboard

This domain provides various functionality related to drawing atop the inspected page.

Link copied to clipboard

Actions and events related to the inspected page belong to the page domain.

Link copied to clipboard
Link copied to clipboard

Reporting of performance timeline events, as specified in https://w3c.github.io/performance-timeline/#dom-performanceobserver.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val CDP.pwa: PWA

This domain allows interacting with the browser to control PWAs.

Link copied to clipboard
abstract val responses: Flow<Message.Response>
Link copied to clipboard

Runtime domain exposes JavaScript runtime by means of remote evaluation and mirror objects. Evaluation results are returned as mirror object that expose object type, string representation and unique identifier that can be used for further object reference. Original objects are maintained in memory unless they are either explicitly released or are released along with the other objects in their object group.

Link copied to clipboard

This domain is deprecated.

Link copied to clipboard

Security

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

The SystemInfo domain defines methods and events for querying low-level system information.

Link copied to clipboard

Supports additional targets discovery and allows to attach to them.

Link copied to clipboard

The Tethering domain defines methods and events for browser port binding.

Link copied to clipboard
Link copied to clipboard

This domain allows inspection of Web Audio API. https://webaudio.github.io/web-audio-api/

Link copied to clipboard

This domain allows configuring virtual authenticators to test the WebAuthn API.

Functions

Link copied to clipboard
inline fun <T : Domain> CDP.cacheGeneratedDomain(domain: T): T
Link copied to clipboard
abstract suspend fun callCommand(method: String, parameter: JsonElement?, mode: CommandMode): JsonElement?
Link copied to clipboard
inline fun <T : Domain> CDP.getGeneratedDomain(): T?