### Profiler.start Source: https://chromedevtools.github.io/devtools-protocol/tot/Profiler Starts collecting a CPU profile. ```APIDOC ## Profiler.start ### Description Starts collecting a CPU profile. ### Method POST ### Endpoint / ### Request Body { "method": "Profiler.start" } ``` -------------------------------- ### Extensions.loadUnpacked Source: https://chromedevtools.github.io/devtools-protocol/tot/Extensions Installs an unpacked extension from the filesystem. ```APIDOC ## Extensions.loadUnpacked ### Description Installs an unpacked extension from the filesystem similar to --load-extension CLI flags. Returns extension ID once the extension has been installed. ### Method POST ### Endpoint /json/protocol/Extensions.loadUnpacked ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **path** (string) - Required - Absolute file path. - **enableInIncognito** (boolean) - Optional - Enable the extension in incognito. ### Request Example ```json { "path": "/path/to/unpacked/extension", "enableInIncognito": false } ``` ### Response #### Success Response (200) - **id** (string) - Extension id. #### Response Example ```json { "result": { "id": "extensionId" } } ``` ``` -------------------------------- ### PWA.install Source: https://chromedevtools.github.io/devtools-protocol/tot/PWA Installs the given manifest identity, optionally using the provided install URL. Supports different installation modes including file and dev proxy. ```APIDOC ## PWA.install ### Description Installs the given manifest identity, optionally using the given installUrlOrBundleUrl IWA-specific install description: manifestId corresponds to isolated-app:// + web_package::SignedWebBundleId File installation mode: The installUrlOrBundleUrl can be either file:// or http(s):// pointing to a signed web bundle (.swbn). In this case SignedWebBundleId must correspond to The .swbn file's signing key. Dev proxy installation mode: installUrlOrBundleUrl must be http(s):// that serves dev mode IWA. web_package::SignedWebBundleId must be of type dev proxy. The advantage of dev proxy mode is that all changes to IWA automatically will be reflected in the running app without reinstallation. To generate bundle id for proxy mode: 1. Generate 32 random bytes. 2. Add a specific suffix at the end following the documentation https://github.com/WICG/isolated-web-apps/blob/main/Scheme.md#suffix 3. Encode the entire sequence using Base32 without padding. If Chrome is not in IWA dev mode, the installation will fail, regardless of the state of the allowlist. ### Parameters #### Path Parameters * **manifestId** (string) - Required - The manifest identifier for the web app. * **installUrlOrBundleUrl** (string) - Optional - The location of the app or bundle overriding the one derived from the manifestId. ``` -------------------------------- ### Memory.startSampling Source: https://chromedevtools.github.io/devtools-protocol/tot/Memory Starts collecting the native memory profile. ```APIDOC ## Memory.startSampling ### Description Start collecting native memory profile. ### Method POST ### Endpoint /json/protocol/Memory.startSampling ### Parameters #### Request Body - **samplingInterval** (integer) - Optional - Average number of bytes between samples. - **suppressRandomness** (boolean) - Optional - Do not randomize intervals between samples. ``` -------------------------------- ### PWA.launch Source: https://chromedevtools.github.io/devtools-protocol/tot/PWA Launches the installed web app. Optionally, a URL can be provided to launch the app at a specific page instead of the default start URL. ```APIDOC ## PWA.launch ### Description Launches the installed web app, or an url in the same web app instead of the default start url if it is provided. Returns a page Target.TargetID which can be used to attach to via Target.attachToTarget or similar APIs. ### Parameters #### Path Parameters * **manifestId** (string) - Required - The manifest identifier for the web app. * **url** (string) - Optional - The specific URL to launch within the web app. ### Return Object #### Success Response * **targetId** (Target.TargetID) - ID of the tab target created as a result. ``` -------------------------------- ### CSS.CSSStartingStyle Source: https://chromedevtools.github.io/devtools-protocol/tot/CSS Represents a CSS Starting Style at-rule descriptor. ```APIDOC ## CSS.CSSStartingStyle ### Description CSS Starting Style at-rule descriptor. ### Type object ### Properties - **range** (SourceRange) - The associated rule header range in the enclosing stylesheet (if available). - **styleSheetId** (DOM.StyleSheetId) - Identifier of the stylesheet containing this object (if exists). ``` -------------------------------- ### Page.startScreencast Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Starts sending each frame using the `screencastFrame` event. ```APIDOC ## Page.startScreencast Experimental ### Description Starts sending each frame using the `screencastFrame` event. ### Parameters #### Path Parameters * **format** (string) - Required - Image compression format. Allowed Values: `jpeg`, `png` * **quality** (integer) - Optional - Compression quality from range [0..100]. * **maxWidth** (integer) - Optional - Maximum screenshot width. * **maxHeight** (integer) - Optional - Maximum screenshot height. * **everyNthFrame** (integer) - Optional - Send every n-th frame. ``` -------------------------------- ### Page.downloadWillBegin Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Fired when page is about to start a download. Deprecated. Use Browser.downloadWillBegin instead. ```APIDOC ## Page.downloadWillBegin ExperimentalDeprecated ### Description Fired when page is about to start a download. Deprecated. Use Browser.downloadWillBegin instead. ### Parameters #### Path Parameters - **frameId** (FrameId) - Required - Id of the frame that caused download to begin. - **guid** (string) - Required - Global unique identifier of the download. - **url** (string) - Required - URL of the resource being downloaded. - **suggestedFilename** (string) - Required - Suggested file name of the resource (the actual name of the file saved on disk may differ). ``` -------------------------------- ### Page.getInstallabilityErrors Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Retrieves a list of errors related to the installability of the web application. ```APIDOC ## Page.getInstallabilityErrors ### Description Returns installability errors for the current page. ### Return Object #### Success Response (200) - **installabilityErrors** (array[ InstallabilityError ]) - An array of installability errors. ``` -------------------------------- ### Page.frameStartedLoading Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Fired when frame has started loading. Experimental. ```APIDOC ## Page.frameStartedLoading ### Description Fired when frame has started loading. Experimental. ### Parameters #### Path Parameters - **frameId** (FrameId) - Required - Id of the frame that has started loading. ``` -------------------------------- ### HeapProfiler.startSampling Source: https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler Starts a sampling heap profiler. This call is not supported by all JavaScript engines. ```APIDOC ## HeapProfiler.startSampling ### Description Starts a sampling heap profiler. This call is not supported by all JavaScript engines. ### Parameters #### Path Parameters - **samplingInterval** (number) - Optional - Average sample interval in bytes. Poisson distribution is used for the intervals. The default value is 32768 bytes. - **stackDepth** (number) - Optional - Maximum stack depth. The default value is 128. - **includeObjectsCollectedByMajorGC** (boolean) - Optional - By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by major GC, which will show which functions cause large temporary memory usage or long GC pauses. - **includeObjectsCollectedByMinorGC** (boolean) - Optional - By default, the sampling heap profiler reports only objects which are still alive when the profile is returned via getSamplingProfile or stopSampling, which is useful for determining what functions contribute the most to steady-state memory usage. This flag instructs the sampling heap profiler to also include information about objects discarded by minor GC, which is useful when tuning a latency-sensitive application for minimal GC activity. ``` -------------------------------- ### Extensions.getExtensions Source: https://chromedevtools.github.io/devtools-protocol/tot/Extensions Gets a list of all unpacked extensions. ```APIDOC ## Extensions.getExtensions ### Description Gets a list of all unpacked extensions. ### Method GET ### Endpoint /json/protocol/Extensions.getExtensions ### Parameters #### Path Parameters None #### Query Parameters None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **extensions** (array[ExtensionInfo]) - List of unpacked extensions. #### Response Example ```json { "result": { "extensions": [ { "id": "extensionId", "name": "Extension Name", "version": "1.0", "path": "/path/to/extension", "enabled": true } ] } } ``` ``` -------------------------------- ### WebAudio.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/WebAudio Enables the WebAudio domain and starts sending context lifetime events. This is typically the first step before interacting with WebAudio features. ```APIDOC ## WebAudio.enable ### Description Enables the WebAudio domain and starts sending context lifetime events. ### Method POST ### Endpoint /json/protocol/WebAudio.enable ``` -------------------------------- ### PWA.launchFilesInApp Source: https://chromedevtools.github.io/devtools-protocol/tot/PWA Opens one or more local files within an installed web app that has registered file handlers. Returns Target IDs for the pages handling the files. ```APIDOC ## PWA.launchFilesInApp ### Description Opens one or more local files from an installed web app identified by its manifestId. The web app needs to have file handlers registered to process the files. The API returns one or more page Target.TargetIDs which can be used to attach to via Target.attachToTarget or similar APIs. If some files in the parameters cannot be handled by the web app, they will be ignored. If none of the files can be handled, this API returns an error. If no files are provided as the parameter, this API also returns an error. According to the definition of the file handlers in the manifest file, one Target.TargetID may represent a page handling one or more files. The order of the returned Target.TargetIDs is not guaranteed. TODO(crbug.com/339454034): Check the existences of the input files. ### Parameters #### Path Parameters * **manifestId** (string) - Required - The manifest identifier for the web app. * **files** (array[ string ]) - Required - An array of file paths to be opened. ### Return Object #### Success Response * **targetIds** (array[ Target.TargetID ]) - IDs of the tab targets created as the result. ``` -------------------------------- ### HeapProfiler.startTrackingHeapObjects Source: https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler Start tracking object allocations. This call is not supported by all JavaScript engines. ```APIDOC ## HeapProfiler.startTrackingHeapObjects ### Description Start tracking object allocations. This call is not supported by all JavaScript engines. ### Parameters #### Path Parameters - **trackAllocations** (boolean) - Required ``` -------------------------------- ### Tracing.start Source: https://chromedevtools.github.io/devtools-protocol/tot/Tracing Starts trace events collection. This method initiates the process of gathering tracing data, with various options to configure the categories, buffer usage, and transfer mode. ```APIDOC ## Tracing.start ### Description Start trace events collection. ### Method POST ### Endpoint /json/protocol/Tracing.start ### Parameters #### Request Body - **categories** (string) - Optional - Category/tag filter. Experimental, Deprecated. - **options** (string) - Optional - Tracing options. Experimental, Deprecated. - **bufferUsageReportingInterval** (number) - Optional - If set, the agent will issue bufferUsage events at this interval, specified in milliseconds. Experimental. - **transferMode** (string) - Optional - Whether to report trace events as series of dataCollected events or to save trace to a stream (defaults to `ReportEvents`). Allowed Values: `ReportEvents`, `ReturnAsStream`. - **streamFormat** (StreamFormat) - Optional - Trace data format to use. This only applies when using `ReturnAsStream` transfer mode (defaults to `json`). - **streamCompression** (StreamCompression) - Optional - Compression format to use. This only applies when using `ReturnAsStream` transfer mode (defaults to `none`). Experimental. - **traceConfig** (TraceConfig) - Optional. - **perfettoConfig** (string) - Optional - Base64-encoded serialized perfetto.protos.TraceConfig protobuf message. When specified, the parameters `categories`, `options`, `traceConfig` are ignored. (Encoded as a base64 string when passed over JSON). Experimental. - **tracingBackend** (TracingBackend) - Optional - Backend type (defaults to `auto`). Experimental. ### Request Example ```json { "categories": "devtools.timeline", "transferMode": "ReturnAsStream", "traceConfig": { "recordMode": "recordContinuously", "traceBufferSizeInKb": 100000, "enableSampling": true } } ``` ### Response #### Success Response (200) - **status** (string) - Indicates the success of the operation. ``` -------------------------------- ### Log.startViolationsReport Source: https://chromedevtools.github.io/devtools-protocol/tot/Log Starts violation reporting with a specified configuration. This allows the client to receive notifications for specific types of performance violations. ```APIDOC ## Log.startViolationsReport ### Description Starts violation reporting. ### Method Log.startViolationsReport ### Parameters #### Request Body - **config** (array[ViolationSetting]) - Required - Configuration for violations. ``` -------------------------------- ### Cast.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Cast Starts observing for available casting sinks and issues. It can filter sinks by a presentation URL and also listens for issue updates. ```APIDOC ## Cast.enable ### Description Starts observing for sinks that can be used for tab mirroring, and if set, sinks compatible with |presentationUrl| as well. When sinks are found, a |sinksUpdated| event is fired. Also starts observing for issue messages. When an issue is added or removed, an |issueUpdated| event is fired. ### Method POST ### Endpoint /json/protocol/Cast.enable ### Parameters #### Query Parameters - **presentationUrl** (string) - Optional - Used to filter sinks compatible with a specific presentation URL. ### Response #### Success Response (200) An empty object indicating success. ``` -------------------------------- ### Runtime.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Runtime Enables reporting of execution contexts creation by means of `executionContextCreated` event. When the reporting gets enabled the event will be sent immediately for each existing execution context. ```APIDOC ## Runtime.enable ### Description Enables reporting of execution contexts creation by means of `executionContextCreated` event. When the reporting gets enabled the event will be sent immediately for each existing execution context. ### Method POST ### Endpoint /json/runtime/enable ``` -------------------------------- ### Emulation.setDevicePostureOverride Source: https://chromedevtools.github.io/devtools-protocol/tot/Emulation Starts reporting a given posture value to the Device Posture API. This override can also be set within `setDeviceMetricsOverride`. ```APIDOC ## Emulation.setDevicePostureOverride ### Description Start reporting the given posture value to the Device Posture API. This override can also be set in setDeviceMetricsOverride(). ### Method POST ### Endpoint /Emulation.setDevicePostureOverride ### Parameters #### Request Body - **posture** (DevicePosture) - Required - The device posture to report. ``` -------------------------------- ### Page.frameStartedNavigating Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Fired when a navigation starts. This event is fired for both renderer-initiated and browser-initiated navigations. For renderer-initiated navigations, the event is fired after `frameRequestedNavigation`. Navigation may still be cancelled after the event is issued. Multiple events can be fired for a single navigation, for example, when a same-document navigation becomes a cross-document navigation (such as in the case of a frameset). Experimental. ```APIDOC ## Page.frameStartedNavigating ### Description Fired when a navigation starts. This event is fired for both renderer-initiated and browser-initiated navigations. For renderer-initiated navigations, the event is fired after `frameRequestedNavigation`. Navigation may still be cancelled after the event is issued. Multiple events can be fired for a single navigation, for example, when a same-document navigation becomes a cross-document navigation (such as in the case of a frameset). Experimental. ### Parameters #### Path Parameters - **frameId** (FrameId) - Required - ID of the frame that is being navigated. - **url** (string) - Required - The URL the navigation started with. The final URL can be different. - **loaderId** (Network.LoaderId) - Required - Loader identifier. Even though it is present in case of same-document navigation, the previously committed loaderId would not change unless the navigation changes from a same-document to a cross-document navigation. - **navigationType** (string) - Required - Allowed Values: `reload`, `reloadBypassingCache`, `restore`, `restoreWithPost`, `historySameDocument`, `historyDifferentDocument`, `sameDocument`, `differentDocument` ``` -------------------------------- ### Cast.startDesktopMirroring Source: https://chromedevtools.github.io/devtools-protocol/tot/Cast Initiates mirroring of the entire desktop to the specified casting sink. ```APIDOC ## Cast.startDesktopMirroring ### Description Starts mirroring the desktop to the sink. ### Method POST ### Endpoint /json/protocol/Cast.startDesktopMirroring ### Parameters #### Query Parameters - **sinkName** (string) - Required - The name of the sink to cast to. ### Response #### Success Response (200) An empty object indicating success. ``` -------------------------------- ### ServiceWorker.startWorker Source: https://chromedevtools.github.io/devtools-protocol/tot/ServiceWorker Start the given Service Worker. ```APIDOC ## ServiceWorker.startWorker ### Description Start the given Service Worker. ### Method POST ### Endpoint /json/protocol ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **scopeURL** (string) - Required - The scope URL of the Service Worker. ### Request Example ```json { "id": 1, "method": "ServiceWorker.startWorker", "params": { "scopeURL": "https://example.com/sw.js" } } ``` ### Response #### Success Response (200) None #### Response Example ```json { "id": 1, "result": {} } ``` ``` -------------------------------- ### CSS.forceStartingStyle Source: https://chromedevtools.github.io/devtools-protocol/tot/CSS Ensures that the given node is in its starting-style state. ```APIDOC ## CSS.forceStartingStyle # Ensures that the given node is in its starting-style state. ##### parameters nodeId DOM.NodeId The element id for which to force the starting-style state. forced boolean Boolean indicating if this is on or off. ``` -------------------------------- ### DOM.getNodeStackTraces Source: https://chromedevtools.github.io/devtools-protocol/tot/DOM Gets stack traces associated with a Node. ```APIDOC ## DOM.getNodeStackTraces Experimental ### Description Gets stack traces associated with a Node. As of now, only provides stack trace for Node creation. ### Parameters #### Path Parameters - **nodeId** (NodeId) - Required - Id of the node to get stack traces for. ### Return Object #### Success Response (200) - **creation** (Runtime.StackTrace) - Creation stack trace, if available. ``` -------------------------------- ### SystemInfo.getInfo Source: https://chromedevtools.github.io/devtools-protocol/tot/SystemInfo Retrieves comprehensive information about the system, including GPU details, model name, and command line arguments. ```APIDOC ## SystemInfo.getInfo ### Description Returns information about the system. ### Response #### Success Response (200) - **gpu** (GPUInfo) - Information about the GPUs on the system. - **modelName** (string) - A platform-dependent description of the model of the machine. - **modelVersion** (string) - A platform-dependent description of the version of the machine. - **commandLine** (string) - The command line string used to launch the browser. ``` -------------------------------- ### CSS.startRuleUsageTracking Source: https://chromedevtools.github.io/devtools-protocol/tot/CSS Enables the recording of CSS selector usage. This command does not take any parameters. ```APIDOC ## CSS.startRuleUsageTracking ### Description Enables the selector recording. ### Method POST ### Endpoint /CSS.startRuleUsageTracking ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Request Example ```json {} ``` ### Response #### Success Response (200) - None #### Response Example ```json {} ``` ``` -------------------------------- ### Browser.getWindowBounds Source: https://chromedevtools.github.io/devtools-protocol/tot/Browser Gets the position and size of the browser window. ```APIDOC ## Browser.getWindowBounds ### Description Get position and size of the browser window. ### Parameters #### Path Parameters - **windowId** (WindowID) - Required - Browser window id. ### Return Object #### Success Response (200) - **bounds** (Bounds) - Bounds information of the window. When window state is 'minimized', the restored window position and size are returned. ``` -------------------------------- ### Browser.getWindowForTarget Source: https://chromedevtools.github.io/devtools-protocol/tot/Browser Gets the browser window that contains the devtools target. ```APIDOC ## Browser.getWindowForTarget ### Description Get the browser window that contains the devtools target. ### Parameters #### Path Parameters - **targetId** (Target.TargetID) - Required - Devtools agent host id. If called as a part of the session, associated targetId is used. ### Return Object #### Success Response (200) - **windowId** (WindowID) - Browser window id. - **bounds** (Bounds) - Bounds information of the window. When window state is 'minimized', the restored window position and size are returned. ``` -------------------------------- ### Extensions.getStorageItems Source: https://chromedevtools.github.io/devtools-protocol/tot/Extensions Gets data from extension storage in the given storageArea. ```APIDOC ## Extensions.getStorageItems ### Description Gets data from extension storage in the given `storageArea`. If `keys` is specified, these are used to filter the result. ### Method POST ### Endpoint /json/protocol/Extensions.getStorageItems ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **id** (string) - Required - ID of extension. - **storageArea** (StorageArea) - Required - StorageArea to retrieve data from. - **keys** (array[string]) - Optional - Keys to retrieve. ### Request Example ```json { "id": "extensionId", "storageArea": "local", "keys": ["key1", "key2"] } ``` ### Response #### Success Response (200) - **data** (object) - Retrieved data. #### Response Example ```json { "result": { "data": { "key1": "value1", "key2": "value2" } } } ``` ``` -------------------------------- ### SmartCardEmulation.establishContextRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Fired when SCardEstablishContext is called. ```APIDOC ## SmartCardEmulation.establishContextRequested ### Description Fired when |SCardEstablishContext| is called. ### Parameters - **requestId** (string) - Required - ``` -------------------------------- ### Overlay.GridNodeHighlightConfig Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Configurations for Persistent Grid Highlight. ```APIDOC ## Overlay.GridNodeHighlightConfig ### Description Configurations for Persistent Grid Highlight. ### Properties - **gridHighlightConfig** (GridHighlightConfig) - A descriptor for the highlight appearance. - **nodeId** (DOM.NodeId) - Identifier of the node to highlight. ``` -------------------------------- ### Animation.getPlaybackRate Source: https://chromedevtools.github.io/devtools-protocol/tot/Animation Gets the current playback rate for all animations on the page. ```APIDOC ## Animation.getPlaybackRate ### Description Gets the playback rate of the document timeline. ### Method POST ### Endpoint /Animation.getPlaybackRate ### Response #### Success Response (200) - **playbackRate** (number) - Playback rate for animations on page. ### Response Example { "playbackRate": 1.0 } ``` -------------------------------- ### SmartCardEmulation.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Enables the SmartCardEmulation domain. ```APIDOC ## SmartCardEmulation.enable ### Description Enables the |SmartCardEmulation| domain. ### Method POST ### Endpoint /json/protocol/SmartCardEmulation.enable ``` -------------------------------- ### DOM.affectedByStartingStylesFlagUpdated Source: https://chromedevtools.github.io/devtools-protocol/tot/DOM Fired when a node's starting styles changes. This event is experimental. ```APIDOC ## DOM.affectedByStartingStylesFlagUpdated Experimental ### Description Fired when a node's starting styles changes. ### Parameters #### Request Body - **nodeId** (DOM.NodeId) - Required - The id of the node. - **affectedByStartingStyles** (boolean) - Required - If the node has starting styles. ``` -------------------------------- ### Network.enableDeviceBoundSessions Source: https://chromedevtools.github.io/devtools-protocol/tot/Network Sets up tracking device bound sessions and fetching of initial set of sessions. ```APIDOC ## Network.enableDeviceBoundSessions ### Description Sets up tracking device bound sessions and fetching of initial set of sessions. ### Parameters #### Request Body - **enable** (boolean) - Required - Whether to enable or disable events. Experimental ``` -------------------------------- ### SmartCardEmulation.beginTransactionRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Fired when SCardBeginTransaction is called. ```APIDOC ## SmartCardEmulation.beginTransactionRequested ### Description Fired when |SCardBeginTransaction| is called. ### Parameters - **requestId** (string) - Required - - **handle** (integer) - Required - ``` -------------------------------- ### Tracing.TracingBackend Source: https://chromedevtools.github.io/devtools-protocol/tot/Tracing Backend type to use for tracing. `chrome` uses the Chrome-integrated tracing service and is supported on all platforms. `system` is only supported on Chrome OS and uses the Perfetto system tracing service. `auto` chooses `system` when the perfettoConfig provided to Tracing.start specifies at least one non-Chrome data source; otherwise uses `chrome`. ```APIDOC ## Tracing.TracingBackend ### Description Backend type to use for tracing. `chrome` uses the Chrome-integrated tracing service and is supported on all platforms. `system` is only supported on Chrome OS and uses the Perfetto system tracing service. `auto` chooses `system` when the perfettoConfig provided to Tracing.start specifies at least one non-Chrome data source; otherwise uses `chrome`. ### Type string ### Allowed Values - `auto` - `chrome` - `system` ``` -------------------------------- ### Storage.getSharedStorageMetadata Source: https://chromedevtools.github.io/devtools-protocol/tot/Storage Gets metadata for an origin's shared storage. This is an experimental feature. ```APIDOC ## Storage.getSharedStorageMetadata Experimental ### Description Gets metadata for an origin's shared storage. ### Endpoint /json/protocol/Storage.getSharedStorageMetadata ### Parameters #### Query Parameters - **ownerOrigin** (string) - Required - The origin for which to retrieve shared storage metadata. ### Response #### Success Response (200) - **metadata** (SharedStorageMetadata) - Metadata for the shared storage. ``` -------------------------------- ### Browser.getBrowserCommandLine Source: https://chromedevtools.github.io/devtools-protocol/tot/Browser Returns the command line switches for the browser process if --enable-automation is present on the command line. ```APIDOC ## Browser.getBrowserCommandLine ### Description Returns the command line switches for the browser process if, and only if --enable-automation is on the commandline. ### Return Object #### Success Response (200) - **arguments** (array[string]) - Commandline parameters ``` -------------------------------- ### Target.getDevToolsTarget Source: https://chromedevtools.github.io/devtools-protocol/tot/Target Gets the targetId of the DevTools page target opened for the given target (if any). ```APIDOC ## Target.getDevToolsTarget ### Description Gets the targetId of the DevTools page target opened for the given target (if any). ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - **targetId** (TargetID) - Required - Page or tab target ID. ### Request Example ```json { "targetId": "some target id" } ``` ### Response #### Success Response (200) - **targetId** (TargetID) - The targetId of DevTools page target if exists. #### Response Example ```json { "targetId": "devtools target id" } ``` ``` -------------------------------- ### Runtime.EntryPreview Source: https://chromedevtools.github.io/devtools-protocol/tot/Runtime Preview of a map or set entry. ```APIDOC ## Runtime.EntryPreview ### Description Preview of a map or set entry. ### Type `object` ### Properties - **key** (Runtime.ObjectPreview) - Preview of the key. Specified for map-like collection entries. - **value** (Runtime.ObjectPreview) - Preview of the value. ``` -------------------------------- ### DeviceAccess.selectPrompt Source: https://chromedevtools.github.io/devtools-protocol/tot/DeviceAccess Select a device in response to a DeviceAccess.deviceRequestPrompted event. ```APIDOC ## DeviceAccess.selectPrompt ### Description Select a device in response to a DeviceAccess.deviceRequestPrompted event. ### Method POST ### Endpoint /json/protocol/DeviceAccess.selectPrompt ### Parameters #### Request Body - **id** (RequestId) - Required - The ID of the prompt to select. - **deviceId** (DeviceId) - Required - The ID of the device to select. ``` -------------------------------- ### Page.getManifestIcons Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Deprecated because it's not guaranteed that the returned icon is in fact the one used for PWA installation. ```APIDOC ## Page.getManifestIcons ExperimentalDeprecated ### Description Deprecated because it's not guaranteed that the returned icon is in fact the one used for PWA installation. ### Return Object #### Success Response (200) * **primaryIcon** (string) - ``` -------------------------------- ### Runtime.inspectRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/Runtime Issued when an object should be inspected, for example, as a result of an `inspect()` command line API call. ```APIDOC ## Runtime.inspectRequested ### Description Issued when object should be inspected (for example, as a result of inspect() command line API call). ### Parameters #### Request Body - **object** (RemoteObject) - Required - The object to inspect. - **hints** (object) - Optional - Hints for inspection. - **executionContextId** (ExecutionContextId) - Required - Identifier of the context where the call was made (Experimental) ``` -------------------------------- ### BluetoothEmulation.addService Source: https://chromedevtools.github.io/devtools-protocol/tot/BluetoothEmulation Adds a service with a specified UUID to a simulated peripheral. ```APIDOC ## BluetoothEmulation.addService ### Description Adds a service with |serviceUuid| to the peripheral with |address|. ### Parameters #### Path Parameters - **address** (string) - Required - The Bluetooth address of the peripheral. - **serviceUuid** (string) - Required - The UUID of the service. ### Return Object #### Success Response - **serviceId** (string) - An identifier that uniquely represents this service. ``` -------------------------------- ### Overlay.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Enables domain notifications. This method allows the DevTools to start receiving notifications from the Overlay domain. ```APIDOC ## Overlay.enable ### Description Enables domain notifications. ### Method POST ### Endpoint /json/protocol/Overlay.enable ### Parameters None ### Response #### Success Response (200) An empty object indicating success. ``` -------------------------------- ### Profiler.setSamplingInterval Source: https://chromedevtools.github.io/devtools-protocol/tot/Profiler Changes CPU profiler sampling interval. Must be called before CPU profiles recording started. ```APIDOC ## Profiler.setSamplingInterval ### Description Changes CPU profiler sampling interval. Must be called before CPU profiles recording started. ### Method POST ### Endpoint / ### Parameters #### Query Parameters - **interval** (integer) - Required - New sampling interval in microseconds. ### Request Body { "method": "Profiler.setSamplingInterval", "params": { "interval": 0 } } ``` -------------------------------- ### LayerTree.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/LayerTree Enables compositing tree inspection. Call this method to start receiving layer tree updates. ```APIDOC ## LayerTree.enable ### Description Enables compositing tree inspection. ### Method POST ### Endpoint /LayerTree.enable ``` -------------------------------- ### Security.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Security Enables tracking of security state changes. This method allows the protocol to start sending security-related events. ```APIDOC ## Security.enable ### Description Enables tracking security state changes. ### Method POST ### Endpoint /json/protocol/Security.enable ``` -------------------------------- ### Preload.preloadingAttemptSourcesUpdated Source: https://chromedevtools.github.io/devtools-protocol/tot/Preload Send a list of sources for all preloading attempts in a document. ```APIDOC ## Preload.preloadingAttemptSourcesUpdated ### Description Send a list of sources for all preloading attempts in a document. ### Event ### Parameters #### Request Body - **loaderId** (Network.LoaderId) - Required - - **preloadingAttemptSources** (array[ PreloadingAttemptSource ]) - Required - ``` -------------------------------- ### Overlay.FlexNodeHighlightConfig Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Configuration for highlighting a flex node. ```APIDOC ## Overlay.FlexNodeHighlightConfig ### Description Configuration for highlighting a flex node. ### Properties - **flexContainerHighlightConfig** (FlexContainerHighlightConfig) - A descriptor for the highlight appearance of flex containers. - **nodeId** (DOM.NodeId) - Identifier of the node to highlight. ``` -------------------------------- ### Autofill.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Autofill Enables autofill domain notifications. This method allows the DevTools to start receiving events related to autofill. ```APIDOC ## Autofill.enable ### Description Enables autofill domain notifications. ### Method POST ### Endpoint /json/protocol/Autofill.enable ``` -------------------------------- ### Overlay.setShowHinge Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Adds or removes a dual screen device hinge visualization. ```APIDOC ## Overlay.setShowHinge ### Description Adds a dual screen device hinge visualization. ### Method Overlay.setShowHinge ### Parameters #### Path Parameters - **hingeConfig** (HingeConfig) - Required - Hinge data, null means hideHinge. ``` -------------------------------- ### Profiler.takePreciseCoverage Source: https://chromedevtools.github.io/devtools-protocol/tot/Profiler Collect coverage data for the current isolate, and resets execution counters. Precise code coverage needs to have started. ```APIDOC ## Profiler.takePreciseCoverage ### Description Collect coverage data for the current isolate, and resets execution counters. Precise code coverage needs to have started. ### Method POST ### Endpoint / ### Request Body { "method": "Profiler.takePreciseCoverage" } ### Response #### Success Response (200) - **result** (array[ ScriptCoverage ]) - Coverage data for the current isolate. - **timestamp** (number) - Monotonically increasing time (in seconds) when the coverage update was taken in the backend. ### Response Example { "result": [ { "url": "string", "functions": [ { "functionName": "string", "ranges": [ { "startOffset": 0, "endOffset": 0, "count": 0 } ], "isBlockCoverage": true } ] } ], "timestamp": 0 } ``` -------------------------------- ### BluetoothEmulation.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/BluetoothEmulation Enables the Bluetooth emulation domain with specified central state and LE support. ```APIDOC ## BluetoothEmulation.enable ### Description Enable the BluetoothEmulation domain. ### Parameters #### Path Parameters - **state** (CentralState) - Required - State of the simulated central. - **leSupported** (boolean) - Required - If the simulated central supports low-energy. ``` -------------------------------- ### DOMStorage.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/DOMStorage Enables storage tracking, ensuring storage events will be delivered to the client. ```APIDOC ## DOMStorage.enable ### Description Enables storage tracking, storage events will now be delivered to the client. ### Method POST ### Endpoint /DOMStorage.enable ``` -------------------------------- ### SmartCardEmulation.releaseContextRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Fired when SCardReleaseContext is called. ```APIDOC ## SmartCardEmulation.releaseContextRequested ### Description Fired when |SCardReleaseContext| is called. ### Parameters - **requestId** (string) - Required - - **contextId** (integer) - Required - ``` -------------------------------- ### Profiler.startPreciseCoverage Source: https://chromedevtools.github.io/devtools-protocol/tot/Profiler Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code coverage may be incomplete. Enabling prevents running optimized code and resets execution counters. ```APIDOC ## Profiler.startPreciseCoverage ### Description Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code coverage may be incomplete. Enabling prevents running optimized code and resets execution counters. ### Method POST ### Endpoint / ### Parameters #### Query Parameters - **callCount** (boolean) - Optional - Collect accurate call counts beyond simple 'covered' or 'not covered'. - **detailed** (boolean) - Optional - Collect block-based coverage. - **allowTriggeredUpdates** (boolean) - Optional - Allow the backend to send updates on its own initiative ### Request Body { "method": "Profiler.startPreciseCoverage", "params": { "callCount": true, "detailed": true, "allowTriggeredUpdates": true } } ### Response #### Success Response (200) - **timestamp** (number) - Monotonically increasing time (in seconds) when the coverage update was taken in the backend. ### Response Example { "timestamp": 0 } ``` -------------------------------- ### Emulation.setDisplayFeaturesOverride Source: https://chromedevtools.github.io/devtools-protocol/tot/Emulation Starts using specified display features to populate the Viewport Segments API. This override can also be set within `setDeviceMetricsOverride`. ```APIDOC ## Emulation.setDisplayFeaturesOverride ### Description Start using the given display features to populate the Viewport Segments API. This override can also be set in setDeviceMetricsOverride(). ### Method POST ### Endpoint /Emulation.setDisplayFeaturesOverride ### Parameters #### Request Body - **features** (array[DisplayFeature]) - Required - The display features to use for the override. ``` -------------------------------- ### BluetoothEmulation.simulatePreconnectedPeripheral Source: https://chromedevtools.github.io/devtools-protocol/tot/BluetoothEmulation Simulates a peripheral that has already been connected to the system. ```APIDOC ## BluetoothEmulation.simulatePreconnectedPeripheral ### Description Simulates a peripheral with |address|, |name| and |knownServiceUuids| that has already been connected to the system. ### Parameters #### Path Parameters - **address** (string) - Required - The Bluetooth address of the peripheral. - **name** (string) - Required - The name of the peripheral. - **manufacturerData** (array[ ManufacturerData ]) - Optional - Manufacturer-specific data. - **knownServiceUuids** (array[ string ]) - Optional - An array of known service UUIDs. ``` -------------------------------- ### Get Protocol Definition Source: https://chromedevtools.github.io/devtools-protocol Retrieves the complete DevTools Protocol definition in JSON format. This is useful for understanding the available commands and events. ```APIDOC ## GET /json/protocol/ ### Description The current devtools protocol, as JSON. ### Method GET ### Endpoint /json/protocol/ ### Response #### Success Response (200) - **domains** (array) - An array of protocol domain objects, each defining commands, events, and types for a specific area of the protocol. ### Response Example ```json { "domains": [ { "domain": "Accessibility", "experimental": true, "dependencies": [ "DOM" ], "types": [ { "id": "AXValueType", "description": "Enum of possible property types.", "type": "string", "enum": [ "boolean", "tristate", // ... ``` ``` -------------------------------- ### Input.insertText Source: https://chromedevtools.github.io/devtools-protocol/tot/Input This method emulates inserting text that doesn't come from a key press, for example an emoji keyboard or an IME. This method is marked as experimental. ```APIDOC ## Input.insertText (Experimental) ### Description This method emulates inserting text that doesn't come from a key press, for example an emoji keyboard or an IME. ### Parameters #### Request Body - **text** (string) - Required - The text to insert. ``` -------------------------------- ### CSS.stopRuleUsageTracking Source: https://chromedevtools.github.io/devtools-protocol/tot/CSS Stops tracking CSS rule usage and returns a list of rules that have been used since the last call to `takeCoverageDelta` or the start of coverage instrumentation. ```APIDOC ## CSS.stopRuleUsageTracking ### Description Stop tracking rule usage and return the list of rules that were used since last call to `takeCoverageDelta` (or since start of coverage instrumentation). ### Method POST ### Endpoint /CSS.stopRuleUsageTracking ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Request Example ```json {} ``` ### Response #### Success Response (200) - **ruleUsage** (array[RuleUsage]) - The list of rules that were used. #### Response Example ```json { "ruleUsage": [ { "styleSheetId": "string", "startOffset": 0, "endOffset": 0, "lastLine": 0, "count": 0 } ] } ``` ``` -------------------------------- ### Preload.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/Preload Enables preloading domain. This includes enabling prefetching, prerendering, and other features. This command is deprecated. Use Preload.enable instead. ```APIDOC ## Preload.enable ### Description Enables preloading domain. This includes enabling prefetching, prerendering, and other features. This command is deprecated. Use Preload.enable instead. ### Method POST ### Endpoint /Preload.enable ``` -------------------------------- ### Get Browser Version Metadata Source: https://chromedevtools.github.io/devtools-protocol Retrieves metadata about the browser version and the DevTools Protocol version it supports. This endpoint is useful for understanding the environment and compatibility. ```APIDOC ## GET /json/version ### Description Browser version metadata ### Method GET ### Endpoint /json/version ### Response #### Success Response (200) - **Browser** (string) - The browser version. - **Protocol-Version** (string) - The protocol version. - **User-Agent** (string) - The user agent string. - **V8-Version** (string) - The V8 JavaScript engine version. - **WebKit-Version** (string) - The WebKit version. - **webSocketDebuggerUrl** (string) - The WebSocket URL to connect to the browser target. ### Response Example ```json { "Browser": "Chrome/72.0.3601.0", "Protocol-Version": "1.3", "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3601.0 Safari/537.36", "V8-Version": "7.2.233", "WebKit-Version": "537.36 (@cfede9db1d154de0468cb0538479f34c0755a0f4)", "webSocketDebuggerUrl": "ws://localhost:9222/devtools/browser/b0b8a4fb-bb17-4359-9533-a8d9f3908bd8" } ``` ``` -------------------------------- ### Overlay.ScrollSnapContainerHighlightConfig Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Configuration for highlighting scroll snap containers. ```APIDOC ## Overlay.ScrollSnapContainerHighlightConfig ### Description Configuration for highlighting scroll snap containers. ### Properties - **snapportBorder** (LineStyle) - The style of the snapport border (default: transparent). - **snapAreaBorder** (LineStyle) - The style of the snap area border (default: transparent). - **scrollMarginColor** (DOM.RGBA) - The margin highlight fill color (default: transparent). - **scrollPaddingColor** (DOM.RGBA) - The padding highlight fill color (default: transparent). ``` -------------------------------- ### Emulation.getScreenInfos Source: https://chromedevtools.github.io/devtools-protocol/tot/Emulation Returns the device's screen configuration. In headful mode, it returns the physical screens configuration. In headless mode, it provides a virtual headless screen configuration. ```APIDOC ## Emulation.getScreenInfos ### Description Returns device's screen configuration. In headful mode, the physical screens configuration is returned, whereas in headless mode, a virtual headless screen configuration is provided instead. ### Method GET ### Endpoint /Emulation.getScreenInfos ### Return Object #### Success Response (200) - **screenInfos** (array[ScreenInfo]) - An array of screen information objects. ``` -------------------------------- ### HeapProfiler.enable Source: https://chromedevtools.github.io/devtools-protocol/tot/HeapProfiler Enables the HeapProfiler domain. ```APIDOC ## HeapProfiler.enable ### Description Enables the HeapProfiler domain. ### Method POST ### Endpoint /json/protocol/HeapProfiler.enable ``` -------------------------------- ### Overlay.getSourceOrderHighlightObjectForTest Source: https://chromedevtools.github.io/devtools-protocol/tot/Overlay Retrieves a highlight object for Source Order Viewer testing. This method is used to get highlight data for a specific node's source order. ```APIDOC ## Overlay.getSourceOrderHighlightObjectForTest ### Description For Source Order Viewer testing. ### Method POST ### Endpoint /json/protocol/Overlay.getSourceOrderHighlightObjectForTest ### Parameters #### Request Body - **nodeId** (DOM.NodeId) - Required - Id of the node to highlight. ### Response #### Success Response (200) - **highlight** (object) - Source order highlight data for the node id provided. ### Response Example ```json { "highlight": {} } ``` ``` -------------------------------- ### SmartCardEmulation.connectRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Fired when SCardConnect is called. ```APIDOC ## SmartCardEmulation.connectRequested ### Description Fired when |SCardConnect| is called. ### Parameters - **requestId** (string) - Required - - **contextId** (integer) - Required - - **reader** (string) - Required - - **shareMode** (ShareMode) - Required - - **preferredProtocols** (ProtocolSet) - Required - ``` -------------------------------- ### SmartCardEmulation.controlRequested Source: https://chromedevtools.github.io/devtools-protocol/tot/SmartCardEmulation Fired when SCardControl is called. ```APIDOC ## SmartCardEmulation.controlRequested ### Description Fired when |SCardControl| is called. ### Parameters - **requestId** (string) - Required - - **handle** (integer) - Required - - **controlCode** (integer) - Required - - **data** (string) - Required - ``` -------------------------------- ### Get DevTools Protocol Definition Source: https://chromedevtools.github.io/devtools-protocol Access the complete DevTools Protocol definition in JSON format using the `/json/protocol/` endpoint. This is useful for understanding the available domains, commands, and events. ```json { "domains": [ { "domain": "Accessibility", "experimental": true, "dependencies": [ "DOM" ], "types": [ { "id": "AXValueType", "description": "Enum of possible property types.", "type": "string", "enum": [ "boolean", "tristate", // ... ``` -------------------------------- ### Page.AdFrameExplanation Experimental Source: https://chromedevtools.github.io/devtools-protocol/tot/Page Experimental ad frame explanation. ```APIDOC ## Page.AdFrameExplanation Experimental Allowed Values: `ParentIsAd`, `CreatedByAdScript`, `MatchedBlockingRule` Type: **string** ```