From 7c58a25cad3bd8276e48bc145d2ffccaab58807c Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 3 Dec 2025 11:05:54 +0000 Subject: [PATCH 1/8] update devtools versions --- Rakefile | 2 +- .../chromium/{v140 => v143}/BUILD.bazel | 0 .../{v140 => v143}/browser_protocol.pdl | 17800 ++++++++-------- .../chromium/{v140 => v143}/js_protocol.pdl | 8 + dotnet/selenium-dotnet-version.bzl | 2 +- .../src/webdriver/DevTools/DevToolsDomains.cs | 4 +- .../V140Domains.cs => v143/V143Domains.cs} | 22 +- .../V143JavaScript.cs} | 16 +- .../{v140/V140Log.cs => v143/V143Log.cs} | 14 +- .../V140Network.cs => v143/V143Network.cs} | 24 +- .../V140Target.cs => v143/V143Target.cs} | 14 +- .../common/DevTools/DevToolsConsoleTest.cs | 2 +- .../test/common/DevTools/DevToolsLogTest.cs | 2 +- .../common/DevTools/DevToolsNetworkTest.cs | 2 +- .../DevTools/DevToolsPerformanceTest.cs | 2 +- .../common/DevTools/DevToolsProfilerTest.cs | 2 +- .../common/DevTools/DevToolsSecurityTest.cs | 2 +- .../test/common/DevTools/DevToolsTabsTest.cs | 2 +- .../common/DevTools/DevToolsTargetTest.cs | 4 +- .../devtools/{v140 => v143}/BUILD.bazel | 2 +- .../v143CdpInfo.java} | 8 +- .../v143Domains.java} | 26 +- .../v140Events.java => v143/v143Events.java} | 18 +- .../v143Javascript.java} | 14 +- .../{v140/v140Log.java => v143/v143Log.java} | 10 +- .../v143Network.java} | 20 +- .../v140Target.java => v143/v143Target.java} | 24 +- .../org/openqa/selenium/devtools/versions.bzl | 2 +- javascript/selenium-webdriver/BUILD.bazel | 2 +- py/BUILD.bazel | 2 +- rb/Gemfile.lock | 2 +- rb/lib/selenium/devtools/BUILD.bazel | 2 +- rb/lib/selenium/devtools/version.rb | 2 +- 33 files changed, 9285 insertions(+), 8773 deletions(-) rename common/devtools/chromium/{v140 => v143}/BUILD.bazel (100%) rename common/devtools/chromium/{v140 => v143}/browser_protocol.pdl (95%) rename common/devtools/chromium/{v140 => v143}/js_protocol.pdl (99%) rename dotnet/src/webdriver/DevTools/{v140/V140Domains.cs => v143/V143Domains.cs} (78%) rename dotnet/src/webdriver/DevTools/{v140/V140JavaScript.cs => v143/V143JavaScript.cs} (94%) rename dotnet/src/webdriver/DevTools/{v140/V140Log.cs => v143/V143Log.cs} (88%) rename dotnet/src/webdriver/DevTools/{v140/V140Network.cs => v143/V143Network.cs} (95%) rename dotnet/src/webdriver/DevTools/{v140/V140Target.cs => v143/V143Target.cs} (94%) rename java/src/org/openqa/selenium/devtools/{v140 => v143}/BUILD.bazel (98%) rename java/src/org/openqa/selenium/devtools/{v140/v140CdpInfo.java => v143/v143CdpInfo.java} (86%) rename java/src/org/openqa/selenium/devtools/{v140/v140Domains.java => v143/v143Domains.java} (77%) rename java/src/org/openqa/selenium/devtools/{v140/v140Events.java => v143/v143Events.java} (86%) rename java/src/org/openqa/selenium/devtools/{v140/v140Javascript.java => v143/v143Javascript.java} (85%) rename java/src/org/openqa/selenium/devtools/{v140/v140Log.java => v143/v143Log.java} (89%) rename java/src/org/openqa/selenium/devtools/{v140/v140Network.java => v143/v143Network.java} (92%) rename java/src/org/openqa/selenium/devtools/{v140/v140Target.java => v143/v143Target.java} (83%) diff --git a/Rakefile b/Rakefile index 604c7672dfe0e..1d74ff4472076 100644 --- a/Rakefile +++ b/Rakefile @@ -96,7 +96,7 @@ task '//java/test/org/openqa/selenium/environment/webserver:webserver:uber' => [ JAVA_RELEASE_TARGETS = %w[ //java/src/org/openqa/selenium/chrome:chrome.publish //java/src/org/openqa/selenium/chromium:chromium.publish - //java/src/org/openqa/selenium/devtools/v140:v140.publish + //java/src/org/openqa/selenium/devtools/v143:v143.publish //java/src/org/openqa/selenium/devtools/v141:v141.publish //java/src/org/openqa/selenium/devtools/v142:v142.publish //java/src/org/openqa/selenium/edge:edge.publish diff --git a/common/devtools/chromium/v140/BUILD.bazel b/common/devtools/chromium/v143/BUILD.bazel similarity index 100% rename from common/devtools/chromium/v140/BUILD.bazel rename to common/devtools/chromium/v143/BUILD.bazel diff --git a/common/devtools/chromium/v140/browser_protocol.pdl b/common/devtools/chromium/v143/browser_protocol.pdl similarity index 95% rename from common/devtools/chromium/v140/browser_protocol.pdl rename to common/devtools/chromium/v143/browser_protocol.pdl index 64b9c19d9a2fe..a41fb3a7848df 100644 --- a/common/devtools/chromium/v140/browser_protocol.pdl +++ b/common/devtools/chromium/v143/browser_protocol.pdl @@ -1,13 +1,13 @@ +version + major 1 + minor 3 + # Copyright 2017 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # # Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp -version - major 1 - minor 3 - experimental domain Accessibility depends on DOM @@ -114,7 +114,8 @@ experimental domain Accessibility # - from 'live' to 'root': attributes which apply to nodes in live regions # - from 'autocomplete' to 'valuetext': attributes which apply to widgets # - from 'checked' to 'selected': states which apply to widgets - # - from 'activedescendant' to 'owns' - relationships between elements other than parent/child/sibling. + # - from 'activedescendant' to 'owns': relationships between elements other than parent/child/sibling + # - from 'activeFullscreenElement' to 'uninteresting': reasons why this noode is hidden type AXPropertyName extends string enum actions @@ -158,6 +159,25 @@ experimental domain Accessibility labelledby owns url + # LINT.IfChange(AXIgnoredReason) + activeFullscreenElement + activeModalDialog + activeAriaModalDialog + ariaHiddenElement + ariaHiddenSubtree + emptyAlt + emptyText + inertElement + inertSubtree + labelContainer + labelFor + notRendered + notVisible + presentationalRole + probablyPresentational + inactiveCarouselTabContent + uninteresting + # LINT.ThenChange(//third_party/blink/renderer/modules/accessibility/ax_enums.cc:AXIgnoredReason) # A node in the accessibility tree. type AXNode extends object @@ -293,6 +313,12 @@ experimental domain Accessibility # Updated node data. array of AXNode nodes +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + experimental domain Animation depends on Runtime depends on DOM @@ -483,6 +509,12 @@ experimental domain Animation # Animation that was updated. Animation animation +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # Audits domain allows investigation of page violations and possible improvements. experimental domain Audits depends on Network @@ -788,8 +820,10 @@ experimental domain Audits WriteErrorInsufficientResources WriteErrorInvalidMatchField WriteErrorInvalidStructuredHeader + WriteErrorInvalidTTLField WriteErrorNavigationRequest WriteErrorNoMatchField + WriteErrorNonIntegerTTLField WriteErrorNonListMatchDestField WriteErrorNonSecureContext WriteErrorNonStringIdField @@ -1096,6 +1130,7 @@ experimental domain Audits enum BlockedFrameNavigation BlockedSubresource + NoisedCanvasReadback # This issue warns about uses of APIs that may be considered misuse to # re-identify users. @@ -1104,6 +1139,8 @@ experimental domain Audits UserReidentificationIssueType type # Applies to BlockedFrameNavigation and BlockedSubresource issue types. optional AffectedRequest request + # Applies to NoisedCanvasReadback issue type. + optional SourceCodeLocation sourceCodeLocation # A unique identifier for the type of issue. Each type may use one of the # optional fields in InspectorIssueDetails to convey more specific @@ -1230,72 +1267,11 @@ experimental domain Audits parameters InspectorIssue issue -# Defines commands and events for browser extensions. -experimental domain Extensions - # Storage areas. - type StorageArea extends string - enum - session - local - sync - managed - # Installs an unpacked extension from the filesystem similar to - # --load-extension CLI flags. Returns extension ID once the extension - # has been installed. Available if the client is connected using the - # --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging - # flag is set. - command loadUnpacked - parameters - # Absolute file path. - string path - returns - # Extension id. - string id - # Uninstalls an unpacked extension (others not supported) from the profile. - # Available if the client is connected using the --remote-debugging-pipe flag - # and the --enable-unsafe-extension-debugging. - command uninstall - parameters - # Extension id. - string id - # Gets data from extension storage in the given `storageArea`. If `keys` is - # specified, these are used to filter the result. - command getStorageItems - parameters - # ID of extension. - string id - # StorageArea to retrieve data from. - StorageArea storageArea - # Keys to retrieve. - optional array of string keys - returns - object data - # Removes `keys` from extension storage in the given `storageArea`. - command removeStorageItems - parameters - # ID of extension. - string id - # StorageArea to remove data from. - StorageArea storageArea - # Keys to remove. - array of string keys - # Clears extension storage in the given `storageArea`. - command clearStorageItems - parameters - # ID of extension. - string id - # StorageArea to remove data from. - StorageArea storageArea - # Sets `values` in extension storage in the given `storageArea`. The provided `values` - # will be merged with existing values in the storage area. - command setStorageItems - parameters - # ID of extension. - string id - # StorageArea to set data in. - StorageArea storageArea - # Values to set. - object values +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp # Defines commands and events for Autofill. experimental domain Autofill @@ -1315,6 +1291,8 @@ experimental domain Autofill type AddressField extends object properties # address field name, for example GIVEN_NAME. + # The full list of supported field names: + # https://source.chromium.org/chromium/chromium/src/+/main:components/autofill/core/browser/field_types.cc;l=38 string name # address field value, for example Jon Doe. string value @@ -1383,8 +1361,10 @@ experimental domain Autofill DOM.BackendNodeId fieldId # Identifies the frame that field belongs to. optional Page.FrameId frameId - # Credit card information to fill out the form. Credit card data is not saved. - CreditCard card + # Credit card information to fill out the form. Credit card data is not saved. Mutually exclusive with `address`. + optional CreditCard card + # Address to fill out the form. Address data is not saved. Mutually exclusive with `card`. + optional Address address # Set addresses so that developers can verify their forms implementation. command setAddresses @@ -1398,6 +1378,12 @@ experimental domain Autofill # Enables autofill domain notifications. command enable +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # Defines events for background web platform features. experimental domain BackgroundService # The Background Service that will be associated with the commands/events. @@ -1470,930 +1456,1183 @@ experimental domain BackgroundService parameters BackgroundServiceEvent backgroundServiceEvent -# The Browser domain defines methods and events for browser managing. -domain Browser - experimental type BrowserContextID extends string - experimental type WindowID extends integer +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # The state of the browser window. - experimental type WindowState extends string +# This domain allows configuring virtual Bluetooth devices to test +# the web-bluetooth API. +experimental domain BluetoothEmulation + # Indicates the various states of Central. + type CentralState extends string enum - normal - minimized - maximized - fullscreen - - # Browser window bounds information - experimental type Bounds extends object - properties - # The offset from the left edge of the screen to the window in pixels. - optional integer left - # The offset from the top edge of the screen to the window in pixels. - optional integer top - # The window width in pixels. - optional integer width - # The window height in pixels. - optional integer height - # The window state. Default to normal. - optional WindowState windowState + absent + powered-off + powered-on - experimental type PermissionType extends string + # Indicates the various types of GATT event. + type GATTOperationType extends string enum - ar - audioCapture - automaticFullscreen - backgroundFetch - backgroundSync - cameraPanTiltZoom - capturedSurfaceControl - clipboardReadWrite - clipboardSanitizedWrite - displayCapture - durableStorage - geolocation - handTracking - idleDetection - keyboardLock - localFonts - localNetworkAccess - midi - midiSysex - nfc - notifications - paymentHandler - periodicBackgroundSync - pointerLock - protectedMediaIdentifier - sensors - smartCard - speakerSelection - storageAccess - topLevelStorageAccess - videoCapture - vr - wakeLockScreen - wakeLockSystem - webAppInstallation - webPrinting - windowManagement + connection + discovery - experimental type PermissionSetting extends string + # Indicates the various types of characteristic write. + type CharacteristicWriteType extends string enum - granted - denied - prompt - - # Definition of PermissionDescriptor defined in the Permissions API: - # https://w3c.github.io/permissions/#dom-permissiondescriptor. - experimental type PermissionDescriptor extends object - properties - # Name of permission. - # See https://cs.chromium.org/chromium/src/third_party/blink/renderer/modules/permissions/permission_descriptor.idl for valid permission names. - string name - # For "midi" permission, may also specify sysex control. - optional boolean sysex - # For "push" permission, may specify userVisibleOnly. - # Note that userVisibleOnly = true is the only currently supported type. - optional boolean userVisibleOnly - # For "clipboard" permission, may specify allowWithoutSanitization. - optional boolean allowWithoutSanitization - # For "fullscreen" permission, must specify allowWithoutGesture:true. - optional boolean allowWithoutGesture - # For "camera" permission, may specify panTiltZoom. - optional boolean panTiltZoom + write-default-deprecated + write-with-response + write-without-response - # Browser command ids used by executeBrowserCommand. - experimental type BrowserCommandId extends string + # Indicates the various types of characteristic operation. + type CharacteristicOperationType extends string enum - openTabSearch - closeTabSearch - openGlic - - # Set permission settings for given origin. - experimental command setPermission - parameters - # Descriptor of permission to override. - PermissionDescriptor permission - # Setting of the permission. - PermissionSetting setting - # Origin the permission applies to, all origins if not specified. - optional string origin - # Context to override. When omitted, default browser context is used. - optional BrowserContextID browserContextId + read + write + subscribe-to-notifications + unsubscribe-from-notifications - # Grant specific permissions to the given origin and reject all others. - experimental command grantPermissions - parameters - array of PermissionType permissions - # Origin the permission applies to, all origins if not specified. - optional string origin - # BrowserContext to override permissions. When omitted, default browser context is used. - optional BrowserContextID browserContextId + # Indicates the various types of descriptor operation. + type DescriptorOperationType extends string + enum + read + write - # Reset all permission management for all origins. - command resetPermissions - parameters - # BrowserContext to reset permissions. When omitted, default browser context is used. - optional BrowserContextID browserContextId + # Stores the manufacturer data + type ManufacturerData extends object + properties + # Company identifier + # https://bitbucket.org/bluetooth-SIG/public/src/main/assigned_numbers/company_identifiers/company_identifiers.yaml + # https://usb.org/developers + integer key + # Manufacturer-specific data + binary data - # Set the behavior when downloading a file. - experimental command setDownloadBehavior - parameters - # Whether to allow all or deny all download requests, or use default Chrome behavior if - # available (otherwise deny). |allowAndName| allows download and names files according to - # their download guids. - enum behavior - deny - allow - allowAndName - default - # BrowserContext to set download behavior. When omitted, default browser context is used. - optional BrowserContextID browserContextId - # The default path to save downloaded files to. This is required if behavior is set to 'allow' - # or 'allowAndName'. - optional string downloadPath - # Whether to emit download events (defaults to false). - optional boolean eventsEnabled + # Stores the byte data of the advertisement packet sent by a Bluetooth device. + type ScanRecord extends object + properties + optional string name + optional array of string uuids + # Stores the external appearance description of the device. + optional integer appearance + # Stores the transmission power of a broadcasting device. + optional integer txPower + # Key is the company identifier and the value is an array of bytes of + # manufacturer specific data. + optional array of ManufacturerData manufacturerData - # Cancel a download if in progress - experimental command cancelDownload - parameters - # Global unique identifier of the download. - string guid - # BrowserContext to perform the action in. When omitted, default browser context is used. - optional BrowserContextID browserContextId + # Stores the advertisement packet information that is sent by a Bluetooth device. + type ScanEntry extends object + properties + string deviceAddress + integer rssi + ScanRecord scanRecord - # Fired when page is about to start a download. - experimental event downloadWillBegin - parameters - # Id of the frame that caused the download to begin. - Page.FrameId frameId - # Global unique identifier of the download. - string guid - # URL of the resource being downloaded. - string url - # Suggested file name of the resource (the actual name of the file saved on disk may differ). - string suggestedFilename + # Describes the properties of a characteristic. This follows Bluetooth Core + # Specification BT 4.2 Vol 3 Part G 3.3.1. Characteristic Properties. + type CharacteristicProperties extends object + properties + optional boolean broadcast + optional boolean read + optional boolean writeWithoutResponse + optional boolean write + optional boolean notify + optional boolean indicate + optional boolean authenticatedSignedWrites + optional boolean extendedProperties - # Fired when download makes progress. Last call has |done| == true. - experimental event downloadProgress + # Enable the BluetoothEmulation domain. + command enable parameters - # Global unique identifier of the download. - string guid - # Total expected bytes to download. - number totalBytes - # Total bytes received. - number receivedBytes - # Download status. - enum state - inProgress - completed - canceled - # If download is "completed", provides the path of the downloaded file. - # Depending on the platform, it is not guaranteed to be set, nor the file - # is guaranteed to exist. - experimental optional string filePath - - # Close browser gracefully. - command close + # State of the simulated central. + CentralState state + # If the simulated central supports low-energy. + boolean leSupported - # Crashes browser on the main thread. - experimental command crash + # Set the state of the simulated central. + command setSimulatedCentralState + parameters + # State of the simulated central. + CentralState state - # Crashes GPU process. - experimental command crashGpuProcess + # Disable the BluetoothEmulation domain. + command disable - # Returns version information. - command getVersion - returns - # Protocol version. - string protocolVersion - # Product name. - string product - # Product revision. - string revision - # User-Agent. - string userAgent - # V8 version. - string jsVersion + # Simulates a peripheral with |address|, |name| and |knownServiceUuids| + # that has already been connected to the system. + command simulatePreconnectedPeripheral + parameters + string address + string name + array of ManufacturerData manufacturerData + array of string knownServiceUuids - # Returns the command line switches for the browser process if, and only if - # --enable-automation is on the commandline. - experimental command getBrowserCommandLine - returns - # Commandline parameters - array of string arguments + # Simulates an advertisement packet described in |entry| being received by + # the central. + command simulateAdvertisement + parameters + ScanEntry entry - # Chrome histogram bucket. - experimental type Bucket extends object - properties - # Minimum value (inclusive). - integer low - # Maximum value (exclusive). - integer high - # Number of samples. - integer count + # Simulates the response code from the peripheral with |address| for a + # GATT operation of |type|. The |code| value follows the HCI Error Codes from + # Bluetooth Core Specification Vol 2 Part D 1.3 List Of Error Codes. + command simulateGATTOperationResponse + parameters + string address + GATTOperationType type + integer code - # Chrome histogram. - experimental type Histogram extends object - properties - # Name. - string name - # Sum of sample values. - integer sum - # Total number of samples. - integer count - # Buckets. - array of Bucket buckets + # Simulates the response from the characteristic with |characteristicId| for a + # characteristic operation of |type|. The |code| value follows the Error + # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. + # The |data| is expected to exist when simulating a successful read operation + # response. + command simulateCharacteristicOperationResponse + parameters + string characteristicId + CharacteristicOperationType type + integer code + optional binary data - # Get Chrome histograms. - experimental command getHistograms + # Simulates the response from the descriptor with |descriptorId| for a + # descriptor operation of |type|. The |code| value follows the Error + # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. + # The |data| is expected to exist when simulating a successful read operation + # response. + command simulateDescriptorOperationResponse parameters - # Requested substring in name. Only histograms which have query as a - # substring in their name are extracted. An empty or absent query returns - # all histograms. - optional string query - # If true, retrieve delta since last delta call. - optional boolean delta + string descriptorId + DescriptorOperationType type + integer code + optional binary data + # Adds a service with |serviceUuid| to the peripheral with |address|. + command addService + parameters + string address + string serviceUuid returns - # Histograms. - array of Histogram histograms + # An identifier that uniquely represents this service. + string serviceId - # Get a Chrome histogram by name. - experimental command getHistogram + # Removes the service respresented by |serviceId| from the simulated central. + command removeService parameters - # Requested histogram name. - string name - # If true, retrieve delta since last delta call. - optional boolean delta - returns - # Histogram. - Histogram histogram + string serviceId - # Get position and size of the browser window. - experimental command getWindowBounds + # Adds a characteristic with |characteristicUuid| and |properties| to the + # service represented by |serviceId|. + command addCharacteristic parameters - # Browser window id. - WindowID windowId + string serviceId + string characteristicUuid + CharacteristicProperties properties returns - # Bounds information of the window. When window state is 'minimized', the restored window - # position and size are returned. - Bounds bounds + # An identifier that uniquely represents this characteristic. + string characteristicId - # Get the browser window that contains the devtools target. - experimental command getWindowForTarget + # Removes the characteristic respresented by |characteristicId| from the + # simulated central. + command removeCharacteristic parameters - # Devtools agent host id. If called as a part of the session, associated targetId is used. - optional Target.TargetID targetId + string characteristicId + + # Adds a descriptor with |descriptorUuid| to the characteristic respresented + # by |characteristicId|. + command addDescriptor + parameters + string characteristicId + string descriptorUuid returns - # Browser window id. - WindowID windowId - # Bounds information of the window. When window state is 'minimized', the restored window - # position and size are returned. - Bounds bounds + # An identifier that uniquely represents this descriptor. + string descriptorId - # Set position and/or size of the browser window. - experimental command setWindowBounds + # Removes the descriptor with |descriptorId| from the simulated central. + command removeDescriptor parameters - # Browser window id. - WindowID windowId - # New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined - # with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged. - Bounds bounds + string descriptorId - # Set size of the browser contents resizing browser window as necessary. - experimental command setContentsSize - parameters - # Browser window id. - WindowID windowId - # The window contents width in DIP. Assumes current width if omitted. - # Must be specified if 'height' is omitted. - optional integer width - # The window contents height in DIP. Assumes current height if omitted. - # Must be specified if 'width' is omitted. - optional integer height - - # Set dock tile details, platform-specific. - experimental command setDockTile + # Simulates a GATT disconnection from the peripheral with |address|. + command simulateGATTDisconnection parameters - optional string badgeLabel - # Png encoded image. - optional binary image + string address - # Invoke custom browser commands used by telemetry. - experimental command executeBrowserCommand + # Event for when a GATT operation of |type| to the peripheral with |address| + # happened. + event gattOperationReceived parameters - BrowserCommandId commandId + string address + GATTOperationType type - # Allows a site to use privacy sandbox features that require enrollment - # without the site actually being enrolled. Only supported on page targets. - command addPrivacySandboxEnrollmentOverride + # Event for when a characteristic operation of |type| to the characteristic + # respresented by |characteristicId| happened. |data| and |writeType| is + # expected to exist when |type| is write. + event characteristicOperationReceived parameters - string url - - experimental type PrivacySandboxAPI extends string - enum - BiddingAndAuctionServices - TrustedKeyValue + string characteristicId + CharacteristicOperationType type + optional binary data + optional CharacteristicWriteType writeType - # Configures encryption keys used with a given privacy sandbox API to talk - # to a trusted coordinator. Since this is intended for test automation only, - # coordinatorOrigin must be a .test domain. No existing coordinator - # configuration for the origin may exist. - command addPrivacySandboxCoordinatorKeyConfig + # Event for when a descriptor operation of |type| to the descriptor + # respresented by |descriptorId| happened. |data| is expected to exist when + # |type| is write. + event descriptorOperationReceived parameters - PrivacySandboxAPI api - string coordinatorOrigin - string keyConfig - # BrowserContext to perform the action in. When omitted, default browser - # context is used. - optional BrowserContextID browserContextId - + string descriptorId + DescriptorOperationType type + optional binary data -# 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. -experimental domain CSS - depends on DOM - depends on Page +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - type StyleSheetId extends string +# The Browser domain defines methods and events for browser managing. +domain Browser + experimental type BrowserContextID extends string + experimental type WindowID extends integer - # Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent - # stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via - # inspector" rules), "regular" for regular stylesheets. - type StyleSheetOrigin extends string + # The state of the browser window. + experimental type WindowState extends string enum - injected - user-agent - inspector - regular + normal + minimized + maximized + fullscreen - # CSS rule collection for a single pseudo style. - type PseudoElementMatches extends object + # Browser window bounds information + experimental type Bounds extends object properties - # Pseudo element type. - DOM.PseudoType pseudoType - # Pseudo element custom ident. - optional string pseudoIdentifier - # Matches of CSS rules applicable to the pseudo style. - array of RuleMatch matches + # The offset from the left edge of the screen to the window in pixels. + optional integer left + # The offset from the top edge of the screen to the window in pixels. + optional integer top + # The window width in pixels. + optional integer width + # The window height in pixels. + optional integer height + # The window state. Default to normal. + optional WindowState windowState - # CSS style coming from animations with the name of the animation. - type CSSAnimationStyle extends object - properties - # The name of the animation. - optional string name - # The style coming from the animation. - CSSStyle style + experimental type PermissionType extends string + enum + ar + audioCapture + automaticFullscreen + backgroundFetch + backgroundSync + cameraPanTiltZoom + capturedSurfaceControl + clipboardReadWrite + clipboardSanitizedWrite + displayCapture + durableStorage + geolocation + handTracking + idleDetection + keyboardLock + localFonts + localNetworkAccess + midi + midiSysex + nfc + notifications + paymentHandler + periodicBackgroundSync + pointerLock + protectedMediaIdentifier + sensors + smartCard + speakerSelection + storageAccess + topLevelStorageAccess + videoCapture + vr + wakeLockScreen + wakeLockSystem + webAppInstallation + webPrinting + windowManagement - # Inherited CSS rule collection from ancestor node. - type InheritedStyleEntry extends object - properties - # The ancestor node's inline style, if any, in the style inheritance chain. - optional CSSStyle inlineStyle - # Matches of CSS rules matching the ancestor node in the style inheritance chain. - array of RuleMatch matchedCSSRules + experimental type PermissionSetting extends string + enum + granted + denied + prompt - # Inherited CSS style collection for animated styles from ancestor node. - type InheritedAnimatedStyleEntry extends object + # Definition of PermissionDescriptor defined in the Permissions API: + # https://w3c.github.io/permissions/#dom-permissiondescriptor. + experimental type PermissionDescriptor extends object properties - # Styles coming from the animations of the ancestor, if any, in the style inheritance chain. - optional array of CSSAnimationStyle animationStyles - # The style coming from the transitions of the ancestor, if any, in the style inheritance chain. - optional CSSStyle transitionsStyle + # Name of permission. + # See https://cs.chromium.org/chromium/src/third_party/blink/renderer/modules/permissions/permission_descriptor.idl for valid permission names. + string name + # For "midi" permission, may also specify sysex control. + optional boolean sysex + # For "push" permission, may specify userVisibleOnly. + # Note that userVisibleOnly = true is the only currently supported type. + optional boolean userVisibleOnly + # For "clipboard" permission, may specify allowWithoutSanitization. + optional boolean allowWithoutSanitization + # For "fullscreen" permission, must specify allowWithoutGesture:true. + optional boolean allowWithoutGesture + # For "camera" permission, may specify panTiltZoom. + optional boolean panTiltZoom - # Inherited pseudo element matches from pseudos of an ancestor node. - type InheritedPseudoElementMatches extends object - properties - # Matches of pseudo styles from the pseudos of an ancestor node. - array of PseudoElementMatches pseudoElements + # Browser command ids used by executeBrowserCommand. + experimental type BrowserCommandId extends string + enum + openTabSearch + closeTabSearch + openGlic - # Match data for a CSS rule. - type RuleMatch extends object - properties - # CSS rule in the match. - CSSRule rule - # Matching selector indices in the rule's selectorList selectors (0-based). - array of integer matchingSelectors + # Set permission settings for given embedding and embedded origins. + experimental command setPermission + parameters + # Descriptor of permission to override. + PermissionDescriptor permission + # Setting of the permission. + PermissionSetting setting + # Embedding origin the permission applies to, all origins if not specified. + optional string origin + # Embedded origin the permission applies to. It is ignored unless the embedding origin is + # present and valid. If the embedding origin is provided but the embedded origin isn't, the + # embedding origin is used as the embedded origin. + optional string embeddedOrigin + # Context to override. When omitted, default browser context is used. + optional BrowserContextID browserContextId - # Data for a simple selector (these are delimited by commas in a selector list). - type Value extends object - properties - # Value text. - string text - # Value range in the underlying resource (if available). - optional SourceRange range - # Specificity of the selector. - experimental optional Specificity specificity + # Grant specific permissions to the given origin and reject all others. Deprecated. Use + # setPermission instead. + experimental deprecated command grantPermissions + parameters + array of PermissionType permissions + # Origin the permission applies to, all origins if not specified. + optional string origin + # BrowserContext to override permissions. When omitted, default browser context is used. + optional BrowserContextID browserContextId - # Specificity: - # https://drafts.csswg.org/selectors/#specificity-rules - experimental type Specificity extends object - properties - # The a component, which represents the number of ID selectors. - integer a - # The b component, which represents the number of class selectors, attributes selectors, and - # pseudo-classes. - integer b - # The c component, which represents the number of type selectors and pseudo-elements. - integer c + # Reset all permission management for all origins. + command resetPermissions + parameters + # BrowserContext to reset permissions. When omitted, default browser context is used. + optional BrowserContextID browserContextId - # Selector list data. - type SelectorList extends object - properties - # Selectors in the list. - array of Value selectors - # Rule selector text. - string text + # Set the behavior when downloading a file. + experimental command setDownloadBehavior + parameters + # Whether to allow all or deny all download requests, or use default Chrome behavior if + # available (otherwise deny). |allowAndName| allows download and names files according to + # their download guids. + enum behavior + deny + allow + allowAndName + default + # BrowserContext to set download behavior. When omitted, default browser context is used. + optional BrowserContextID browserContextId + # The default path to save downloaded files to. This is required if behavior is set to 'allow' + # or 'allowAndName'. + optional string downloadPath + # Whether to emit download events (defaults to false). + optional boolean eventsEnabled - # CSS stylesheet metainformation. - type CSSStyleSheetHeader extends object - properties - # The stylesheet identifier. - StyleSheetId styleSheetId - # Owner frame identifier. + # Cancel a download if in progress + experimental command cancelDownload + parameters + # Global unique identifier of the download. + string guid + # BrowserContext to perform the action in. When omitted, default browser context is used. + optional BrowserContextID browserContextId + + # Fired when page is about to start a download. + experimental event downloadWillBegin + parameters + # Id of the frame that caused the download to begin. Page.FrameId frameId - # Stylesheet resource URL. Empty if this is a constructed stylesheet created using - # new CSSStyleSheet() (but non-empty if this is a constructed stylesheet imported - # as a CSS module script). - string sourceURL - # URL of source map associated with the stylesheet (if any). - optional string sourceMapURL - # Stylesheet origin. - StyleSheetOrigin origin - # Stylesheet title. - string title - # The backend id for the owner node of the stylesheet. - optional DOM.BackendNodeId ownerNode - # Denotes whether the stylesheet is disabled. - boolean disabled - # Whether the sourceURL field value comes from the sourceURL comment. - optional boolean hasSourceURL - # Whether this stylesheet is created for STYLE tag by parser. This flag is not set for - # document.written STYLE tags. - boolean isInline - # Whether this stylesheet is mutable. Inline stylesheets become mutable - # after they have been modified via CSSOM API. - # `` element's stylesheets become mutable only if DevTools modifies them. - # Constructed stylesheets (new CSSStyleSheet()) are mutable immediately after creation. - boolean isMutable - # True if this stylesheet is created through new CSSStyleSheet() or imported as a - # CSS module script. - boolean isConstructed - # Line offset of the stylesheet within the resource (zero based). - number startLine - # Column offset of the stylesheet within the resource (zero based). - number startColumn - # Size of the content (in characters). - number length - # Line offset of the end of the stylesheet within the resource (zero based). - number endLine - # Column offset of the end of the stylesheet within the resource (zero based). - number endColumn - # If the style sheet was loaded from a network resource, this indicates when the resource failed to load - experimental optional boolean loadingFailed + # Global unique identifier of the download. + string guid + # URL of the resource being downloaded. + string url + # Suggested file name of the resource (the actual name of the file saved on disk may differ). + string suggestedFilename - # CSS rule representation. - type CSSRule extends object - properties - # The css style sheet identifier (absent for user agent stylesheet and user-specified - # stylesheet rules) this rule came from. - optional StyleSheetId styleSheetId - # Rule selector data. - SelectorList selectorList - # Array of selectors from ancestor style rules, sorted by distance from the current rule. - experimental optional array of string nestingSelectors - # Parent stylesheet's origin. - StyleSheetOrigin origin - # Associated style declaration. - CSSStyle style - # Media list array (for rules involving media queries). The array enumerates media queries - # starting with the innermost one, going outwards. - optional array of CSSMedia media - # Container query list array (for rules involving container queries). - # The array enumerates container queries starting with the innermost one, going outwards. - experimental optional array of CSSContainerQuery containerQueries - # @supports CSS at-rule array. - # The array enumerates @supports at-rules starting with the innermost one, going outwards. - experimental optional array of CSSSupports supports - # Cascade layer array. Contains the layer hierarchy that this rule belongs to starting - # with the innermost layer and going outwards. - experimental optional array of CSSLayer layers - # @scope CSS at-rule array. - # The array enumerates @scope at-rules starting with the innermost one, going outwards. - experimental optional array of CSSScope scopes - # The array keeps the types of ancestor CSSRules from the innermost going outwards. - experimental optional array of CSSRuleType ruleTypes - # @starting-style CSS at-rule array. - # The array enumerates @starting-style at-rules starting with the innermost one, going outwards. - experimental optional array of CSSStartingStyle startingStyles + # Fired when download makes progress. Last call has |done| == true. + experimental event downloadProgress + parameters + # Global unique identifier of the download. + string guid + # Total expected bytes to download. + number totalBytes + # Total bytes received. + number receivedBytes + # Download status. + enum state + inProgress + completed + canceled + # If download is "completed", provides the path of the downloaded file. + # Depending on the platform, it is not guaranteed to be set, nor the file + # is guaranteed to exist. + experimental optional string filePath - # Enum indicating the type of a CSS rule, used to represent the order of a style rule's ancestors. - # This list only contains rule types that are collected during the ancestor rule collection. - experimental type CSSRuleType extends string - enum - MediaRule - SupportsRule - ContainerRule - LayerRule - ScopeRule - StyleRule - StartingStyleRule + # Close browser gracefully. + command close - # CSS coverage information. - type RuleUsage extends object - properties - # The css style sheet identifier (absent for user agent stylesheet and user-specified - # stylesheet rules) this rule came from. - StyleSheetId styleSheetId - # Offset of the start of the rule (including selector) from the beginning of the stylesheet. - number startOffset - # Offset of the end of the rule body from the beginning of the stylesheet. - number endOffset - # Indicates whether the rule was actually used by some element in the page. - boolean used + # Crashes browser on the main thread. + experimental command crash - # Text range within a resource. All numbers are zero-based. - type SourceRange extends object - properties - # Start line of range. - integer startLine - # Start column of range (inclusive). - integer startColumn - # End line of range - integer endLine - # End column of range (exclusive). - integer endColumn + # Crashes GPU process. + experimental command crashGpuProcess - type ShorthandEntry extends object - properties - # Shorthand name. - string name - # Shorthand value. - string value - # Whether the property has "!important" annotation (implies `false` if absent). - optional boolean important + # Returns version information. + command getVersion + returns + # Protocol version. + string protocolVersion + # Product name. + string product + # Product revision. + string revision + # User-Agent. + string userAgent + # V8 version. + string jsVersion - type CSSComputedStyleProperty extends object - properties - # Computed style property name. - string name - # Computed style property value. - string value + # Returns the command line switches for the browser process if, and only if + # --enable-automation is on the commandline. + experimental command getBrowserCommandLine + returns + # Commandline parameters + array of string arguments - # CSS style representation. - type CSSStyle extends object + # Chrome histogram bucket. + experimental type Bucket extends object properties - # The css style sheet identifier (absent for user agent stylesheet and user-specified - # stylesheet rules) this rule came from. - optional StyleSheetId styleSheetId - # CSS properties in the style. - array of CSSProperty cssProperties - # Computed values for all shorthands found in the style. - array of ShorthandEntry shorthandEntries - # Style declaration text (if available). - optional string cssText - # Style declaration range in the enclosing stylesheet (if available). - optional SourceRange range + # Minimum value (inclusive). + integer low + # Maximum value (exclusive). + integer high + # Number of samples. + integer count - # CSS property declaration data. - type CSSProperty extends object + # Chrome histogram. + experimental type Histogram extends object properties - # The property name. + # Name. string name - # The property value. - string value - # Whether the property has "!important" annotation (implies `false` if absent). - optional boolean important - # Whether the property is implicit (implies `false` if absent). - optional boolean implicit - # The full property text as specified in the style. - optional string text - # Whether the property is understood by the browser (implies `true` if absent). - optional boolean parsedOk - # Whether the property is disabled by the user (present for source-based properties only). - optional boolean disabled - # The entire property range in the enclosing style declaration (if available). - optional SourceRange range - # Parsed longhand components of this property if it is a shorthand. - # This field will be empty if the given property is not a shorthand. - experimental optional array of CSSProperty longhandProperties + # Sum of sample values. + integer sum + # Total number of samples. + integer count + # Buckets. + array of Bucket buckets - # CSS media rule descriptor. - type CSSMedia extends object - properties - # Media query text. - string text - # Source of the media query: "mediaRule" if specified by a @media rule, "importRule" if - # specified by an @import rule, "linkedSheet" if specified by a "media" attribute in a linked - # stylesheet's LINK tag, "inlineSheet" if specified by a "media" attribute in an inline - # stylesheet's STYLE tag. - enum source - mediaRule - importRule - linkedSheet - inlineSheet - # URL of the document containing the media query description. - optional string sourceURL - # The associated rule (@media or @import) header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId - # Array of media queries. - optional array of MediaQuery mediaList + # Get Chrome histograms. + experimental command getHistograms + parameters + # Requested substring in name. Only histograms which have query as a + # substring in their name are extracted. An empty or absent query returns + # all histograms. + optional string query + # If true, retrieve delta since last delta call. + optional boolean delta - # Media query descriptor. - type MediaQuery extends object - properties - # Array of media query expressions. - array of MediaQueryExpression expressions - # Whether the media query condition is satisfied. - boolean active + returns + # Histograms. + array of Histogram histograms - # Media query expression descriptor. - type MediaQueryExpression extends object + # Get a Chrome histogram by name. + experimental command getHistogram + parameters + # Requested histogram name. + string name + # If true, retrieve delta since last delta call. + optional boolean delta + returns + # Histogram. + Histogram histogram + + # Get position and size of the browser window. + experimental command getWindowBounds + parameters + # Browser window id. + WindowID windowId + returns + # Bounds information of the window. When window state is 'minimized', the restored window + # position and size are returned. + Bounds bounds + + # Get the browser window that contains the devtools target. + experimental command getWindowForTarget + parameters + # Devtools agent host id. If called as a part of the session, associated targetId is used. + optional Target.TargetID targetId + returns + # Browser window id. + WindowID windowId + # Bounds information of the window. When window state is 'minimized', the restored window + # position and size are returned. + Bounds bounds + + # Set position and/or size of the browser window. + experimental command setWindowBounds + parameters + # Browser window id. + WindowID windowId + # New window bounds. The 'minimized', 'maximized' and 'fullscreen' states cannot be combined + # with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged. + Bounds bounds + + # Set size of the browser contents resizing browser window as necessary. + experimental command setContentsSize + parameters + # Browser window id. + WindowID windowId + # The window contents width in DIP. Assumes current width if omitted. + # Must be specified if 'height' is omitted. + optional integer width + # The window contents height in DIP. Assumes current height if omitted. + # Must be specified if 'width' is omitted. + optional integer height + + # Set dock tile details, platform-specific. + experimental command setDockTile + parameters + optional string badgeLabel + # Png encoded image. + optional binary image + + # Invoke custom browser commands used by telemetry. + experimental command executeBrowserCommand + parameters + BrowserCommandId commandId + + # Allows a site to use privacy sandbox features that require enrollment + # without the site actually being enrolled. Only supported on page targets. + command addPrivacySandboxEnrollmentOverride + parameters + string url + + experimental type PrivacySandboxAPI extends string + enum + BiddingAndAuctionServices + TrustedKeyValue + + # Configures encryption keys used with a given privacy sandbox API to talk + # to a trusted coordinator. Since this is intended for test automation only, + # coordinatorOrigin must be a .test domain. No existing coordinator + # configuration for the origin may exist. + command addPrivacySandboxCoordinatorKeyConfig + parameters + PrivacySandboxAPI api + string coordinatorOrigin + string keyConfig + # BrowserContext to perform the action in. When omitted, default browser + # context is used. + optional BrowserContextID browserContextId + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +# 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. +experimental domain CSS + depends on DOM + depends on Page + + type StyleSheetId extends string + + # Stylesheet type: "injected" for stylesheets injected via extension, "user-agent" for user-agent + # stylesheets, "inspector" for stylesheets created by the inspector (i.e. those holding the "via + # inspector" rules), "regular" for regular stylesheets. + type StyleSheetOrigin extends string + enum + injected + user-agent + inspector + regular + + # CSS rule collection for a single pseudo style. + type PseudoElementMatches extends object properties - # Media query expression value. - number value - # Media query expression units. - string unit - # Media query expression feature. - string feature - # The associated range of the value text in the enclosing stylesheet (if available). - optional SourceRange valueRange - # Computed length of media query expression (if applicable). - optional number computedLength + # Pseudo element type. + DOM.PseudoType pseudoType + # Pseudo element custom ident. + optional string pseudoIdentifier + # Matches of CSS rules applicable to the pseudo style. + array of RuleMatch matches - # CSS container query rule descriptor. - experimental type CSSContainerQuery extends object + # CSS style coming from animations with the name of the animation. + type CSSAnimationStyle extends object properties - # Container query text. - string text - # The associated rule header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId - # Optional name for the container. + # The name of the animation. optional string name - # Optional physical axes queried for the container. - optional DOM.PhysicalAxes physicalAxes - # Optional logical axes queried for the container. - optional DOM.LogicalAxes logicalAxes - # true if the query contains scroll-state() queries. - optional boolean queriesScrollState - # true if the query contains anchored() queries. - optional boolean queriesAnchored + # The style coming from the animation. + CSSStyle style - # CSS Supports at-rule descriptor. - experimental type CSSSupports extends object + # Inherited CSS rule collection from ancestor node. + type InheritedStyleEntry extends object properties - # Supports rule text. - string text - # Whether the supports condition is satisfied. - boolean active - # The associated rule header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId + # The ancestor node's inline style, if any, in the style inheritance chain. + optional CSSStyle inlineStyle + # Matches of CSS rules matching the ancestor node in the style inheritance chain. + array of RuleMatch matchedCSSRules - # CSS Scope at-rule descriptor. - experimental type CSSScope extends object + # Inherited CSS style collection for animated styles from ancestor node. + type InheritedAnimatedStyleEntry extends object properties - # Scope rule text. - string text - # The associated rule header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId + # Styles coming from the animations of the ancestor, if any, in the style inheritance chain. + optional array of CSSAnimationStyle animationStyles + # The style coming from the transitions of the ancestor, if any, in the style inheritance chain. + optional CSSStyle transitionsStyle - # CSS Layer at-rule descriptor. - experimental type CSSLayer extends object + # Inherited pseudo element matches from pseudos of an ancestor node. + type InheritedPseudoElementMatches extends object properties - # Layer name. - string text - # The associated rule header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId + # Matches of pseudo styles from the pseudos of an ancestor node. + array of PseudoElementMatches pseudoElements - # CSS Starting Style at-rule descriptor. - experimental type CSSStartingStyle extends object + # Match data for a CSS rule. + type RuleMatch extends object properties - # The associated rule header range in the enclosing stylesheet (if - # available). - optional SourceRange range - # Identifier of the stylesheet containing this object (if exists). - optional StyleSheetId styleSheetId + # CSS rule in the match. + CSSRule rule + # Matching selector indices in the rule's selectorList selectors (0-based). + array of integer matchingSelectors - # CSS Layer data. - experimental type CSSLayerData extends object + # Data for a simple selector (these are delimited by commas in a selector list). + type Value extends object properties - # Layer name. - string name - # Direct sub-layers - optional array of CSSLayerData subLayers - # Layer order. The order determines the order of the layer in the cascade order. - # A higher number has higher priority in the cascade order. - number order + # Value text. + string text + # Value range in the underlying resource (if available). + optional SourceRange range + # Specificity of the selector. + experimental optional Specificity specificity - # Information about amount of glyphs that were rendered with given font. - type PlatformFontUsage extends object + # Specificity: + # https://drafts.csswg.org/selectors/#specificity-rules + experimental type Specificity extends object properties - # Font's family name reported by platform. - string familyName - # Font's PostScript name reported by platform. - string postScriptName - # Indicates if the font was downloaded or resolved locally. - boolean isCustomFont - # Amount of glyphs that were rendered with this font. - number glyphCount + # The a component, which represents the number of ID selectors. + integer a + # The b component, which represents the number of class selectors, attributes selectors, and + # pseudo-classes. + integer b + # The c component, which represents the number of type selectors and pseudo-elements. + integer c - # Information about font variation axes for variable fonts - type FontVariationAxis extends object + # Selector list data. + type SelectorList extends object properties - # The font-variation-setting tag (a.k.a. "axis tag"). - string tag - # Human-readable variation name in the default language (normally, "en"). - string name - # The minimum value (inclusive) the font supports for this tag. - number minValue - # The maximum value (inclusive) the font supports for this tag. - number maxValue - # The default value. - number defaultValue + # Selectors in the list. + array of Value selectors + # Rule selector text. + string text - # Properties of a web font: https://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#font-descriptions - # and additional information such as platformFontFamily and fontVariationAxes. - type FontFace extends object + # CSS stylesheet metainformation. + type CSSStyleSheetHeader extends object properties - # The font-family. - string fontFamily - # The font-style. - string fontStyle - # The font-variant. - string fontVariant - # The font-weight. - string fontWeight - # The font-stretch. - string fontStretch - # The font-display. - string fontDisplay - # The unicode-range. - string unicodeRange - # The src. - string src - # The resolved platform font family - string platformFontFamily - # Available variation settings (a.k.a. "axes"). - optional array of FontVariationAxis fontVariationAxes + # The stylesheet identifier. + StyleSheetId styleSheetId + # Owner frame identifier. + Page.FrameId frameId + # Stylesheet resource URL. Empty if this is a constructed stylesheet created using + # new CSSStyleSheet() (but non-empty if this is a constructed stylesheet imported + # as a CSS module script). + string sourceURL + # URL of source map associated with the stylesheet (if any). + optional string sourceMapURL + # Stylesheet origin. + StyleSheetOrigin origin + # Stylesheet title. + string title + # The backend id for the owner node of the stylesheet. + optional DOM.BackendNodeId ownerNode + # Denotes whether the stylesheet is disabled. + boolean disabled + # Whether the sourceURL field value comes from the sourceURL comment. + optional boolean hasSourceURL + # Whether this stylesheet is created for STYLE tag by parser. This flag is not set for + # document.written STYLE tags. + boolean isInline + # Whether this stylesheet is mutable. Inline stylesheets become mutable + # after they have been modified via CSSOM API. + # `` element's stylesheets become mutable only if DevTools modifies them. + # Constructed stylesheets (new CSSStyleSheet()) are mutable immediately after creation. + boolean isMutable + # True if this stylesheet is created through new CSSStyleSheet() or imported as a + # CSS module script. + boolean isConstructed + # Line offset of the stylesheet within the resource (zero based). + number startLine + # Column offset of the stylesheet within the resource (zero based). + number startColumn + # Size of the content (in characters). + number length + # Line offset of the end of the stylesheet within the resource (zero based). + number endLine + # Column offset of the end of the stylesheet within the resource (zero based). + number endColumn + # If the style sheet was loaded from a network resource, this indicates when the resource failed to load + experimental optional boolean loadingFailed - # CSS try rule representation. - type CSSTryRule extends object + # CSS rule representation. + type CSSRule extends object properties # The css style sheet identifier (absent for user agent stylesheet and user-specified # stylesheet rules) this rule came from. optional StyleSheetId styleSheetId + # Rule selector data. + SelectorList selectorList + # Array of selectors from ancestor style rules, sorted by distance from the current rule. + experimental optional array of string nestingSelectors # Parent stylesheet's origin. StyleSheetOrigin origin # Associated style declaration. CSSStyle style + # The BackendNodeId of the DOM node that constitutes the origin tree scope of this rule. + experimental optional DOM.BackendNodeId originTreeScopeNodeId + # Media list array (for rules involving media queries). The array enumerates media queries + # starting with the innermost one, going outwards. + optional array of CSSMedia media + # Container query list array (for rules involving container queries). + # The array enumerates container queries starting with the innermost one, going outwards. + experimental optional array of CSSContainerQuery containerQueries + # @supports CSS at-rule array. + # The array enumerates @supports at-rules starting with the innermost one, going outwards. + experimental optional array of CSSSupports supports + # Cascade layer array. Contains the layer hierarchy that this rule belongs to starting + # with the innermost layer and going outwards. + experimental optional array of CSSLayer layers + # @scope CSS at-rule array. + # The array enumerates @scope at-rules starting with the innermost one, going outwards. + experimental optional array of CSSScope scopes + # The array keeps the types of ancestor CSSRules from the innermost going outwards. + experimental optional array of CSSRuleType ruleTypes + # @starting-style CSS at-rule array. + # The array enumerates @starting-style at-rules starting with the innermost one, going outwards. + experimental optional array of CSSStartingStyle startingStyles - # CSS @position-try rule representation. - type CSSPositionTryRule extends object + # Enum indicating the type of a CSS rule, used to represent the order of a style rule's ancestors. + # This list only contains rule types that are collected during the ancestor rule collection. + experimental type CSSRuleType extends string + enum + MediaRule + SupportsRule + ContainerRule + LayerRule + ScopeRule + StyleRule + StartingStyleRule + + # CSS coverage information. + type RuleUsage extends object properties - # The prelude dashed-ident name - Value name # The css style sheet identifier (absent for user agent stylesheet and user-specified # stylesheet rules) this rule came from. - optional StyleSheetId styleSheetId - # Parent stylesheet's origin. - StyleSheetOrigin origin - # Associated style declaration. - CSSStyle style - boolean active + StyleSheetId styleSheetId + # Offset of the start of the rule (including selector) from the beginning of the stylesheet. + number startOffset + # Offset of the end of the rule body from the beginning of the stylesheet. + number endOffset + # Indicates whether the rule was actually used by some element in the page. + boolean used - # CSS keyframes rule representation. - type CSSKeyframesRule extends object + # Text range within a resource. All numbers are zero-based. + type SourceRange extends object properties - # Animation name. - Value animationName - # List of keyframes. - array of CSSKeyframeRule keyframes + # Start line of range. + integer startLine + # Start column of range (inclusive). + integer startColumn + # End line of range + integer endLine + # End column of range (exclusive). + integer endColumn - # Representation of a custom property registration through CSS.registerProperty - type CSSPropertyRegistration extends object + type ShorthandEntry extends object properties - string propertyName - optional Value initialValue - boolean inherits - string syntax + # Shorthand name. + string name + # Shorthand value. + string value + # Whether the property has "!important" annotation (implies `false` if absent). + optional boolean important + type CSSComputedStyleProperty extends object + properties + # Computed style property name. + string name + # Computed style property value. + string value - # CSS font-palette-values rule representation. - type CSSFontPaletteValuesRule extends object + experimental type ComputedStyleExtraFields extends object properties - # The css style sheet identifier (absent for user agent stylesheet and user-specified - # stylesheet rules) this rule came from. - optional StyleSheetId styleSheetId - # Parent stylesheet's origin. - StyleSheetOrigin origin - # Associated font palette name. - Value fontPaletteName - # Associated style declaration. - CSSStyle style + # Returns whether or not this node is being rendered with base appearance, + # which happens when it has its appearance property set to base/base-select + # or it is in the subtree of an element being rendered with base appearance. + boolean isAppearanceBase - # CSS property at-rule representation. - type CSSPropertyRule extends object + # CSS style representation. + type CSSStyle extends object properties # The css style sheet identifier (absent for user agent stylesheet and user-specified # stylesheet rules) this rule came from. optional StyleSheetId styleSheetId - # Parent stylesheet's origin. - StyleSheetOrigin origin - # Associated property name. - Value propertyName - # Associated style declaration. - CSSStyle style - - # CSS function argument representation. - type CSSFunctionParameter extends object - properties - # The parameter name. - string name - # The parameter type. - string type + # CSS properties in the style. + array of CSSProperty cssProperties + # Computed values for all shorthands found in the style. + array of ShorthandEntry shorthandEntries + # Style declaration text (if available). + optional string cssText + # Style declaration range in the enclosing stylesheet (if available). + optional SourceRange range - # CSS function conditional block representation. - type CSSFunctionConditionNode extends object + # CSS property declaration data. + type CSSProperty extends object properties - # Media query for this conditional block. Only one type of condition should be set. - optional CSSMedia media - # Container query for this conditional block. Only one type of condition should be set. - optional CSSContainerQuery containerQueries - # @supports CSS at-rule condition. Only one type of condition should be set. - optional CSSSupports supports - # Block body. - array of CSSFunctionNode children - # The condition text. - string conditionText + # The property name. + string name + # The property value. + string value + # Whether the property has "!important" annotation (implies `false` if absent). + optional boolean important + # Whether the property is implicit (implies `false` if absent). + optional boolean implicit + # The full property text as specified in the style. + optional string text + # Whether the property is understood by the browser (implies `true` if absent). + optional boolean parsedOk + # Whether the property is disabled by the user (present for source-based properties only). + optional boolean disabled + # The entire property range in the enclosing style declaration (if available). + optional SourceRange range + # Parsed longhand components of this property if it is a shorthand. + # This field will be empty if the given property is not a shorthand. + experimental optional array of CSSProperty longhandProperties - # Section of the body of a CSS function rule. - type CSSFunctionNode extends object + # CSS media rule descriptor. + type CSSMedia extends object properties - # A conditional block. If set, style should not be set. - optional CSSFunctionConditionNode condition - # Values set by this node. If set, condition should not be set. - optional CSSStyle style + # Media query text. + string text + # Source of the media query: "mediaRule" if specified by a @media rule, "importRule" if + # specified by an @import rule, "linkedSheet" if specified by a "media" attribute in a linked + # stylesheet's LINK tag, "inlineSheet" if specified by a "media" attribute in an inline + # stylesheet's STYLE tag. + enum source + mediaRule + importRule + linkedSheet + inlineSheet + # URL of the document containing the media query description. + optional string sourceURL + # The associated rule (@media or @import) header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + # Array of media queries. + optional array of MediaQuery mediaList - # CSS function at-rule representation. - type CSSFunctionRule extends object + # Media query descriptor. + type MediaQuery extends object + properties + # Array of media query expressions. + array of MediaQueryExpression expressions + # Whether the media query condition is satisfied. + boolean active + + # Media query expression descriptor. + type MediaQueryExpression extends object + properties + # Media query expression value. + number value + # Media query expression units. + string unit + # Media query expression feature. + string feature + # The associated range of the value text in the enclosing stylesheet (if available). + optional SourceRange valueRange + # Computed length of media query expression (if applicable). + optional number computedLength + + # CSS container query rule descriptor. + experimental type CSSContainerQuery extends object + properties + # Container query text. + string text + # The associated rule header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + # Optional name for the container. + optional string name + # Optional physical axes queried for the container. + optional DOM.PhysicalAxes physicalAxes + # Optional logical axes queried for the container. + optional DOM.LogicalAxes logicalAxes + # true if the query contains scroll-state() queries. + optional boolean queriesScrollState + # true if the query contains anchored() queries. + optional boolean queriesAnchored + + # CSS Supports at-rule descriptor. + experimental type CSSSupports extends object + properties + # Supports rule text. + string text + # Whether the supports condition is satisfied. + boolean active + # The associated rule header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + + # CSS Scope at-rule descriptor. + experimental type CSSScope extends object + properties + # Scope rule text. + string text + # The associated rule header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + + # CSS Layer at-rule descriptor. + experimental type CSSLayer extends object + properties + # Layer name. + string text + # The associated rule header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + + # CSS Starting Style at-rule descriptor. + experimental type CSSStartingStyle extends object + properties + # The associated rule header range in the enclosing stylesheet (if + # available). + optional SourceRange range + # Identifier of the stylesheet containing this object (if exists). + optional StyleSheetId styleSheetId + + # CSS Layer data. + experimental type CSSLayerData extends object + properties + # Layer name. + string name + # Direct sub-layers + optional array of CSSLayerData subLayers + # Layer order. The order determines the order of the layer in the cascade order. + # A higher number has higher priority in the cascade order. + number order + + # Information about amount of glyphs that were rendered with given font. + type PlatformFontUsage extends object + properties + # Font's family name reported by platform. + string familyName + # Font's PostScript name reported by platform. + string postScriptName + # Indicates if the font was downloaded or resolved locally. + boolean isCustomFont + # Amount of glyphs that were rendered with this font. + number glyphCount + + # Information about font variation axes for variable fonts + type FontVariationAxis extends object + properties + # The font-variation-setting tag (a.k.a. "axis tag"). + string tag + # Human-readable variation name in the default language (normally, "en"). + string name + # The minimum value (inclusive) the font supports for this tag. + number minValue + # The maximum value (inclusive) the font supports for this tag. + number maxValue + # The default value. + number defaultValue + + # Properties of a web font: https://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#font-descriptions + # and additional information such as platformFontFamily and fontVariationAxes. + type FontFace extends object + properties + # The font-family. + string fontFamily + # The font-style. + string fontStyle + # The font-variant. + string fontVariant + # The font-weight. + string fontWeight + # The font-stretch. + string fontStretch + # The font-display. + string fontDisplay + # The unicode-range. + string unicodeRange + # The src. + string src + # The resolved platform font family + string platformFontFamily + # Available variation settings (a.k.a. "axes"). + optional array of FontVariationAxis fontVariationAxes + + # CSS try rule representation. + type CSSTryRule extends object properties - # Name of the function. - Value name # The css style sheet identifier (absent for user agent stylesheet and user-specified # stylesheet rules) this rule came from. optional StyleSheetId styleSheetId # Parent stylesheet's origin. StyleSheetOrigin origin - # List of parameters. - array of CSSFunctionParameter parameters - # Function body. - array of CSSFunctionNode children + # Associated style declaration. + CSSStyle style - # CSS keyframe rule representation. - type CSSKeyframeRule extends object + # CSS @position-try rule representation. + type CSSPositionTryRule extends object properties + # The prelude dashed-ident name + Value name # The css style sheet identifier (absent for user agent stylesheet and user-specified # stylesheet rules) this rule came from. optional StyleSheetId styleSheetId # Parent stylesheet's origin. StyleSheetOrigin origin - # Associated key text. - Value keyText # Associated style declaration. CSSStyle style + boolean active - # A descriptor of operation to mutate style declaration text. - type StyleDeclarationEdit extends object + # CSS keyframes rule representation. + type CSSKeyframesRule extends object properties - # The css style sheet identifier. - StyleSheetId styleSheetId - # The range of the style text in the enclosing stylesheet. - SourceRange range - # New style text. - string text + # Animation name. + Value animationName + # List of keyframes. + array of CSSKeyframeRule keyframes - # Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the + # Representation of a custom property registration through CSS.registerProperty + type CSSPropertyRegistration extends object + properties + string propertyName + optional Value initialValue + boolean inherits + string syntax + + + # CSS font-palette-values rule representation. + type CSSFontPaletteValuesRule extends object + properties + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # Associated font palette name. + Value fontPaletteName + # Associated style declaration. + CSSStyle style + + # CSS property at-rule representation. + type CSSPropertyRule extends object + properties + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # Associated property name. + Value propertyName + # Associated style declaration. + CSSStyle style + + # CSS function argument representation. + type CSSFunctionParameter extends object + properties + # The parameter name. + string name + # The parameter type. + string type + + # CSS function conditional block representation. + type CSSFunctionConditionNode extends object + properties + # Media query for this conditional block. Only one type of condition should be set. + optional CSSMedia media + # Container query for this conditional block. Only one type of condition should be set. + optional CSSContainerQuery containerQueries + # @supports CSS at-rule condition. Only one type of condition should be set. + optional CSSSupports supports + # Block body. + array of CSSFunctionNode children + # The condition text. + string conditionText + + # Section of the body of a CSS function rule. + type CSSFunctionNode extends object + properties + # A conditional block. If set, style should not be set. + optional CSSFunctionConditionNode condition + # Values set by this node. If set, condition should not be set. + optional CSSStyle style + + # CSS function at-rule representation. + type CSSFunctionRule extends object + properties + # Name of the function. + Value name + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # List of parameters. + array of CSSFunctionParameter parameters + # Function body. + array of CSSFunctionNode children + + # CSS keyframe rule representation. + type CSSKeyframeRule extends object + properties + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # Associated key text. + Value keyText + # Associated style declaration. + CSSStyle style + + # A descriptor of operation to mutate style declaration text. + type StyleDeclarationEdit extends object + properties + # The css style sheet identifier. + StyleSheetId styleSheetId + # The range of the style text in the enclosing stylesheet. + SourceRange range + # New style text. + string text + + # Inserts a new rule with the given `ruleText` in a stylesheet with given `styleSheetId`, at the # position specified by `location`. command addRule parameters @@ -2481,6 +2720,9 @@ experimental domain CSS returns # Computed style for the specified DOM node. array of CSSComputedStyleProperty computedStyle + # A list of non-standard "extra fields" which blink stores alongside each + # computed style. + experimental ComputedStyleExtraFields extraFields # Resolve the specified values in the context of the provided element. # For example, a value of '1em' is evaluated according to the computed @@ -2493,8 +2735,7 @@ experimental domain CSS # resolved even then, return the provided value without any changes. experimental command resolveValues parameters - # Substitution functions (var()/env()/attr()) and cascade-dependent - # keywords (revert/revert-layer) do not work. + # Cascade-dependent keywords (revert/revert-layer) do not work. array of string values # Id of the node in whose context the expression is evaluated DOM.NodeId nodeId @@ -2803,6 +3044,12 @@ experimental domain CSS # The node id that has updated computed styles. DOM.NodeId nodeId +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + experimental domain CacheStorage depends on Storage @@ -2923,6 +3170,12 @@ experimental domain CacheStorage # is the count of all entries from this storage. number returnCount +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # A domain for interacting with Cast, Presentation API, and Remote Playback API # functionalities. experimental domain Cast @@ -2980,6 +3233,11 @@ experimental domain Cast parameters string issueMessage +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp # 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 @@ -3016,6 +3274,7 @@ domain DOM before after picker-icon + interest-hint marker backdrop column @@ -3153,6 +3412,7 @@ domain DOM optional CompatibilityMode compatibilityMode optional BackendNode assignedSlot experimental optional boolean isScrollable + experimental optional boolean affectedByStartingStyles # A structure to hold the top-level node of a detached tree and an array of its retained descendants. type DetachedElementInfo extends object @@ -3874,6 +4134,14 @@ domain DOM # If the node is scrollable. boolean isScrollable + # Fired when a node's starting styles changes. + experimental event affectedByStartingStylesFlagUpdated + parameters + # The id of the node. + DOM.NodeId nodeId + # If the node has starting styles. + boolean affectedByStartingStyles + # Called when a pseudo element is removed from an element. experimental event pseudoElementRemoved parameters @@ -3907,6 +4175,12 @@ domain DOM # Shadow root. Node root +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # 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. domain DOMDebugger @@ -4030,24 +4304,11 @@ domain DOMDebugger # Resource URL substring. All XHRs having this substring in the URL will get stopped upon. string url -# 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. -experimental domain EventBreakpoints - # Sets breakpoint on particular native event. - command setInstrumentationBreakpoint - parameters - # Instrumentation name to stop on. - string eventName - - # Removes breakpoint on particular native event. - command removeInstrumentationBreakpoint - parameters - # Instrumentation name to stop on. - string eventName - - # Removes all breakpoints - command disable +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp # This domain facilitates obtaining document snapshots with DOM, layout, and style information. experimental domain DOMSnapshot @@ -4363,6 +4624,12 @@ experimental domain DOMSnapshot # Shared string table that all string properties refer to with indexes. array of string strings +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # Query and modify DOM storage. experimental domain DOMStorage @@ -4430,6 +4697,56 @@ experimental domain DOMStorage parameters StorageId storageId +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +experimental domain DeviceAccess + # Device request id. + type RequestId extends string + + # A device id. + type DeviceId extends string + + # Device information displayed in a user prompt to select a device. + type PromptDevice extends object + properties + DeviceId id + # Display name as it appears in a device request user prompt. + string name + + # Enable events in this domain. + command enable + + # Disable events in this domain. + command disable + + # Select a device in response to a DeviceAccess.deviceRequestPrompted event. + command selectPrompt + parameters + RequestId id + DeviceId deviceId + + # Cancel a prompt in response to a DeviceAccess.deviceRequestPrompted event. + command cancelPrompt + parameters + RequestId id + + # A device request opened a user prompt to select a device. Respond with the + # selectPrompt or cancelPrompt command. + event deviceRequestPrompted + parameters + RequestId id + array of PromptDevice devices + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + experimental domain DeviceOrientation # Clears the overridden Device Orientation. @@ -4445,6 +4762,12 @@ experimental domain DeviceOrientation # Mock gamma number gamma +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + # This domain emulates different environments for the page. domain Emulation depends on DOM @@ -4601,6 +4924,56 @@ domain Emulation properties optional boolean available + experimental type WorkAreaInsets extends object + properties + # Work area top inset in pixels. Default is 0; + optional integer top + # Work area left inset in pixels. Default is 0; + optional integer left + # Work area bottom inset in pixels. Default is 0; + optional integer bottom + # Work area right inset in pixels. Default is 0; + optional integer right + + experimental type ScreenId extends string + + # Screen information similar to the one returned by window.getScreenDetails() method, + # see https://w3c.github.io/window-management/#screendetailed. + experimental type ScreenInfo extends object + properties + # Offset of the left edge of the screen. + integer left + # Offset of the top edge of the screen. + integer top + # Width of the screen. + integer width + # Height of the screen. + integer height + # Offset of the left edge of the available screen area. + integer availLeft + # Offset of the top edge of the available screen area. + integer availTop + # Width of the available screen area. + integer availWidth + # Height of the available screen area. + integer availHeight + # Specifies the screen's device pixel ratio. + number devicePixelRatio + # Specifies the screen's orientation. + ScreenOrientation orientation + # Specifies the screen's color depth in bits. + integer colorDepth + # Indicates whether the device has multiple screens. + boolean isExtended + # Indicates whether the screen is internal to the device or external, attached to the device. + boolean isInternal + # Indicates whether the screen is set as the the operating system primary screen. + boolean isPrimary + # Specifies the descriptive label for the screen. + string label + # Specifies the unique identifier of the screen. + ScreenId id + # Tells whether emulation is supported. deprecated command canEmulate returns @@ -4962,8869 +5335,9000 @@ domain Emulation # of size 100lvh. integer difference -# This domain provides experimental commands only supported in headless mode. -experimental domain HeadlessExperimental - depends on Page - depends on Runtime + # Returns device's screen configuration. + experimental command getScreenInfos + returns + array of ScreenInfo screenInfos - # Encoding options for a screenshot. - type ScreenshotParams extends object - properties - # Image compression format (defaults to png). - optional enum format - jpeg - png - webp - # Compression quality from range [0..100] (jpeg and webp only). - optional integer quality - # Optimize image encoding for speed, not for resulting size (defaults to false) - optional boolean optimizeForSpeed + # Add a new screen to the device. Only supported in headless mode. + experimental command addScreen + parameters + # Offset of the left edge of the screen in pixels. + integer left + # Offset of the top edge of the screen in pixels. + integer top + # The width of the screen in pixels. + integer width + # The height of the screen in pixels. + integer height + # Specifies the screen's work area. Default is entire screen. + optional WorkAreaInsets workAreaInsets + # Specifies the screen's device pixel ratio. Default is 1. + optional number devicePixelRatio + # Specifies the screen's rotation angle. Available values are 0, 90, 180 and 270. Default is 0. + optional integer rotation + # Specifies the screen's color depth in bits. Default is 24. + optional integer colorDepth + # Specifies the descriptive label for the screen. Default is none. + optional string label + # Indicates whether the screen is internal to the device or external, attached to the device. Default is false. + optional boolean isInternal + returns + ScreenInfo screenInfo - # Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a - # screenshot from the resulting frame. Requires that the target was created with enabled - # BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also - # https://goo.gle/chrome-headless-rendering for more background. - command beginFrame + # Remove screen from the device. Only supported in headless mode. + experimental command removeScreen parameters - # Timestamp of this BeginFrame in Renderer TimeTicks (milliseconds of uptime). If not set, - # the current time will be used. - optional number frameTimeTicks - # The interval between BeginFrames that is reported to the compositor, in milliseconds. - # Defaults to a 60 frames/second interval, i.e. about 16.666 milliseconds. - optional number interval - # Whether updates should not be committed and drawn onto the display. False by default. If - # true, only side effects of the BeginFrame will be run, such as layout and animations, but - # any visual updates may not be visible on the display or in screenshots. - optional boolean noDisplayUpdates - # If set, a screenshot of the frame will be captured and returned in the response. Otherwise, - # no screenshot will be captured. Note that capturing a screenshot can fail, for example, - # during renderer initialization. In such a case, no screenshot data will be returned. - optional ScreenshotParams screenshot - returns - # Whether the BeginFrame resulted in damage and, thus, a new frame was committed to the - # display. Reported for diagnostic uses, may be removed in the future. - boolean hasDamage - # Base64-encoded image data of the screenshot, if one was requested and successfully taken. - optional binary screenshotData + ScreenId screenId - # Disables headless events for the target. - deprecated command disable +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Enables headless events for the target. - deprecated command enable +# 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. +experimental domain EventBreakpoints + # Sets breakpoint on particular native event. + command setInstrumentationBreakpoint + parameters + # Instrumentation name to stop on. + string eventName -# Input/Output operations for streams produced by DevTools. -domain IO + # Removes breakpoint on particular native event. + command removeInstrumentationBreakpoint + parameters + # Instrumentation name to stop on. + string eventName - # This is either obtained from another method or specified as `blob:` where - # `` is an UUID of a Blob. - type StreamHandle extends string + # Removes all breakpoints + command disable - # Close the stream, discard any temporary backing storage. - command close - parameters - # Handle of the stream to close. - StreamHandle handle +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Read a chunk of the stream - command read +# Defines commands and events for browser extensions. +experimental domain Extensions + # Storage areas. + type StorageArea extends string + enum + session + local + sync + managed + # Installs an unpacked extension from the filesystem similar to + # --load-extension CLI flags. Returns extension ID once the extension + # has been installed. Available if the client is connected using the + # --remote-debugging-pipe flag and the --enable-unsafe-extension-debugging + # flag is set. + command loadUnpacked parameters - # Handle of the stream to read. - StreamHandle handle - # Seek to the specified offset before reading (if not specified, proceed with offset - # following the last read). Some types of streams may only support sequential reads. - optional integer offset - # Maximum number of bytes to read (left upon the agent discretion if not specified). - optional integer size + # Absolute file path. + string path returns - # Set if the data is base64-encoded - optional boolean base64Encoded - # Data that were read. - string data - # Set if the end-of-file condition occurred while reading. - boolean eof - - # Return UUID of Blob object specified by a remote object id. - command resolveBlob + # Extension id. + string id + # Uninstalls an unpacked extension (others not supported) from the profile. + # Available if the client is connected using the --remote-debugging-pipe flag + # and the --enable-unsafe-extension-debugging. + command uninstall parameters - # Object id of a Blob object wrapper. - Runtime.RemoteObjectId objectId + # Extension id. + string id + # Gets data from extension storage in the given `storageArea`. If `keys` is + # specified, these are used to filter the result. + command getStorageItems + parameters + # ID of extension. + string id + # StorageArea to retrieve data from. + StorageArea storageArea + # Keys to retrieve. + optional array of string keys returns - # UUID of the specified Blob. - string uuid + object data + # Removes `keys` from extension storage in the given `storageArea`. + command removeStorageItems + parameters + # ID of extension. + string id + # StorageArea to remove data from. + StorageArea storageArea + # Keys to remove. + array of string keys + # Clears extension storage in the given `storageArea`. + command clearStorageItems + parameters + # ID of extension. + string id + # StorageArea to remove data from. + StorageArea storageArea + # Sets `values` in extension storage in the given `storageArea`. The provided `values` + # will be merged with existing values in the storage area. + command setStorageItems + parameters + # ID of extension. + string id + # StorageArea to set data in. + StorageArea storageArea + # Values to set. + object values -experimental domain FileSystem - depends on Network - depends on Storage +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - type File extends object - properties - string name - # Timestamp - Network.TimeSinceEpoch lastModified - # Size in bytes - number size - string type +# This domain allows interacting with the FedCM dialog. +experimental domain FedCm + # Whether this is a sign-up or sign-in action for this account, i.e. + # whether this account has ever been used to sign in to this RP before. + type LoginState extends string + enum + SignIn + SignUp - type Directory extends object + # The types of FedCM dialogs. + type DialogType extends string + enum + AccountChooser + AutoReauthn + ConfirmIdpLogin + Error + + # The buttons on the FedCM dialog. + type DialogButton extends string + enum + ConfirmIdpLoginContinue + ErrorGotIt + ErrorMoreDetails + + # The URLs that each account has + type AccountUrlType extends string + enum + TermsOfService + PrivacyPolicy + + # Corresponds to IdentityRequestAccount + type Account extends object properties + string accountId + string email string name - array of string nestedDirectories - # Files that are directly nested under this directory. - array of File nestedFiles + string givenName + string pictureUrl + string idpConfigUrl + string idpLoginUrl + LoginState loginState + # These two are only set if the loginState is signUp + optional string termsOfServiceUrl + optional string privacyPolicyUrl - type BucketFileSystemLocator extends object - properties - # Storage key - Storage.SerializedStorageKey storageKey - # Bucket name. Not passing a `bucketName` will retrieve the default Bucket. (https://developer.mozilla.org/en-US/docs/Web/API/Storage_API#storage_buckets) - optional string bucketName - # Path to the directory using each path component as an array item. - array of string pathComponents + event dialogShown + parameters + string dialogId + DialogType dialogType + array of Account accounts + # These exist primarily so that the caller can verify the + # RP context was used appropriately. + string title + optional string subtitle - command getDirectory + # Triggered when a dialog is closed, either by user action, JS abort, + # or a command below. + event dialogClosed parameters - BucketFileSystemLocator bucketFileSystemLocator - returns - # Returns the directory object at the path. - Directory directory + string dialogId -experimental domain IndexedDB - depends on Runtime - depends on Storage + command enable + parameters + # Allows callers to disable the promise rejection delay that would + # normally happen, if this is unimportant to what's being tested. + # (step 4 of https://fedidcg.github.io/FedCM/#browser-api-rp-sign-in) + optional boolean disableRejectionDelay - # Database with an array of object stores. - type DatabaseWithObjectStores extends object - properties - # Database name. - string name - # Database version (type is not 'integer', as the standard - # requires the version number to be 'unsigned long long') - number version - # Object stores in this database. - array of ObjectStore objectStores + command disable - # Object store. - type ObjectStore extends object - properties - # Object store name. - string name - # Object store key path. - KeyPath keyPath - # If true, object store has auto increment flag set. - boolean autoIncrement - # Indexes in this object store. - array of ObjectStoreIndex indexes + command selectAccount + parameters + string dialogId + integer accountIndex - # Object store index. - type ObjectStoreIndex extends object - properties - # Index name. - string name - # Index key path. - KeyPath keyPath - # If true, index is unique. - boolean unique - # If true, index allows multiple entries for a key. - boolean multiEntry + command clickDialogButton + parameters + string dialogId + DialogButton dialogButton - # Key. - type Key extends object + command openUrl + parameters + string dialogId + integer accountIndex + AccountUrlType accountUrlType + + command dismissDialog + parameters + string dialogId + optional boolean triggerCooldown + + # Resets the cooldown time, if any, to allow the next FedCM call to show + # a dialog even if one was recently dismissed by the user. + command resetCooldown + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +# A domain for letting clients substitute browser's network layer with client code. +domain Fetch + depends on Network + depends on IO + depends on Page + + # Unique request identifier. + # Note that this does not identify individual HTTP requests that are part of + # a network request. + type RequestId extends string + + # Stages of the request to handle. Request will intercept before the request is + # sent. Response will intercept after the response is received (but before response + # body is received). + type RequestStage extends string + enum + Request + Response + + type RequestPattern extends object properties - # Key type. - enum type - number - string - date - array - # Number value. - optional number number - # String value. - optional string string - # Date value. - optional number date - # Array value. - optional array of Key array + # Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is + # backslash. Omitting is equivalent to `"*"`. + optional string urlPattern + # If set, only requests for matching resource types will be intercepted. + optional Network.ResourceType resourceType + # Stage at which to begin intercepting requests. Default is Request. + optional RequestStage requestStage - # Key range. - type KeyRange extends object + # Response HTTP header entry + type HeaderEntry extends object properties - # Lower bound. - optional Key lower - # Upper bound. - optional Key upper - # If true lower bound is open. - boolean lowerOpen - # If true upper bound is open. - boolean upperOpen + string name + string value - # Data entry. - type DataEntry extends object + # Authorization challenge for HTTP status code 401 or 407. + type AuthChallenge extends object properties - # Key object. - Runtime.RemoteObject key - # Primary key object. - Runtime.RemoteObject primaryKey - # Value object. - Runtime.RemoteObject value + # Source of the authentication challenge. + optional enum source + Server + Proxy + # Origin of the challenger. + string origin + # The authentication scheme used, such as basic or digest + string scheme + # The realm of the challenge. May be empty. + string realm - # Key path. - type KeyPath extends object + # Response to an AuthChallenge. + type AuthChallengeResponse extends object properties - # Key path type. - enum type - null - string - array - # String value. - optional string string - # Array value. - optional array of string array + # The decision on what to do in response to the authorization challenge. Default means + # deferring to the default behavior of the net stack, which will likely either the Cancel + # authentication or display a popup dialog box. + enum response + Default + CancelAuth + ProvideCredentials + # The username to provide, possibly empty. Should only be set if response is + # ProvideCredentials. + optional string username + # The password to provide, possibly empty. Should only be set if response is + # ProvideCredentials. + optional string password - # Clears all entries from an object store. - command clearObjectStore - parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - # Database name. - string databaseName - # Object store name. - string objectStoreName + # Disables the fetch domain. + command disable - # Deletes a database. - command deleteDatabase + # Enables issuing of requestPaused events. A request will be paused until client + # calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth. + command enable parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - # Database name. - string databaseName + # If specified, only requests matching any of these patterns will produce + # fetchRequested event and will be paused until clients response. If not set, + # all requests will be affected. + optional array of RequestPattern patterns + # If true, authRequired events will be issued and requests will be paused + # expecting a call to continueWithAuth. + optional boolean handleAuthRequests - # Delete a range of entries from an object store - command deleteObjectStoreEntries + # Causes the request to fail with specified reason. + command failRequest parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - string databaseName - string objectStoreName - # Range of entry keys to delete - KeyRange keyRange + # An id the client received in requestPaused event. + RequestId requestId + # Causes the request to fail with the given reason. + Network.ErrorReason errorReason - # Disables events from backend. - command disable + # Provides response to the request. + command fulfillRequest + parameters + # An id the client received in requestPaused event. + RequestId requestId + # An HTTP response code. + integer responseCode + # Response headers. + optional array of HeaderEntry responseHeaders + # Alternative way of specifying response headers as a \0-separated + # series of name: value pairs. Prefer the above method unless you + # need to represent some non-UTF8 values that can't be transmitted + # over the protocol as text. + optional binary binaryResponseHeaders + # A response body. If absent, original response body will be used if + # the request is intercepted at the response stage and empty body + # will be used if the request is intercepted at the request stage. + optional binary body + # A textual representation of responseCode. + # If absent, a standard phrase matching responseCode is used. + optional string responsePhrase - # Enables events from backend. - command enable + # Continues the request, optionally modifying some of its parameters. + command continueRequest + parameters + # An id the client received in requestPaused event. + RequestId requestId + # If set, the request url will be modified in a way that's not observable by page. + optional string url + # If set, the request method is overridden. + optional string method + # If set, overrides the post data in the request. + optional binary postData + # If set, overrides the request headers. Note that the overrides do not + # extend to subsequent redirect hops, if a redirect happens. Another override + # may be applied to a different request produced by a redirect. + optional array of HeaderEntry headers + # If set, overrides response interception behavior for this request. + experimental optional boolean interceptResponse - # Requests data from object store or index. - command requestData + # Continues a request supplying authChallengeResponse following authRequired event. + command continueWithAuth parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - # Database name. - string databaseName - # Object store name. - string objectStoreName - # Index name, empty string for object store data requests. - string indexName - # Number of records to skip. - integer skipCount - # Number of records to fetch. - integer pageSize - # Key range. - optional KeyRange keyRange - returns - # Array of object store data entries. - array of DataEntry objectStoreDataEntries - # If true, there are more entries to fetch in the given range. - boolean hasMore + # An id the client received in authRequired event. + RequestId requestId + # Response to with an authChallenge. + AuthChallengeResponse authChallengeResponse - # Gets metadata of an object store. - command getMetadata + # Continues loading of the paused response, optionally modifying the + # response headers. If either responseCode or headers are modified, all of them + # must be present. + experimental command continueResponse parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - # Database name. - string databaseName - # Object store name. - string objectStoreName - returns - # the entries count - number entriesCount - # the current value of key generator, to become the next inserted - # key into the object store. Valid if objectStore.autoIncrement - # is true. - number keyGeneratorValue + # An id the client received in requestPaused event. + RequestId requestId + # An HTTP response code. If absent, original response code will be used. + optional integer responseCode + # A textual representation of responseCode. + # If absent, a standard phrase matching responseCode is used. + optional string responsePhrase + # Response headers. If absent, original response headers will be used. + optional array of HeaderEntry responseHeaders + # Alternative way of specifying response headers as a \0-separated + # series of name: value pairs. Prefer the above method unless you + # need to represent some non-UTF8 values that can't be transmitted + # over the protocol as text. + optional binary binaryResponseHeaders - # Requests database with given name in given frame. - command requestDatabase + # Causes the body of the response to be received from the server and + # returned as a single string. May only be issued for a request that + # is paused in the Response stage and is mutually exclusive with + # takeResponseBodyForInterceptionAsStream. Calling other methods that + # affect the request or disabling fetch domain before body is received + # results in an undefined behavior. + # Note that the response body is not available for redirects. Requests + # paused in the _redirect received_ state may be differentiated by + # `responseCode` and presence of `location` response header, see + # comments to `requestPaused` for details. + command getResponseBody parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket - # Database name. - string databaseName + # Identifier for the intercepted request to get body for. + RequestId requestId returns - # Database with an array of object stores. - DatabaseWithObjectStores databaseWithObjectStores + # Response body. + string body + # True, if content was sent as base64. + boolean base64Encoded - # Requests database names for given security origin. - command requestDatabaseNames + # Returns a handle to the stream representing the response body. + # The request must be paused in the HeadersReceived stage. + # Note that after this command the request can't be continued + # as is -- client either needs to cancel it or to provide the + # response body. + # The stream only supports sequential read, IO.read will fail if the position + # is specified. + # This method is mutually exclusive with getResponseBody. + # Calling other methods that affect the request or disabling fetch + # domain before body is received results in an undefined behavior. + command takeResponseBodyAsStream parameters - # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. - # Security origin. - optional string securityOrigin - # Storage key. - optional string storageKey - # Storage bucket. If not specified, it uses the default bucket. - optional Storage.StorageBucket storageBucket + RequestId requestId returns - # Database names for origin. - array of string databaseNames - -domain Input + IO.StreamHandle stream - type TouchPoint extends object - properties - # X coordinate of the event relative to the main frame's viewport in CSS pixels. - number x - # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to - # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. - number y - # X radius of the touch area (default: 1.0). - optional number radiusX - # Y radius of the touch area (default: 1.0). - optional number radiusY - # Rotation angle (default: 0.0). - optional number rotationAngle - # Force (default: 1.0). - optional number force - # The normalized tangential pressure, which has a range of [-1,1] (default: 0). - experimental optional number tangentialPressure - # The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0) - optional number tiltX - # The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0). - optional number tiltY - # The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0). - experimental optional integer twist - # Identifier used to track touch sources between events, must be unique within an event. - optional number id + # Issued when the domain is enabled and the request URL matches the + # specified filter. The request is paused until the client responds + # with one of continueRequest, failRequest or fulfillRequest. + # The stage of the request can be determined by presence of responseErrorReason + # and responseStatusCode -- the request is at the response stage if either + # of these fields is present and in the request stage otherwise. + # Redirect responses and subsequent requests are reported similarly to regular + # responses and requests. Redirect responses may be distinguished by the value + # of `responseStatusCode` (which is one of 301, 302, 303, 307, 308) along with + # presence of the `location` header. Requests resulting from a redirect will + # have `redirectedRequestId` field set. + event requestPaused + parameters + # Each request the page makes will have a unique id. + RequestId requestId + # The details of the request. + Network.Request request + # The id of the frame that initiated the request. + Page.FrameId frameId + # How the requested resource will be used. + Network.ResourceType resourceType + # Response error if intercepted at response stage. + optional Network.ErrorReason responseErrorReason + # Response code if intercepted at response stage. + optional integer responseStatusCode + # Response status text if intercepted at response stage. + optional string responseStatusText + # Response headers if intercepted at the response stage. + optional array of HeaderEntry responseHeaders + # If the intercepted request had a corresponding Network.requestWillBeSent event fired for it, + # then this networkId will be the same as the requestId present in the requestWillBeSent event. + optional Network.RequestId networkId + # If the request is due to a redirect response from the server, the id of the request that + # has caused the redirect. + experimental optional RequestId redirectedRequestId - experimental type GestureSourceType extends string - enum - default - touch - mouse + # Issued when the domain is enabled with handleAuthRequests set to true. + # The request is paused until client responds with continueWithAuth. + event authRequired + parameters + # Each request the page makes will have a unique id. + RequestId requestId + # The details of the request. + Network.Request request + # The id of the frame that initiated the request. + Page.FrameId frameId + # How the requested resource will be used. + Network.ResourceType resourceType + # Details of the Authorization Challenge encountered. + # If this is set, client should respond with continueRequest that + # contains AuthChallengeResponse. + AuthChallenge authChallenge - type MouseButton extends string - enum - none - left - middle - right - back - forward +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # UTC time in seconds, counted from January 1, 1970. - type TimeSinceEpoch extends number +experimental domain FileSystem + depends on Network + depends on Storage - experimental type DragDataItem extends object + type File extends object properties - # Mime type of the dragged data. - string mimeType - # Depending of the value of `mimeType`, it contains the dragged link, - # text, HTML markup or any other data. - string data - - # Title associated with a link. Only valid when `mimeType` == "text/uri-list". - optional string title - - # Stores the base URL for the contained markup. Only valid when `mimeType` - # == "text/html". - optional string baseURL + string name + # Timestamp + Network.TimeSinceEpoch lastModified + # Size in bytes + number size + string type + type Directory extends object + properties + string name + array of string nestedDirectories + # Files that are directly nested under this directory. + array of File nestedFiles - experimental type DragData extends object + type BucketFileSystemLocator extends object properties - array of DragDataItem items - # List of filenames that should be included when dropping - optional array of string files - # Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16 - integer dragOperationsMask + # Storage key + Storage.SerializedStorageKey storageKey + # Bucket name. Not passing a `bucketName` will retrieve the default Bucket. (https://developer.mozilla.org/en-US/docs/Web/API/Storage_API#storage_buckets) + optional string bucketName + # Path to the directory using each path component as an array item. + array of string pathComponents - # Dispatches a drag event into the page. - experimental command dispatchDragEvent + command getDirectory parameters - # Type of the drag event. - enum type - dragEnter - dragOver - drop - dragCancel - # X coordinate of the event relative to the main frame's viewport in CSS pixels. - number x - # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to - # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. - number y - DragData data - # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 - # (default: 0). - optional integer modifiers + BucketFileSystemLocator bucketFileSystemLocator + returns + # Returns the directory object at the path. + Directory directory - # Dispatches a key event to the page. - command dispatchKeyEvent - parameters - # Type of the key event. - enum type - keyDown - keyUp - rawKeyDown - char - # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 - # (default: 0). - optional integer modifiers - # Time at which the event occurred. - optional TimeSinceEpoch timestamp - # Text as generated by processing a virtual key code with a keyboard layout. Not needed for - # for `keyUp` and `rawKeyDown` events (default: "") - optional string text - # Text that would have been generated by the keyboard if no modifiers were pressed (except for - # shift). Useful for shortcut (accelerator) key handling (default: ""). - optional string unmodifiedText - # Unique key identifier (e.g., 'U+0041') (default: ""). - optional string keyIdentifier - # Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: ""). - optional string code - # Unique DOM defined string value describing the meaning of the key in the context of active - # modifiers, keyboard layout, etc (e.g., 'AltGr') (default: ""). - optional string key - # Windows virtual key code (default: 0). - optional integer windowsVirtualKeyCode - # Native virtual key code (default: 0). - optional integer nativeVirtualKeyCode - # Whether the event was generated from auto repeat (default: false). - optional boolean autoRepeat - # Whether the event was generated from the keypad (default: false). - optional boolean isKeypad - # Whether the event was a system key event (default: false). - optional boolean isSystemKey - # Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default: - # 0). - optional integer location - # Editing commands to send with the key event (e.g., 'selectAll') (default: []). - # These are related to but not equal the command names used in `document.execCommand` and NSStandardKeyBindingResponding. - # See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names. - experimental optional array of string commands +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # This method emulates inserting text that doesn't come from a key press, - # for example an emoji keyboard or an IME. - experimental command insertText - parameters - # The text to insert. - string text +# This domain provides experimental commands only supported in headless mode. +experimental domain HeadlessExperimental + depends on Page + depends on Runtime - # This method sets the current candidate text for IME. - # Use imeCommitComposition to commit the final text. - # Use imeSetComposition with empty string as text to cancel composition. - experimental command imeSetComposition - parameters - # The text to insert - string text - # selection start - integer selectionStart - # selection end - integer selectionEnd - # replacement start - optional integer replacementStart - # replacement end - optional integer replacementEnd + # Encoding options for a screenshot. + type ScreenshotParams extends object + properties + # Image compression format (defaults to png). + optional enum format + jpeg + png + webp + # Compression quality from range [0..100] (jpeg and webp only). + optional integer quality + # Optimize image encoding for speed, not for resulting size (defaults to false) + optional boolean optimizeForSpeed - # Dispatches a mouse event to the page. - command dispatchMouseEvent + # Sends a BeginFrame to the target and returns when the frame was completed. Optionally captures a + # screenshot from the resulting frame. Requires that the target was created with enabled + # BeginFrameControl. Designed for use with --run-all-compositor-stages-before-draw, see also + # https://goo.gle/chrome-headless-rendering for more background. + command beginFrame parameters - # Type of the mouse event. - enum type - mousePressed - mouseReleased - mouseMoved - mouseWheel - # X coordinate of the event relative to the main frame's viewport in CSS pixels. - number x - # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to - # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. - number y - # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 - # (default: 0). - optional integer modifiers - # Time at which the event occurred. - optional TimeSinceEpoch timestamp - # Mouse button (default: "none"). - optional MouseButton button - # A number indicating which buttons are pressed on the mouse when a mouse event is triggered. - # Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0. - optional integer buttons - # Number of times the mouse button was clicked (default: 0). - optional integer clickCount - # The normalized pressure, which has a range of [0,1] (default: 0). - experimental optional number force - # The normalized tangential pressure, which has a range of [-1,1] (default: 0). - experimental optional number tangentialPressure - # The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0). - optional number tiltX - # The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0). - optional number tiltY - # The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0). - experimental optional integer twist - # X delta in CSS pixels for mouse wheel event (default: 0). - optional number deltaX - # Y delta in CSS pixels for mouse wheel event (default: 0). - optional number deltaY - # Pointer type (default: "mouse"). - optional enum pointerType - mouse - pen + # Timestamp of this BeginFrame in Renderer TimeTicks (milliseconds of uptime). If not set, + # the current time will be used. + optional number frameTimeTicks + # The interval between BeginFrames that is reported to the compositor, in milliseconds. + # Defaults to a 60 frames/second interval, i.e. about 16.666 milliseconds. + optional number interval + # Whether updates should not be committed and drawn onto the display. False by default. If + # true, only side effects of the BeginFrame will be run, such as layout and animations, but + # any visual updates may not be visible on the display or in screenshots. + optional boolean noDisplayUpdates + # If set, a screenshot of the frame will be captured and returned in the response. Otherwise, + # no screenshot will be captured. Note that capturing a screenshot can fail, for example, + # during renderer initialization. In such a case, no screenshot data will be returned. + optional ScreenshotParams screenshot + returns + # Whether the BeginFrame resulted in damage and, thus, a new frame was committed to the + # display. Reported for diagnostic uses, may be removed in the future. + boolean hasDamage + # Base64-encoded image data of the screenshot, if one was requested and successfully taken. + optional binary screenshotData - # Dispatches a touch event to the page. - command dispatchTouchEvent - parameters - # Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while - # TouchStart and TouchMove must contains at least one. - enum type - touchStart - touchEnd - touchMove - touchCancel - # Active touch points on the touch device. One event per any changed point (compared to - # previous touch event in a sequence) is generated, emulating pressing/moving/releasing points - # one by one. - array of TouchPoint touchPoints - # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 - # (default: 0). - optional integer modifiers - # Time at which the event occurred. - optional TimeSinceEpoch timestamp + # Disables headless events for the target. + deprecated command disable - # Cancels any active dragging in the page. - command cancelDragging + # Enables headless events for the target. + deprecated command enable - # Emulates touch event from the mouse event parameters. - experimental command emulateTouchFromMouseEvent - parameters - # Type of the mouse event. - enum type - mousePressed - mouseReleased - mouseMoved - mouseWheel - # X coordinate of the mouse pointer in DIP. - integer x - # Y coordinate of the mouse pointer in DIP. - integer y - # Mouse button. Only "none", "left", "right" are supported. - MouseButton button - # Time at which the event occurred (default: current time). - optional TimeSinceEpoch timestamp - # X delta in DIP for mouse wheel event (default: 0). - optional number deltaX - # Y delta in DIP for mouse wheel event (default: 0). - optional number deltaY - # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 - # (default: 0). - optional integer modifiers - # Number of times the mouse button was clicked (default: 0). - optional integer clickCount +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Ignores input events (useful while auditing page). - command setIgnoreInputEvents - parameters - # Ignores input events processing when set to true. - boolean ignore +# Input/Output operations for streams produced by DevTools. +domain IO - # Prevents default drag and drop behavior and instead emits `Input.dragIntercepted` events. - # Drag and drop behavior can be directly controlled via `Input.dispatchDragEvent`. - experimental command setInterceptDrags + # This is either obtained from another method or specified as `blob:` where + # `` is an UUID of a Blob. + type StreamHandle extends string + + # Close the stream, discard any temporary backing storage. + command close parameters - boolean enabled + # Handle of the stream to close. + StreamHandle handle - # Synthesizes a pinch gesture over a time period by issuing appropriate touch events. - experimental command synthesizePinchGesture + # Read a chunk of the stream + command read parameters - # X coordinate of the start of the gesture in CSS pixels. - number x - # Y coordinate of the start of the gesture in CSS pixels. - number y - # Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out). - number scaleFactor - # Relative pointer speed in pixels per second (default: 800). - optional integer relativeSpeed - # Which type of input events to be generated (default: 'default', which queries the platform - # for the preferred input type). - optional GestureSourceType gestureSourceType - - # Synthesizes a scroll gesture over a time period by issuing appropriate touch events. - experimental command synthesizeScrollGesture - parameters - # X coordinate of the start of the gesture in CSS pixels. - number x - # Y coordinate of the start of the gesture in CSS pixels. - number y - # The distance to scroll along the X axis (positive to scroll left). - optional number xDistance - # The distance to scroll along the Y axis (positive to scroll up). - optional number yDistance - # The number of additional pixels to scroll back along the X axis, in addition to the given - # distance. - optional number xOverscroll - # The number of additional pixels to scroll back along the Y axis, in addition to the given - # distance. - optional number yOverscroll - # Prevent fling (default: true). - optional boolean preventFling - # Swipe speed in pixels per second (default: 800). - optional integer speed - # Which type of input events to be generated (default: 'default', which queries the platform - # for the preferred input type). - optional GestureSourceType gestureSourceType - # The number of times to repeat the gesture (default: 0). - optional integer repeatCount - # The number of milliseconds delay between each repeat. (default: 250). - optional integer repeatDelayMs - # The name of the interaction markers to generate, if not empty (default: ""). - optional string interactionMarkerName - - # Synthesizes a tap gesture over a time period by issuing appropriate touch events. - experimental command synthesizeTapGesture - parameters - # X coordinate of the start of the gesture in CSS pixels. - number x - # Y coordinate of the start of the gesture in CSS pixels. - number y - # Duration between touchdown and touchup events in ms (default: 50). - optional integer duration - # Number of times to perform the tap (e.g. 2 for double tap, default: 1). - optional integer tapCount - # Which type of input events to be generated (default: 'default', which queries the platform - # for the preferred input type). - optional GestureSourceType gestureSourceType - - # Emitted only when `Input.setInterceptDrags` is enabled. Use this data with `Input.dispatchDragEvent` to - # restore normal drag and drop behavior. - experimental event dragIntercepted - parameters - DragData data - -experimental domain Inspector - - # Disables inspector domain notifications. - command disable - - # Enables inspector domain notifications. - command enable + # Handle of the stream to read. + StreamHandle handle + # Seek to the specified offset before reading (if not specified, proceed with offset + # following the last read). Some types of streams may only support sequential reads. + optional integer offset + # Maximum number of bytes to read (left upon the agent discretion if not specified). + optional integer size + returns + # Set if the data is base64-encoded + optional boolean base64Encoded + # Data that were read. + string data + # Set if the end-of-file condition occurred while reading. + boolean eof - # Fired when remote debugging connection is about to be terminated. Contains detach reason. - event detached + # Return UUID of Blob object specified by a remote object id. + command resolveBlob parameters - # The reason why connection has been terminated. - string reason + # Object id of a Blob object wrapper. + Runtime.RemoteObjectId objectId + returns + # UUID of the specified Blob. + string uuid - # Fired when debugging target has crashed - event targetCrashed +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Fired when debugging target has reloaded after crash - event targetReloadedAfterCrash +experimental domain IndexedDB + depends on Runtime + depends on Storage -experimental domain LayerTree - depends on DOM + # Database with an array of object stores. + type DatabaseWithObjectStores extends object + properties + # Database name. + string name + # Database version (type is not 'integer', as the standard + # requires the version number to be 'unsigned long long') + number version + # Object stores in this database. + array of ObjectStore objectStores - # Unique Layer identifier. - type LayerId extends string + # Object store. + type ObjectStore extends object + properties + # Object store name. + string name + # Object store key path. + KeyPath keyPath + # If true, object store has auto increment flag set. + boolean autoIncrement + # Indexes in this object store. + array of ObjectStoreIndex indexes - # Unique snapshot identifier. - type SnapshotId extends string + # Object store index. + type ObjectStoreIndex extends object + properties + # Index name. + string name + # Index key path. + KeyPath keyPath + # If true, index is unique. + boolean unique + # If true, index allows multiple entries for a key. + boolean multiEntry - # Rectangle where scrolling happens on the main thread. - type ScrollRect extends object + # Key. + type Key extends object properties - # Rectangle itself. - DOM.Rect rect - # Reason for rectangle to force scrolling on the main thread + # Key type. enum type - RepaintsOnScroll - TouchEventHandler - WheelEventHandler + number + string + date + array + # Number value. + optional number number + # String value. + optional string string + # Date value. + optional number date + # Array value. + optional array of Key array - # Sticky position constraints. - type StickyPositionConstraint extends object + # Key range. + type KeyRange extends object properties - # Layout rectangle of the sticky element before being shifted - DOM.Rect stickyBoxRect - # Layout rectangle of the containing block of the sticky element - DOM.Rect containingBlockRect - # The nearest sticky layer that shifts the sticky box - optional LayerId nearestLayerShiftingStickyBox - # The nearest sticky layer that shifts the containing block - optional LayerId nearestLayerShiftingContainingBlock + # Lower bound. + optional Key lower + # Upper bound. + optional Key upper + # If true lower bound is open. + boolean lowerOpen + # If true upper bound is open. + boolean upperOpen - # Serialized fragment of layer picture along with its offset within the layer. - type PictureTile extends object + # Data entry. + type DataEntry extends object properties - # Offset from owning layer left boundary - number x - # Offset from owning layer top boundary - number y - # Base64-encoded snapshot data. - binary picture + # Key object. + Runtime.RemoteObject key + # Primary key object. + Runtime.RemoteObject primaryKey + # Value object. + Runtime.RemoteObject value - # Information about a compositing layer. - type Layer extends object + # Key path. + type KeyPath extends object properties - # The unique id for this layer. - LayerId layerId - # The id of parent (not present for root). - optional LayerId parentLayerId - # The backend id for the node associated with this layer. - optional DOM.BackendNodeId backendNodeId - # Offset from parent layer, X coordinate. - number offsetX - # Offset from parent layer, Y coordinate. - number offsetY - # Layer width. - number width - # Layer height. - number height - # Transformation matrix for layer, default is identity matrix - optional array of number transform - # Transform anchor point X, absent if no transform specified - optional number anchorX - # Transform anchor point Y, absent if no transform specified - optional number anchorY - # Transform anchor point Z, absent if no transform specified - optional number anchorZ - # Indicates how many time this layer has painted. - integer paintCount - # Indicates whether this layer hosts any content, rather than being used for - # transform/scrolling purposes only. - boolean drawsContent - # Set if layer is not visible. - optional boolean invisible - # Rectangles scrolling on main thread only. - optional array of ScrollRect scrollRects - # Sticky position constraint information - optional StickyPositionConstraint stickyPositionConstraint - - # Array of timings, one per paint step. - type PaintProfile extends array of number + # Key path type. + enum type + null + string + array + # String value. + optional string string + # Array value. + optional array of string array - # Provides the reasons why the given layer was composited. - command compositingReasons + # Clears all entries from an object store. + command clearObjectStore parameters - # The id of the layer for which we want to get the reasons it was composited. - LayerId layerId - returns - # A list of strings specifying reasons for the given layer to become composited. - array of string compositingReasons - # A list of strings specifying reason IDs for the given layer to become composited. - array of string compositingReasonIds + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + # Database name. + string databaseName + # Object store name. + string objectStoreName - # Disables compositing tree inspection. + # Deletes a database. + command deleteDatabase + parameters + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + # Database name. + string databaseName + + # Delete a range of entries from an object store + command deleteObjectStoreEntries + parameters + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + string databaseName + string objectStoreName + # Range of entry keys to delete + KeyRange keyRange + + # Disables events from backend. command disable - # Enables compositing tree inspection. + # Enables events from backend. command enable - # Returns the snapshot identifier. - command loadSnapshot + # Requests data from object store or index. + command requestData parameters - # An array of tiles composing the snapshot. - array of PictureTile tiles + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + # Database name. + string databaseName + # Object store name. + string objectStoreName + # Index name. If not specified, it performs an object store data request. + optional string indexName + # Number of records to skip. + integer skipCount + # Number of records to fetch. + integer pageSize + # Key range. + optional KeyRange keyRange returns - # The id of the snapshot. - SnapshotId snapshotId + # Array of object store data entries. + array of DataEntry objectStoreDataEntries + # If true, there are more entries to fetch in the given range. + boolean hasMore - # Returns the layer snapshot identifier. - command makeSnapshot + # Gets metadata of an object store. + command getMetadata parameters - # The id of the layer. - LayerId layerId + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + # Database name. + string databaseName + # Object store name. + string objectStoreName returns - # The id of the layer snapshot. - SnapshotId snapshotId + # the entries count + number entriesCount + # the current value of key generator, to become the next inserted + # key into the object store. Valid if objectStore.autoIncrement + # is true. + number keyGeneratorValue - command profileSnapshot + # Requests database with given name in given frame. + command requestDatabase parameters - # The id of the layer snapshot. - SnapshotId snapshotId - # The maximum number of times to replay the snapshot (1, if not specified). - optional integer minRepeatCount - # The minimum duration (in seconds) to replay the snapshot. - optional number minDuration - # The clip rectangle to apply when replaying the snapshot. - optional DOM.Rect clipRect + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket + # Database name. + string databaseName returns - # The array of paint profiles, one per run. - array of PaintProfile timings - - # Releases layer snapshot captured by the back-end. - command releaseSnapshot - parameters - # The id of the layer snapshot. - SnapshotId snapshotId + # Database with an array of object stores. + DatabaseWithObjectStores databaseWithObjectStores - # Replays the layer snapshot and returns the resulting bitmap. - command replaySnapshot + # Requests database names for given security origin. + command requestDatabaseNames parameters - # The id of the layer snapshot. - SnapshotId snapshotId - # The first step to replay from (replay from the very start if not specified). - optional integer fromStep - # The last step to replay to (replay till the end if not specified). - optional integer toStep - # The scale to apply while replaying (defaults to 1). - optional number scale + # At least and at most one of securityOrigin, storageKey, or storageBucket must be specified. + # Security origin. + optional string securityOrigin + # Storage key. + optional string storageKey + # Storage bucket. If not specified, it uses the default bucket. + optional Storage.StorageBucket storageBucket returns - # A data: URL for resulting image. - string dataURL + # Database names for origin. + array of string databaseNames - # Replays the layer snapshot and returns canvas log. - command snapshotCommandLog - parameters - # The id of the layer snapshot. - SnapshotId snapshotId - returns - # The array of canvas function calls. - array of object commandLog +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - event layerPainted - parameters - # The id of the painted layer. - LayerId layerId - # Clip rectangle. - DOM.Rect clip +domain Input - event layerTreeDidChange - parameters - # Layer tree, absent if not in the compositing mode. - optional array of Layer layers + type TouchPoint extends object + properties + # X coordinate of the event relative to the main frame's viewport in CSS pixels. + number x + # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to + # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. + number y + # X radius of the touch area (default: 1.0). + optional number radiusX + # Y radius of the touch area (default: 1.0). + optional number radiusY + # Rotation angle (default: 0.0). + optional number rotationAngle + # Force (default: 1.0). + optional number force + # The normalized tangential pressure, which has a range of [-1,1] (default: 0). + experimental optional number tangentialPressure + # The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0) + optional number tiltX + # The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0). + optional number tiltY + # The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0). + experimental optional integer twist + # Identifier used to track touch sources between events, must be unique within an event. + optional number id -# Provides access to log entries. -domain Log - depends on Runtime - depends on Network + experimental type GestureSourceType extends string + enum + default + touch + mouse - # Log entry. - type LogEntry extends object + type MouseButton extends string + enum + none + left + middle + right + back + forward + + # UTC time in seconds, counted from January 1, 1970. + type TimeSinceEpoch extends number + + experimental type DragDataItem extends object properties - # Log entry source. - enum source - xml - javascript - network - storage - appcache - rendering - security - deprecation - worker - violation - intervention - recommendation - other - # Log entry severity. - enum level - verbose - info - warning - error - # Logged text. - string text - optional enum category - cors - # Timestamp when this entry was added. - Runtime.Timestamp timestamp - # URL of the resource if known. - optional string url - # Line number in the resource. - optional integer lineNumber - # JavaScript stack trace. - optional Runtime.StackTrace stackTrace - # Identifier of the network request associated with this entry. - optional Network.RequestId networkRequestId - # Identifier of the worker associated with this entry. - optional string workerId - # Call arguments. - optional array of Runtime.RemoteObject args + # Mime type of the dragged data. + string mimeType + # Depending of the value of `mimeType`, it contains the dragged link, + # text, HTML markup or any other data. + string data - # Violation configuration setting. - type ViolationSetting extends object - properties - # Violation type. - enum name - longTask - longLayout - blockedEvent - blockedParser - discouragedAPIUse - handler - recurringHandler - # Time threshold to trigger upon. - number threshold + # Title associated with a link. Only valid when `mimeType` == "text/uri-list". + optional string title - # Clears the log. - command clear + # Stores the base URL for the contained markup. Only valid when `mimeType` + # == "text/html". + optional string baseURL - # Disables log domain, prevents further log entries from being reported to the client. - command disable - # Enables log domain, sends the entries collected so far to the client by means of the - # `entryAdded` notification. - command enable + experimental type DragData extends object + properties + array of DragDataItem items + # List of filenames that should be included when dropping + optional array of string files + # Bit field representing allowed drag operations. Copy = 1, Link = 2, Move = 16 + integer dragOperationsMask - # start violation reporting. - command startViolationsReport + # Dispatches a drag event into the page. + experimental command dispatchDragEvent parameters - # Configuration for violations. - array of ViolationSetting config - - # Stop violation reporting. - command stopViolationsReport + # Type of the drag event. + enum type + dragEnter + dragOver + drop + dragCancel + # X coordinate of the event relative to the main frame's viewport in CSS pixels. + number x + # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to + # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. + number y + DragData data + # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 + # (default: 0). + optional integer modifiers - # Issued when new message was logged. - event entryAdded + # Dispatches a key event to the page. + command dispatchKeyEvent parameters - # The entry. - LogEntry entry - -experimental domain Memory - - # Memory pressure level. - type PressureLevel extends string - enum - moderate - critical - - # Retruns current DOM object counters. - command getDOMCounters - returns - integer documents - integer nodes - integer jsEventListeners - - # Retruns DOM object counters after preparing renderer for leak detection. - command getDOMCountersForLeakDetection - returns - # DOM object counters. - array of DOMCounter counters - - # Prepares for leak detection by terminating workers, stopping spellcheckers, - # dropping non-essential internal caches, running garbage collections, etc. - command prepareForLeakDetection - - # Simulate OomIntervention by purging V8 memory. - command forciblyPurgeJavaScriptMemory + # Type of the key event. + enum type + keyDown + keyUp + rawKeyDown + char + # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 + # (default: 0). + optional integer modifiers + # Time at which the event occurred. + optional TimeSinceEpoch timestamp + # Text as generated by processing a virtual key code with a keyboard layout. Not needed for + # for `keyUp` and `rawKeyDown` events (default: "") + optional string text + # Text that would have been generated by the keyboard if no modifiers were pressed (except for + # shift). Useful for shortcut (accelerator) key handling (default: ""). + optional string unmodifiedText + # Unique key identifier (e.g., 'U+0041') (default: ""). + optional string keyIdentifier + # Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: ""). + optional string code + # Unique DOM defined string value describing the meaning of the key in the context of active + # modifiers, keyboard layout, etc (e.g., 'AltGr') (default: ""). + optional string key + # Windows virtual key code (default: 0). + optional integer windowsVirtualKeyCode + # Native virtual key code (default: 0). + optional integer nativeVirtualKeyCode + # Whether the event was generated from auto repeat (default: false). + optional boolean autoRepeat + # Whether the event was generated from the keypad (default: false). + optional boolean isKeypad + # Whether the event was a system key event (default: false). + optional boolean isSystemKey + # Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default: + # 0). + optional integer location + # Editing commands to send with the key event (e.g., 'selectAll') (default: []). + # These are related to but not equal the command names used in `document.execCommand` and NSStandardKeyBindingResponding. + # See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names. + experimental optional array of string commands - # Enable/disable suppressing memory pressure notifications in all processes. - command setPressureNotificationsSuppressed + # This method emulates inserting text that doesn't come from a key press, + # for example an emoji keyboard or an IME. + experimental command insertText parameters - # If true, memory pressure notifications will be suppressed. - boolean suppressed + # The text to insert. + string text - # Simulate a memory pressure notification in all processes. - command simulatePressureNotification + # This method sets the current candidate text for IME. + # Use imeCommitComposition to commit the final text. + # Use imeSetComposition with empty string as text to cancel composition. + experimental command imeSetComposition parameters - # Memory pressure level of the notification. - PressureLevel level + # The text to insert + string text + # selection start + integer selectionStart + # selection end + integer selectionEnd + # replacement start + optional integer replacementStart + # replacement end + optional integer replacementEnd - # Start collecting native memory profile. - command startSampling + # Dispatches a mouse event to the page. + command dispatchMouseEvent parameters - # Average number of bytes between samples. - optional integer samplingInterval - # Do not randomize intervals between samples. - optional boolean suppressRandomness + # Type of the mouse event. + enum type + mousePressed + mouseReleased + mouseMoved + mouseWheel + # X coordinate of the event relative to the main frame's viewport in CSS pixels. + number x + # Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to + # the top of the viewport and Y increases as it proceeds towards the bottom of the viewport. + number y + # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 + # (default: 0). + optional integer modifiers + # Time at which the event occurred. + optional TimeSinceEpoch timestamp + # Mouse button (default: "none"). + optional MouseButton button + # A number indicating which buttons are pressed on the mouse when a mouse event is triggered. + # Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0. + optional integer buttons + # Number of times the mouse button was clicked (default: 0). + optional integer clickCount + # The normalized pressure, which has a range of [0,1] (default: 0). + experimental optional number force + # The normalized tangential pressure, which has a range of [-1,1] (default: 0). + experimental optional number tangentialPressure + # The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0). + optional number tiltX + # The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0). + optional number tiltY + # The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0). + experimental optional integer twist + # X delta in CSS pixels for mouse wheel event (default: 0). + optional number deltaX + # Y delta in CSS pixels for mouse wheel event (default: 0). + optional number deltaY + # Pointer type (default: "mouse"). + optional enum pointerType + mouse + pen - # Stop collecting native memory profile. - command stopSampling + # Dispatches a touch event to the page. + command dispatchTouchEvent + parameters + # Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while + # TouchStart and TouchMove must contains at least one. + enum type + touchStart + touchEnd + touchMove + touchCancel + # Active touch points on the touch device. One event per any changed point (compared to + # previous touch event in a sequence) is generated, emulating pressing/moving/releasing points + # one by one. + array of TouchPoint touchPoints + # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 + # (default: 0). + optional integer modifiers + # Time at which the event occurred. + optional TimeSinceEpoch timestamp - # Retrieve native memory allocations profile - # collected since renderer process startup. - command getAllTimeSamplingProfile - returns - SamplingProfile profile + # Cancels any active dragging in the page. + command cancelDragging - # Retrieve native memory allocations profile - # collected since browser process startup. - command getBrowserSamplingProfile - returns - SamplingProfile profile + # Emulates touch event from the mouse event parameters. + experimental command emulateTouchFromMouseEvent + parameters + # Type of the mouse event. + enum type + mousePressed + mouseReleased + mouseMoved + mouseWheel + # X coordinate of the mouse pointer in DIP. + integer x + # Y coordinate of the mouse pointer in DIP. + integer y + # Mouse button. Only "none", "left", "right" are supported. + MouseButton button + # Time at which the event occurred (default: current time). + optional TimeSinceEpoch timestamp + # X delta in DIP for mouse wheel event (default: 0). + optional number deltaX + # Y delta in DIP for mouse wheel event (default: 0). + optional number deltaY + # Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 + # (default: 0). + optional integer modifiers + # Number of times the mouse button was clicked (default: 0). + optional integer clickCount - # Retrieve native memory allocations profile collected since last - # `startSampling` call. - command getSamplingProfile - returns - SamplingProfile profile + # Ignores input events (useful while auditing page). + command setIgnoreInputEvents + parameters + # Ignores input events processing when set to true. + boolean ignore - # Heap profile sample. - type SamplingProfileNode extends object - properties - # Size of the sampled allocation. - number size - # Total bytes attributed to this sample. - number total - # Execution stack at the point of allocation. - array of string stack + # Prevents default drag and drop behavior and instead emits `Input.dragIntercepted` events. + # Drag and drop behavior can be directly controlled via `Input.dispatchDragEvent`. + experimental command setInterceptDrags + parameters + boolean enabled - # Array of heap profile samples. - type SamplingProfile extends object - properties - array of SamplingProfileNode samples - array of Module modules + # Synthesizes a pinch gesture over a time period by issuing appropriate touch events. + experimental command synthesizePinchGesture + parameters + # X coordinate of the start of the gesture in CSS pixels. + number x + # Y coordinate of the start of the gesture in CSS pixels. + number y + # Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out). + number scaleFactor + # Relative pointer speed in pixels per second (default: 800). + optional integer relativeSpeed + # Which type of input events to be generated (default: 'default', which queries the platform + # for the preferred input type). + optional GestureSourceType gestureSourceType - # Executable module information - type Module extends object - properties - # Name of the module. - string name - # UUID of the module. - string uuid - # Base address where the module is loaded into memory. Encoded as a decimal - # or hexadecimal (0x prefixed) string. - string baseAddress - # Size of the module in bytes. - number size + # Synthesizes a scroll gesture over a time period by issuing appropriate touch events. + experimental command synthesizeScrollGesture + parameters + # X coordinate of the start of the gesture in CSS pixels. + number x + # Y coordinate of the start of the gesture in CSS pixels. + number y + # The distance to scroll along the X axis (positive to scroll left). + optional number xDistance + # The distance to scroll along the Y axis (positive to scroll up). + optional number yDistance + # The number of additional pixels to scroll back along the X axis, in addition to the given + # distance. + optional number xOverscroll + # The number of additional pixels to scroll back along the Y axis, in addition to the given + # distance. + optional number yOverscroll + # Prevent fling (default: true). + optional boolean preventFling + # Swipe speed in pixels per second (default: 800). + optional integer speed + # Which type of input events to be generated (default: 'default', which queries the platform + # for the preferred input type). + optional GestureSourceType gestureSourceType + # The number of times to repeat the gesture (default: 0). + optional integer repeatCount + # The number of milliseconds delay between each repeat. (default: 250). + optional integer repeatDelayMs + # The name of the interaction markers to generate, if not empty (default: ""). + optional string interactionMarkerName - # DOM object counter data. - type DOMCounter extends object - properties - # Object name. Note: object names should be presumed volatile and clients should not expect - # the returned names to be consistent across runs. - string name - # Object count. - integer count + # Synthesizes a tap gesture over a time period by issuing appropriate touch events. + experimental command synthesizeTapGesture + parameters + # X coordinate of the start of the gesture in CSS pixels. + number x + # Y coordinate of the start of the gesture in CSS pixels. + number y + # Duration between touchdown and touchup events in ms (default: 50). + optional integer duration + # Number of times to perform the tap (e.g. 2 for double tap, default: 1). + optional integer tapCount + # Which type of input events to be generated (default: 'default', which queries the platform + # for the preferred input type). + optional GestureSourceType gestureSourceType -# 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. -domain Network - depends on Debugger - depends on Runtime - depends on Security + # Emitted only when `Input.setInterceptDrags` is enabled. Use this data with `Input.dispatchDragEvent` to + # restore normal drag and drop behavior. + experimental event dragIntercepted + parameters + DragData data - # Resource type as it was perceived by the rendering engine. - type ResourceType extends string - enum - Document - Stylesheet - Image - Media - Font - Script - TextTrack - XHR - Fetch - Prefetch - EventSource - WebSocket - Manifest - SignedExchange - Ping - CSPViolationReport - Preflight - FedCM - Other +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Unique loader identifier. - type LoaderId extends string +experimental domain Inspector - # Unique network request identifier. - # Note that this does not identify individual HTTP requests that are part of - # a network request. - type RequestId extends string + # Disables inspector domain notifications. + command disable - # Unique intercepted request identifier. - type InterceptionId extends string + # Enables inspector domain notifications. + command enable - # Network level fetch failure reason. - type ErrorReason extends string - enum - Failed - Aborted - TimedOut - AccessDenied - ConnectionClosed - ConnectionReset - ConnectionRefused - ConnectionAborted - ConnectionFailed - NameNotResolved - InternetDisconnected - AddressUnreachable - BlockedByClient - BlockedByResponse + # Fired when remote debugging connection is about to be terminated. Contains detach reason. + event detached + parameters + # The reason why connection has been terminated. + string reason - # UTC time in seconds, counted from January 1, 1970. - type TimeSinceEpoch extends number + # Fired when debugging target has crashed + event targetCrashed - # Monotonically increasing time in seconds since an arbitrary point in the past. - type MonotonicTime extends number + # Fired when debugging target has reloaded after crash + event targetReloadedAfterCrash - # Request / response headers as keys / values of JSON object. - type Headers extends object + # Fired on worker targets when main worker script and any imported scripts have been evaluated. + experimental event workerScriptLoaded - # The underlying connection technology that the browser is supposedly using. - type ConnectionType extends string - enum - none - cellular2g - cellular3g - cellular4g - bluetooth - ethernet - wifi - wimax - other +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Represents the cookie's 'SameSite' status: - # https://tools.ietf.org/html/draft-west-first-party-cookies - type CookieSameSite extends string - enum - Strict - Lax - None +experimental domain LayerTree + depends on DOM - # Represents the cookie's 'Priority' status: - # https://tools.ietf.org/html/draft-west-cookie-priority-00 - experimental type CookiePriority extends string - enum - Low - Medium - High + # Unique Layer identifier. + type LayerId extends string - # Represents the source scheme of the origin that originally set the cookie. - # A value of "Unset" allows protocol clients to emulate legacy cookie scope for the scheme. - # This is a temporary ability and it will be removed in the future. - experimental type CookieSourceScheme extends string - enum - Unset - NonSecure - Secure + # Unique snapshot identifier. + type SnapshotId extends string - # Timing information for the request. - type ResourceTiming extends object + # Rectangle where scrolling happens on the main thread. + type ScrollRect extends object properties - # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in - # milliseconds relatively to this requestTime. - number requestTime - # Started resolving proxy. - number proxyStart - # Finished resolving proxy. - number proxyEnd - # Started DNS address resolve. - number dnsStart - # Finished DNS address resolve. - number dnsEnd - # Started connecting to the remote host. - number connectStart - # Connected to the remote host. - number connectEnd - # Started SSL handshake. - number sslStart - # Finished SSL handshake. - number sslEnd - # Started running ServiceWorker. - experimental number workerStart - # Finished Starting ServiceWorker. - experimental number workerReady - # Started fetch event. - experimental number workerFetchStart - # Settled fetch event respondWith promise. - experimental number workerRespondWithSettled - # Started ServiceWorker static routing source evaluation. - experimental optional number workerRouterEvaluationStart - # Started cache lookup when the source was evaluated to `cache`. - experimental optional number workerCacheLookupStart - # Started sending request. - number sendStart - # Finished sending request. - number sendEnd - # Time the server started pushing request. - experimental number pushStart - # Time the server finished pushing request. - experimental number pushEnd - # Started receiving response headers. - experimental number receiveHeadersStart - # Finished receiving response headers. - number receiveHeadersEnd - - # Loading priority of a resource request. - type ResourcePriority extends string - enum - VeryLow - Low - Medium - High - VeryHigh + # Rectangle itself. + DOM.Rect rect + # Reason for rectangle to force scrolling on the main thread + enum type + RepaintsOnScroll + TouchEventHandler + WheelEventHandler - # Post data entry for HTTP request - type PostDataEntry extends object + # Sticky position constraints. + type StickyPositionConstraint extends object properties - optional binary bytes + # Layout rectangle of the sticky element before being shifted + DOM.Rect stickyBoxRect + # Layout rectangle of the containing block of the sticky element + DOM.Rect containingBlockRect + # The nearest sticky layer that shifts the sticky box + optional LayerId nearestLayerShiftingStickyBox + # The nearest sticky layer that shifts the containing block + optional LayerId nearestLayerShiftingContainingBlock - # HTTP request data. - type Request extends object + # Serialized fragment of layer picture along with its offset within the layer. + type PictureTile extends object properties - # Request URL (without fragment). - string url - # Fragment of the requested URL starting with hash, if present. - optional string urlFragment - # HTTP request method. - string method - # HTTP request headers. - Headers headers - # HTTP POST request data. - # Use postDataEntries instead. - deprecated optional string postData - # True when the request has POST data. Note that postData might still be omitted when this flag is true when the data is too long. - optional boolean hasPostData - # Request body elements (post data broken into individual entries). - experimental optional array of PostDataEntry postDataEntries - # The mixed content type of the request. - optional Security.MixedContentType mixedContentType - # Priority of the resource request at the time request is sent. - ResourcePriority initialPriority - # The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/ - enum referrerPolicy - unsafe-url - no-referrer-when-downgrade - no-referrer - origin - origin-when-cross-origin - same-origin - strict-origin - strict-origin-when-cross-origin - # Whether is loaded via link preload. - optional boolean isLinkPreload - # Set for requests when the TrustToken API is used. Contains the parameters - # passed by the developer (e.g. via "fetch") as understood by the backend. - experimental optional TrustTokenParams trustTokenParams - # True if this resource request is considered to be the 'same site' as the - # request corresponding to the main frame. - experimental optional boolean isSameSite + # Offset from owning layer left boundary + number x + # Offset from owning layer top boundary + number y + # Base64-encoded snapshot data. + binary picture - # Details of a signed certificate timestamp (SCT). - type SignedCertificateTimestamp extends object + # Information about a compositing layer. + type Layer extends object properties - # Validation status. - string status - # Origin. - string origin - # Log name / description. - string logDescription - # Log ID. - string logId - # Issuance date. Unlike TimeSinceEpoch, this contains the number of - # milliseconds since January 1, 1970, UTC, not the number of seconds. - number timestamp - # Hash algorithm. - string hashAlgorithm - # Signature algorithm. - string signatureAlgorithm - # Signature data. - string signatureData + # The unique id for this layer. + LayerId layerId + # The id of parent (not present for root). + optional LayerId parentLayerId + # The backend id for the node associated with this layer. + optional DOM.BackendNodeId backendNodeId + # Offset from parent layer, X coordinate. + number offsetX + # Offset from parent layer, Y coordinate. + number offsetY + # Layer width. + number width + # Layer height. + number height + # Transformation matrix for layer, default is identity matrix + optional array of number transform + # Transform anchor point X, absent if no transform specified + optional number anchorX + # Transform anchor point Y, absent if no transform specified + optional number anchorY + # Transform anchor point Z, absent if no transform specified + optional number anchorZ + # Indicates how many time this layer has painted. + integer paintCount + # Indicates whether this layer hosts any content, rather than being used for + # transform/scrolling purposes only. + boolean drawsContent + # Set if layer is not visible. + optional boolean invisible + # Rectangles scrolling on main thread only. + optional array of ScrollRect scrollRects + # Sticky position constraint information + optional StickyPositionConstraint stickyPositionConstraint - # Security details about a request. - type SecurityDetails extends object - properties - # Protocol name (e.g. "TLS 1.2" or "QUIC"). - string protocol - # Key Exchange used by the connection, or the empty string if not applicable. - string keyExchange - # (EC)DH group used by the connection, if applicable. - optional string keyExchangeGroup - # Cipher name. - string cipher - # TLS MAC. Note that AEAD ciphers do not have separate MACs. - optional string mac - # Certificate ID value. - Security.CertificateId certificateId - # Certificate subject name. - string subjectName - # Subject Alternative Name (SAN) DNS names and IP addresses. - array of string sanList - # Name of the issuing CA. - string issuer - # Certificate valid from date. - TimeSinceEpoch validFrom - # Certificate valid to (expiration) date - TimeSinceEpoch validTo - # List of signed certificate timestamps (SCTs). - array of SignedCertificateTimestamp signedCertificateTimestampList - # Whether the request complied with Certificate Transparency policy - CertificateTransparencyCompliance certificateTransparencyCompliance - # The signature algorithm used by the server in the TLS server signature, - # represented as a TLS SignatureScheme code point. Omitted if not - # applicable or not known. - optional integer serverSignatureAlgorithm - # Whether the connection used Encrypted ClientHello - boolean encryptedClientHello + # Array of timings, one per paint step. + type PaintProfile extends array of number - # Whether the request complied with Certificate Transparency policy. - type CertificateTransparencyCompliance extends string - enum - unknown - not-compliant - compliant + # Provides the reasons why the given layer was composited. + command compositingReasons + parameters + # The id of the layer for which we want to get the reasons it was composited. + LayerId layerId + returns + # A list of strings specifying reasons for the given layer to become composited. + array of string compositingReasons + # A list of strings specifying reason IDs for the given layer to become composited. + array of string compositingReasonIds - # The reason why request was blocked. - type BlockedReason extends string - enum - other - csp - mixed-content - origin - inspector - integrity - subresource-filter - content-type - coep-frame-resource-needs-coep-header - coop-sandboxed-iframe-cannot-navigate-to-coop-page - corp-not-same-origin - corp-not-same-origin-after-defaulted-to-same-origin-by-coep - corp-not-same-origin-after-defaulted-to-same-origin-by-dip - corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip - corp-not-same-site - sri-message-signature-mismatch + # Disables compositing tree inspection. + command disable - # The reason why request was blocked. - type CorsError extends string - enum - DisallowedByMode - InvalidResponse - WildcardOriginNotAllowed - MissingAllowOriginHeader - MultipleAllowOriginValues - InvalidAllowOriginValue - AllowOriginMismatch - InvalidAllowCredentials - CorsDisabledScheme - PreflightInvalidStatus - PreflightDisallowedRedirect - PreflightWildcardOriginNotAllowed - PreflightMissingAllowOriginHeader - PreflightMultipleAllowOriginValues - PreflightInvalidAllowOriginValue - PreflightAllowOriginMismatch - PreflightInvalidAllowCredentials - # TODO(https://crbug.com/1263483): Remove this once frontend code does - # not reference it anymore. - PreflightMissingAllowExternal - # TODO(https://crbug.com/1263483): Remove this once frontend code does - # not reference it anymore. - PreflightInvalidAllowExternal - PreflightMissingAllowPrivateNetwork - PreflightInvalidAllowPrivateNetwork - InvalidAllowMethodsPreflightResponse - InvalidAllowHeadersPreflightResponse - MethodDisallowedByPreflightResponse - HeaderDisallowedByPreflightResponse - RedirectContainsCredentials - # Request was a private network request initiated by a non-secure context. - InsecurePrivateNetwork - # Request carried a target IP address space property that did not match - # the target resource's address space. - InvalidPrivateNetworkAccess - # Request was a private network request yet did not carry a target IP - # address space. - UnexpectedPrivateNetworkAccess - NoCorsRedirectModeNotFollow - # Request was a private network request and needed user permission yet did - # not carry `Private-Network-Access-Id` in the preflight response. - # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md - PreflightMissingPrivateNetworkAccessId - # Request was a private network request and needed user permission yet did - # not carry `Private-Network-Access-Name` in the preflight response. - # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md - PreflightMissingPrivateNetworkAccessName - # Request was a private network request and needed user permission yet not - # able to request for permission. - # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md - PrivateNetworkAccessPermissionUnavailable - # Request was a private network request and is denied by user permission. - # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md - PrivateNetworkAccessPermissionDenied - # Request was a local network request and is denied by user permission. - # https://wicg.github.io/local-network-access/ - LocalNetworkAccessPermissionDenied + # Enables compositing tree inspection. + command enable - type CorsErrorStatus extends object - properties - CorsError corsError - string failedParameter + # Returns the snapshot identifier. + command loadSnapshot + parameters + # An array of tiles composing the snapshot. + array of PictureTile tiles + returns + # The id of the snapshot. + SnapshotId snapshotId - # Source of serviceworker response. - type ServiceWorkerResponseSource extends string - enum - cache-storage - http-cache - fallback-code - network + # Returns the layer snapshot identifier. + command makeSnapshot + parameters + # The id of the layer. + LayerId layerId + returns + # The id of the layer snapshot. + SnapshotId snapshotId - # Determines what type of Trust Token operation is executed and - # depending on the type, some additional parameters. The values - # are specified in third_party/blink/renderer/core/fetch/trust_token.idl. - experimental type TrustTokenParams extends object - properties - TrustTokenOperationType operation + command profileSnapshot + parameters + # The id of the layer snapshot. + SnapshotId snapshotId + # The maximum number of times to replay the snapshot (1, if not specified). + optional integer minRepeatCount + # The minimum duration (in seconds) to replay the snapshot. + optional number minDuration + # The clip rectangle to apply when replaying the snapshot. + optional DOM.Rect clipRect + returns + # The array of paint profiles, one per run. + array of PaintProfile timings - # Only set for "token-redemption" operation and determine whether - # to request a fresh SRR or use a still valid cached SRR. - enum refreshPolicy - UseCached - Refresh + # Releases layer snapshot captured by the back-end. + command releaseSnapshot + parameters + # The id of the layer snapshot. + SnapshotId snapshotId - # Origins of issuers from whom to request tokens or redemption - # records. - optional array of string issuers + # Replays the layer snapshot and returns the resulting bitmap. + command replaySnapshot + parameters + # The id of the layer snapshot. + SnapshotId snapshotId + # The first step to replay from (replay from the very start if not specified). + optional integer fromStep + # The last step to replay to (replay till the end if not specified). + optional integer toStep + # The scale to apply while replaying (defaults to 1). + optional number scale + returns + # A data: URL for resulting image. + string dataURL - experimental type TrustTokenOperationType extends string - enum - # Type "token-request" in the Trust Token API. - Issuance - # Type "token-redemption" in the Trust Token API. - Redemption - # Type "send-redemption-record" in the Trust Token API. - Signing + # Replays the layer snapshot and returns canvas log. + command snapshotCommandLog + parameters + # The id of the layer snapshot. + SnapshotId snapshotId + returns + # The array of canvas function calls. + array of object commandLog - # The reason why Chrome uses a specific transport protocol for HTTP semantics. - experimental type AlternateProtocolUsage extends string - enum - # Alternate Protocol was used without racing a normal connection. - alternativeJobWonWithoutRace - # Alternate Protocol was used by winning a race with a normal connection. - alternativeJobWonRace - # Alternate Protocol was not used by losing a race with a normal connection. - mainJobWonRace - # Alternate Protocol was not used because no Alternate-Protocol information - # was available when the request was issued, but an Alternate-Protocol header - # was present in the response. - mappingMissing - # Alternate Protocol was not used because it was marked broken. - broken - # HTTPS DNS protocol upgrade job was used without racing with a normal - # connection and an Alternate Protocol job. - dnsAlpnH3JobWonWithoutRace - # HTTPS DNS protocol upgrade job won a race with a normal connection and - # an Alternate Protocol job. - dnsAlpnH3JobWonRace - # This value is used when the reason is unknown. - unspecifiedReason + event layerPainted + parameters + # The id of the painted layer. + LayerId layerId + # Clip rectangle. + DOM.Rect clip - # Source of service worker router. - type ServiceWorkerRouterSource extends string - enum - network - cache - fetch-event - race-network-and-fetch-handler - race-network-and-cache + event layerTreeDidChange + parameters + # Layer tree, absent if not in the compositing mode. + optional array of Layer layers - experimental type ServiceWorkerRouterInfo extends object - properties - # ID of the rule matched. If there is a matched rule, this field will - # be set, otherwiser no value will be set. - optional integer ruleIdMatched - # The router source of the matched rule. If there is a matched rule, this - # field will be set, otherwise no value will be set. - optional ServiceWorkerRouterSource matchedSourceType - # The actual router source used. - optional ServiceWorkerRouterSource actualSourceType +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # HTTP response data. - type Response extends object +# Provides access to log entries. +domain Log + depends on Runtime + depends on Network + + # Log entry. + type LogEntry extends object properties - # Response URL. This URL can be different from CachedResource.url in case of redirect. - string url - # HTTP response status code. - integer status - # HTTP response status text. - string statusText - # HTTP response headers. - Headers headers - # HTTP response headers text. This has been replaced by the headers in Network.responseReceivedExtraInfo. - deprecated optional string headersText - # Resource mimeType as determined by the browser. - string mimeType - # Resource charset as determined by the browser (if applicable). - string charset - # Refined HTTP request headers that were actually transmitted over the network. - optional Headers requestHeaders - # HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo. - deprecated optional string requestHeadersText - # Specifies whether physical connection was actually reused for this request. - boolean connectionReused - # Physical connection id that was actually used for this request. - number connectionId - # Remote IP address. - optional string remoteIPAddress - # Remote port. - optional integer remotePort - # Specifies that the request was served from the disk cache. - optional boolean fromDiskCache - # Specifies that the request was served from the ServiceWorker. - optional boolean fromServiceWorker - # Specifies that the request was served from the prefetch cache. - optional boolean fromPrefetchCache - # Specifies that the request was served from the prefetch cache. - optional boolean fromEarlyHints - # Information about how ServiceWorker Static Router API was used. If this - # field is set with `matchedSourceType` field, a matching rule is found. - # If this field is set without `matchedSource`, no matching rule is found. - # Otherwise, the API is not used. - experimental optional ServiceWorkerRouterInfo serviceWorkerRouterInfo - # Total number of bytes received for this request so far. - number encodedDataLength - # Timing information for the given request. - optional ResourceTiming timing - # Response source of response from ServiceWorker. - optional ServiceWorkerResponseSource serviceWorkerResponseSource - # The time at which the returned response was generated. - optional TimeSinceEpoch responseTime - # Cache Storage Cache Name. - optional string cacheStorageCacheName - # Protocol used to fetch this request. - optional string protocol - # The reason why Chrome uses a specific transport protocol for HTTP semantics. - experimental optional AlternateProtocolUsage alternateProtocolUsage - # Security state of the request resource. - Security.SecurityState securityState - # Security details for the request. - optional SecurityDetails securityDetails - # Indicates whether the request was sent through IP Protection proxies. If - # set to true, the request used the IP Protection privacy feature. - experimental optional boolean isIpProtectionUsed + # Log entry source. + enum source + xml + javascript + network + storage + appcache + rendering + security + deprecation + worker + violation + intervention + recommendation + other + # Log entry severity. + enum level + verbose + info + warning + error + # Logged text. + string text + optional enum category + cors + # Timestamp when this entry was added. + Runtime.Timestamp timestamp + # URL of the resource if known. + optional string url + # Line number in the resource. + optional integer lineNumber + # JavaScript stack trace. + optional Runtime.StackTrace stackTrace + # Identifier of the network request associated with this entry. + optional Network.RequestId networkRequestId + # Identifier of the worker associated with this entry. + optional string workerId + # Call arguments. + optional array of Runtime.RemoteObject args - # WebSocket request data. - type WebSocketRequest extends object + # Violation configuration setting. + type ViolationSetting extends object properties - # HTTP request headers. - Headers headers + # Violation type. + enum name + longTask + longLayout + blockedEvent + blockedParser + discouragedAPIUse + handler + recurringHandler + # Time threshold to trigger upon. + number threshold - # WebSocket response data. - type WebSocketResponse extends object + # Clears the log. + command clear + + # Disables log domain, prevents further log entries from being reported to the client. + command disable + + # Enables log domain, sends the entries collected so far to the client by means of the + # `entryAdded` notification. + command enable + + # start violation reporting. + command startViolationsReport + parameters + # Configuration for violations. + array of ViolationSetting config + + # Stop violation reporting. + command stopViolationsReport + + # Issued when new message was logged. + event entryAdded + parameters + # The entry. + LogEntry entry + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +# This domain allows detailed inspection of media elements. +experimental domain Media + + # Players will get an ID that is unique within the agent context. + type PlayerId extends string + + type Timestamp extends number + + # Have one type per entry in MediaLogRecord::Type + # Corresponds to kMessage + type PlayerMessage extends object properties - # HTTP response status code. - integer status - # HTTP response status text. - string statusText - # HTTP response headers. - Headers headers - # HTTP response headers text. - optional string headersText - # HTTP request headers. - optional Headers requestHeaders - # HTTP request headers text. - optional string requestHeadersText + # Keep in sync with MediaLogMessageLevel + # We are currently keeping the message level 'error' separate from the + # PlayerError type because right now they represent different things, + # this one being a DVLOG(ERROR) style log message that gets printed + # based on what log level is selected in the UI, and the other is a + # representation of a media::PipelineStatus object. Soon however we're + # going to be moving away from using PipelineStatus for errors and + # introducing a new error type which should hopefully let us integrate + # the error log level into the PlayerError type. + enum level + error + warning + info + debug + string message - # WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests. - type WebSocketFrame extends object + # Corresponds to kMediaPropertyChange + type PlayerProperty extends object properties - # WebSocket message opcode. - number opcode - # WebSocket message mask. - boolean mask - # WebSocket message payload data. - # If the opcode is 1, this is a text message and payloadData is a UTF-8 string. - # If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data. - string payloadData + string name + string value - # Information about the cached resource. - type CachedResource extends object + # Corresponds to kMediaEventTriggered + type PlayerEvent extends object properties - # Resource URL. This is the url of the original network request. - string url - # Type of this resource. - ResourceType type - # Cached response data. - optional Response response - # Cached response body size. - number bodySize + Timestamp timestamp + string value - # Information about the request initiator. - type Initiator extends object + # Represents logged source line numbers reported in an error. + # NOTE: file and line are from chromium c++ implementation code, not js. + type PlayerErrorSourceLocation extends object properties - # Type of this initiator. - enum type - parser - script - preload - SignedExchange - preflight - other - # Initiator JavaScript stack trace, set for Script only. - # Requires the Debugger domain to be enabled. - optional Runtime.StackTrace stack - # Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type. - optional string url - # Initiator line number, set for Parser type or for Script type (when script is importing - # module) (0-based). - optional number lineNumber - # Initiator column number, set for Parser type or for Script type (when script is importing - # module) (0-based). - optional number columnNumber - # Set if another request triggered this request (e.g. preflight). - optional RequestId requestId + string file + integer line - # cookiePartitionKey object - # The representation of the components of the key that are created by the cookiePartitionKey class contained in net/cookies/cookie_partition_key.h. - experimental type CookiePartitionKey extends object + # Corresponds to kMediaError + type PlayerError extends object properties - # The site of the top-level URL the browser was visiting at the start - # of the request to the endpoint that set the cookie. - string topLevelSite - # Indicates if the cookie has any ancestors that are cross-site to the topLevelSite. - boolean hasCrossSiteAncestor + string errorType + # Code is the numeric enum entry for a specific set of error codes, such + # as PipelineStatusCodes in media/base/pipeline_status.h + integer code + # A trace of where this error was caused / where it passed through. + array of PlayerErrorSourceLocation stack + # Errors potentially have a root cause error, ie, a DecoderError might be + # caused by an WindowsError + array of PlayerError cause + # Extra data attached to an error, such as an HRESULT, Video Codec, etc. + object data - # Cookie object - type Cookie extends object + type Player extends object properties - # Cookie name. - string name - # Cookie value. - string value - # Cookie domain. - string domain - # Cookie path. - string path - # Cookie expiration date as the number of seconds since the UNIX epoch. - number expires - # Cookie size. - integer size - # True if cookie is http-only. - boolean httpOnly - # True if cookie is secure. - boolean secure - # True in case of session cookie. - boolean session - # Cookie SameSite type. - optional CookieSameSite sameSite - # Cookie Priority - experimental CookiePriority priority - # True if cookie is SameParty. - experimental deprecated boolean sameParty - # Cookie source scheme type. - experimental CookieSourceScheme sourceScheme - # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. - # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. - # This is a temporary ability and it will be removed in the future. - experimental integer sourcePort - # Cookie partition key. - experimental optional CookiePartitionKey partitionKey - # True if cookie partition key is opaque. - experimental optional boolean partitionKeyOpaque + PlayerId playerId + optional DOM.BackendNodeId domNodeId - # Types of reasons why a cookie may not be stored from a response. - experimental type SetCookieBlockedReason extends string - enum - # The cookie had the "Secure" attribute but was not received over a secure connection. - SecureOnly - # The cookie had the "SameSite=Strict" attribute but came from a cross-origin response. - # This includes navigation requests initiated by other origins. - SameSiteStrict - # The cookie had the "SameSite=Lax" attribute but came from a cross-origin response. - SameSiteLax - # The cookie didn't specify a "SameSite" attribute and was defaulted to "SameSite=Lax" and - # broke the same rules specified in the SameSiteLax value. - SameSiteUnspecifiedTreatedAsLax - # The cookie had the "SameSite=None" attribute but did not specify the "Secure" attribute, - # which is required in order to use "SameSite=None". - SameSiteNoneInsecure - # The cookie was not stored due to user preferences. - UserPreferences - # The cookie was blocked due to third-party cookie phaseout. - ThirdPartyPhaseout - # The cookie was blocked by third-party cookie blocking between sites in - # the same First-Party Set. - ThirdPartyBlockedInFirstPartySet - # The syntax of the Set-Cookie header of the response was invalid. - SyntaxError - # The scheme of the connection is not allowed to store cookies. - SchemeNotSupported - # The cookie was not sent over a secure connection and would have overwritten a cookie with - # the Secure attribute. - OverwriteSecure - # The cookie's domain attribute was invalid with regards to the current host url. - InvalidDomain - # The cookie used the "__Secure-" or "__Host-" prefix in its name and broke the additional - # rules applied to cookies with these prefixes as defined in - # https://tools.ietf.org/html/draft-west-cookie-prefixes-05 - InvalidPrefix - # An unknown error was encountered when trying to store this cookie. - UnknownError - # The cookie had the "SameSite=Strict" attribute but came from a response - # with the same registrable domain but a different scheme. - # This includes navigation requests initiated by other origins. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteStrict - # The cookie had the "SameSite=Lax" attribute but came from a response - # with the same registrable domain but a different scheme. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteLax - # The cookie didn't specify a "SameSite" attribute and was defaulted to - # "SameSite=Lax" and broke the same rules specified in the SchemefulSameSiteLax - # value. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteUnspecifiedTreatedAsLax - # The cookie had the "SameParty" attribute but came from a cross-party response. - SamePartyFromCrossPartyContext - # The cookie had the "SameParty" attribute but did not specify the "Secure" attribute - # (which is required in order to use "SameParty"); or specified the "SameSite=Strict" - # attribute (which is forbidden when using "SameParty"). - SamePartyConflictsWithOtherAttributes - # The cookie's name/value pair size exceeded the size limit defined in - # RFC6265bis. - NameValuePairExceedsMaxSize - # The cookie contained a forbidden ASCII control character, or the tab - # character if it appears in the middle of the cookie name, value, an - # attribute name, or an attribute value. - DisallowedCharacter - # Cookie contains no content or only whitespace. - NoCookieContent + # This can be called multiple times, and can be used to set / override / + # remove player properties. A null propValue indicates removal. + event playerPropertiesChanged + parameters + PlayerId playerId + array of PlayerProperty properties - # Types of reasons why a cookie may not be sent with a request. - experimental type CookieBlockedReason extends string - enum - # The cookie had the "Secure" attribute and the connection was not secure. - SecureOnly - # The cookie's path was not within the request url's path. - NotOnPath - # The cookie's domain is not configured to match the request url's domain, even though they - # share a common TLD+1 (TLD+1 of foo.bar.example.com is example.com). - DomainMismatch - # The cookie had the "SameSite=Strict" attribute and the request was made on on a different - # site. This includes navigation requests initiated by other sites. - SameSiteStrict - # The cookie had the "SameSite=Lax" attribute and the request was made on a different site. - # This does not include navigation requests initiated by other sites. - SameSiteLax - # The cookie didn't specify a SameSite attribute when it was stored and was defaulted to - # "SameSite=Lax" and broke the same rules specified in the SameSiteLax value. The cookie had - # to have been set with "SameSite=None" to enable third-party usage. - SameSiteUnspecifiedTreatedAsLax - # The cookie had the "SameSite=None" attribute and the connection was not secure. Cookies - # without SameSite restrictions must be sent over a secure connection. - SameSiteNoneInsecure - # The cookie was not sent due to user preferences. - UserPreferences - # The cookie was blocked due to third-party cookie phaseout. - ThirdPartyPhaseout - # The cookie was blocked by third-party cookie blocking between sites in - # the same First-Party Set. - ThirdPartyBlockedInFirstPartySet - # An unknown error was encountered when trying to send this cookie. - UnknownError - # The cookie had the "SameSite=Strict" attribute but came from a response - # with the same registrable domain but a different scheme. - # This includes navigation requests initiated by other origins. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteStrict - # The cookie had the "SameSite=Lax" attribute but came from a response - # with the same registrable domain but a different scheme. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteLax - # The cookie didn't specify a "SameSite" attribute and was defaulted to - # "SameSite=Lax" and broke the same rules specified in the SchemefulSameSiteLax - # value. - # This is the "Schemeful Same-Site" version of the blocked reason. - SchemefulSameSiteUnspecifiedTreatedAsLax - # The cookie had the "SameParty" attribute and the request was made from a cross-party context. - SamePartyFromCrossPartyContext - # The cookie's name/value pair size exceeded the size limit defined in - # RFC6265bis. - NameValuePairExceedsMaxSize - # The cookie's source port value does not match the request origin's port. - PortMismatch - # The cookie's source scheme value does not match the request origin's scheme. - SchemeMismatch - # Unpartitioned cookie access from an anonymous context was blocked. - AnonymousContext + # Send events as a list, allowing them to be batched on the browser for less + # congestion. If batched, events must ALWAYS be in chronological order. + event playerEventsAdded + parameters + PlayerId playerId + array of PlayerEvent events - # Types of reasons why a cookie should have been blocked by 3PCD but is exempted for the request. - experimental type CookieExemptionReason extends string - enum - # The default value. Cookie with this reason could either be blocked or included. - None - # The cookie should have been blocked by 3PCD but is exempted by explicit user setting. - UserSetting - # The cookie should have been blocked by 3PCD but is exempted by metadata mitigation. - TPCDMetadata - # The cookie should have been blocked by 3PCD but is exempted by Deprecation Trial mitigation. - TPCDDeprecationTrial - # The cookie should have been blocked by 3PCD but is exempted by Top-level Deprecation Trial mitigation. - TopLevelTPCDDeprecationTrial - # The cookie should have been blocked by 3PCD but is exempted by heuristics mitigation. - TPCDHeuristics - # The cookie should have been blocked by 3PCD but is exempted by Enterprise Policy. - EnterprisePolicy - # The cookie should have been blocked by 3PCD but is exempted by Storage Access API. - StorageAccess - # The cookie should have been blocked by 3PCD but is exempted by Top-level Storage Access API. - TopLevelStorageAccess - # The cookie should have been blocked by 3PCD but is exempted by the first-party URL scheme. - Scheme - # The cookie was included due to the 'allow-same-site-none-cookies' value being set in the sandboxing policy. - SameSiteNoneCookiesInSandbox + # Send a list of any messages that need to be delivered. + event playerMessagesLogged + parameters + PlayerId playerId + array of PlayerMessage messages - # A cookie which was not stored from a response with the corresponding reason. - experimental type BlockedSetCookieWithReason extends object - properties - # The reason(s) this cookie was blocked. - array of SetCookieBlockedReason blockedReasons - # The string representing this individual cookie as it would appear in the header. - # This is not the entire "cookie" or "set-cookie" header which could have multiple cookies. - string cookieLine - # The cookie object which represents the cookie which was not stored. It is optional because - # sometimes complete cookie information is not available, such as in the case of parsing - # errors. - optional Cookie cookie + # Send a list of any errors that need to be delivered. + event playerErrorsRaised + parameters + PlayerId playerId + array of PlayerError errors - # A cookie should have been blocked by 3PCD but is exempted and stored from a response with the - # corresponding reason. A cookie could only have at most one exemption reason. - experimental type ExemptedSetCookieWithReason extends object - properties - # The reason the cookie was exempted. - CookieExemptionReason exemptionReason - # The string representing this individual cookie as it would appear in the header. - string cookieLine - # The cookie object representing the cookie. - Cookie cookie + # Called whenever a player is created, or when a new agent joins and receives + # a list of active players. If an agent is restored, it will receive one + # event for each active player. + event playerCreated + parameters + Player player - # A cookie associated with the request which may or may not be sent with it. - # Includes the cookies itself and reasons for blocking or exemption. - experimental type AssociatedCookie extends object - properties - # The cookie object representing the cookie which was not sent. - Cookie cookie - # The reason(s) the cookie was blocked. If empty means the cookie is included. - array of CookieBlockedReason blockedReasons - # The reason the cookie should have been blocked by 3PCD but is exempted. A cookie could - # only have at most one exemption reason. - optional CookieExemptionReason exemptionReason + # Enables the Media domain + command enable - # Cookie parameter object - type CookieParam extends object - properties - # Cookie name. - string name - # Cookie value. - string value - # The request-URI to associate with the setting of the cookie. This value can affect the - # default domain, path, source port, and source scheme values of the created cookie. - optional string url - # Cookie domain. - optional string domain - # Cookie path. - optional string path - # True if cookie is secure. - optional boolean secure - # True if cookie is http-only. - optional boolean httpOnly - # Cookie SameSite type. - optional CookieSameSite sameSite - # Cookie expiration date, session cookie if not set - optional TimeSinceEpoch expires - # Cookie Priority. - experimental optional CookiePriority priority - # True if cookie is SameParty. - experimental optional boolean sameParty - # Cookie source scheme type. - experimental optional CookieSourceScheme sourceScheme - # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. - # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. - # This is a temporary ability and it will be removed in the future. - experimental optional integer sourcePort - # Cookie partition key. If not set, the cookie will be set as not partitioned. - experimental optional CookiePartitionKey partitionKey + # Disables the Media domain. + command disable - # Authorization challenge for HTTP status code 401 or 407. - experimental type AuthChallenge extends object - properties - # Source of the authentication challenge. - optional enum source - Server - Proxy - # Origin of the challenger. - string origin - # The authentication scheme used, such as basic or digest - string scheme - # The realm of the challenge. May be empty. - string realm +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Response to an AuthChallenge. - experimental type AuthChallengeResponse extends object - properties - # The decision on what to do in response to the authorization challenge. Default means - # deferring to the default behavior of the net stack, which will likely either the Cancel - # authentication or display a popup dialog box. - enum response - Default - CancelAuth - ProvideCredentials - # The username to provide, possibly empty. Should only be set if response is - # ProvideCredentials. - optional string username - # The password to provide, possibly empty. Should only be set if response is - # ProvideCredentials. - optional string password +experimental domain Memory - # Stages of the interception to begin intercepting. Request will intercept before the request is - # sent. Response will intercept after the response is received. - experimental type InterceptionStage extends string + # Memory pressure level. + type PressureLevel extends string enum - Request - HeadersReceived - - # Request pattern for interception. - experimental type RequestPattern extends object - properties - # Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is - # backslash. Omitting is equivalent to `"*"`. - optional string urlPattern - # If set, only requests for matching resource types will be intercepted. - optional ResourceType resourceType - # Stage at which to begin intercepting requests. Default is Request. - optional InterceptionStage interceptionStage + moderate + critical - # Information about a signed exchange signature. - # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1 - experimental type SignedExchangeSignature extends object - properties - # Signed exchange signature label. - string label - # The hex string of signed exchange signature. - string signature - # Signed exchange signature integrity. - string integrity - # Signed exchange signature cert Url. - optional string certUrl - # The hex string of signed exchange signature cert sha256. - optional string certSha256 - # Signed exchange signature validity Url. - string validityUrl - # Signed exchange signature date. - integer date - # Signed exchange signature expires. - integer expires - # The encoded certificates. - optional array of string certificates + # Retruns current DOM object counters. + command getDOMCounters + returns + integer documents + integer nodes + integer jsEventListeners - # Information about a signed exchange header. - # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation - experimental type SignedExchangeHeader extends object - properties - # Signed exchange request URL. - string requestUrl - # Signed exchange response code. - integer responseCode - # Signed exchange response headers. - Headers responseHeaders - # Signed exchange response signature. - array of SignedExchangeSignature signatures - # Signed exchange header integrity hash in the form of `sha256-`. - string headerIntegrity + # Retruns DOM object counters after preparing renderer for leak detection. + command getDOMCountersForLeakDetection + returns + # DOM object counters. + array of DOMCounter counters - # Field type for a signed exchange related error. - experimental type SignedExchangeErrorField extends string - enum - signatureSig - signatureIntegrity - signatureCertUrl - signatureCertSha256 - signatureValidityUrl - signatureTimestamps + # Prepares for leak detection by terminating workers, stopping spellcheckers, + # dropping non-essential internal caches, running garbage collections, etc. + command prepareForLeakDetection - # Information about a signed exchange response. - experimental type SignedExchangeError extends object - properties - # Error message. - string message - # The index of the signature which caused the error. - optional integer signatureIndex - # The field which caused the error. - optional SignedExchangeErrorField errorField + # Simulate OomIntervention by purging V8 memory. + command forciblyPurgeJavaScriptMemory - # Information about a signed exchange response. - experimental type SignedExchangeInfo extends object - properties - # The outer response of signed HTTP exchange which was received from network. - Response outerResponse - # Whether network response for the signed exchange was accompanied by - # extra headers. - boolean hasExtraInfo - # Information about the signed exchange header. - optional SignedExchangeHeader header - # Security details for the signed exchange header. - optional SecurityDetails securityDetails - # Errors occurred while handling the signed exchange. - optional array of SignedExchangeError errors + # Enable/disable suppressing memory pressure notifications in all processes. + command setPressureNotificationsSuppressed + parameters + # If true, memory pressure notifications will be suppressed. + boolean suppressed - # List of content encodings supported by the backend. - experimental type ContentEncoding extends string - enum - deflate - gzip - br - zstd + # Simulate a memory pressure notification in all processes. + command simulatePressureNotification + parameters + # Memory pressure level of the notification. + PressureLevel level - # Sets a list of content encodings that will be accepted. Empty list means no encoding is accepted. - experimental command setAcceptedEncodings + # Start collecting native memory profile. + command startSampling parameters - # List of accepted content encodings. - array of ContentEncoding encodings + # Average number of bytes between samples. + optional integer samplingInterval + # Do not randomize intervals between samples. + optional boolean suppressRandomness - # Clears accepted encodings set by setAcceptedEncodings - experimental command clearAcceptedEncodingsOverride + # Stop collecting native memory profile. + command stopSampling - # Tells whether clearing browser cache is supported. - deprecated command canClearBrowserCache + # Retrieve native memory allocations profile + # collected since renderer process startup. + command getAllTimeSamplingProfile returns - # True if browser cache can be cleared. - boolean result + SamplingProfile profile - # Tells whether clearing browser cookies is supported. - deprecated command canClearBrowserCookies + # Retrieve native memory allocations profile + # collected since browser process startup. + command getBrowserSamplingProfile returns - # True if browser cookies can be cleared. - boolean result + SamplingProfile profile - # Tells whether emulation of network conditions is supported. - deprecated command canEmulateNetworkConditions + # Retrieve native memory allocations profile collected since last + # `startSampling` call. + command getSamplingProfile returns - # True if emulation of network conditions is supported. - boolean result + SamplingProfile profile - # Clears browser cache. - command clearBrowserCache + # Heap profile sample. + type SamplingProfileNode extends object + properties + # Size of the sampled allocation. + number size + # Total bytes attributed to this sample. + number total + # Execution stack at the point of allocation. + array of string stack - # Clears browser cookies. - command clearBrowserCookies + # Array of heap profile samples. + type SamplingProfile extends object + properties + array of SamplingProfileNode samples + array of Module modules - # Response to Network.requestIntercepted which either modifies the request to continue with any - # modifications, or blocks it, or completes it with the provided response bytes. If a network - # fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted - # event will be sent with the same InterceptionId. - # Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead. - experimental deprecated command continueInterceptedRequest - parameters - InterceptionId interceptionId - # If set this causes the request to fail with the given reason. Passing `Aborted` for requests - # marked with `isNavigationRequest` also cancels the navigation. Must not be set in response - # to an authChallenge. - optional ErrorReason errorReason - # If set the requests completes using with the provided base64 encoded raw response, including - # HTTP status line and headers etc... Must not be set in response to an authChallenge. - optional binary rawResponse - # If set the request url will be modified in a way that's not observable by page. Must not be - # set in response to an authChallenge. - optional string url - # If set this allows the request method to be overridden. Must not be set in response to an - # authChallenge. - optional string method - # If set this allows postData to be set. Must not be set in response to an authChallenge. - optional string postData - # If set this allows the request headers to be changed. Must not be set in response to an - # authChallenge. - optional Headers headers - # Response to a requestIntercepted with an authChallenge. Must not be set otherwise. - optional AuthChallengeResponse authChallengeResponse + # Executable module information + type Module extends object + properties + # Name of the module. + string name + # UUID of the module. + string uuid + # Base address where the module is loaded into memory. Encoded as a decimal + # or hexadecimal (0x prefixed) string. + string baseAddress + # Size of the module in bytes. + number size - # Deletes browser cookies with matching name and url or domain/path/partitionKey pair. - command deleteCookies - parameters - # Name of the cookies to remove. + # DOM object counter data. + type DOMCounter extends object + properties + # Object name. Note: object names should be presumed volatile and clients should not expect + # the returned names to be consistent across runs. string name - # If specified, deletes all the cookies with the given name where domain and path match - # provided URL. - optional string url - # If specified, deletes only cookies with the exact domain. - optional string domain - # If specified, deletes only cookies with the exact path. - optional string path - # If specified, deletes only cookies with the the given name and partitionKey where - # all partition key attributes match the cookie partition key attribute. - experimental optional CookiePartitionKey partitionKey - - # Disables network tracking, prevents network events from being sent to the client. - command disable + # Object count. + integer count - # Activates emulation of network conditions. - command emulateNetworkConditions - parameters - # True to emulate internet disconnection. - boolean offline - # Minimum latency from request sent to response headers received (ms). - number latency - # Maximal aggregated download throughput (bytes/sec). -1 disables download throttling. - number downloadThroughput - # Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling. - number uploadThroughput - # Connection type if known. - optional ConnectionType connectionType - # WebRTC packet loss (percent, 0-100). 0 disables packet loss emulation, 100 drops all the packets. - experimental optional number packetLoss - # WebRTC packet queue length (packet). 0 removes any queue length limitations. - experimental optional integer packetQueueLength - # WebRTC packetReordering feature. - experimental optional boolean packetReordering +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Enables network tracking, network events will now be delivered to the client. - command enable - parameters - # Buffer size in bytes to use when preserving network payloads (XHRs, etc). - experimental optional integer maxTotalBufferSize - # Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc). - experimental optional integer maxResourceBufferSize - # Longest post body size (in bytes) that would be included in requestWillBeSent notification - optional integer maxPostDataSize - # Whether DirectSocket chunk send/receive events should be reported. - experimental optional boolean reportDirectSocketTraffic +# 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. +domain Network + depends on Debugger + depends on Runtime + depends on Security - # Returns all browser cookies. Depending on the backend support, will return detailed cookie - # information in the `cookies` field. - # Deprecated. Use Storage.getCookies instead. - deprecated command getAllCookies - returns - # Array of cookie objects. - array of Cookie cookies + # Resource type as it was perceived by the rendering engine. + type ResourceType extends string + enum + Document + Stylesheet + Image + Media + Font + Script + TextTrack + XHR + Fetch + Prefetch + EventSource + WebSocket + Manifest + SignedExchange + Ping + CSPViolationReport + Preflight + FedCM + Other - # Returns the DER-encoded certificate. - experimental command getCertificate - parameters - # Origin to get certificate for. - string origin - returns - array of string tableNames + # Unique loader identifier. + type LoaderId extends string - # Returns all browser cookies for the current URL. Depending on the backend support, will return - # detailed cookie information in the `cookies` field. - command getCookies - parameters - # The list of URLs for which applicable cookies will be fetched. - # If not specified, it's assumed to be set to the list containing - # the URLs of the page and all of its subframes. - optional array of string urls - returns - # Array of cookie objects. - array of Cookie cookies + # Unique network request identifier. + # Note that this does not identify individual HTTP requests that are part of + # a network request. + type RequestId extends string - # Returns content served for the given request. - command getResponseBody - parameters - # Identifier of the network request to get content for. - RequestId requestId - returns - # Response body. - string body - # True, if content was sent as base64. - boolean base64Encoded + # Unique intercepted request identifier. + type InterceptionId extends string - # Returns post data sent with the request. Returns an error when no data was sent with the request. - command getRequestPostData - parameters - # Identifier of the network request to get content for. - RequestId requestId - returns - # Request body string, omitting files from multipart requests - string postData + # Network level fetch failure reason. + type ErrorReason extends string + enum + Failed + Aborted + TimedOut + AccessDenied + ConnectionClosed + ConnectionReset + ConnectionRefused + ConnectionAborted + ConnectionFailed + NameNotResolved + InternetDisconnected + AddressUnreachable + BlockedByClient + BlockedByResponse - # Returns content served for the given currently intercepted request. - experimental command getResponseBodyForInterception - parameters - # Identifier for the intercepted request to get body for. - InterceptionId interceptionId - returns - # Response body. - string body - # True, if content was sent as base64. - boolean base64Encoded + # UTC time in seconds, counted from January 1, 1970. + type TimeSinceEpoch extends number - # Returns a handle to the stream representing the response body. Note that after this command, - # the intercepted request can't be continued as is -- you either need to cancel it or to provide - # the response body. The stream only supports sequential read, IO.read will fail if the position - # is specified. - experimental command takeResponseBodyForInterceptionAsStream - parameters - InterceptionId interceptionId - returns - IO.StreamHandle stream + # Monotonically increasing time in seconds since an arbitrary point in the past. + type MonotonicTime extends number - # This method sends a new XMLHttpRequest which is identical to the original one. The following - # parameters should be identical: method, url, async, request body, extra headers, withCredentials - # attribute, user, password. - experimental command replayXHR - parameters - # Identifier of XHR to replay. - RequestId requestId + # Request / response headers as keys / values of JSON object. + type Headers extends object - # Searches for given string in response content. - experimental command searchInResponseBody - parameters - # Identifier of the network response to search. - RequestId requestId - # String to search for. - string query - # If true, search is case sensitive. - optional boolean caseSensitive - # If true, treats string parameter as regex. - optional boolean isRegex - returns - # List of search matches. - array of Debugger.SearchMatch result + # The underlying connection technology that the browser is supposedly using. + type ConnectionType extends string + enum + none + cellular2g + cellular3g + cellular4g + bluetooth + ethernet + wifi + wimax + other - # Blocks URLs from loading. - experimental command setBlockedURLs - parameters - # URL patterns to block. Wildcards ('*') are allowed. - array of string urls + # Represents the cookie's 'SameSite' status: + # https://tools.ietf.org/html/draft-west-first-party-cookies + type CookieSameSite extends string + enum + Strict + Lax + None - # Toggles ignoring of service worker for each request. - command setBypassServiceWorker - parameters - # Bypass service worker and load from network. - boolean bypass + # Represents the cookie's 'Priority' status: + # https://tools.ietf.org/html/draft-west-cookie-priority-00 + experimental type CookiePriority extends string + enum + Low + Medium + High - # Toggles ignoring cache for each request. If `true`, cache will not be used. - command setCacheDisabled - parameters - # Cache disabled state. - boolean cacheDisabled + # Represents the source scheme of the origin that originally set the cookie. + # A value of "Unset" allows protocol clients to emulate legacy cookie scope for the scheme. + # This is a temporary ability and it will be removed in the future. + experimental type CookieSourceScheme extends string + enum + Unset + NonSecure + Secure - # Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist. - command setCookie - parameters - # Cookie name. - string name - # Cookie value. - string value - # The request-URI to associate with the setting of the cookie. This value can affect the - # default domain, path, source port, and source scheme values of the created cookie. - optional string url - # Cookie domain. - optional string domain - # Cookie path. - optional string path - # True if cookie is secure. - optional boolean secure - # True if cookie is http-only. - optional boolean httpOnly - # Cookie SameSite type. - optional CookieSameSite sameSite - # Cookie expiration date, session cookie if not set - optional TimeSinceEpoch expires - # Cookie Priority type. - experimental optional CookiePriority priority - # True if cookie is SameParty. - experimental optional boolean sameParty - # Cookie source scheme type. - experimental optional CookieSourceScheme sourceScheme - # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. - # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. - # This is a temporary ability and it will be removed in the future. - experimental optional integer sourcePort - # Cookie partition key. If not set, the cookie will be set as not partitioned. - experimental optional CookiePartitionKey partitionKey - returns - # Always set to true. If an error occurs, the response indicates protocol error. - deprecated boolean success + # Timing information for the request. + type ResourceTiming extends object + properties + # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in + # milliseconds relatively to this requestTime. + number requestTime + # Started resolving proxy. + number proxyStart + # Finished resolving proxy. + number proxyEnd + # Started DNS address resolve. + number dnsStart + # Finished DNS address resolve. + number dnsEnd + # Started connecting to the remote host. + number connectStart + # Connected to the remote host. + number connectEnd + # Started SSL handshake. + number sslStart + # Finished SSL handshake. + number sslEnd + # Started running ServiceWorker. + experimental number workerStart + # Finished Starting ServiceWorker. + experimental number workerReady + # Started fetch event. + experimental number workerFetchStart + # Settled fetch event respondWith promise. + experimental number workerRespondWithSettled + # Started ServiceWorker static routing source evaluation. + experimental optional number workerRouterEvaluationStart + # Started cache lookup when the source was evaluated to `cache`. + experimental optional number workerCacheLookupStart + # Started sending request. + number sendStart + # Finished sending request. + number sendEnd + # Time the server started pushing request. + experimental number pushStart + # Time the server finished pushing request. + experimental number pushEnd + # Started receiving response headers. + experimental number receiveHeadersStart + # Finished receiving response headers. + number receiveHeadersEnd - # Sets given cookies. - command setCookies - parameters - # Cookies to be set. - array of CookieParam cookies + # Loading priority of a resource request. + type ResourcePriority extends string + enum + VeryLow + Low + Medium + High + VeryHigh - # Specifies whether to always send extra HTTP headers with the requests from this page. - command setExtraHTTPHeaders - parameters - # Map with extra HTTP headers. + # Post data entry for HTTP request + type PostDataEntry extends object + properties + optional binary bytes + + # HTTP request data. + type Request extends object + properties + # Request URL (without fragment). + string url + # Fragment of the requested URL starting with hash, if present. + optional string urlFragment + # HTTP request method. + string method + # HTTP request headers. Headers headers + # HTTP POST request data. + # Use postDataEntries instead. + deprecated optional string postData + # True when the request has POST data. Note that postData might still be omitted when this flag is true when the data is too long. + optional boolean hasPostData + # Request body elements (post data broken into individual entries). + experimental optional array of PostDataEntry postDataEntries + # The mixed content type of the request. + optional Security.MixedContentType mixedContentType + # Priority of the resource request at the time request is sent. + ResourcePriority initialPriority + # The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/ + enum referrerPolicy + unsafe-url + no-referrer-when-downgrade + no-referrer + origin + origin-when-cross-origin + same-origin + strict-origin + strict-origin-when-cross-origin + # Whether is loaded via link preload. + optional boolean isLinkPreload + # Set for requests when the TrustToken API is used. Contains the parameters + # passed by the developer (e.g. via "fetch") as understood by the backend. + experimental optional TrustTokenParams trustTokenParams + # True if this resource request is considered to be the 'same site' as the + # request corresponding to the main frame. + experimental optional boolean isSameSite + # True when the resource request is ad-related. + experimental optional boolean isAdRelated - # Specifies whether to attach a page script stack id in requests - experimental command setAttachDebugStack - parameters - # Whether to attach a page script stack for debugging purpose. - boolean enabled + # Details of a signed certificate timestamp (SCT). + type SignedCertificateTimestamp extends object + properties + # Validation status. + string status + # Origin. + string origin + # Log name / description. + string logDescription + # Log ID. + string logId + # Issuance date. Unlike TimeSinceEpoch, this contains the number of + # milliseconds since January 1, 1970, UTC, not the number of seconds. + number timestamp + # Hash algorithm. + string hashAlgorithm + # Signature algorithm. + string signatureAlgorithm + # Signature data. + string signatureData - # Sets the requests to intercept that match the provided patterns and optionally resource types. - # Deprecated, please use Fetch.enable instead. - experimental deprecated command setRequestInterception - parameters - # Requests matching any of these patterns will be forwarded and wait for the corresponding - # continueInterceptedRequest call. - array of RequestPattern patterns + # Security details about a request. + type SecurityDetails extends object + properties + # Protocol name (e.g. "TLS 1.2" or "QUIC"). + string protocol + # Key Exchange used by the connection, or the empty string if not applicable. + string keyExchange + # (EC)DH group used by the connection, if applicable. + optional string keyExchangeGroup + # Cipher name. + string cipher + # TLS MAC. Note that AEAD ciphers do not have separate MACs. + optional string mac + # Certificate ID value. + Security.CertificateId certificateId + # Certificate subject name. + string subjectName + # Subject Alternative Name (SAN) DNS names and IP addresses. + array of string sanList + # Name of the issuing CA. + string issuer + # Certificate valid from date. + TimeSinceEpoch validFrom + # Certificate valid to (expiration) date + TimeSinceEpoch validTo + # List of signed certificate timestamps (SCTs). + array of SignedCertificateTimestamp signedCertificateTimestampList + # Whether the request complied with Certificate Transparency policy + CertificateTransparencyCompliance certificateTransparencyCompliance + # The signature algorithm used by the server in the TLS server signature, + # represented as a TLS SignatureScheme code point. Omitted if not + # applicable or not known. + optional integer serverSignatureAlgorithm + # Whether the connection used Encrypted ClientHello + boolean encryptedClientHello - # Allows overriding user agent with the given string. - command setUserAgentOverride - redirect Emulation - parameters - # User agent to use. - string userAgent - # Browser language to emulate. - optional string acceptLanguage - # The platform navigator.platform should return. - optional string platform - # To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData - experimental optional Emulation.UserAgentMetadata userAgentMetadata + # Whether the request complied with Certificate Transparency policy. + type CertificateTransparencyCompliance extends string + enum + unknown + not-compliant + compliant + # The reason why request was blocked. + type BlockedReason extends string + enum + other + csp + mixed-content + origin + inspector + integrity + subresource-filter + content-type + coep-frame-resource-needs-coep-header + coop-sandboxed-iframe-cannot-navigate-to-coop-page + corp-not-same-origin + corp-not-same-origin-after-defaulted-to-same-origin-by-coep + corp-not-same-origin-after-defaulted-to-same-origin-by-dip + corp-not-same-origin-after-defaulted-to-same-origin-by-coep-and-dip + corp-not-same-site + sri-message-signature-mismatch - # Fired when data chunk was received over the network. - event dataReceived - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # Data chunk length. - integer dataLength - # Actual bytes received (might be less than dataLength for compressed encodings). - integer encodedDataLength - # Data that was received. - experimental optional binary data + # Sets Controls for IP Proxy of requests. + # Page reload is required before the new behavior will be observed. + experimental type IpProxyStatus extends string + enum + Available + FeatureNotEnabled + MaskedDomainListNotEnabled + MaskedDomainListNotPopulated + AuthTokensUnavailable + Unavailable + BypassedByDevTools - # Enables streaming of the response for the given requestId. - # If enabled, the dataReceived event contains the data that was received during streaming. - experimental command streamResourceContent - parameters - # Identifier of the request to stream. - RequestId requestId + # Returns enum representing if IP Proxy of requests is available + # or reason it is not active. + experimental command getIPProtectionProxyStatus returns - # Data that has been buffered until streaming is enabled. - binary bufferedData + # Whether IP proxy is available + IpProxyStatus status - # Fired when EventSource message is received. - event eventSourceMessageReceived + # Sets bypass IP Protection Proxy boolean. + experimental command setIPProtectionProxyBypassEnabled parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # Message type. - string eventName - # Message identifier. - string eventId - # Message content. - string data + # Whether IP Proxy is being bypassed by devtools; false by default. + boolean enabled - # Fired when HTTP request has failed to load. - event loadingFailed - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # Resource type. - ResourceType type - # Error message. List of network errors: https://cs.chromium.org/chromium/src/net/base/net_error_list.h - string errorText - # True if loading was canceled. - optional boolean canceled - # The reason why loading was blocked, if any. - optional BlockedReason blockedReason - # The reason why loading was blocked by CORS, if any. - optional CorsErrorStatus corsErrorStatus + # The reason why request was blocked. + type CorsError extends string + enum + DisallowedByMode + InvalidResponse + WildcardOriginNotAllowed + MissingAllowOriginHeader + MultipleAllowOriginValues + InvalidAllowOriginValue + AllowOriginMismatch + InvalidAllowCredentials + CorsDisabledScheme + PreflightInvalidStatus + PreflightDisallowedRedirect + PreflightWildcardOriginNotAllowed + PreflightMissingAllowOriginHeader + PreflightMultipleAllowOriginValues + PreflightInvalidAllowOriginValue + PreflightAllowOriginMismatch + PreflightInvalidAllowCredentials + # TODO(https://crbug.com/1263483): Remove this once frontend code does + # not reference it anymore. + PreflightMissingAllowExternal + # TODO(https://crbug.com/1263483): Remove this once frontend code does + # not reference it anymore. + PreflightInvalidAllowExternal + PreflightMissingAllowPrivateNetwork + PreflightInvalidAllowPrivateNetwork + InvalidAllowMethodsPreflightResponse + InvalidAllowHeadersPreflightResponse + MethodDisallowedByPreflightResponse + HeaderDisallowedByPreflightResponse + RedirectContainsCredentials + # Request was a private network request initiated by a non-secure context. + InsecurePrivateNetwork + # Request carried a target IP address space property that did not match + # the target resource's address space. + InvalidPrivateNetworkAccess + # Request was a private network request yet did not carry a target IP + # address space. + UnexpectedPrivateNetworkAccess + NoCorsRedirectModeNotFollow + # Request was a private network request and needed user permission yet did + # not carry `Private-Network-Access-Id` in the preflight response. + # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md + PreflightMissingPrivateNetworkAccessId + # Request was a private network request and needed user permission yet did + # not carry `Private-Network-Access-Name` in the preflight response. + # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md + PreflightMissingPrivateNetworkAccessName + # Request was a private network request and needed user permission yet not + # able to request for permission. + # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md + PrivateNetworkAccessPermissionUnavailable + # Request was a private network request and is denied by user permission. + # https://github.com/WICG/private-network-access/blob/main/permission_prompt/explainer.md + PrivateNetworkAccessPermissionDenied + # Request was a local network request and is denied by user permission. + # https://wicg.github.io/local-network-access/ + LocalNetworkAccessPermissionDenied - # Fired when HTTP request has finished loading. - event loadingFinished - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # Total number of bytes received for this request. - number encodedDataLength + type CorsErrorStatus extends object + properties + CorsError corsError + string failedParameter - # Details of an intercepted HTTP request, which must be either allowed, blocked, modified or - # mocked. - # Deprecated, use Fetch.requestPaused instead. - experimental deprecated event requestIntercepted - parameters - # Each request the page makes will have a unique id, however if any redirects are encountered - # while processing that fetch, they will be reported with the same id as the original fetch. - # Likewise if HTTP authentication is needed then the same fetch id will be used. - InterceptionId interceptionId - Request request - # The id of the frame that initiated the request. - Page.FrameId frameId - # How the requested resource will be used. - ResourceType resourceType - # Whether this is a navigation request, which can abort the navigation completely. - boolean isNavigationRequest - # Set if the request is a navigation that will result in a download. - # Only present after response is received from the server (i.e. HeadersReceived stage). - optional boolean isDownload - # Redirect location, only sent if a redirect was intercepted. - optional string redirectUrl - # Details of the Authorization Challenge encountered. If this is set then - # continueInterceptedRequest must contain an authChallengeResponse. - optional AuthChallenge authChallenge - # Response error if intercepted at response stage or if redirect occurred while intercepting - # request. - optional ErrorReason responseErrorReason - # Response code if intercepted at response stage or if redirect occurred while intercepting - # request or auth retry occurred. - optional integer responseStatusCode - # Response headers if intercepted at the response stage or if redirect occurred while - # intercepting request or auth retry occurred. - optional Headers responseHeaders - # If the intercepted request had a corresponding requestWillBeSent event fired for it, then - # this requestId will be the same as the requestId present in the requestWillBeSent event. - optional RequestId requestId + # Source of serviceworker response. + type ServiceWorkerResponseSource extends string + enum + cache-storage + http-cache + fallback-code + network - # Fired if request ended up loading from cache. - event requestServedFromCache - parameters - # Request identifier. - RequestId requestId + # Determines what type of Trust Token operation is executed and + # depending on the type, some additional parameters. The values + # are specified in third_party/blink/renderer/core/fetch/trust_token.idl. + experimental type TrustTokenParams extends object + properties + TrustTokenOperationType operation - # Fired when page is about to send HTTP request. - event requestWillBeSent - parameters - # Request identifier. - RequestId requestId - # Loader identifier. Empty string if the request is fetched from worker. - LoaderId loaderId - # URL of the document this request is loaded for. - string documentURL - # Request data. - Request request - # Timestamp. - MonotonicTime timestamp - # Timestamp. - TimeSinceEpoch wallTime - # Request initiator. - Initiator initiator - # In the case that redirectResponse is populated, this flag indicates whether - # requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted - # for the request which was just redirected. - experimental boolean redirectHasExtraInfo - # Redirect response data. - optional Response redirectResponse - # Type of this resource. - optional ResourceType type - # Frame identifier. - optional Page.FrameId frameId - # Whether the request is initiated by a user gesture. Defaults to false. - optional boolean hasUserGesture + # Only set for "token-redemption" operation and determine whether + # to request a fresh SRR or use a still valid cached SRR. + enum refreshPolicy + UseCached + Refresh - # Fired when resource loading priority is changed - experimental event resourceChangedPriority - parameters - # Request identifier. - RequestId requestId - # New priority - ResourcePriority newPriority - # Timestamp. - MonotonicTime timestamp + # Origins of issuers from whom to request tokens or redemption + # records. + optional array of string issuers - # Fired when a signed exchange was received over the network - experimental event signedExchangeReceived - parameters - # Request identifier. - RequestId requestId - # Information about the signed exchange response. - SignedExchangeInfo info + experimental type TrustTokenOperationType extends string + enum + # Type "token-request" in the Trust Token API. + Issuance + # Type "token-redemption" in the Trust Token API. + Redemption + # Type "send-redemption-record" in the Trust Token API. + Signing - # Fired when HTTP response is available. - event responseReceived - parameters - # Request identifier. - RequestId requestId - # Loader identifier. Empty string if the request is fetched from worker. - LoaderId loaderId - # Timestamp. - MonotonicTime timestamp - # Resource type. - ResourceType type - # Response data. - Response response - # Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be - # or were emitted for this request. - experimental boolean hasExtraInfo - # Frame identifier. - optional Page.FrameId frameId + # The reason why Chrome uses a specific transport protocol for HTTP semantics. + experimental type AlternateProtocolUsage extends string + enum + # Alternate Protocol was used without racing a normal connection. + alternativeJobWonWithoutRace + # Alternate Protocol was used by winning a race with a normal connection. + alternativeJobWonRace + # Alternate Protocol was not used by losing a race with a normal connection. + mainJobWonRace + # Alternate Protocol was not used because no Alternate-Protocol information + # was available when the request was issued, but an Alternate-Protocol header + # was present in the response. + mappingMissing + # Alternate Protocol was not used because it was marked broken. + broken + # HTTPS DNS protocol upgrade job was used without racing with a normal + # connection and an Alternate Protocol job. + dnsAlpnH3JobWonWithoutRace + # HTTPS DNS protocol upgrade job won a race with a normal connection and + # an Alternate Protocol job. + dnsAlpnH3JobWonRace + # This value is used when the reason is unknown. + unspecifiedReason - # Fired when WebSocket is closed. - event webSocketClosed - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - - # Fired upon WebSocket creation. - event webSocketCreated - parameters - # Request identifier. - RequestId requestId - # WebSocket request URL. - string url - # Request initiator. - optional Initiator initiator + # Source of service worker router. + type ServiceWorkerRouterSource extends string + enum + network + cache + fetch-event + race-network-and-fetch-handler + race-network-and-cache - # Fired when WebSocket message error occurs. - event webSocketFrameError - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # WebSocket error message. - string errorMessage + experimental type ServiceWorkerRouterInfo extends object + properties + # ID of the rule matched. If there is a matched rule, this field will + # be set, otherwiser no value will be set. + optional integer ruleIdMatched + # The router source of the matched rule. If there is a matched rule, this + # field will be set, otherwise no value will be set. + optional ServiceWorkerRouterSource matchedSourceType + # The actual router source used. + optional ServiceWorkerRouterSource actualSourceType - # Fired when WebSocket message is received. - event webSocketFrameReceived - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # WebSocket response data. - WebSocketFrame response + # HTTP response data. + type Response extends object + properties + # Response URL. This URL can be different from CachedResource.url in case of redirect. + string url + # HTTP response status code. + integer status + # HTTP response status text. + string statusText + # HTTP response headers. + Headers headers + # HTTP response headers text. This has been replaced by the headers in Network.responseReceivedExtraInfo. + deprecated optional string headersText + # Resource mimeType as determined by the browser. + string mimeType + # Resource charset as determined by the browser (if applicable). + string charset + # Refined HTTP request headers that were actually transmitted over the network. + optional Headers requestHeaders + # HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo. + deprecated optional string requestHeadersText + # Specifies whether physical connection was actually reused for this request. + boolean connectionReused + # Physical connection id that was actually used for this request. + number connectionId + # Remote IP address. + optional string remoteIPAddress + # Remote port. + optional integer remotePort + # Specifies that the request was served from the disk cache. + optional boolean fromDiskCache + # Specifies that the request was served from the ServiceWorker. + optional boolean fromServiceWorker + # Specifies that the request was served from the prefetch cache. + optional boolean fromPrefetchCache + # Specifies that the request was served from the prefetch cache. + optional boolean fromEarlyHints + # Information about how ServiceWorker Static Router API was used. If this + # field is set with `matchedSourceType` field, a matching rule is found. + # If this field is set without `matchedSource`, no matching rule is found. + # Otherwise, the API is not used. + experimental optional ServiceWorkerRouterInfo serviceWorkerRouterInfo + # Total number of bytes received for this request so far. + number encodedDataLength + # Timing information for the given request. + optional ResourceTiming timing + # Response source of response from ServiceWorker. + optional ServiceWorkerResponseSource serviceWorkerResponseSource + # The time at which the returned response was generated. + optional TimeSinceEpoch responseTime + # Cache Storage Cache Name. + optional string cacheStorageCacheName + # Protocol used to fetch this request. + optional string protocol + # The reason why Chrome uses a specific transport protocol for HTTP semantics. + experimental optional AlternateProtocolUsage alternateProtocolUsage + # Security state of the request resource. + Security.SecurityState securityState + # Security details for the request. + optional SecurityDetails securityDetails + # Indicates whether the request was sent through IP Protection proxies. If + # set to true, the request used the IP Protection privacy feature. + experimental optional boolean isIpProtectionUsed - # Fired when WebSocket message is sent. - event webSocketFrameSent - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # WebSocket response data. - WebSocketFrame response + # WebSocket request data. + type WebSocketRequest extends object + properties + # HTTP request headers. + Headers headers - # Fired when WebSocket handshake response becomes available. - event webSocketHandshakeResponseReceived - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # WebSocket response data. - WebSocketResponse response + # WebSocket response data. + type WebSocketResponse extends object + properties + # HTTP response status code. + integer status + # HTTP response status text. + string statusText + # HTTP response headers. + Headers headers + # HTTP response headers text. + optional string headersText + # HTTP request headers. + optional Headers requestHeaders + # HTTP request headers text. + optional string requestHeadersText - # Fired when WebSocket is about to initiate handshake. - event webSocketWillSendHandshakeRequest - parameters - # Request identifier. - RequestId requestId - # Timestamp. - MonotonicTime timestamp - # UTC Timestamp. - TimeSinceEpoch wallTime - # WebSocket request data. - WebSocketRequest request + # WebSocket message data. This represents an entire WebSocket message, not just a fragmented frame as the name suggests. + type WebSocketFrame extends object + properties + # WebSocket message opcode. + number opcode + # WebSocket message mask. + boolean mask + # WebSocket message payload data. + # If the opcode is 1, this is a text message and payloadData is a UTF-8 string. + # If the opcode isn't 1, then payloadData is a base64 encoded string representing binary data. + string payloadData - # Fired upon WebTransport creation. - event webTransportCreated - parameters - # WebTransport identifier. - RequestId transportId - # WebTransport request URL. + # Information about the cached resource. + type CachedResource extends object + properties + # Resource URL. This is the url of the original network request. string url - # Timestamp. - MonotonicTime timestamp - # Request initiator. - optional Initiator initiator - - # Fired when WebTransport handshake is finished. - event webTransportConnectionEstablished - parameters - # WebTransport identifier. - RequestId transportId - # Timestamp. - MonotonicTime timestamp - - # Fired when WebTransport is disposed. - event webTransportClosed - parameters - # WebTransport identifier. - RequestId transportId - # Timestamp. - MonotonicTime timestamp - - experimental type DirectSocketDnsQueryType extends string - enum - ipv4 - ipv6 + # Type of this resource. + ResourceType type + # Cached response data. + optional Response response + # Cached response body size. + number bodySize - experimental type DirectTCPSocketOptions extends object + # Information about the request initiator. + type Initiator extends object properties - # TCP_NODELAY option - boolean noDelay - # Expected to be unsigned integer. - optional number keepAliveDelay - # Expected to be unsigned integer. - optional number sendBufferSize - # Expected to be unsigned integer. - optional number receiveBufferSize - optional DirectSocketDnsQueryType dnsQueryType + # Type of this initiator. + enum type + parser + script + preload + SignedExchange + preflight + FedCM + other + # Initiator JavaScript stack trace, set for Script only. + # Requires the Debugger domain to be enabled. + optional Runtime.StackTrace stack + # Initiator URL, set for Parser type or for Script type (when script is importing module) or for SignedExchange type. + optional string url + # Initiator line number, set for Parser type or for Script type (when script is importing + # module) (0-based). + optional number lineNumber + # Initiator column number, set for Parser type or for Script type (when script is importing + # module) (0-based). + optional number columnNumber + # Set if another request triggered this request (e.g. preflight). + optional RequestId requestId + # cookiePartitionKey object + # The representation of the components of the key that are created by the cookiePartitionKey class contained in net/cookies/cookie_partition_key.h. + experimental type CookiePartitionKey extends object + properties + # The site of the top-level URL the browser was visiting at the start + # of the request to the endpoint that set the cookie. + string topLevelSite + # Indicates if the cookie has any ancestors that are cross-site to the topLevelSite. + boolean hasCrossSiteAncestor - # Fired upon direct_socket.TCPSocket creation. - experimental event directTCPSocketCreated - parameters - RequestId identifier - string remoteAddr - # Unsigned int 16. - integer remotePort - DirectTCPSocketOptions options - MonotonicTime timestamp - optional Initiator initiator - - # Fired when direct_socket.TCPSocket connection is opened. - experimental event directTCPSocketOpened - parameters - RequestId identifier - string remoteAddr - # Expected to be unsigned integer. - integer remotePort - MonotonicTime timestamp - optional string localAddr - # Expected to be unsigned integer. - optional integer localPort + # Cookie object + type Cookie extends object + properties + # Cookie name. + string name + # Cookie value. + string value + # Cookie domain. + string domain + # Cookie path. + string path + # Cookie expiration date as the number of seconds since the UNIX epoch. + # The value is set to -1 if the expiry date is not set. + # The value can be null for values that cannot be represented in + # JSON (±Inf). + number expires + # Cookie size. + integer size + # True if cookie is http-only. + boolean httpOnly + # True if cookie is secure. + boolean secure + # True in case of session cookie. + boolean session + # Cookie SameSite type. + optional CookieSameSite sameSite + # Cookie Priority + experimental CookiePriority priority + # True if cookie is SameParty. + experimental deprecated boolean sameParty + # Cookie source scheme type. + experimental CookieSourceScheme sourceScheme + # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. + # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. + # This is a temporary ability and it will be removed in the future. + experimental integer sourcePort + # Cookie partition key. + experimental optional CookiePartitionKey partitionKey + # True if cookie partition key is opaque. + experimental optional boolean partitionKeyOpaque - # Fired when direct_socket.TCPSocket is aborted. - experimental event directTCPSocketAborted - parameters - RequestId identifier - string errorMessage - MonotonicTime timestamp + # Types of reasons why a cookie may not be stored from a response. + experimental type SetCookieBlockedReason extends string + enum + # The cookie had the "Secure" attribute but was not received over a secure connection. + SecureOnly + # The cookie had the "SameSite=Strict" attribute but came from a cross-origin response. + # This includes navigation requests initiated by other origins. + SameSiteStrict + # The cookie had the "SameSite=Lax" attribute but came from a cross-origin response. + SameSiteLax + # The cookie didn't specify a "SameSite" attribute and was defaulted to "SameSite=Lax" and + # broke the same rules specified in the SameSiteLax value. + SameSiteUnspecifiedTreatedAsLax + # The cookie had the "SameSite=None" attribute but did not specify the "Secure" attribute, + # which is required in order to use "SameSite=None". + SameSiteNoneInsecure + # The cookie was not stored due to user preferences. + UserPreferences + # The cookie was blocked due to third-party cookie phaseout. + ThirdPartyPhaseout + # The cookie was blocked by third-party cookie blocking between sites in + # the same First-Party Set. + ThirdPartyBlockedInFirstPartySet + # The syntax of the Set-Cookie header of the response was invalid. + SyntaxError + # The scheme of the connection is not allowed to store cookies. + SchemeNotSupported + # The cookie was not sent over a secure connection and would have overwritten a cookie with + # the Secure attribute. + OverwriteSecure + # The cookie's domain attribute was invalid with regards to the current host url. + InvalidDomain + # The cookie used the "__Secure-" or "__Host-" prefix in its name and broke the additional + # rules applied to cookies with these prefixes as defined in + # https://tools.ietf.org/html/draft-west-cookie-prefixes-05 + InvalidPrefix + # An unknown error was encountered when trying to store this cookie. + UnknownError + # The cookie had the "SameSite=Strict" attribute but came from a response + # with the same registrable domain but a different scheme. + # This includes navigation requests initiated by other origins. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteStrict + # The cookie had the "SameSite=Lax" attribute but came from a response + # with the same registrable domain but a different scheme. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteLax + # The cookie didn't specify a "SameSite" attribute and was defaulted to + # "SameSite=Lax" and broke the same rules specified in the SchemefulSameSiteLax + # value. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteUnspecifiedTreatedAsLax + # The cookie had the "SameParty" attribute but came from a cross-party response. + SamePartyFromCrossPartyContext + # The cookie had the "SameParty" attribute but did not specify the "Secure" attribute + # (which is required in order to use "SameParty"); or specified the "SameSite=Strict" + # attribute (which is forbidden when using "SameParty"). + SamePartyConflictsWithOtherAttributes + # The cookie's name/value pair size exceeded the size limit defined in + # RFC6265bis. + NameValuePairExceedsMaxSize + # The cookie contained a forbidden ASCII control character, or the tab + # character if it appears in the middle of the cookie name, value, an + # attribute name, or an attribute value. + DisallowedCharacter + # Cookie contains no content or only whitespace. + NoCookieContent - # Fired when direct_socket.TCPSocket is closed. - experimental event directTCPSocketClosed - parameters - RequestId identifier - MonotonicTime timestamp + # Types of reasons why a cookie may not be sent with a request. + experimental type CookieBlockedReason extends string + enum + # The cookie had the "Secure" attribute and the connection was not secure. + SecureOnly + # The cookie's path was not within the request url's path. + NotOnPath + # The cookie's domain is not configured to match the request url's domain, even though they + # share a common TLD+1 (TLD+1 of foo.bar.example.com is example.com). + DomainMismatch + # The cookie had the "SameSite=Strict" attribute and the request was made on on a different + # site. This includes navigation requests initiated by other sites. + SameSiteStrict + # The cookie had the "SameSite=Lax" attribute and the request was made on a different site. + # This does not include navigation requests initiated by other sites. + SameSiteLax + # The cookie didn't specify a SameSite attribute when it was stored and was defaulted to + # "SameSite=Lax" and broke the same rules specified in the SameSiteLax value. The cookie had + # to have been set with "SameSite=None" to enable third-party usage. + SameSiteUnspecifiedTreatedAsLax + # The cookie had the "SameSite=None" attribute and the connection was not secure. Cookies + # without SameSite restrictions must be sent over a secure connection. + SameSiteNoneInsecure + # The cookie was not sent due to user preferences. + UserPreferences + # The cookie was blocked due to third-party cookie phaseout. + ThirdPartyPhaseout + # The cookie was blocked by third-party cookie blocking between sites in + # the same First-Party Set. + ThirdPartyBlockedInFirstPartySet + # An unknown error was encountered when trying to send this cookie. + UnknownError + # The cookie had the "SameSite=Strict" attribute but came from a response + # with the same registrable domain but a different scheme. + # This includes navigation requests initiated by other origins. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteStrict + # The cookie had the "SameSite=Lax" attribute but came from a response + # with the same registrable domain but a different scheme. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteLax + # The cookie didn't specify a "SameSite" attribute and was defaulted to + # "SameSite=Lax" and broke the same rules specified in the SchemefulSameSiteLax + # value. + # This is the "Schemeful Same-Site" version of the blocked reason. + SchemefulSameSiteUnspecifiedTreatedAsLax + # The cookie had the "SameParty" attribute and the request was made from a cross-party context. + SamePartyFromCrossPartyContext + # The cookie's name/value pair size exceeded the size limit defined in + # RFC6265bis. + NameValuePairExceedsMaxSize + # The cookie's source port value does not match the request origin's port. + PortMismatch + # The cookie's source scheme value does not match the request origin's scheme. + SchemeMismatch + # Unpartitioned cookie access from an anonymous context was blocked. + AnonymousContext - # Fired when data is sent to tcp direct socket stream. - experimental event directTCPSocketChunkSent - parameters - RequestId identifier - binary data - MonotonicTime timestamp + # Types of reasons why a cookie should have been blocked by 3PCD but is exempted for the request. + experimental type CookieExemptionReason extends string + enum + # The default value. Cookie with this reason could either be blocked or included. + None + # The cookie should have been blocked by 3PCD but is exempted by explicit user setting. + UserSetting + # The cookie should have been blocked by 3PCD but is exempted by metadata mitigation. + TPCDMetadata + # The cookie should have been blocked by 3PCD but is exempted by Deprecation Trial mitigation. + TPCDDeprecationTrial + # The cookie should have been blocked by 3PCD but is exempted by Top-level Deprecation Trial mitigation. + TopLevelTPCDDeprecationTrial + # The cookie should have been blocked by 3PCD but is exempted by heuristics mitigation. + TPCDHeuristics + # The cookie should have been blocked by 3PCD but is exempted by Enterprise Policy. + EnterprisePolicy + # The cookie should have been blocked by 3PCD but is exempted by Storage Access API. + StorageAccess + # The cookie should have been blocked by 3PCD but is exempted by Top-level Storage Access API. + TopLevelStorageAccess + # The cookie should have been blocked by 3PCD but is exempted by the first-party URL scheme. + Scheme + # The cookie was included due to the 'allow-same-site-none-cookies' value being set in the sandboxing policy. + SameSiteNoneCookiesInSandbox - # Fired when data is received from tcp direct socket stream. - experimental event directTCPSocketChunkReceived - parameters - RequestId identifier - binary data - MonotonicTime timestamp + # A cookie which was not stored from a response with the corresponding reason. + experimental type BlockedSetCookieWithReason extends object + properties + # The reason(s) this cookie was blocked. + array of SetCookieBlockedReason blockedReasons + # The string representing this individual cookie as it would appear in the header. + # This is not the entire "cookie" or "set-cookie" header which could have multiple cookies. + string cookieLine + # The cookie object which represents the cookie which was not stored. It is optional because + # sometimes complete cookie information is not available, such as in the case of parsing + # errors. + optional Cookie cookie - experimental type DirectUDPSocketOptions extends object + # A cookie should have been blocked by 3PCD but is exempted and stored from a response with the + # corresponding reason. A cookie could only have at most one exemption reason. + experimental type ExemptedSetCookieWithReason extends object properties - optional string remoteAddr - # Unsigned int 16. - optional integer remotePort - - optional string localAddr - # Unsigned int 16. - optional integer localPort - - optional DirectSocketDnsQueryType dnsQueryType - - # Expected to be unsigned integer. - optional number sendBufferSize - # Expected to be unsigned integer. - optional number receiveBufferSize + # The reason the cookie was exempted. + CookieExemptionReason exemptionReason + # The string representing this individual cookie as it would appear in the header. + string cookieLine + # The cookie object representing the cookie. + Cookie cookie + # A cookie associated with the request which may or may not be sent with it. + # Includes the cookies itself and reasons for blocking or exemption. + experimental type AssociatedCookie extends object + properties + # The cookie object representing the cookie which was not sent. + Cookie cookie + # The reason(s) the cookie was blocked. If empty means the cookie is included. + array of CookieBlockedReason blockedReasons + # The reason the cookie should have been blocked by 3PCD but is exempted. A cookie could + # only have at most one exemption reason. + optional CookieExemptionReason exemptionReason - # Fired upon direct_socket.UDPSocket creation. - experimental event directUDPSocketCreated - parameters - RequestId identifier - DirectUDPSocketOptions options - MonotonicTime timestamp - optional Initiator initiator + # Cookie parameter object + type CookieParam extends object + properties + # Cookie name. + string name + # Cookie value. + string value + # The request-URI to associate with the setting of the cookie. This value can affect the + # default domain, path, source port, and source scheme values of the created cookie. + optional string url + # Cookie domain. + optional string domain + # Cookie path. + optional string path + # True if cookie is secure. + optional boolean secure + # True if cookie is http-only. + optional boolean httpOnly + # Cookie SameSite type. + optional CookieSameSite sameSite + # Cookie expiration date, session cookie if not set + optional TimeSinceEpoch expires + # Cookie Priority. + experimental optional CookiePriority priority + # True if cookie is SameParty. + experimental optional boolean sameParty + # Cookie source scheme type. + experimental optional CookieSourceScheme sourceScheme + # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. + # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. + # This is a temporary ability and it will be removed in the future. + experimental optional integer sourcePort + # Cookie partition key. If not set, the cookie will be set as not partitioned. + experimental optional CookiePartitionKey partitionKey - # Fired when direct_socket.UDPSocket connection is opened. - experimental event directUDPSocketOpened - parameters - RequestId identifier - string localAddr - # Expected to be unsigned integer. - integer localPort - MonotonicTime timestamp - optional string remoteAddr - # Expected to be unsigned integer. - optional integer remotePort + # Authorization challenge for HTTP status code 401 or 407. + experimental type AuthChallenge extends object + properties + # Source of the authentication challenge. + optional enum source + Server + Proxy + # Origin of the challenger. + string origin + # The authentication scheme used, such as basic or digest + string scheme + # The realm of the challenge. May be empty. + string realm - # Fired when direct_socket.UDPSocket is aborted. - experimental event directUDPSocketAborted - parameters - RequestId identifier - string errorMessage - MonotonicTime timestamp + # Response to an AuthChallenge. + experimental type AuthChallengeResponse extends object + properties + # The decision on what to do in response to the authorization challenge. Default means + # deferring to the default behavior of the net stack, which will likely either the Cancel + # authentication or display a popup dialog box. + enum response + Default + CancelAuth + ProvideCredentials + # The username to provide, possibly empty. Should only be set if response is + # ProvideCredentials. + optional string username + # The password to provide, possibly empty. Should only be set if response is + # ProvideCredentials. + optional string password - # Fired when direct_socket.UDPSocket is closed. - experimental event directUDPSocketClosed - parameters - RequestId identifier - MonotonicTime timestamp + # Stages of the interception to begin intercepting. Request will intercept before the request is + # sent. Response will intercept after the response is received. + experimental type InterceptionStage extends string + enum + Request + HeadersReceived - experimental type DirectUDPMessage extends object + # Request pattern for interception. + experimental type RequestPattern extends object properties - binary data - # Null for connected mode. - optional string remoteAddr - # Null for connected mode. - # Expected to be unsigned integer. - optional integer remotePort - - # Fired when message is sent to udp direct socket stream. - experimental event directUDPSocketChunkSent - parameters - RequestId identifier - DirectUDPMessage message - MonotonicTime timestamp + # Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is + # backslash. Omitting is equivalent to `"*"`. + optional string urlPattern + # If set, only requests for matching resource types will be intercepted. + optional ResourceType resourceType + # Stage at which to begin intercepting requests. Default is Request. + optional InterceptionStage interceptionStage - # Fired when message is received from udp direct socket stream. - experimental event directUDPSocketChunkReceived - parameters - RequestId identifier - DirectUDPMessage message - MonotonicTime timestamp + # Information about a signed exchange signature. + # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#rfc.section.3.1 + experimental type SignedExchangeSignature extends object + properties + # Signed exchange signature label. + string label + # The hex string of signed exchange signature. + string signature + # Signed exchange signature integrity. + string integrity + # Signed exchange signature cert Url. + optional string certUrl + # The hex string of signed exchange signature cert sha256. + optional string certSha256 + # Signed exchange signature validity Url. + string validityUrl + # Signed exchange signature date. + integer date + # Signed exchange signature expires. + integer expires + # The encoded certificates. + optional array of string certificates - experimental type PrivateNetworkRequestPolicy extends string - enum - Allow - BlockFromInsecureToMorePrivate - WarnFromInsecureToMorePrivate - PreflightBlock - PreflightWarn - PermissionBlock - PermissionWarn + # Information about a signed exchange header. + # https://wicg.github.io/webpackage/draft-yasskin-httpbis-origin-signed-exchanges-impl.html#cbor-representation + experimental type SignedExchangeHeader extends object + properties + # Signed exchange request URL. + string requestUrl + # Signed exchange response code. + integer responseCode + # Signed exchange response headers. + Headers responseHeaders + # Signed exchange response signature. + array of SignedExchangeSignature signatures + # Signed exchange header integrity hash in the form of `sha256-`. + string headerIntegrity - experimental type IPAddressSpace extends string + # Field type for a signed exchange related error. + experimental type SignedExchangeErrorField extends string enum - Loopback - Local - Public - Unknown + signatureSig + signatureIntegrity + signatureCertUrl + signatureCertSha256 + signatureValidityUrl + signatureTimestamps - experimental type ConnectTiming extends object + # Information about a signed exchange response. + experimental type SignedExchangeError extends object properties - # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in - # milliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for - # the same request (but not for redirected requests). - number requestTime + # Error message. + string message + # The index of the signature which caused the error. + optional integer signatureIndex + # The field which caused the error. + optional SignedExchangeErrorField errorField - experimental type ClientSecurityState extends object + # Information about a signed exchange response. + experimental type SignedExchangeInfo extends object properties - boolean initiatorIsSecureContext - IPAddressSpace initiatorIPAddressSpace - PrivateNetworkRequestPolicy privateNetworkRequestPolicy + # The outer response of signed HTTP exchange which was received from network. + Response outerResponse + # Whether network response for the signed exchange was accompanied by + # extra headers. + boolean hasExtraInfo + # Information about the signed exchange header. + optional SignedExchangeHeader header + # Security details for the signed exchange header. + optional SecurityDetails securityDetails + # Errors occurred while handling the signed exchange. + optional array of SignedExchangeError errors - # Fired when additional information about a requestWillBeSent event is available from the - # network stack. Not every requestWillBeSent event will have an additional - # requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent - # or requestWillBeSentExtraInfo will be fired first for the same request. - experimental event requestWillBeSentExtraInfo + # List of content encodings supported by the backend. + experimental type ContentEncoding extends string + enum + deflate + gzip + br + zstd + + # Sets a list of content encodings that will be accepted. Empty list means no encoding is accepted. + experimental command setAcceptedEncodings parameters - # Request identifier. Used to match this information to an existing requestWillBeSent event. - RequestId requestId - # A list of cookies potentially associated to the requested URL. This includes both cookies sent with - # the request and the ones not sent; the latter are distinguished by having blockedReasons field set. - array of AssociatedCookie associatedCookies - # Raw request headers as they will be sent over the wire. - Headers headers - # Connection timing information for the request. - experimental ConnectTiming connectTiming - # The client security state set for the request. - optional ClientSecurityState clientSecurityState - # Whether the site has partitioned cookies stored in a partition different than the current one. - optional boolean siteHasCookieInOtherPartition - - # Fired when additional information about a responseReceived event is available from the network - # stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for - # it, and responseReceivedExtraInfo may be fired before or after responseReceived. - experimental event responseReceivedExtraInfo - parameters - # Request identifier. Used to match this information to another responseReceived event. - RequestId requestId - # A list of cookies which were not stored from the response along with the corresponding - # reasons for blocking. The cookies here may not be valid due to syntax errors, which - # are represented by the invalid cookie line string instead of a proper cookie. - array of BlockedSetCookieWithReason blockedCookies - # Raw response headers as they were received over the wire. - # Duplicate headers in the response are represented as a single key with their values - # concatentated using `\n` as the separator. - # See also `headersText` that contains verbatim text for HTTP/1.*. - Headers headers - # The IP address space of the resource. The address space can only be determined once the transport - # established the connection, so we can't send it in `requestWillBeSentExtraInfo`. - IPAddressSpace resourceIPAddressSpace - # The status code of the response. This is useful in cases the request failed and no responseReceived - # event is triggered, which is the case for, e.g., CORS errors. This is also the correct status code - # for cached requests, where the status in responseReceived is a 200 and this will be 304. - integer statusCode - # Raw response header text as it was received over the wire. The raw text may not always be - # available, such as in the case of HTTP/2 or QUIC. - optional string headersText - # The cookie partition key that will be used to store partitioned cookies set in this response. - # Only sent when partitioned cookies are enabled. - experimental optional CookiePartitionKey cookiePartitionKey - # True if partitioned cookies are enabled, but the partition key is not serializable to string. - optional boolean cookiePartitionKeyOpaque - # A list of cookies which should have been blocked by 3PCD but are exempted and stored from - # the response with the corresponding reason. - optional array of ExemptedSetCookieWithReason exemptedCookies - - # Fired when 103 Early Hints headers is received in addition to the common response. - # Not every responseReceived event will have an responseReceivedEarlyHints fired. - # Only one responseReceivedEarlyHints may be fired for eached responseReceived event. - experimental event responseReceivedEarlyHints - parameters - # Request identifier. Used to match this information to another responseReceived event. - RequestId requestId - # Raw response headers as they were received over the wire. - # Duplicate headers in the response are represented as a single key with their values - # concatentated using `\n` as the separator. - # See also `headersText` that contains verbatim text for HTTP/1.*. - Headers headers - - # Fired exactly once for each Trust Token operation. Depending on - # the type of the operation and whether the operation succeeded or - # failed, the event is fired before the corresponding request was sent - # or after the response was received. - experimental event trustTokenOperationDone - parameters - # Detailed success or error status of the operation. - # 'AlreadyExists' also signifies a successful operation, as the result - # of the operation already exists und thus, the operation was abort - # preemptively (e.g. a cache hit). - enum status - Ok - InvalidArgument - MissingIssuerKeys - FailedPrecondition - ResourceExhausted - AlreadyExists - ResourceLimited - Unauthorized - BadResponse - InternalError - UnknownError - FulfilledLocally - SiteIssuerLimit - TrustTokenOperationType type - RequestId requestId - # Top level origin. The context in which the operation was attempted. - optional string topLevelOrigin - # Origin of the issuer in case of a "Issuance" or "Redemption" operation. - optional string issuerOrigin - # The number of obtained Trust Tokens on a successful "Issuance" operation. - optional integer issuedTokenCount + # List of accepted content encodings. + array of ContentEncoding encodings - # Fired once security policy has been updated. - experimental event policyUpdated + # Clears accepted encodings set by setAcceptedEncodings + experimental command clearAcceptedEncodingsOverride - # Fired once when parsing the .wbn file has succeeded. - # The event contains the information about the web bundle contents. - experimental event subresourceWebBundleMetadataReceived - parameters - # Request identifier. Used to match this information to another event. - RequestId requestId - # A list of URLs of resources in the subresource Web Bundle. - array of string urls + # Tells whether clearing browser cache is supported. + deprecated command canClearBrowserCache + returns + # True if browser cache can be cleared. + boolean result - # Fired once when parsing the .wbn file has failed. - experimental event subresourceWebBundleMetadataError - parameters - # Request identifier. Used to match this information to another event. - RequestId requestId - # Error message - string errorMessage + # Tells whether clearing browser cookies is supported. + deprecated command canClearBrowserCookies + returns + # True if browser cookies can be cleared. + boolean result - # Fired when handling requests for resources within a .wbn file. - # Note: this will only be fired for resources that are requested by the webpage. - experimental event subresourceWebBundleInnerResponseParsed - parameters - # Request identifier of the subresource request - RequestId innerRequestId - # URL of the subresource resource. - string innerRequestURL - # Bundle request identifier. Used to match this information to another event. - # This made be absent in case when the instrumentation was enabled only - # after webbundle was parsed. - optional RequestId bundleRequestId - - # Fired when request for resources within a .wbn file failed. - experimental event subresourceWebBundleInnerResponseError - parameters - # Request identifier of the subresource request - RequestId innerRequestId - # URL of the subresource resource. - string innerRequestURL - # Error message - string errorMessage - # Bundle request identifier. Used to match this information to another event. - # This made be absent in case when the instrumentation was enabled only - # after webbundle was parsed. - optional RequestId bundleRequestId + # Tells whether emulation of network conditions is supported. + deprecated command canEmulateNetworkConditions + returns + # True if emulation of network conditions is supported. + boolean result - experimental type CrossOriginOpenerPolicyValue extends string - enum - SameOrigin - SameOriginAllowPopups - RestrictProperties - UnsafeNone - SameOriginPlusCoep - RestrictPropertiesPlusCoep - NoopenerAllowPopups + # Clears browser cache. + command clearBrowserCache - experimental type CrossOriginOpenerPolicyStatus extends object - properties - CrossOriginOpenerPolicyValue value - CrossOriginOpenerPolicyValue reportOnlyValue - optional string reportingEndpoint - optional string reportOnlyReportingEndpoint + # Clears browser cookies. + command clearBrowserCookies - experimental type CrossOriginEmbedderPolicyValue extends string - enum - None - Credentialless - RequireCorp + # Response to Network.requestIntercepted which either modifies the request to continue with any + # modifications, or blocks it, or completes it with the provided response bytes. If a network + # fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted + # event will be sent with the same InterceptionId. + # Deprecated, use Fetch.continueRequest, Fetch.fulfillRequest and Fetch.failRequest instead. + experimental deprecated command continueInterceptedRequest + parameters + InterceptionId interceptionId + # If set this causes the request to fail with the given reason. Passing `Aborted` for requests + # marked with `isNavigationRequest` also cancels the navigation. Must not be set in response + # to an authChallenge. + optional ErrorReason errorReason + # If set the requests completes using with the provided base64 encoded raw response, including + # HTTP status line and headers etc... Must not be set in response to an authChallenge. + optional binary rawResponse + # If set the request url will be modified in a way that's not observable by page. Must not be + # set in response to an authChallenge. + optional string url + # If set this allows the request method to be overridden. Must not be set in response to an + # authChallenge. + optional string method + # If set this allows postData to be set. Must not be set in response to an authChallenge. + optional string postData + # If set this allows the request headers to be changed. Must not be set in response to an + # authChallenge. + optional Headers headers + # Response to a requestIntercepted with an authChallenge. Must not be set otherwise. + optional AuthChallengeResponse authChallengeResponse - experimental type CrossOriginEmbedderPolicyStatus extends object - properties - CrossOriginEmbedderPolicyValue value - CrossOriginEmbedderPolicyValue reportOnlyValue - optional string reportingEndpoint - optional string reportOnlyReportingEndpoint + # Deletes browser cookies with matching name and url or domain/path/partitionKey pair. + command deleteCookies + parameters + # Name of the cookies to remove. + string name + # If specified, deletes all the cookies with the given name where domain and path match + # provided URL. + optional string url + # If specified, deletes only cookies with the exact domain. + optional string domain + # If specified, deletes only cookies with the exact path. + optional string path + # If specified, deletes only cookies with the the given name and partitionKey where + # all partition key attributes match the cookie partition key attribute. + experimental optional CookiePartitionKey partitionKey - experimental type ContentSecurityPolicySource extends string - enum - HTTP - Meta + # Disables network tracking, prevents network events from being sent to the client. + command disable - experimental type ContentSecurityPolicyStatus extends object + experimental type NetworkConditions extends object properties - string effectiveDirectives - boolean isEnforced - ContentSecurityPolicySource source + # Only matching requests will be affected by these conditions. Patterns use the URLPattern constructor string + # syntax (https://urlpattern.spec.whatwg.org/) and must be absolute. If the pattern is empty, all requests are + # matched (including p2p connections). + string urlPattern + # Minimum latency from request sent to response headers received (ms). + number latency + # Maximal aggregated download throughput (bytes/sec). -1 disables download throttling. + number downloadThroughput + # Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling. + number uploadThroughput + # Connection type if known. + optional ConnectionType connectionType + # WebRTC packet loss (percent, 0-100). 0 disables packet loss emulation, 100 drops all the packets. + optional number packetLoss + # WebRTC packet queue length (packet). 0 removes any queue length limitations. + optional integer packetQueueLength + # WebRTC packetReordering feature. + optional boolean packetReordering - experimental type SecurityIsolationStatus extends object - properties - optional CrossOriginOpenerPolicyStatus coop - optional CrossOriginEmbedderPolicyStatus coep - optional array of ContentSecurityPolicyStatus csp + # Activates emulation of network conditions. This command is deprecated in favor of the emulateNetworkConditionsByRule + # and overrideNetworkState commands, which can be used together to the same effect. + deprecated command emulateNetworkConditions + parameters + # True to emulate internet disconnection. + boolean offline + # Minimum latency from request sent to response headers received (ms). + number latency + # Maximal aggregated download throughput (bytes/sec). -1 disables download throttling. + number downloadThroughput + # Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling. + number uploadThroughput + # Connection type if known. + optional ConnectionType connectionType + # WebRTC packet loss (percent, 0-100). 0 disables packet loss emulation, 100 drops all the packets. + experimental optional number packetLoss + # WebRTC packet queue length (packet). 0 removes any queue length limitations. + experimental optional integer packetQueueLength + # WebRTC packetReordering feature. + experimental optional boolean packetReordering - # Returns information about the COEP/COOP isolation status. - experimental command getSecurityIsolationStatus + # Activates emulation of network conditions for individual requests using URL match patterns. Unlike the deprecated + # Network.emulateNetworkConditions this method does not affect `navigator` state. Use Network.overrideNetworkState to + # explicitly modify `navigator` behavior. + experimental command emulateNetworkConditionsByRule parameters - # If no frameId is provided, the status of the target is provided. - optional Page.FrameId frameId + # True to emulate internet disconnection. + boolean offline + # Configure conditions for matching requests. If multiple entries match a request, the first entry wins. Global + # conditions can be configured by leaving the urlPattern for the conditions empty. These global conditions are + # also applied for throttling of p2p connections. + array of NetworkConditions matchedNetworkConditions returns - SecurityIsolationStatus status + # An id for each entry in matchedNetworkConditions. The id will be included in the requestWillBeSentExtraInfo for + # requests affected by a rule. + array of string ruleIds - # Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client. - # Enabling triggers 'reportingApiReportAdded' for all existing reports. - experimental command enableReportingApi + # Override the state of navigator.onLine and navigator.connection. + experimental command overrideNetworkState parameters - # Whether to enable or disable events for the Reporting API - boolean enable + # True to emulate internet disconnection. + boolean offline + # Minimum latency from request sent to response headers received (ms). + number latency + # Maximal aggregated download throughput (bytes/sec). -1 disables download throttling. + number downloadThroughput + # Maximal aggregated upload throughput (bytes/sec). -1 disables upload throttling. + number uploadThroughput + # Connection type if known. + optional ConnectionType connectionType - # The status of a Reporting API report. - experimental type ReportStatus extends string - enum - # Report has been queued and no attempt has been made to deliver it yet, - # or attempted previous upload failed (impermanently). - Queued - # There is an ongoing attempt to upload this report. - Pending - # Deletion of this report was requested while it was pending, so it will - # be removed after possibly outstanding upload attempts complete (successful - # or not). - MarkedForRemoval - # Successfully uploaded and MarkedForRemoval. - Success + # Enables network tracking, network events will now be delivered to the client. + command enable + parameters + # Buffer size in bytes to use when preserving network payloads (XHRs, etc). + experimental optional integer maxTotalBufferSize + # Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc). + experimental optional integer maxResourceBufferSize + # Longest post body size (in bytes) that would be included in requestWillBeSent notification + optional integer maxPostDataSize + # Whether DirectSocket chunk send/receive events should be reported. + experimental optional boolean reportDirectSocketTraffic + # Enable storing response bodies outside of renderer, so that these survive + # a cross-process navigation. Requires maxTotalBufferSize to be set. + # Currently defaults to false. + experimental optional boolean enableDurableMessages - experimental type ReportId extends string + # Returns all browser cookies. Depending on the backend support, will return detailed cookie + # information in the `cookies` field. + # Deprecated. Use Storage.getCookies instead. + deprecated command getAllCookies + returns + # Array of cookie objects. + array of Cookie cookies - # An object representing a report generated by the Reporting API. - experimental type ReportingApiReport extends object - properties - ReportId id - # The URL of the document that triggered the report. - string initiatorUrl - # The name of the endpoint group that should be used to deliver the report. - string destination - # The type of the report (specifies the set of data that is contained in the report body). - string type - # When the report was generated. - Network.TimeSinceEpoch timestamp - # How many uploads deep the related request was. - integer depth - # The number of delivery attempts made so far, not including an active attempt. - integer completedAttempts - object body - ReportStatus status + # Returns the DER-encoded certificate. + experimental command getCertificate + parameters + # Origin to get certificate for. + string origin + returns + array of string tableNames - # Is sent whenever a new report is added. - # And after 'enableReportingApi' for all existing reports. - experimental event reportingApiReportAdded + # Returns all browser cookies for the current URL. Depending on the backend support, will return + # detailed cookie information in the `cookies` field. + command getCookies parameters - ReportingApiReport report + # The list of URLs for which applicable cookies will be fetched. + # If not specified, it's assumed to be set to the list containing + # the URLs of the page and all of its subframes. + optional array of string urls + returns + # Array of cookie objects. + array of Cookie cookies - experimental event reportingApiReportUpdated + # Returns content served for the given request. + command getResponseBody parameters - ReportingApiReport report + # Identifier of the network request to get content for. + RequestId requestId + returns + # Response body. + string body + # True, if content was sent as base64. + boolean base64Encoded - experimental type ReportingApiEndpoint extends object - properties - # The URL of the endpoint to which reports may be delivered. - string url - # Name of the endpoint group. - string groupName + # Returns post data sent with the request. Returns an error when no data was sent with the request. + command getRequestPostData + parameters + # Identifier of the network request to get content for. + RequestId requestId + returns + # Request body string, omitting files from multipart requests + string postData - experimental event reportingApiEndpointsChangedForOrigin + # Returns content served for the given currently intercepted request. + experimental command getResponseBodyForInterception parameters - # Origin of the document(s) which configured the endpoints. - string origin - array of ReportingApiEndpoint endpoints + # Identifier for the intercepted request to get body for. + InterceptionId interceptionId + returns + # Response body. + string body + # True, if content was sent as base64. + boolean base64Encoded - # An object providing the result of a network resource load. - experimental type LoadNetworkResourcePageResult extends object - properties - boolean success - # Optional values used for error reporting. - optional number netError - optional string netErrorName - optional number httpStatusCode - # If successful, one of the following two fields holds the result. - optional IO.StreamHandle stream - # Response headers. - optional Network.Headers headers + # Returns a handle to the stream representing the response body. Note that after this command, + # the intercepted request can't be continued as is -- you either need to cancel it or to provide + # the response body. The stream only supports sequential read, IO.read will fail if the position + # is specified. + experimental command takeResponseBodyForInterceptionAsStream + parameters + InterceptionId interceptionId + returns + IO.StreamHandle stream - # An options object that may be extended later to better support CORS, - # CORB and streaming. - experimental type LoadNetworkResourceOptions extends object - properties - boolean disableCache - boolean includeCredentials + # This method sends a new XMLHttpRequest which is identical to the original one. The following + # parameters should be identical: method, url, async, request body, extra headers, withCredentials + # attribute, user, password. + experimental command replayXHR + parameters + # Identifier of XHR to replay. + RequestId requestId - # Fetches the resource and returns the content. - experimental command loadNetworkResource + # Searches for given string in response content. + experimental command searchInResponseBody parameters - # Frame id to get the resource for. Mandatory for frame targets, and - # should be omitted for worker targets. - optional Page.FrameId frameId - # URL of the resource to get content for. - string url - # Options for the request. - LoadNetworkResourceOptions options + # Identifier of the network response to search. + RequestId requestId + # String to search for. + string query + # If true, search is case sensitive. + optional boolean caseSensitive + # If true, treats string parameter as regex. + optional boolean isRegex returns - LoadNetworkResourcePageResult resource + # List of search matches. + array of Debugger.SearchMatch result - # Sets Controls for third-party cookie access - # Page reload is required before the new cookie behavior will be observed - experimental command setCookieControls + experimental type BlockPattern extends object + properties + # URL pattern to match. Patterns use the URLPattern constructor string syntax + # (https://urlpattern.spec.whatwg.org/) and must be absolute. Example: `*://*:*/*.css`. + string urlPattern + # Whether or not to block the pattern. If false, a matching request will not be blocked even if it matches a later + # `BlockPattern`. + boolean block + + # Blocks URLs from loading. + experimental command setBlockedURLs parameters - # Whether 3pc restriction is enabled. - boolean enableThirdPartyCookieRestriction + # Patterns to match in the order in which they are given. These patterns + # also take precedence over any wildcard patterns defined in `urls`. + optional array of BlockPattern urlPatterns + # URL patterns to block. Wildcards ('*') are allowed. + deprecated optional array of string urls - # Whether 3pc grace period exception should be enabled; false by default. - boolean disableThirdPartyCookieMetadata + # Toggles ignoring of service worker for each request. + command setBypassServiceWorker + parameters + # Bypass service worker and load from network. + boolean bypass - # Whether 3pc heuristics exceptions should be enabled; false by default. - boolean disableThirdPartyCookieHeuristics + # Toggles ignoring cache for each request. If `true`, cache will not be used. + command setCacheDisabled + parameters + # Cache disabled state. + boolean cacheDisabled -# This domain provides various functionality related to drawing atop the inspected page. -experimental domain Overlay - depends on DOM - depends on Page - depends on Runtime + # Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist. + command setCookie + parameters + # Cookie name. + string name + # Cookie value. + string value + # The request-URI to associate with the setting of the cookie. This value can affect the + # default domain, path, source port, and source scheme values of the created cookie. + optional string url + # Cookie domain. + optional string domain + # Cookie path. + optional string path + # True if cookie is secure. + optional boolean secure + # True if cookie is http-only. + optional boolean httpOnly + # Cookie SameSite type. + optional CookieSameSite sameSite + # Cookie expiration date, session cookie if not set + optional TimeSinceEpoch expires + # Cookie Priority type. + experimental optional CookiePriority priority + # True if cookie is SameParty. + experimental optional boolean sameParty + # Cookie source scheme type. + experimental optional CookieSourceScheme sourceScheme + # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. + # An unspecified port value allows protocol clients to emulate legacy cookie scope for the port. + # This is a temporary ability and it will be removed in the future. + experimental optional integer sourcePort + # Cookie partition key. If not set, the cookie will be set as not partitioned. + experimental optional CookiePartitionKey partitionKey + returns + # Always set to true. If an error occurs, the response indicates protocol error. + deprecated boolean success - # Configuration data for drawing the source order of an elements children. - type SourceOrderConfig extends object - properties - # the color to outline the given element in. - DOM.RGBA parentOutlineColor - # the color to outline the child elements in. - DOM.RGBA childOutlineColor + # Sets given cookies. + command setCookies + parameters + # Cookies to be set. + array of CookieParam cookies - # Configuration data for the highlighting of Grid elements. - type GridHighlightConfig extends object - properties - # Whether the extension lines from grid cells to the rulers should be shown (default: false). - optional boolean showGridExtensionLines - # Show Positive line number labels (default: false). - optional boolean showPositiveLineNumbers - # Show Negative line number labels (default: false). - optional boolean showNegativeLineNumbers - # Show area name labels (default: false). - optional boolean showAreaNames - # Show line name labels (default: false). - optional boolean showLineNames - # Show track size labels (default: false). - optional boolean showTrackSizes - # The grid container border highlight color (default: transparent). - optional DOM.RGBA gridBorderColor - # The cell border color (default: transparent). Deprecated, please use rowLineColor and columnLineColor instead. - deprecated optional DOM.RGBA cellBorderColor - # The row line color (default: transparent). - optional DOM.RGBA rowLineColor - # The column line color (default: transparent). - optional DOM.RGBA columnLineColor - # Whether the grid border is dashed (default: false). - optional boolean gridBorderDash - # Whether the cell border is dashed (default: false). Deprecated, please us rowLineDash and columnLineDash instead. - deprecated optional boolean cellBorderDash - # Whether row lines are dashed (default: false). - optional boolean rowLineDash - # Whether column lines are dashed (default: false). - optional boolean columnLineDash - # The row gap highlight fill color (default: transparent). - optional DOM.RGBA rowGapColor - # The row gap hatching fill color (default: transparent). - optional DOM.RGBA rowHatchColor - # The column gap highlight fill color (default: transparent). - optional DOM.RGBA columnGapColor - # The column gap hatching fill color (default: transparent). - optional DOM.RGBA columnHatchColor - # The named grid areas border color (Default: transparent). - optional DOM.RGBA areaBorderColor - # The grid container background color (Default: transparent). - optional DOM.RGBA gridBackgroundColor - - # Configuration data for the highlighting of Flex container elements. - type FlexContainerHighlightConfig extends object - properties - # The style of the container border - optional LineStyle containerBorder - # The style of the separator between lines - optional LineStyle lineSeparator - # The style of the separator between items - optional LineStyle itemSeparator - # Style of content-distribution space on the main axis (justify-content). - optional BoxStyle mainDistributedSpace - # Style of content-distribution space on the cross axis (align-content). - optional BoxStyle crossDistributedSpace - # Style of empty space caused by row gaps (gap/row-gap). - optional BoxStyle rowGapSpace - # Style of empty space caused by columns gaps (gap/column-gap). - optional BoxStyle columnGapSpace - # Style of the self-alignment line (align-items). - optional LineStyle crossAlignment - - # Configuration data for the highlighting of Flex item elements. - type FlexItemHighlightConfig extends object - properties - # Style of the box representing the item's base size - optional BoxStyle baseSizeBox - # Style of the border around the box representing the item's base size - optional LineStyle baseSizeBorder - # Style of the arrow representing if the item grew or shrank - optional LineStyle flexibilityArrow - - # Style information for drawing a line. - type LineStyle extends object - properties - # The color of the line (default: transparent) - optional DOM.RGBA color - # The line pattern (default: solid) - optional enum pattern - dashed - dotted + # Specifies whether to always send extra HTTP headers with the requests from this page. + command setExtraHTTPHeaders + parameters + # Map with extra HTTP headers. + Headers headers - # Style information for drawing a box. - type BoxStyle extends object - properties - # The background color for the box (default: transparent) - optional DOM.RGBA fillColor - # The hatching color for the box (default: transparent) - optional DOM.RGBA hatchColor + # Specifies whether to attach a page script stack id in requests + experimental command setAttachDebugStack + parameters + # Whether to attach a page script stack for debugging purpose. + boolean enabled - type ContrastAlgorithm extends string - enum - aa - aaa - apca + # Sets the requests to intercept that match the provided patterns and optionally resource types. + # Deprecated, please use Fetch.enable instead. + experimental deprecated command setRequestInterception + parameters + # Requests matching any of these patterns will be forwarded and wait for the corresponding + # continueInterceptedRequest call. + array of RequestPattern patterns - # Configuration data for the highlighting of page elements. - type HighlightConfig extends object - properties - # Whether the node info tooltip should be shown (default: false). - optional boolean showInfo - # Whether the node styles in the tooltip (default: false). - optional boolean showStyles - # Whether the rulers should be shown (default: false). - optional boolean showRulers - # Whether the a11y info should be shown (default: true). - optional boolean showAccessibilityInfo - # Whether the extension lines from node to the rulers should be shown (default: false). - optional boolean showExtensionLines - # The content box highlight fill color (default: transparent). - optional DOM.RGBA contentColor - # The padding highlight fill color (default: transparent). - optional DOM.RGBA paddingColor - # The border highlight fill color (default: transparent). - optional DOM.RGBA borderColor - # The margin highlight fill color (default: transparent). - optional DOM.RGBA marginColor - # The event target element highlight fill color (default: transparent). - optional DOM.RGBA eventTargetColor - # The shape outside fill color (default: transparent). - optional DOM.RGBA shapeColor - # The shape margin fill color (default: transparent). - optional DOM.RGBA shapeMarginColor - # The grid layout color (default: transparent). - optional DOM.RGBA cssGridColor - # The color format used to format color styles (default: hex). - optional ColorFormat colorFormat - # The grid layout highlight configuration (default: all transparent). - optional GridHighlightConfig gridHighlightConfig - # The flex container highlight configuration (default: all transparent). - optional FlexContainerHighlightConfig flexContainerHighlightConfig - # The flex item highlight configuration (default: all transparent). - optional FlexItemHighlightConfig flexItemHighlightConfig - # The contrast algorithm to use for the contrast ratio (default: aa). - optional ContrastAlgorithm contrastAlgorithm - # The container query container highlight configuration (default: all transparent). - optional ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig + # Allows overriding user agent with the given string. + command setUserAgentOverride + redirect Emulation + parameters + # User agent to use. + string userAgent + # Browser language to emulate. + optional string acceptLanguage + # The platform navigator.platform should return. + optional string platform + # To be sent in Sec-CH-UA-* headers and returned in navigator.userAgentData + experimental optional Emulation.UserAgentMetadata userAgentMetadata - type ColorFormat extends string - enum - rgb - hsl - hwb - hex - # Configurations for Persistent Grid Highlight - type GridNodeHighlightConfig extends object - properties - # A descriptor for the highlight appearance. - GridHighlightConfig gridHighlightConfig - # Identifier of the node to highlight. - DOM.NodeId nodeId + # Fired when data chunk was received over the network. + event dataReceived + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # Data chunk length. + integer dataLength + # Actual bytes received (might be less than dataLength for compressed encodings). + integer encodedDataLength + # Data that was received. + experimental optional binary data - type FlexNodeHighlightConfig extends object - properties - # A descriptor for the highlight appearance of flex containers. - FlexContainerHighlightConfig flexContainerHighlightConfig - # Identifier of the node to highlight. - DOM.NodeId nodeId + # Enables streaming of the response for the given requestId. + # If enabled, the dataReceived event contains the data that was received during streaming. + experimental command streamResourceContent + parameters + # Identifier of the request to stream. + RequestId requestId + returns + # Data that has been buffered until streaming is enabled. + binary bufferedData - type ScrollSnapContainerHighlightConfig extends object - properties - # The style of the snapport border (default: transparent) - optional LineStyle snapportBorder - # The style of the snap area border (default: transparent) - optional LineStyle snapAreaBorder - # The margin highlight fill color (default: transparent). - optional DOM.RGBA scrollMarginColor - # The padding highlight fill color (default: transparent). - optional DOM.RGBA scrollPaddingColor + # Fired when EventSource message is received. + event eventSourceMessageReceived + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # Message type. + string eventName + # Message identifier. + string eventId + # Message content. + string data - type ScrollSnapHighlightConfig extends object - properties - # A descriptor for the highlight appearance of scroll snap containers. - ScrollSnapContainerHighlightConfig scrollSnapContainerHighlightConfig - # Identifier of the node to highlight. - DOM.NodeId nodeId + # Fired when HTTP request has failed to load. + event loadingFailed + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # Resource type. + ResourceType type + # Error message. List of network errors: https://cs.chromium.org/chromium/src/net/base/net_error_list.h + string errorText + # True if loading was canceled. + optional boolean canceled + # The reason why loading was blocked, if any. + optional BlockedReason blockedReason + # The reason why loading was blocked by CORS, if any. + optional CorsErrorStatus corsErrorStatus - # Configuration for dual screen hinge - type HingeConfig extends object - properties - # A rectangle represent hinge - DOM.Rect rect - # The content box highlight fill color (default: a dark color). - optional DOM.RGBA contentColor - # The content box highlight outline color (default: transparent). - optional DOM.RGBA outlineColor + # Fired when HTTP request has finished loading. + event loadingFinished + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # Total number of bytes received for this request. + number encodedDataLength - # Configuration for Window Controls Overlay - type WindowControlsOverlayConfig extends object - properties - # Whether the title bar CSS should be shown when emulating the Window Controls Overlay. - boolean showCSS - # Selected platforms to show the overlay. - string selectedPlatform - # The theme color defined in app manifest. - string themeColor + # Details of an intercepted HTTP request, which must be either allowed, blocked, modified or + # mocked. + # Deprecated, use Fetch.requestPaused instead. + experimental deprecated event requestIntercepted + parameters + # Each request the page makes will have a unique id, however if any redirects are encountered + # while processing that fetch, they will be reported with the same id as the original fetch. + # Likewise if HTTP authentication is needed then the same fetch id will be used. + InterceptionId interceptionId + Request request + # The id of the frame that initiated the request. + Page.FrameId frameId + # How the requested resource will be used. + ResourceType resourceType + # Whether this is a navigation request, which can abort the navigation completely. + boolean isNavigationRequest + # Set if the request is a navigation that will result in a download. + # Only present after response is received from the server (i.e. HeadersReceived stage). + optional boolean isDownload + # Redirect location, only sent if a redirect was intercepted. + optional string redirectUrl + # Details of the Authorization Challenge encountered. If this is set then + # continueInterceptedRequest must contain an authChallengeResponse. + optional AuthChallenge authChallenge + # Response error if intercepted at response stage or if redirect occurred while intercepting + # request. + optional ErrorReason responseErrorReason + # Response code if intercepted at response stage or if redirect occurred while intercepting + # request or auth retry occurred. + optional integer responseStatusCode + # Response headers if intercepted at the response stage or if redirect occurred while + # intercepting request or auth retry occurred. + optional Headers responseHeaders + # If the intercepted request had a corresponding requestWillBeSent event fired for it, then + # this requestId will be the same as the requestId present in the requestWillBeSent event. + optional RequestId requestId - type ContainerQueryHighlightConfig extends object - properties - # A descriptor for the highlight appearance of container query containers. - ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig - # Identifier of the container node to highlight. - DOM.NodeId nodeId + # Fired if request ended up loading from cache. + event requestServedFromCache + parameters + # Request identifier. + RequestId requestId - type ContainerQueryContainerHighlightConfig extends object - properties - # The style of the container border. - optional LineStyle containerBorder - # The style of the descendants' borders. - optional LineStyle descendantBorder + # Fired when page is about to send HTTP request. + event requestWillBeSent + parameters + # Request identifier. + RequestId requestId + # Loader identifier. Empty string if the request is fetched from worker. + LoaderId loaderId + # URL of the document this request is loaded for. + string documentURL + # Request data. + Request request + # Timestamp. + MonotonicTime timestamp + # Timestamp. + TimeSinceEpoch wallTime + # Request initiator. + Initiator initiator + # In the case that redirectResponse is populated, this flag indicates whether + # requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be or were emitted + # for the request which was just redirected. + experimental boolean redirectHasExtraInfo + # Redirect response data. + optional Response redirectResponse + # Type of this resource. + optional ResourceType type + # Frame identifier. + optional Page.FrameId frameId + # Whether the request is initiated by a user gesture. Defaults to false. + optional boolean hasUserGesture - type IsolatedElementHighlightConfig extends object - properties - # A descriptor for the highlight appearance of an element in isolation mode. - IsolationModeHighlightConfig isolationModeHighlightConfig - # Identifier of the isolated element to highlight. - DOM.NodeId nodeId + # Fired when resource loading priority is changed + experimental event resourceChangedPriority + parameters + # Request identifier. + RequestId requestId + # New priority + ResourcePriority newPriority + # Timestamp. + MonotonicTime timestamp - type IsolationModeHighlightConfig extends object - properties - # The fill color of the resizers (default: transparent). - optional DOM.RGBA resizerColor - # The fill color for resizer handles (default: transparent). - optional DOM.RGBA resizerHandleColor - # The fill color for the mask covering non-isolated elements (default: transparent). - optional DOM.RGBA maskColor + # Fired when a signed exchange was received over the network + experimental event signedExchangeReceived + parameters + # Request identifier. + RequestId requestId + # Information about the signed exchange response. + SignedExchangeInfo info - type InspectMode extends string - enum - searchForNode - searchForUAShadowDOM - captureAreaScreenshot - none + # Fired when HTTP response is available. + event responseReceived + parameters + # Request identifier. + RequestId requestId + # Loader identifier. Empty string if the request is fetched from worker. + LoaderId loaderId + # Timestamp. + MonotonicTime timestamp + # Resource type. + ResourceType type + # Response data. + Response response + # Indicates whether requestWillBeSentExtraInfo and responseReceivedExtraInfo events will be + # or were emitted for this request. + experimental boolean hasExtraInfo + # Frame identifier. + optional Page.FrameId frameId - # Disables domain notifications. - command disable + # Fired when WebSocket is closed. + event webSocketClosed + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp - # Enables domain notifications. - command enable + # Fired upon WebSocket creation. + event webSocketCreated + parameters + # Request identifier. + RequestId requestId + # WebSocket request URL. + string url + # Request initiator. + optional Initiator initiator - # For testing. - command getHighlightObjectForTest + # Fired when WebSocket message error occurs. + event webSocketFrameError parameters - # Id of the node to get highlight object for. - DOM.NodeId nodeId - # Whether to include distance info. - optional boolean includeDistance - # Whether to include style info. - optional boolean includeStyle - # The color format to get config with (default: hex). - optional ColorFormat colorFormat - # Whether to show accessibility info (default: true). - optional boolean showAccessibilityInfo - returns - # Highlight data for the node. - object highlight + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # WebSocket error message. + string errorMessage - # For Persistent Grid testing. - command getGridHighlightObjectsForTest + # Fired when WebSocket message is received. + event webSocketFrameReceived parameters - # Ids of the node to get highlight object for. - array of DOM.NodeId nodeIds - returns - # Grid Highlight data for the node ids provided. - object highlights + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # WebSocket response data. + WebSocketFrame response - # For Source Order Viewer testing. - command getSourceOrderHighlightObjectForTest + # Fired when WebSocket message is sent. + event webSocketFrameSent parameters - # Id of the node to highlight. - DOM.NodeId nodeId - returns - # Source order highlight data for the node id provided. - object highlight + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # WebSocket response data. + WebSocketFrame response - # Hides any highlight. - command hideHighlight + # Fired when WebSocket handshake response becomes available. + event webSocketHandshakeResponseReceived + parameters + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # WebSocket response data. + WebSocketResponse response - # Highlights owner element of the frame with given id. - # Deprecated: Doesn't work reliably and cannot be fixed due to process - # separation (the owner node might be in a different process). Determine - # the owner node in the client and use highlightNode. - deprecated command highlightFrame + # Fired when WebSocket is about to initiate handshake. + event webSocketWillSendHandshakeRequest parameters - # Identifier of the frame to highlight. - Page.FrameId frameId - # The content box highlight fill color (default: transparent). - optional DOM.RGBA contentColor - # The content box highlight outline color (default: transparent). - optional DOM.RGBA contentOutlineColor + # Request identifier. + RequestId requestId + # Timestamp. + MonotonicTime timestamp + # UTC Timestamp. + TimeSinceEpoch wallTime + # WebSocket request data. + WebSocketRequest request - # Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or - # objectId must be specified. - command highlightNode + # Fired upon WebTransport creation. + event webTransportCreated parameters - # A descriptor for the highlight appearance. - HighlightConfig highlightConfig - # Identifier of the node to highlight. - optional DOM.NodeId nodeId - # Identifier of the backend node to highlight. - optional DOM.BackendNodeId backendNodeId - # JavaScript object id of the node to be highlighted. - optional Runtime.RemoteObjectId objectId - # Selectors to highlight relevant nodes. - optional string selector + # WebTransport identifier. + RequestId transportId + # WebTransport request URL. + string url + # Timestamp. + MonotonicTime timestamp + # Request initiator. + optional Initiator initiator - # Highlights given quad. Coordinates are absolute with respect to the main frame viewport. - command highlightQuad + # Fired when WebTransport handshake is finished. + event webTransportConnectionEstablished parameters - # Quad to highlight - DOM.Quad quad - # The highlight fill color (default: transparent). - optional DOM.RGBA color - # The highlight outline color (default: transparent). - optional DOM.RGBA outlineColor + # WebTransport identifier. + RequestId transportId + # Timestamp. + MonotonicTime timestamp - # Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport. - command highlightRect + # Fired when WebTransport is disposed. + event webTransportClosed parameters - # X coordinate - integer x - # Y coordinate - integer y - # Rectangle width - integer width - # Rectangle height - integer height - # The highlight fill color (default: transparent). - optional DOM.RGBA color - # The highlight outline color (default: transparent). - optional DOM.RGBA outlineColor + # WebTransport identifier. + RequestId transportId + # Timestamp. + MonotonicTime timestamp - # Highlights the source order of the children of the DOM node with given id or with the given - # JavaScript object wrapper. Either nodeId or objectId must be specified. - command highlightSourceOrder - parameters - # A descriptor for the appearance of the overlay drawing. - SourceOrderConfig sourceOrderConfig - # Identifier of the node to highlight. - optional DOM.NodeId nodeId - # Identifier of the backend node to highlight. - optional DOM.BackendNodeId backendNodeId - # JavaScript object id of the node to be highlighted. - optional Runtime.RemoteObjectId objectId + experimental type DirectSocketDnsQueryType extends string + enum + ipv4 + ipv6 - # Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted. - # Backend then generates 'inspectNodeRequested' event upon element selection. - command setInspectMode - parameters - # Set an inspection mode. - InspectMode mode - # A descriptor for the highlight appearance of hovered-over nodes. May be omitted if `enabled - # == false`. - optional HighlightConfig highlightConfig + experimental type DirectTCPSocketOptions extends object + properties + # TCP_NODELAY option + boolean noDelay + # Expected to be unsigned integer. + optional number keepAliveDelay + # Expected to be unsigned integer. + optional number sendBufferSize + # Expected to be unsigned integer. + optional number receiveBufferSize + optional DirectSocketDnsQueryType dnsQueryType - # Highlights owner element of all frames detected to be ads. - command setShowAdHighlights - parameters - # True for showing ad highlights - boolean show - command setPausedInDebuggerMessage + # Fired upon direct_socket.TCPSocket creation. + experimental event directTCPSocketCreated parameters - # The message to display, also triggers resume and step over controls. - optional string message + RequestId identifier + string remoteAddr + # Unsigned int 16. + integer remotePort + DirectTCPSocketOptions options + MonotonicTime timestamp + optional Initiator initiator - # Requests that backend shows debug borders on layers - command setShowDebugBorders + # Fired when direct_socket.TCPSocket connection is opened. + experimental event directTCPSocketOpened parameters - # True for showing debug borders - boolean show + RequestId identifier + string remoteAddr + # Expected to be unsigned integer. + integer remotePort + MonotonicTime timestamp + optional string localAddr + # Expected to be unsigned integer. + optional integer localPort - # Requests that backend shows the FPS counter - command setShowFPSCounter + # Fired when direct_socket.TCPSocket is aborted. + experimental event directTCPSocketAborted parameters - # True for showing the FPS counter - boolean show + RequestId identifier + string errorMessage + MonotonicTime timestamp - # Highlight multiple elements with the CSS Grid overlay. - command setShowGridOverlays + # Fired when direct_socket.TCPSocket is closed. + experimental event directTCPSocketClosed parameters - # An array of node identifiers and descriptors for the highlight appearance. - array of GridNodeHighlightConfig gridNodeHighlightConfigs + RequestId identifier + MonotonicTime timestamp - command setShowFlexOverlays + # Fired when data is sent to tcp direct socket stream. + experimental event directTCPSocketChunkSent parameters - # An array of node identifiers and descriptors for the highlight appearance. - array of FlexNodeHighlightConfig flexNodeHighlightConfigs + RequestId identifier + binary data + MonotonicTime timestamp - command setShowScrollSnapOverlays + # Fired when data is received from tcp direct socket stream. + experimental event directTCPSocketChunkReceived parameters - # An array of node identifiers and descriptors for the highlight appearance. - array of ScrollSnapHighlightConfig scrollSnapHighlightConfigs + RequestId identifier + binary data + MonotonicTime timestamp - command setShowContainerQueryOverlays - parameters - # An array of node identifiers and descriptors for the highlight appearance. - array of ContainerQueryHighlightConfig containerQueryHighlightConfigs + experimental type DirectUDPSocketOptions extends object + properties + optional string remoteAddr + # Unsigned int 16. + optional integer remotePort - # Requests that backend shows paint rectangles - command setShowPaintRects - parameters - # True for showing paint rectangles - boolean result + optional string localAddr + # Unsigned int 16. + optional integer localPort - # Requests that backend shows layout shift regions - command setShowLayoutShiftRegions - parameters - # True for showing layout shift regions - boolean result + optional DirectSocketDnsQueryType dnsQueryType - # Requests that backend shows scroll bottleneck rects - command setShowScrollBottleneckRects - parameters - # True for showing scroll bottleneck rects - boolean show + # Expected to be unsigned integer. + optional number sendBufferSize + # Expected to be unsigned integer. + optional number receiveBufferSize - # Deprecated, no longer has any effect. - deprecated command setShowHitTestBorders - parameters - # True for showing hit-test borders - boolean show - # Deprecated, no longer has any effect. - deprecated command setShowWebVitals + # Fired upon direct_socket.UDPSocket creation. + experimental event directUDPSocketCreated parameters - boolean show + RequestId identifier + DirectUDPSocketOptions options + MonotonicTime timestamp + optional Initiator initiator - # Paints viewport size upon main frame resize. - command setShowViewportSizeOnResize + # Fired when direct_socket.UDPSocket connection is opened. + experimental event directUDPSocketOpened parameters - # Whether to paint size or not. - boolean show + RequestId identifier + string localAddr + # Expected to be unsigned integer. + integer localPort + MonotonicTime timestamp + optional string remoteAddr + # Expected to be unsigned integer. + optional integer remotePort - # Add a dual screen device hinge - command setShowHinge + # Fired when direct_socket.UDPSocket is aborted. + experimental event directUDPSocketAborted parameters - # hinge data, null means hideHinge - optional HingeConfig hingeConfig + RequestId identifier + string errorMessage + MonotonicTime timestamp - # Show elements in isolation mode with overlays. - command setShowIsolatedElements + # Fired when direct_socket.UDPSocket is closed. + experimental event directUDPSocketClosed parameters - # An array of node identifiers and descriptors for the highlight appearance. - array of IsolatedElementHighlightConfig isolatedElementHighlightConfigs + RequestId identifier + MonotonicTime timestamp - # Show Window Controls Overlay for PWA - command setShowWindowControlsOverlay - parameters - # Window Controls Overlay data, null means hide Window Controls Overlay - optional WindowControlsOverlayConfig windowControlsOverlayConfig + experimental type DirectUDPMessage extends object + properties + binary data + # Null for connected mode. + optional string remoteAddr + # Null for connected mode. + # Expected to be unsigned integer. + optional integer remotePort - # Fired when the node should be inspected. This happens after call to `setInspectMode` or when - # user manually inspects an element. - event inspectNodeRequested + # Fired when message is sent to udp direct socket stream. + experimental event directUDPSocketChunkSent parameters - # Id of the node to inspect. - DOM.BackendNodeId backendNodeId + RequestId identifier + DirectUDPMessage message + MonotonicTime timestamp - # Fired when the node should be highlighted. This happens after call to `setInspectMode`. - event nodeHighlightRequested + # Fired when message is received from udp direct socket stream. + experimental event directUDPSocketChunkReceived parameters - DOM.NodeId nodeId + RequestId identifier + DirectUDPMessage message + MonotonicTime timestamp - # Fired when user asks to capture screenshot of some area on the page. - event screenshotRequested + experimental type PrivateNetworkRequestPolicy extends string + enum + Allow + BlockFromInsecureToMorePrivate + WarnFromInsecureToMorePrivate + PreflightBlock + PreflightWarn + PermissionBlock + PermissionWarn + + experimental type IPAddressSpace extends string + enum + Loopback + Local + Public + Unknown + + experimental type ConnectTiming extends object + properties + # Timing's requestTime is a baseline in seconds, while the other numbers are ticks in + # milliseconds relatively to this requestTime. Matches ResourceTiming's requestTime for + # the same request (but not for redirected requests). + number requestTime + + experimental type ClientSecurityState extends object + properties + boolean initiatorIsSecureContext + IPAddressSpace initiatorIPAddressSpace + PrivateNetworkRequestPolicy privateNetworkRequestPolicy + + # Fired when additional information about a requestWillBeSent event is available from the + # network stack. Not every requestWillBeSent event will have an additional + # requestWillBeSentExtraInfo fired for it, and there is no guarantee whether requestWillBeSent + # or requestWillBeSentExtraInfo will be fired first for the same request. + experimental event requestWillBeSentExtraInfo parameters - # Viewport to capture, in device independent pixels (dip). - Page.Viewport viewport + # Request identifier. Used to match this information to an existing requestWillBeSent event. + RequestId requestId + # A list of cookies potentially associated to the requested URL. This includes both cookies sent with + # the request and the ones not sent; the latter are distinguished by having blockedReasons field set. + array of AssociatedCookie associatedCookies + # Raw request headers as they will be sent over the wire. + Headers headers + # Connection timing information for the request. + experimental ConnectTiming connectTiming + # The client security state set for the request. + optional ClientSecurityState clientSecurityState + # Whether the site has partitioned cookies stored in a partition different than the current one. + optional boolean siteHasCookieInOtherPartition + # The network conditions id if this request was affected by network conditions configured via + # emulateNetworkConditionsByRule. + optional string appliedNetworkConditionsId - # Fired when user cancels the inspect mode. - event inspectModeCanceled + # Fired when additional information about a responseReceived event is available from the network + # stack. Not every responseReceived event will have an additional responseReceivedExtraInfo for + # it, and responseReceivedExtraInfo may be fired before or after responseReceived. + experimental event responseReceivedExtraInfo + parameters + # Request identifier. Used to match this information to another responseReceived event. + RequestId requestId + # A list of cookies which were not stored from the response along with the corresponding + # reasons for blocking. The cookies here may not be valid due to syntax errors, which + # are represented by the invalid cookie line string instead of a proper cookie. + array of BlockedSetCookieWithReason blockedCookies + # Raw response headers as they were received over the wire. + # Duplicate headers in the response are represented as a single key with their values + # concatentated using `\n` as the separator. + # See also `headersText` that contains verbatim text for HTTP/1.*. + Headers headers + # The IP address space of the resource. The address space can only be determined once the transport + # established the connection, so we can't send it in `requestWillBeSentExtraInfo`. + IPAddressSpace resourceIPAddressSpace + # The status code of the response. This is useful in cases the request failed and no responseReceived + # event is triggered, which is the case for, e.g., CORS errors. This is also the correct status code + # for cached requests, where the status in responseReceived is a 200 and this will be 304. + integer statusCode + # Raw response header text as it was received over the wire. The raw text may not always be + # available, such as in the case of HTTP/2 or QUIC. + optional string headersText + # The cookie partition key that will be used to store partitioned cookies set in this response. + # Only sent when partitioned cookies are enabled. + experimental optional CookiePartitionKey cookiePartitionKey + # True if partitioned cookies are enabled, but the partition key is not serializable to string. + optional boolean cookiePartitionKeyOpaque + # A list of cookies which should have been blocked by 3PCD but are exempted and stored from + # the response with the corresponding reason. + optional array of ExemptedSetCookieWithReason exemptedCookies -# Actions and events related to the inspected page belong to the page domain. -domain Page - depends on Debugger - depends on DOM - depends on IO - depends on Network - depends on Runtime + # Fired when 103 Early Hints headers is received in addition to the common response. + # Not every responseReceived event will have an responseReceivedEarlyHints fired. + # Only one responseReceivedEarlyHints may be fired for eached responseReceived event. + experimental event responseReceivedEarlyHints + parameters + # Request identifier. Used to match this information to another responseReceived event. + RequestId requestId + # Raw response headers as they were received over the wire. + # Duplicate headers in the response are represented as a single key with their values + # concatentated using `\n` as the separator. + # See also `headersText` that contains verbatim text for HTTP/1.*. + Headers headers - # Unique frame identifier. - type FrameId extends string + # Fired exactly once for each Trust Token operation. Depending on + # the type of the operation and whether the operation succeeded or + # failed, the event is fired before the corresponding request was sent + # or after the response was received. + experimental event trustTokenOperationDone + parameters + # Detailed success or error status of the operation. + # 'AlreadyExists' also signifies a successful operation, as the result + # of the operation already exists und thus, the operation was abort + # preemptively (e.g. a cache hit). + enum status + Ok + InvalidArgument + MissingIssuerKeys + FailedPrecondition + ResourceExhausted + AlreadyExists + ResourceLimited + Unauthorized + BadResponse + InternalError + UnknownError + FulfilledLocally + SiteIssuerLimit + TrustTokenOperationType type + RequestId requestId + # Top level origin. The context in which the operation was attempted. + optional string topLevelOrigin + # Origin of the issuer in case of a "Issuance" or "Redemption" operation. + optional string issuerOrigin + # The number of obtained Trust Tokens on a successful "Issuance" operation. + optional integer issuedTokenCount - # Indicates whether a frame has been identified as an ad. - experimental type AdFrameType extends string + # Fired once security policy has been updated. + experimental event policyUpdated + + experimental type CrossOriginOpenerPolicyValue extends string enum - none - # This frame is a subframe of an ad frame. - child - # This frame is the root of an ad frame. - root + SameOrigin + SameOriginAllowPopups + RestrictProperties + UnsafeNone + SameOriginPlusCoep + RestrictPropertiesPlusCoep + NoopenerAllowPopups - experimental type AdFrameExplanation extends string + experimental type CrossOriginOpenerPolicyStatus extends object + properties + CrossOriginOpenerPolicyValue value + CrossOriginOpenerPolicyValue reportOnlyValue + optional string reportingEndpoint + optional string reportOnlyReportingEndpoint + + experimental type CrossOriginEmbedderPolicyValue extends string enum - ParentIsAd - CreatedByAdScript - MatchedBlockingRule + None + Credentialless + RequireCorp - # Indicates whether a frame has been identified as an ad and why. - experimental type AdFrameStatus extends object + experimental type CrossOriginEmbedderPolicyStatus extends object properties - AdFrameType adFrameType - optional array of AdFrameExplanation explanations + CrossOriginEmbedderPolicyValue value + CrossOriginEmbedderPolicyValue reportOnlyValue + optional string reportingEndpoint + optional string reportOnlyReportingEndpoint - # Identifies the script which caused a script or frame to be labelled as an - # ad. - experimental type AdScriptId extends object + experimental type ContentSecurityPolicySource extends string + enum + HTTP + Meta + + experimental type ContentSecurityPolicyStatus extends object properties - # Script Id of the script which caused a script or frame to be labelled as - # an ad. - Runtime.ScriptId scriptId - # Id of scriptId's debugger. - Runtime.UniqueDebuggerId debuggerId + string effectiveDirectives + boolean isEnforced + ContentSecurityPolicySource source - # Encapsulates the script ancestry and the root script filterlist rule that - # caused the frame to be labelled as an ad. Only created when `ancestryChain` - # is not empty. - experimental type AdScriptAncestry extends object + experimental type SecurityIsolationStatus extends object properties - # A chain of `AdScriptId`s representing the ancestry of an ad script that - # led to the creation of a frame. The chain is ordered from the script - # itself (lower level) up to its root ancestor that was flagged by - # filterlist. - array of AdScriptId ancestryChain - # The filterlist rule that caused the root (last) script in - # `ancestryChain` to be ad-tagged. Only populated if the rule is - # available. - optional string rootScriptFilterlistRule + optional CrossOriginOpenerPolicyStatus coop + optional CrossOriginEmbedderPolicyStatus coep + optional array of ContentSecurityPolicyStatus csp - # Indicates whether the frame is a secure context and why it is the case. - experimental type SecureContextType extends string - enum - # The origin is a secure context. - Secure - # The host is localhost and hence is considered secure. - SecureLocalhost - # The origin has an insecure scheme and is not localhost. - InsecureScheme - # One of the ancestor frames is not a secure context. - InsecureAncestor + # Returns information about the COEP/COOP isolation status. + experimental command getSecurityIsolationStatus + parameters + # If no frameId is provided, the status of the target is provided. + optional Page.FrameId frameId + returns + SecurityIsolationStatus status - # Indicates whether the frame is cross-origin isolated and why it is the case. - experimental type CrossOriginIsolatedContextType extends string - enum - # The origin is cross-origin isolated. - Isolated - # The origin is not cross-origin isolated. - NotIsolated - # The cross-origin isolation feature is disabled. - NotIsolatedFeatureDisabled + # Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client. + # Enabling triggers 'reportingApiReportAdded' for all existing reports. + experimental command enableReportingApi + parameters + # Whether to enable or disable events for the Reporting API + boolean enable - experimental type GatedAPIFeatures extends string + # The status of a Reporting API report. + experimental type ReportStatus extends string enum - SharedArrayBuffers - SharedArrayBuffersTransferAllowed - PerformanceMeasureMemory - PerformanceProfile - - # All Permissions Policy features. This enum should match the one defined - # in services/network/public/cpp/permissions_policy/permissions_policy_features.json5. - # LINT.IfChange(PermissionsPolicyFeature) - experimental type PermissionsPolicyFeature extends string - enum - accelerometer - all-screens-capture - ambient-light-sensor - aria-notify - attribution-reporting - autoplay - bluetooth - browsing-topics - camera - captured-surface-control - ch-dpr - ch-device-memory - ch-downlink - ch-ect - ch-prefers-color-scheme - ch-prefers-reduced-motion - ch-prefers-reduced-transparency - ch-rtt - ch-save-data - ch-ua - ch-ua-arch - ch-ua-bitness - ch-ua-high-entropy-values - ch-ua-platform - ch-ua-model - ch-ua-mobile - ch-ua-form-factors - ch-ua-full-version - ch-ua-full-version-list - ch-ua-platform-version - ch-ua-wow64 - ch-viewport-height - ch-viewport-width - ch-width - clipboard-read - clipboard-write - compute-pressure - controlled-frame - cross-origin-isolated - deferred-fetch - deferred-fetch-minimal - device-attributes - digital-credentials-get - direct-sockets - direct-sockets-private - display-capture - document-domain - encrypted-media - execution-while-out-of-viewport - execution-while-not-rendered - fenced-unpartitioned-storage-read - focus-without-user-activation - fullscreen - frobulate - gamepad - geolocation - gyroscope - hid - identity-credentials-get - idle-detection - interest-cohort - join-ad-interest-group - keyboard-map - language-detector - language-model - local-fonts - local-network-access - magnetometer - media-playback-while-not-visible - microphone - midi - on-device-speech-recognition - otp-credentials - payment - picture-in-picture - popins - private-aggregation - private-state-token-issuance - private-state-token-redemption - publickey-credentials-create - publickey-credentials-get - record-ad-auction-events - rewriter - run-ad-auction - screen-wake-lock - serial - shared-autofill - shared-storage - shared-storage-select-url - smart-card - speaker-selection - storage-access - sub-apps - summarizer - sync-xhr - translator - unload - usb - usb-unrestricted - vertical-scroll - web-app-installation - web-printing - web-share - window-management - writer - xr-spatial-tracking - # LINT.ThenChange(//services/network/public/cpp/permissions_policy/permissions_policy_features.json5:PermissionsPolicy) - - # Reason for a permissions policy feature to be disabled. - experimental type PermissionsPolicyBlockReason extends string - enum - # Declaration in HTTP header. - Header - # Declaration in iframe attribute. - IframeAttribute - # Inside fenced frame. - InFencedFrameTree - # Inside an Isolated Application. - InIsolatedApp + # Report has been queued and no attempt has been made to deliver it yet, + # or attempted previous upload failed (impermanently). + Queued + # There is an ongoing attempt to upload this report. + Pending + # Deletion of this report was requested while it was pending, so it will + # be removed after possibly outstanding upload attempts complete (successful + # or not). + MarkedForRemoval + # Successfully uploaded and MarkedForRemoval. + Success - experimental type PermissionsPolicyBlockLocator extends object - properties - FrameId frameId - PermissionsPolicyBlockReason blockReason + experimental type ReportId extends string - experimental type PermissionsPolicyFeatureState extends object + # An object representing a report generated by the Reporting API. + experimental type ReportingApiReport extends object properties - PermissionsPolicyFeature feature - boolean allowed - optional PermissionsPolicyBlockLocator locator - - # Origin Trial(https://www.chromium.org/blink/origin-trials) support. - # Status for an Origin Trial token. - experimental type OriginTrialTokenStatus extends string - enum - Success - NotSupported - Insecure - Expired - WrongOrigin - InvalidSignature - Malformed - WrongVersion - FeatureDisabled - TokenDisabled - FeatureDisabledForUser - UnknownTrial + ReportId id + # The URL of the document that triggered the report. + string initiatorUrl + # The name of the endpoint group that should be used to deliver the report. + string destination + # The type of the report (specifies the set of data that is contained in the report body). + string type + # When the report was generated. + Network.TimeSinceEpoch timestamp + # How many uploads deep the related request was. + integer depth + # The number of delivery attempts made so far, not including an active attempt. + integer completedAttempts + object body + ReportStatus status - # Status for an Origin Trial. - experimental type OriginTrialStatus extends string - enum - Enabled - ValidTokenNotProvided - OSNotSupported - TrialNotAllowed + # Is sent whenever a new report is added. + # And after 'enableReportingApi' for all existing reports. + experimental event reportingApiReportAdded + parameters + ReportingApiReport report - experimental type OriginTrialUsageRestriction extends string - enum - None - Subset + experimental event reportingApiReportUpdated + parameters + ReportingApiReport report - experimental type OriginTrialToken extends object + experimental type ReportingApiEndpoint extends object properties - string origin - boolean matchSubDomains - string trialName - Network.TimeSinceEpoch expiryTime - boolean isThirdParty - OriginTrialUsageRestriction usageRestriction + # The URL of the endpoint to which reports may be delivered. + string url + # Name of the endpoint group. + string groupName - experimental type OriginTrialTokenWithStatus extends object - properties - string rawTokenText - # `parsedToken` is present only when the token is extractable and - # parsable. - optional OriginTrialToken parsedToken - OriginTrialTokenStatus status + experimental event reportingApiEndpointsChangedForOrigin + parameters + # Origin of the document(s) which configured the endpoints. + string origin + array of ReportingApiEndpoint endpoints - experimental type OriginTrial extends object + # An object providing the result of a network resource load. + experimental type LoadNetworkResourcePageResult extends object properties - string trialName - OriginTrialStatus status - array of OriginTrialTokenWithStatus tokensWithStatus + boolean success + # Optional values used for error reporting. + optional number netError + optional string netErrorName + optional number httpStatusCode + # If successful, one of the following two fields holds the result. + optional IO.StreamHandle stream + # Response headers. + optional Network.Headers headers - # Additional information about the frame document's security origin. - experimental type SecurityOriginDetails extends object + # An options object that may be extended later to better support CORS, + # CORB and streaming. + experimental type LoadNetworkResourceOptions extends object properties - # Indicates whether the frame document's security origin is one - # of the local hostnames (e.g. "localhost") or IP addresses (IPv4 - # 127.0.0.0/8 or IPv6 ::1). - boolean isLocalhost + boolean disableCache + boolean includeCredentials - # Information about the Frame on the page. - type Frame extends object - properties - # Frame unique identifier. - FrameId id - # Parent frame identifier. - optional FrameId parentId - # Identifier of the loader associated with this frame. - Network.LoaderId loaderId - # Frame's name as specified in the tag. - optional string name - # Frame document's URL without fragment. + # Fetches the resource and returns the content. + experimental command loadNetworkResource + parameters + # Frame id to get the resource for. Mandatory for frame targets, and + # should be omitted for worker targets. + optional Page.FrameId frameId + # URL of the resource to get content for. string url - # Frame document's URL fragment including the '#'. - experimental optional string urlFragment - # Frame document's registered domain, taking the public suffixes list into account. - # Extracted from the Frame's url. - # Example URLs: http://www.google.com/file.html -> "google.com" - # http://a.b.co.uk/file.html -> "b.co.uk" - experimental string domainAndRegistry - # Frame document's security origin. - string securityOrigin - # Additional details about the frame document's security origin. - experimental optional SecurityOriginDetails securityOriginDetails - # Frame document's mimeType as determined by the browser. - string mimeType - # If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment. - experimental optional string unreachableUrl - # Indicates whether this frame was tagged as an ad and why. - experimental optional AdFrameStatus adFrameStatus - # Indicates whether the main document is a secure context and explains why that is the case. - experimental SecureContextType secureContextType - # Indicates whether this is a cross origin isolated context. - experimental CrossOriginIsolatedContextType crossOriginIsolatedContextType - # Indicated which gated APIs / features are available. - experimental array of GatedAPIFeatures gatedAPIFeatures + # Options for the request. + LoadNetworkResourceOptions options + returns + LoadNetworkResourcePageResult resource - # Information about the Resource on the page. - experimental type FrameResource extends object - properties - # Resource URL. - string url - # Type of this resource. - Network.ResourceType type - # Resource mimeType as determined by the browser. - string mimeType - # last-modified timestamp as reported by server. - optional Network.TimeSinceEpoch lastModified - # Resource content size. - optional number contentSize - # True if the resource failed to load. - optional boolean failed - # True if the resource was canceled during loading. - optional boolean canceled + # Sets Controls for third-party cookie access + # Page reload is required before the new cookie behavior will be observed + experimental command setCookieControls + parameters + # Whether 3pc restriction is enabled. + boolean enableThirdPartyCookieRestriction - # Information about the Frame hierarchy along with their cached resources. - experimental type FrameResourceTree extends object - properties - # Frame information for this tree item. - Frame frame - # Child frames. - optional array of FrameResourceTree childFrames - # Information about frame resources. - array of FrameResource resources + # Whether 3pc grace period exception should be enabled; false by default. + boolean disableThirdPartyCookieMetadata - # Information about the Frame hierarchy. - type FrameTree extends object - properties - # Frame information for this tree item. - Frame frame - # Child frames. - optional array of FrameTree childFrames + # Whether 3pc heuristics exceptions should be enabled; false by default. + boolean disableThirdPartyCookieHeuristics - # Unique script identifier. - type ScriptIdentifier extends string +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Transition type. - type TransitionType extends string - enum - link - typed - address_bar - auto_bookmark - auto_subframe - manual_subframe - generated - auto_toplevel - form_submit - reload - keyword - keyword_generated - other +# This domain provides various functionality related to drawing atop the inspected page. +experimental domain Overlay + depends on DOM + depends on Page + depends on Runtime - # Navigation history entry. - type NavigationEntry extends object + # Configuration data for drawing the source order of an elements children. + type SourceOrderConfig extends object properties - # Unique id of the navigation history entry. - integer id - # URL of the navigation history entry. - string url - # URL that the user typed in the url bar. - string userTypedURL - # Title of the navigation history entry. - string title - # Transition type. - TransitionType transitionType + # the color to outline the given element in. + DOM.RGBA parentOutlineColor + # the color to outline the child elements in. + DOM.RGBA childOutlineColor - # Screencast frame metadata. - experimental type ScreencastFrameMetadata extends object + # Configuration data for the highlighting of Grid elements. + type GridHighlightConfig extends object properties - # Top offset in DIP. - number offsetTop - # Page scale factor. - number pageScaleFactor - # Device screen width in DIP. - number deviceWidth - # Device screen height in DIP. - number deviceHeight - # Position of horizontal scroll in CSS pixels. - number scrollOffsetX - # Position of vertical scroll in CSS pixels. - number scrollOffsetY - # Frame swap timestamp. - optional Network.TimeSinceEpoch timestamp - - # Javascript dialog type. - type DialogType extends string - enum - alert - confirm - prompt - beforeunload + # Whether the extension lines from grid cells to the rulers should be shown (default: false). + optional boolean showGridExtensionLines + # Show Positive line number labels (default: false). + optional boolean showPositiveLineNumbers + # Show Negative line number labels (default: false). + optional boolean showNegativeLineNumbers + # Show area name labels (default: false). + optional boolean showAreaNames + # Show line name labels (default: false). + optional boolean showLineNames + # Show track size labels (default: false). + optional boolean showTrackSizes + # The grid container border highlight color (default: transparent). + optional DOM.RGBA gridBorderColor + # The cell border color (default: transparent). Deprecated, please use rowLineColor and columnLineColor instead. + deprecated optional DOM.RGBA cellBorderColor + # The row line color (default: transparent). + optional DOM.RGBA rowLineColor + # The column line color (default: transparent). + optional DOM.RGBA columnLineColor + # Whether the grid border is dashed (default: false). + optional boolean gridBorderDash + # Whether the cell border is dashed (default: false). Deprecated, please us rowLineDash and columnLineDash instead. + deprecated optional boolean cellBorderDash + # Whether row lines are dashed (default: false). + optional boolean rowLineDash + # Whether column lines are dashed (default: false). + optional boolean columnLineDash + # The row gap highlight fill color (default: transparent). + optional DOM.RGBA rowGapColor + # The row gap hatching fill color (default: transparent). + optional DOM.RGBA rowHatchColor + # The column gap highlight fill color (default: transparent). + optional DOM.RGBA columnGapColor + # The column gap hatching fill color (default: transparent). + optional DOM.RGBA columnHatchColor + # The named grid areas border color (Default: transparent). + optional DOM.RGBA areaBorderColor + # The grid container background color (Default: transparent). + optional DOM.RGBA gridBackgroundColor - # Error while paring app manifest. - type AppManifestError extends object + # Configuration data for the highlighting of Flex container elements. + type FlexContainerHighlightConfig extends object properties - # Error message. - string message - # If critical, this is a non-recoverable parse error. - integer critical - # Error line. - integer line - # Error column. - integer column + # The style of the container border + optional LineStyle containerBorder + # The style of the separator between lines + optional LineStyle lineSeparator + # The style of the separator between items + optional LineStyle itemSeparator + # Style of content-distribution space on the main axis (justify-content). + optional BoxStyle mainDistributedSpace + # Style of content-distribution space on the cross axis (align-content). + optional BoxStyle crossDistributedSpace + # Style of empty space caused by row gaps (gap/row-gap). + optional BoxStyle rowGapSpace + # Style of empty space caused by columns gaps (gap/column-gap). + optional BoxStyle columnGapSpace + # Style of the self-alignment line (align-items). + optional LineStyle crossAlignment - # Parsed app manifest properties. - experimental type AppManifestParsedProperties extends object + # Configuration data for the highlighting of Flex item elements. + type FlexItemHighlightConfig extends object properties - # Computed scope value - string scope + # Style of the box representing the item's base size + optional BoxStyle baseSizeBox + # Style of the border around the box representing the item's base size + optional LineStyle baseSizeBorder + # Style of the arrow representing if the item grew or shrank + optional LineStyle flexibilityArrow - # Layout viewport position and dimensions. - type LayoutViewport extends object + # Style information for drawing a line. + type LineStyle extends object properties - # Horizontal offset relative to the document (CSS pixels). - integer pageX - # Vertical offset relative to the document (CSS pixels). - integer pageY - # Width (CSS pixels), excludes scrollbar if present. - integer clientWidth - # Height (CSS pixels), excludes scrollbar if present. - integer clientHeight + # The color of the line (default: transparent) + optional DOM.RGBA color + # The line pattern (default: solid) + optional enum pattern + dashed + dotted - # Visual viewport position, dimensions, and scale. - type VisualViewport extends object + # Style information for drawing a box. + type BoxStyle extends object properties - # Horizontal offset relative to the layout viewport (CSS pixels). - number offsetX - # Vertical offset relative to the layout viewport (CSS pixels). - number offsetY - # Horizontal offset relative to the document (CSS pixels). - number pageX - # Vertical offset relative to the document (CSS pixels). - number pageY - # Width (CSS pixels), excludes scrollbar if present. - number clientWidth - # Height (CSS pixels), excludes scrollbar if present. - number clientHeight - # Scale relative to the ideal viewport (size at width=device-width). - number scale - # Page zoom factor (CSS to device independent pixels ratio). - optional number zoom + # The background color for the box (default: transparent) + optional DOM.RGBA fillColor + # The hatching color for the box (default: transparent) + optional DOM.RGBA hatchColor - # Viewport for capturing screenshot. - type Viewport extends object + type ContrastAlgorithm extends string + enum + aa + aaa + apca + + # Configuration data for the highlighting of page elements. + type HighlightConfig extends object properties - # X offset in device independent pixels (dip). - number x - # Y offset in device independent pixels (dip). - number y - # Rectangle width in device independent pixels (dip). - number width - # Rectangle height in device independent pixels (dip). - number height - # Page scale factor. - number scale + # Whether the node info tooltip should be shown (default: false). + optional boolean showInfo + # Whether the node styles in the tooltip (default: false). + optional boolean showStyles + # Whether the rulers should be shown (default: false). + optional boolean showRulers + # Whether the a11y info should be shown (default: true). + optional boolean showAccessibilityInfo + # Whether the extension lines from node to the rulers should be shown (default: false). + optional boolean showExtensionLines + # The content box highlight fill color (default: transparent). + optional DOM.RGBA contentColor + # The padding highlight fill color (default: transparent). + optional DOM.RGBA paddingColor + # The border highlight fill color (default: transparent). + optional DOM.RGBA borderColor + # The margin highlight fill color (default: transparent). + optional DOM.RGBA marginColor + # The event target element highlight fill color (default: transparent). + optional DOM.RGBA eventTargetColor + # The shape outside fill color (default: transparent). + optional DOM.RGBA shapeColor + # The shape margin fill color (default: transparent). + optional DOM.RGBA shapeMarginColor + # The grid layout color (default: transparent). + optional DOM.RGBA cssGridColor + # The color format used to format color styles (default: hex). + optional ColorFormat colorFormat + # The grid layout highlight configuration (default: all transparent). + optional GridHighlightConfig gridHighlightConfig + # The flex container highlight configuration (default: all transparent). + optional FlexContainerHighlightConfig flexContainerHighlightConfig + # The flex item highlight configuration (default: all transparent). + optional FlexItemHighlightConfig flexItemHighlightConfig + # The contrast algorithm to use for the contrast ratio (default: aa). + optional ContrastAlgorithm contrastAlgorithm + # The container query container highlight configuration (default: all transparent). + optional ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig - # Generic font families collection. - experimental type FontFamilies extends object + type ColorFormat extends string + enum + rgb + hsl + hwb + hex + + # Configurations for Persistent Grid Highlight + type GridNodeHighlightConfig extends object properties - # The standard font-family. - optional string standard - # The fixed font-family. - optional string fixed - # The serif font-family. - optional string serif - # The sansSerif font-family. - optional string sansSerif - # The cursive font-family. - optional string cursive - # The fantasy font-family. - optional string fantasy - # The math font-family. - optional string math + # A descriptor for the highlight appearance. + GridHighlightConfig gridHighlightConfig + # Identifier of the node to highlight. + DOM.NodeId nodeId - # Font families collection for a script. - experimental type ScriptFontFamilies extends object + type FlexNodeHighlightConfig extends object properties - # Name of the script which these font families are defined for. - string script - # Generic font families collection for the script. - FontFamilies fontFamilies + # A descriptor for the highlight appearance of flex containers. + FlexContainerHighlightConfig flexContainerHighlightConfig + # Identifier of the node to highlight. + DOM.NodeId nodeId - # Default font sizes. - experimental type FontSizes extends object + type ScrollSnapContainerHighlightConfig extends object properties - # Default standard font size. - optional integer standard - # Default fixed font size. - optional integer fixed + # The style of the snapport border (default: transparent) + optional LineStyle snapportBorder + # The style of the snap area border (default: transparent) + optional LineStyle snapAreaBorder + # The margin highlight fill color (default: transparent). + optional DOM.RGBA scrollMarginColor + # The padding highlight fill color (default: transparent). + optional DOM.RGBA scrollPaddingColor - experimental type ClientNavigationReason extends string - enum - anchorClick - formSubmissionGet - formSubmissionPost - httpHeaderRefresh - initialFrameNavigation - metaTagRefresh - other - pageBlockInterstitial - reload - scriptInitiated + type ScrollSnapHighlightConfig extends object + properties + # A descriptor for the highlight appearance of scroll snap containers. + ScrollSnapContainerHighlightConfig scrollSnapContainerHighlightConfig + # Identifier of the node to highlight. + DOM.NodeId nodeId - experimental type ClientNavigationDisposition extends string - enum - currentTab - newTab - newWindow - download + # Configuration for dual screen hinge + type HingeConfig extends object + properties + # A rectangle represent hinge + DOM.Rect rect + # The content box highlight fill color (default: a dark color). + optional DOM.RGBA contentColor + # The content box highlight outline color (default: transparent). + optional DOM.RGBA outlineColor - experimental type InstallabilityErrorArgument extends object + # Configuration for Window Controls Overlay + type WindowControlsOverlayConfig extends object properties - # Argument name (e.g. name:'minimum-icon-size-in-pixels'). - string name - # Argument value (e.g. value:'64'). - string value + # Whether the title bar CSS should be shown when emulating the Window Controls Overlay. + boolean showCSS + # Selected platforms to show the overlay. + string selectedPlatform + # The theme color defined in app manifest. + string themeColor - # The installability error - experimental type InstallabilityError extends object + type ContainerQueryHighlightConfig extends object properties - # The error id (e.g. 'manifest-missing-suitable-icon'). - string errorId - # The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}). - array of InstallabilityErrorArgument errorArguments + # A descriptor for the highlight appearance of container query containers. + ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig + # Identifier of the container node to highlight. + DOM.NodeId nodeId - # The referring-policy used for the navigation. - experimental type ReferrerPolicy extends string - enum - noReferrer - noReferrerWhenDowngrade - origin - originWhenCrossOrigin - sameOrigin - strictOrigin - strictOriginWhenCrossOrigin - unsafeUrl + type ContainerQueryContainerHighlightConfig extends object + properties + # The style of the container border. + optional LineStyle containerBorder + # The style of the descendants' borders. + optional LineStyle descendantBorder - # Per-script compilation cache parameters for `Page.produceCompilationCache` - experimental type CompilationCacheParams extends object + type IsolatedElementHighlightConfig extends object properties - # The URL of the script to produce a compilation cache entry for. - string url - # A hint to the backend whether eager compilation is recommended. - # (the actual compilation mode used is upon backend discretion). - optional boolean eager + # A descriptor for the highlight appearance of an element in isolation mode. + IsolationModeHighlightConfig isolationModeHighlightConfig + # Identifier of the isolated element to highlight. + DOM.NodeId nodeId - # Deprecated, please use addScriptToEvaluateOnNewDocument instead. - experimental deprecated command addScriptToEvaluateOnLoad - parameters - string scriptSource - returns - # Identifier of the added script. - ScriptIdentifier identifier + type IsolationModeHighlightConfig extends object + properties + # The fill color of the resizers (default: transparent). + optional DOM.RGBA resizerColor + # The fill color for resizer handles (default: transparent). + optional DOM.RGBA resizerHandleColor + # The fill color for the mask covering non-isolated elements (default: transparent). + optional DOM.RGBA maskColor - # Evaluates given script in every frame upon creation (before loading frame's scripts). - command addScriptToEvaluateOnNewDocument + type InspectMode extends string + enum + searchForNode + searchForUAShadowDOM + captureAreaScreenshot + none + + # Disables domain notifications. + command disable + + # Enables domain notifications. + command enable + + # For testing. + command getHighlightObjectForTest parameters - string source - # If specified, creates an isolated world with the given name and evaluates given script in it. - # This world name will be used as the ExecutionContextDescription::name when the corresponding - # event is emitted. - experimental optional string worldName - # Specifies whether command line API should be available to the script, defaults - # to false. - experimental optional boolean includeCommandLineAPI - # If true, runs the script immediately on existing execution contexts or worlds. - # Default: false. - experimental optional boolean runImmediately + # Id of the node to get highlight object for. + DOM.NodeId nodeId + # Whether to include distance info. + optional boolean includeDistance + # Whether to include style info. + optional boolean includeStyle + # The color format to get config with (default: hex). + optional ColorFormat colorFormat + # Whether to show accessibility info (default: true). + optional boolean showAccessibilityInfo returns - # Identifier of the added script. - ScriptIdentifier identifier - - # Brings page to front (activates tab). - command bringToFront + # Highlight data for the node. + object highlight - # Capture page screenshot. - command captureScreenshot + # For Persistent Grid testing. + command getGridHighlightObjectsForTest parameters - # Image compression format (defaults to png). - optional enum format - jpeg - png - webp - # Compression quality from range [0..100] (jpeg only). - optional integer quality - # Capture the screenshot of a given region only. - optional Viewport clip - # Capture the screenshot from the surface, rather than the view. Defaults to true. - experimental optional boolean fromSurface - # Capture the screenshot beyond the viewport. Defaults to false. - experimental optional boolean captureBeyondViewport - # Optimize image encoding for speed, not for resulting size (defaults to false) - experimental optional boolean optimizeForSpeed + # Ids of the node to get highlight object for. + array of DOM.NodeId nodeIds returns - # Base64-encoded image data. - binary data + # Grid Highlight data for the node ids provided. + object highlights - # Returns a snapshot of the page as a string. For MHTML format, the serialization includes - # iframes, shadow DOM, external resources, and element-inline styles. - experimental command captureSnapshot + # For Source Order Viewer testing. + command getSourceOrderHighlightObjectForTest parameters - # Format (defaults to mhtml). - optional enum format - mhtml + # Id of the node to highlight. + DOM.NodeId nodeId returns - # Serialized page data. - string data + # Source order highlight data for the node id provided. + object highlight - # Clears the overridden device metrics. - experimental deprecated command clearDeviceMetricsOverride - # Use 'Emulation.clearDeviceMetricsOverride' instead - redirect Emulation + # Hides any highlight. + command hideHighlight - # Clears the overridden Device Orientation. - experimental deprecated command clearDeviceOrientationOverride - # Use 'DeviceOrientation.clearDeviceOrientationOverride' instead - redirect DeviceOrientation + # Highlights owner element of the frame with given id. + # Deprecated: Doesn't work reliably and cannot be fixed due to process + # separation (the owner node might be in a different process). Determine + # the owner node in the client and use highlightNode. + deprecated command highlightFrame + parameters + # Identifier of the frame to highlight. + Page.FrameId frameId + # The content box highlight fill color (default: transparent). + optional DOM.RGBA contentColor + # The content box highlight outline color (default: transparent). + optional DOM.RGBA contentOutlineColor - # Clears the overridden Geolocation Position and Error. - deprecated command clearGeolocationOverride - # Use 'Emulation.clearGeolocationOverride' instead - redirect Emulation + # Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or + # objectId must be specified. + command highlightNode + parameters + # A descriptor for the highlight appearance. + HighlightConfig highlightConfig + # Identifier of the node to highlight. + optional DOM.NodeId nodeId + # Identifier of the backend node to highlight. + optional DOM.BackendNodeId backendNodeId + # JavaScript object id of the node to be highlighted. + optional Runtime.RemoteObjectId objectId + # Selectors to highlight relevant nodes. + optional string selector - # Creates an isolated world for the given frame. - command createIsolatedWorld + # Highlights given quad. Coordinates are absolute with respect to the main frame viewport. + command highlightQuad parameters - # Id of the frame in which the isolated world should be created. - FrameId frameId - # An optional name which is reported in the Execution Context. - optional string worldName - # Whether or not universal access should be granted to the isolated world. This is a powerful - # option, use with caution. - optional boolean grantUniveralAccess - returns - # Execution context of the isolated world. - Runtime.ExecutionContextId executionContextId + # Quad to highlight + DOM.Quad quad + # The highlight fill color (default: transparent). + optional DOM.RGBA color + # The highlight outline color (default: transparent). + optional DOM.RGBA outlineColor - # Deletes browser cookie with given name, domain and path. - experimental deprecated command deleteCookie - # Use 'Network.deleteCookie' instead - redirect Network + # Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport. + # Issue: the method does not handle device pixel ratio (DPR) correctly. + # The coordinates currently have to be adjusted by the client + # if DPR is not 1 (see crbug.com/437807128). + command highlightRect parameters - # Name of the cookie to remove. - string cookieName - # URL to match cooke domain and path. - string url + # X coordinate + integer x + # Y coordinate + integer y + # Rectangle width + integer width + # Rectangle height + integer height + # The highlight fill color (default: transparent). + optional DOM.RGBA color + # The highlight outline color (default: transparent). + optional DOM.RGBA outlineColor - # Disables page domain notifications. - command disable + # Highlights the source order of the children of the DOM node with given id or with the given + # JavaScript object wrapper. Either nodeId or objectId must be specified. + command highlightSourceOrder + parameters + # A descriptor for the appearance of the overlay drawing. + SourceOrderConfig sourceOrderConfig + # Identifier of the node to highlight. + optional DOM.NodeId nodeId + # Identifier of the backend node to highlight. + optional DOM.BackendNodeId backendNodeId + # JavaScript object id of the node to be highlighted. + optional Runtime.RemoteObjectId objectId - # Enables page domain notifications. - command enable + # Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted. + # Backend then generates 'inspectNodeRequested' event upon element selection. + command setInspectMode parameters - # If true, the `Page.fileChooserOpened` event will be emitted regardless of the state set by - # `Page.setInterceptFileChooserDialog` command (default: false). - experimental optional boolean enableFileChooserOpenedEvent + # Set an inspection mode. + InspectMode mode + # A descriptor for the highlight appearance of hovered-over nodes. May be omitted if `enabled + # == false`. + optional HighlightConfig highlightConfig - # The manifest of a webapp, see - # https://www.w3.org/TR/appmanifest/#dfn-manifest. - # Some fields do not appear in the standard since the API is designed to - # expose more browser internal states. + # Highlights owner element of all frames detected to be ads. + command setShowAdHighlights + parameters + # True for showing ad highlights + boolean show - experimental type FileFilter extends object - properties - optional string name - optional array of string accepts + command setPausedInDebuggerMessage + parameters + # The message to display, also triggers resume and step over controls. + optional string message - experimental type FileHandler extends object - properties - string action - string name - optional array of ImageResource icons - # Mimic a map, name is the key, accepts is the value. - optional array of FileFilter accepts - # Won't repeat the enums, using string for easy comparison. Same as the - # other enums below. - string launchType + # Requests that backend shows debug borders on layers + command setShowDebugBorders + parameters + # True for showing debug borders + boolean show - # The image definition used in both icon and screenshot. - experimental type ImageResource extends object - properties - # The src field in the definition, but changing to url in favor of - # consistency. - string url - optional string sizes - optional string type + # Requests that backend shows the FPS counter + command setShowFPSCounter + parameters + # True for showing the FPS counter + boolean show - experimental type LaunchHandler extends object - properties - string clientMode + # Highlight multiple elements with the CSS Grid overlay. + command setShowGridOverlays + parameters + # An array of node identifiers and descriptors for the highlight appearance. + array of GridNodeHighlightConfig gridNodeHighlightConfigs - experimental type ProtocolHandler extends object - properties - string protocol - string url + command setShowFlexOverlays + parameters + # An array of node identifiers and descriptors for the highlight appearance. + array of FlexNodeHighlightConfig flexNodeHighlightConfigs - experimental type RelatedApplication extends object - properties - optional string id - string url + command setShowScrollSnapOverlays + parameters + # An array of node identifiers and descriptors for the highlight appearance. + array of ScrollSnapHighlightConfig scrollSnapHighlightConfigs - experimental type ScopeExtension extends object - properties - # Instead of using tuple, this field always returns the serialized string - # for easy understanding and comparison. - string origin - boolean hasOriginWildcard + command setShowContainerQueryOverlays + parameters + # An array of node identifiers and descriptors for the highlight appearance. + array of ContainerQueryHighlightConfig containerQueryHighlightConfigs - experimental type Screenshot extends object - properties - ImageResource image - string formFactor - optional string label + # Requests that backend shows paint rectangles + command setShowPaintRects + parameters + # True for showing paint rectangles + boolean result - experimental type ShareTarget extends object - properties - string action - string method - string enctype - # Embed the ShareTargetParams - optional string title - optional string text - optional string url - optional array of FileFilter files + # Requests that backend shows layout shift regions + command setShowLayoutShiftRegions + parameters + # True for showing layout shift regions + boolean result - experimental type Shortcut extends object - properties - string name - string url + # Requests that backend shows scroll bottleneck rects + command setShowScrollBottleneckRects + parameters + # True for showing scroll bottleneck rects + boolean show - experimental type WebAppManifest extends object - properties - optional string backgroundColor - # The extra description provided by the manifest. - optional string description - optional string dir - optional string display - # The overrided display mode controlled by the user. - optional array of string displayOverrides - # The handlers to open files. - optional array of FileHandler fileHandlers - optional array of ImageResource icons - optional string id - optional string lang - # TODO(crbug.com/1231886): This field is non-standard and part of a Chrome - # experiment. See: - # https://github.com/WICG/web-app-launch/blob/main/launch_handler.md - optional LaunchHandler launchHandler - optional string name - optional string orientation - optional boolean preferRelatedApplications - # The handlers to open protocols. - optional array of ProtocolHandler protocolHandlers - optional array of RelatedApplication relatedApplications - optional string scope - # Non-standard, see - # https://github.com/WICG/manifest-incubations/blob/gh-pages/scope_extensions-explainer.md - optional array of ScopeExtension scopeExtensions - # The screenshots used by chromium. - optional array of Screenshot screenshots - optional ShareTarget shareTarget - optional string shortName - optional array of Shortcut shortcuts - optional string startUrl - optional string themeColor + # Deprecated, no longer has any effect. + deprecated command setShowHitTestBorders + parameters + # True for showing hit-test borders + boolean show - # Gets the processed manifest for this current document. - # This API always waits for the manifest to be loaded. - # If manifestId is provided, and it does not match the manifest of the - # current document, this API errors out. - # If there is not a loaded page, this API errors out immediately. - command getAppManifest + # Deprecated, no longer has any effect. + deprecated command setShowWebVitals parameters - optional string manifestId - returns - # Manifest location. - string url - array of AppManifestError errors - # Manifest content. - optional string data - # Parsed manifest properties. Deprecated, use manifest instead. - experimental deprecated optional AppManifestParsedProperties parsed - experimental WebAppManifest manifest + boolean show - experimental command getInstallabilityErrors - returns - array of InstallabilityError installabilityErrors + # Paints viewport size upon main frame resize. + command setShowViewportSizeOnResize + parameters + # Whether to paint size or not. + boolean show - # Deprecated because it's not guaranteed that the returned icon is in fact the one used for PWA installation. - experimental deprecated command getManifestIcons - returns - optional binary primaryIcon + # Add a dual screen device hinge + command setShowHinge + parameters + # hinge data, null means hideHinge + optional HingeConfig hingeConfig - # Returns the unique (PWA) app id. - # Only returns values if the feature flag 'WebAppEnableManifestId' is enabled - experimental command getAppId - returns - # App id, either from manifest's id attribute or computed from start_url - optional string appId - # Recommendation for manifest's id attribute to match current id computed from start_url - optional string recommendedId + # Show elements in isolation mode with overlays. + command setShowIsolatedElements + parameters + # An array of node identifiers and descriptors for the highlight appearance. + array of IsolatedElementHighlightConfig isolatedElementHighlightConfigs - experimental command getAdScriptAncestry + # Show Window Controls Overlay for PWA + command setShowWindowControlsOverlay parameters - FrameId frameId - returns - # The ancestry chain of ad script identifiers leading to this frame's - # creation, along with the root script's filterlist rule. The ancestry - # chain is ordered from the most immediate script (in the frame creation - # stack) to more distant ancestors (that created the immediately preceding - # script). Only sent if frame is labelled as an ad and ids are available. - optional AdScriptAncestry adScriptAncestry + # Window Controls Overlay data, null means hide Window Controls Overlay + optional WindowControlsOverlayConfig windowControlsOverlayConfig - # Returns present frame tree structure. - command getFrameTree - returns - # Present frame tree structure. - FrameTree frameTree + # Fired when the node should be inspected. This happens after call to `setInspectMode` or when + # user manually inspects an element. + event inspectNodeRequested + parameters + # Id of the node to inspect. + DOM.BackendNodeId backendNodeId - # Returns metrics relating to the layouting of the page, such as viewport bounds/scale. - command getLayoutMetrics - returns - # Deprecated metrics relating to the layout viewport. Is in device pixels. Use `cssLayoutViewport` instead. - deprecated LayoutViewport layoutViewport - # Deprecated metrics relating to the visual viewport. Is in device pixels. Use `cssVisualViewport` instead. - deprecated VisualViewport visualViewport - # Deprecated size of scrollable area. Is in DP. Use `cssContentSize` instead. - deprecated DOM.Rect contentSize - # Metrics relating to the layout viewport in CSS pixels. - LayoutViewport cssLayoutViewport - # Metrics relating to the visual viewport in CSS pixels. - VisualViewport cssVisualViewport - # Size of scrollable area in CSS pixels. - DOM.Rect cssContentSize + # Fired when the node should be highlighted. This happens after call to `setInspectMode`. + event nodeHighlightRequested + parameters + DOM.NodeId nodeId - # Returns navigation history for the current page. - command getNavigationHistory - returns - # Index of the current navigation history entry. - integer currentIndex - # Array of navigation history entries. - array of NavigationEntry entries + # Fired when user asks to capture screenshot of some area on the page. + event screenshotRequested + parameters + # Viewport to capture, in device independent pixels (dip). + Page.Viewport viewport - # Resets navigation history for the current page. - command resetNavigationHistory + # Fired when user cancels the inspect mode. + event inspectModeCanceled - # Returns content of the given resource. - experimental command getResourceContent - parameters - # Frame id to get resource for. - FrameId frameId - # URL of the resource to get content for. - string url - returns - # Resource content. - string content - # True, if content was served as base64. - boolean base64Encoded +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Returns present frame / resource tree structure. - experimental command getResourceTree - returns - # Present frame / resource tree structure. - FrameResourceTree frameTree +# This domain allows interacting with the browser to control PWAs. +experimental domain PWA - # Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload). - command handleJavaScriptDialog - parameters - # Whether to accept or dismiss the dialog. - boolean accept - # The text to enter into the dialog prompt before accepting. Used only if this is a prompt - # dialog. - optional string promptText + # The following types are the replica of + # https://crsrc.org/c/chrome/browser/web_applications/proto/web_app_os_integration_state.proto;drc=9910d3be894c8f142c977ba1023f30a656bc13fc;l=67 + type FileHandlerAccept extends object + properties + # New name of the mimetype according to + # https://www.iana.org/assignments/media-types/media-types.xhtml + string mediaType + array of string fileExtensions - # Navigates current page to the given URL. - command navigate + type FileHandler extends object + properties + string action + array of FileHandlerAccept accepts + string displayName + + # Returns the following OS state for the given manifest id. + command getOsAppState parameters - # URL to navigate the page to. - string url - # Referrer URL. - optional string referrer - # Intended transition type. - optional TransitionType transitionType - # Frame id to navigate, if not specified navigates the top frame. - optional FrameId frameId - # Referrer-policy used for the navigation. - experimental optional ReferrerPolicy referrerPolicy + # The id from the webapp's manifest file, commonly it's the url of the + # site installing the webapp. See + # https://web.dev/learn/pwa/web-app-manifest. + string manifestId returns - # Frame id that has navigated (or failed to navigate) - FrameId frameId - # Loader identifier. This is omitted in case of same-document navigation, - # as the previously committed loaderId would not change. - optional Network.LoaderId loaderId - # User friendly error message, present if and only if navigation has failed. - optional string errorText - # Whether the navigation resulted in a download. - experimental optional boolean isDownload + integer badgeCount + array of FileHandler fileHandlers - # Navigates current page to the given history entry. - command navigateToHistoryEntry + # 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. + command install parameters - # Unique id of the entry to navigate to. - integer entryId + string manifestId + # The location of the app or bundle overriding the one derived from the + # manifestId. + optional string installUrlOrBundleUrl - # Print page as PDF. - command printToPDF + # Uninstalls the given manifest_id and closes any opened app windows. + command uninstall parameters - # Paper orientation. Defaults to false. - optional boolean landscape - # Display header and footer. Defaults to false. - optional boolean displayHeaderFooter - # Print background graphics. Defaults to false. - optional boolean printBackground - # Scale of the webpage rendering. Defaults to 1. - optional number scale - # Paper width in inches. Defaults to 8.5 inches. - optional number paperWidth - # Paper height in inches. Defaults to 11 inches. - optional number paperHeight - # Top margin in inches. Defaults to 1cm (~0.4 inches). - optional number marginTop - # Bottom margin in inches. Defaults to 1cm (~0.4 inches). - optional number marginBottom - # Left margin in inches. Defaults to 1cm (~0.4 inches). - optional number marginLeft - # Right margin in inches. Defaults to 1cm (~0.4 inches). - optional number marginRight - # Paper ranges to print, one based, e.g., '1-5, 8, 11-13'. Pages are - # printed in the document order, not in the order specified, and no - # more than once. - # Defaults to empty string, which implies the entire document is printed. - # The page numbers are quietly capped to actual page count of the - # document, and ranges beyond the end of the document are ignored. - # If this results in no pages to print, an error is reported. - # It is an error to specify a range with start greater than end. - optional string pageRanges - # HTML template for the print header. Should be valid HTML markup with following - # classes used to inject printing values into them: - # - `date`: formatted print date - # - `title`: document title - # - `url`: document location - # - `pageNumber`: current page number - # - `totalPages`: total pages in the document - # - # For example, `` would generate span containing the title. - optional string headerTemplate - # HTML template for the print footer. Should use the same format as the `headerTemplate`. - optional string footerTemplate - # Whether or not to prefer page size as defined by css. Defaults to false, - # in which case the content will be scaled to fit the paper size. - optional boolean preferCSSPageSize - # return as stream - experimental optional enum transferMode - ReturnAsBase64 - ReturnAsStream - # Whether or not to generate tagged (accessible) PDF. Defaults to embedder choice. - experimental optional boolean generateTaggedPDF - # Whether or not to embed the document outline into the PDF. - experimental optional boolean generateDocumentOutline - returns - # Base64-encoded pdf data. Empty if |returnAsStream| is specified. - binary data - # A handle of the stream that holds resulting PDF data. - experimental optional IO.StreamHandle stream + string manifestId - # Reloads given page optionally ignoring the cache. - command reload + # 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. + command launch parameters - # If true, browser cache is ignored (as if the user pressed Shift+refresh). - optional boolean ignoreCache - # If set, the script will be injected into all frames of the inspected page after reload. - # Argument will be ignored if reloading dataURL origin. - optional string scriptToEvaluateOnLoad - # If set, an error will be thrown if the target page's main frame's - # loader id does not match the provided id. This prevents accidentally - # reloading an unintended target in case there's a racing navigation. - experimental optional Network.LoaderId loaderId + string manifestId + optional string url + returns + # ID of the tab target created as a result. + Target.TargetID targetId - # Deprecated, please use removeScriptToEvaluateOnNewDocument instead. - experimental deprecated command removeScriptToEvaluateOnLoad + # 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. + command launchFilesInApp parameters - ScriptIdentifier identifier + string manifestId + array of string files + returns + # IDs of the tab targets created as the result. + array of Target.TargetID targetIds - # Removes given script from the list. - command removeScriptToEvaluateOnNewDocument + # Opens the current page in its web app identified by the manifest id, needs + # to be called on a page target. This function returns immediately without + # waiting for the app to finish loading. + command openCurrentPageInApp parameters - ScriptIdentifier identifier + string manifestId - # Acknowledges that a screencast frame has been received by the frontend. - experimental command screencastFrameAck - parameters - # Frame number. - integer sessionId + # If user prefers opening the app in browser or an app window. + type DisplayMode extends string + enum + standalone + browser - # Searches for given string in resource content. - experimental command searchInResource + # Changes user settings of the web app identified by its manifestId. If the + # app was not installed, this command returns an error. Unset parameters will + # be ignored; unrecognized values will cause an error. + # + # Unlike the ones defined in the manifest files of the web apps, these + # settings are provided by the browser and controlled by the users, they + # impact the way the browser handling the web apps. + # + # See the comment of each parameter. + command changeAppUserSettings parameters - # Frame id for resource to search in. - FrameId frameId - # URL of the resource to search in. - string url - # String to search for. - string query - # If true, search is case sensitive. - optional boolean caseSensitive - # If true, treats string parameter as regex. - optional boolean isRegex - returns - # List of search matches. - array of Debugger.SearchMatch result + string manifestId + # If user allows the links clicked on by the user in the app's scope, or + # extended scope if the manifest has scope extensions and the flags + # `DesktopPWAsLinkCapturingWithScopeExtensions` and + # `WebAppEnableScopeExtensions` are enabled. + # + # Note, the API does not support resetting the linkCapturing to the + # initial value, uninstalling and installing the web app again will reset + # it. + # + # TODO(crbug.com/339453269): Setting this value on ChromeOS is not + # supported yet. + optional boolean linkCapturing + optional DisplayMode displayMode - # Enable Chrome's experimental ad filter on all sites. - experimental command setAdBlockingEnabled - parameters - # Whether to block ads. - boolean enabled +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Enable page Content Security Policy by-passing. - command setBypassCSP - parameters - # Whether to bypass page CSP. - boolean enabled +# Actions and events related to the inspected page belong to the page domain. +domain Page + depends on Debugger + depends on DOM + depends on IO + depends on Network + depends on Runtime - # Get Permissions Policy state on given frame. - experimental command getPermissionsPolicyState - parameters - FrameId frameId - returns - array of PermissionsPolicyFeatureState states + # Unique frame identifier. + type FrameId extends string - # Get Origin Trials on given frame. - experimental command getOriginTrials - parameters - FrameId frameId - returns - array of OriginTrial originTrials + # Indicates whether a frame has been identified as an ad. + experimental type AdFrameType extends string + enum + none + # This frame is a subframe of an ad frame. + child + # This frame is the root of an ad frame. + root - # Overrides the values of device screen dimensions (window.screen.width, window.screen.height, - # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media - # query results). - experimental deprecated command setDeviceMetricsOverride - # Use 'Emulation.setDeviceMetricsOverride' instead - redirect Emulation - parameters - # Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override. - integer width - # Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override. - integer height - # Overriding device scale factor value. 0 disables the override. - number deviceScaleFactor - # Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text - # autosizing and more. - boolean mobile - # Scale to apply to resulting view image. - optional number scale - # Overriding screen width value in pixels (minimum 0, maximum 10000000). - optional integer screenWidth - # Overriding screen height value in pixels (minimum 0, maximum 10000000). - optional integer screenHeight - # Overriding view X position on screen in pixels (minimum 0, maximum 10000000). - optional integer positionX - # Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). - optional integer positionY - # Do not set visible view size, rely upon explicit setVisibleSize call. - optional boolean dontSetVisibleSize - # Screen orientation override. - optional Emulation.ScreenOrientation screenOrientation - # The viewport dimensions and scale. If not set, the override is cleared. - optional Viewport viewport - - # Overrides the Device Orientation. - experimental deprecated command setDeviceOrientationOverride - # Use 'DeviceOrientation.setDeviceOrientationOverride' instead - redirect DeviceOrientation - parameters - # Mock alpha - number alpha - # Mock beta - number beta - # Mock gamma - number gamma + experimental type AdFrameExplanation extends string + enum + ParentIsAd + CreatedByAdScript + MatchedBlockingRule - # Set generic font families. - experimental command setFontFamilies - parameters - # Specifies font families to set. If a font family is not specified, it won't be changed. - FontFamilies fontFamilies - # Specifies font families to set for individual scripts. - optional array of ScriptFontFamilies forScripts + # Indicates whether a frame has been identified as an ad and why. + experimental type AdFrameStatus extends object + properties + AdFrameType adFrameType + optional array of AdFrameExplanation explanations - # Set default font sizes. - experimental command setFontSizes - parameters - # Specifies font sizes to set. If a font size is not specified, it won't be changed. - FontSizes fontSizes + # Identifies the script which caused a script or frame to be labelled as an + # ad. + experimental type AdScriptId extends object + properties + # Script Id of the script which caused a script or frame to be labelled as + # an ad. + Runtime.ScriptId scriptId + # Id of scriptId's debugger. + Runtime.UniqueDebuggerId debuggerId - # Sets given markup as the document's HTML. - command setDocumentContent - parameters - # Frame id to set HTML for. - FrameId frameId - # HTML content to set. - string html + # Encapsulates the script ancestry and the root script filterlist rule that + # caused the frame to be labelled as an ad. Only created when `ancestryChain` + # is not empty. + experimental type AdScriptAncestry extends object + properties + # A chain of `AdScriptId`s representing the ancestry of an ad script that + # led to the creation of a frame. The chain is ordered from the script + # itself (lower level) up to its root ancestor that was flagged by + # filterlist. + array of AdScriptId ancestryChain + # The filterlist rule that caused the root (last) script in + # `ancestryChain` to be ad-tagged. Only populated if the rule is + # available. + optional string rootScriptFilterlistRule - # Set the behavior when downloading a file. - experimental deprecated command setDownloadBehavior - parameters - # Whether to allow all or deny all download requests, or use default Chrome behavior if - # available (otherwise deny). - enum behavior - deny - allow - default - # The default path to save downloaded files to. This is required if behavior is set to 'allow' - optional string downloadPath + # Indicates whether the frame is a secure context and why it is the case. + experimental type SecureContextType extends string + enum + # The origin is a secure context. + Secure + # The host is localhost and hence is considered secure. + SecureLocalhost + # The origin has an insecure scheme and is not localhost. + InsecureScheme + # One of the ancestor frames is not a secure context. + InsecureAncestor - # Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position - # unavailable. - deprecated command setGeolocationOverride - # Use 'Emulation.setGeolocationOverride' instead - redirect Emulation - parameters - # Mock latitude - optional number latitude - # Mock longitude - optional number longitude - # Mock accuracy - optional number accuracy + # Indicates whether the frame is cross-origin isolated and why it is the case. + experimental type CrossOriginIsolatedContextType extends string + enum + # The origin is cross-origin isolated. + Isolated + # The origin is not cross-origin isolated. + NotIsolated + # The cross-origin isolation feature is disabled. + NotIsolatedFeatureDisabled - # Controls whether page will emit lifecycle events. - command setLifecycleEventsEnabled - parameters - # If true, starts emitting lifecycle events. - boolean enabled + experimental type GatedAPIFeatures extends string + enum + SharedArrayBuffers + SharedArrayBuffersTransferAllowed + PerformanceMeasureMemory + PerformanceProfile - # Toggles mouse event-based touch event emulation. - experimental deprecated command setTouchEmulationEnabled - # Use 'Emulation.setTouchEmulationEnabled' instead - redirect Emulation - parameters - # Whether the touch event emulation should be enabled. - boolean enabled - # Touch/gesture events configuration. Default: current platform. - optional enum configuration - mobile - desktop + # All Permissions Policy features. This enum should match the one defined + # in services/network/public/cpp/permissions_policy/permissions_policy_features.json5. + # LINT.IfChange(PermissionsPolicyFeature) + experimental type PermissionsPolicyFeature extends string + enum + accelerometer + all-screens-capture + ambient-light-sensor + aria-notify + attribution-reporting + autoplay + bluetooth + browsing-topics + camera + captured-surface-control + ch-dpr + ch-device-memory + ch-downlink + ch-ect + ch-prefers-color-scheme + ch-prefers-reduced-motion + ch-prefers-reduced-transparency + ch-rtt + ch-save-data + ch-ua + ch-ua-arch + ch-ua-bitness + ch-ua-high-entropy-values + ch-ua-platform + ch-ua-model + ch-ua-mobile + ch-ua-form-factors + ch-ua-full-version + ch-ua-full-version-list + ch-ua-platform-version + ch-ua-wow64 + ch-viewport-height + ch-viewport-width + ch-width + clipboard-read + clipboard-write + compute-pressure + controlled-frame + cross-origin-isolated + deferred-fetch + deferred-fetch-minimal + device-attributes + digital-credentials-create + digital-credentials-get + direct-sockets + direct-sockets-multicast + direct-sockets-private + display-capture + document-domain + encrypted-media + execution-while-out-of-viewport + execution-while-not-rendered + fenced-unpartitioned-storage-read + focus-without-user-activation + fullscreen + frobulate + gamepad + geolocation + gyroscope + hid + identity-credentials-get + idle-detection + interest-cohort + join-ad-interest-group + keyboard-map + language-detector + language-model + local-fonts + local-network-access + magnetometer + media-playback-while-not-visible + microphone + midi + on-device-speech-recognition + otp-credentials + payment + picture-in-picture + popins + private-aggregation + private-state-token-issuance + private-state-token-redemption + publickey-credentials-create + publickey-credentials-get + record-ad-auction-events + rewriter + run-ad-auction + screen-wake-lock + serial + shared-autofill + shared-storage + shared-storage-select-url + smart-card + speaker-selection + storage-access + sub-apps + summarizer + sync-xhr + translator + unload + usb + usb-unrestricted + vertical-scroll + web-app-installation + web-printing + web-share + window-management + writer + xr-spatial-tracking + # LINT.ThenChange(//services/network/public/cpp/permissions_policy/permissions_policy_features.json5:PermissionsPolicy) - # Starts sending each frame using the `screencastFrame` event. - experimental command startScreencast - parameters - # Image compression format. - optional enum format - jpeg - png - # Compression quality from range [0..100]. - optional integer quality - # Maximum screenshot width. - optional integer maxWidth - # Maximum screenshot height. - optional integer maxHeight - # Send every n-th frame. - optional integer everyNthFrame - - # Force the page stop all navigations and pending resource fetches. - command stopLoading - - # Crashes renderer on the IO thread, generates minidumps. - experimental command crash + # Reason for a permissions policy feature to be disabled. + experimental type PermissionsPolicyBlockReason extends string + enum + # Declaration in HTTP header. + Header + # Declaration in iframe attribute. + IframeAttribute + # Inside fenced frame. + InFencedFrameTree + # Inside an Isolated Application. + InIsolatedApp - # Tries to close page, running its beforeunload hooks, if any. - command close + experimental type PermissionsPolicyBlockLocator extends object + properties + FrameId frameId + PermissionsPolicyBlockReason blockReason - # Tries to update the web lifecycle state of the page. - # It will transition the page to the given state according to: - # https://github.com/WICG/web-lifecycle/ - experimental command setWebLifecycleState - parameters - # Target lifecycle state - enum state - frozen - active + experimental type PermissionsPolicyFeatureState extends object + properties + PermissionsPolicyFeature feature + boolean allowed + optional PermissionsPolicyBlockLocator locator - # Stops sending each frame in the `screencastFrame`. - experimental command stopScreencast + # Origin Trial(https://www.chromium.org/blink/origin-trials) support. + # Status for an Origin Trial token. + experimental type OriginTrialTokenStatus extends string + enum + Success + NotSupported + Insecure + Expired + WrongOrigin + InvalidSignature + Malformed + WrongVersion + FeatureDisabled + TokenDisabled + FeatureDisabledForUser + UnknownTrial - # Requests backend to produce compilation cache for the specified scripts. - # `scripts` are appended to the list of scripts for which the cache - # would be produced. The list may be reset during page navigation. - # When script with a matching URL is encountered, the cache is optionally - # produced upon backend discretion, based on internal heuristics. - # See also: `Page.compilationCacheProduced`. - experimental command produceCompilationCache - parameters - array of CompilationCacheParams scripts + # Status for an Origin Trial. + experimental type OriginTrialStatus extends string + enum + Enabled + ValidTokenNotProvided + OSNotSupported + TrialNotAllowed - # Seeds compilation cache for given url. Compilation cache does not survive - # cross-process navigation. - experimental command addCompilationCache - parameters - string url - # Base64-encoded data - binary data + experimental type OriginTrialUsageRestriction extends string + enum + None + Subset - # Clears seeded compilation cache. - experimental command clearCompilationCache + experimental type OriginTrialToken extends object + properties + string origin + boolean matchSubDomains + string trialName + Network.TimeSinceEpoch expiryTime + boolean isThirdParty + OriginTrialUsageRestriction usageRestriction - # Sets the Secure Payment Confirmation transaction mode. - # https://w3c.github.io/secure-payment-confirmation/#sctn-automation-set-spc-transaction-mode - experimental command setSPCTransactionMode - parameters - enum mode - none - autoAccept - autoChooseToAuthAnotherWay - autoReject - autoOptOut + experimental type OriginTrialTokenWithStatus extends object + properties + string rawTokenText + # `parsedToken` is present only when the token is extractable and + # parsable. + optional OriginTrialToken parsedToken + OriginTrialTokenStatus status - # Extensions for Custom Handlers API: - # https://html.spec.whatwg.org/multipage/system-state.html#rph-automation - experimental command setRPHRegistrationMode - parameters - enum mode - none - autoAccept - autoReject + experimental type OriginTrial extends object + properties + string trialName + OriginTrialStatus status + array of OriginTrialTokenWithStatus tokensWithStatus - # Generates a report for testing. - experimental command generateTestReport - parameters - # Message to be displayed in the report. - string message - # Specifies the endpoint group to deliver the report to. - optional string group + # Additional information about the frame document's security origin. + experimental type SecurityOriginDetails extends object + properties + # Indicates whether the frame document's security origin is one + # of the local hostnames (e.g. "localhost") or IP addresses (IPv4 + # 127.0.0.0/8 or IPv6 ::1). + boolean isLocalhost - # Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger. - experimental command waitForDebugger + # Information about the Frame on the page. + type Frame extends object + properties + # Frame unique identifier. + FrameId id + # Parent frame identifier. + optional FrameId parentId + # Identifier of the loader associated with this frame. + Network.LoaderId loaderId + # Frame's name as specified in the tag. + optional string name + # Frame document's URL without fragment. + string url + # Frame document's URL fragment including the '#'. + experimental optional string urlFragment + # Frame document's registered domain, taking the public suffixes list into account. + # Extracted from the Frame's url. + # Example URLs: http://www.google.com/file.html -> "google.com" + # http://a.b.co.uk/file.html -> "b.co.uk" + experimental string domainAndRegistry + # Frame document's security origin. + string securityOrigin + # Additional details about the frame document's security origin. + experimental optional SecurityOriginDetails securityOriginDetails + # Frame document's mimeType as determined by the browser. + string mimeType + # If the frame failed to load, this contains the URL that could not be loaded. Note that unlike url above, this URL may contain a fragment. + experimental optional string unreachableUrl + # Indicates whether this frame was tagged as an ad and why. + experimental optional AdFrameStatus adFrameStatus + # Indicates whether the main document is a secure context and explains why that is the case. + experimental SecureContextType secureContextType + # Indicates whether this is a cross origin isolated context. + experimental CrossOriginIsolatedContextType crossOriginIsolatedContextType + # Indicated which gated APIs / features are available. + experimental array of GatedAPIFeatures gatedAPIFeatures - # Intercept file chooser requests and transfer control to protocol clients. - # When file chooser interception is enabled, native file chooser dialog is not shown. - # Instead, a protocol event `Page.fileChooserOpened` is emitted. - command setInterceptFileChooserDialog - parameters - boolean enabled - # If true, cancels the dialog by emitting relevant events (if any) - # in addition to not showing it if the interception is enabled - # (default: false). - experimental optional boolean cancel + # Information about the Resource on the page. + experimental type FrameResource extends object + properties + # Resource URL. + string url + # Type of this resource. + Network.ResourceType type + # Resource mimeType as determined by the browser. + string mimeType + # last-modified timestamp as reported by server. + optional Network.TimeSinceEpoch lastModified + # Resource content size. + optional number contentSize + # True if the resource failed to load. + optional boolean failed + # True if the resource was canceled during loading. + optional boolean canceled - event domContentEventFired - parameters - Network.MonotonicTime timestamp + # Information about the Frame hierarchy along with their cached resources. + experimental type FrameResourceTree extends object + properties + # Frame information for this tree item. + Frame frame + # Child frames. + optional array of FrameResourceTree childFrames + # Information about frame resources. + array of FrameResource resources - # Emitted only when `page.interceptFileChooser` is enabled. - event fileChooserOpened - parameters - # Id of the frame containing input node. - experimental FrameId frameId - # Input mode. - enum mode - selectSingle - selectMultiple - # Input node id. Only present for file choosers opened via an `` element. - experimental optional DOM.BackendNodeId backendNodeId + # Information about the Frame hierarchy. + type FrameTree extends object + properties + # Frame information for this tree item. + Frame frame + # Child frames. + optional array of FrameTree childFrames - # Fired when frame has been attached to its parent. - event frameAttached - parameters - # Id of the frame that has been attached. - FrameId frameId - # Parent frame identifier. - FrameId parentFrameId - # JavaScript stack trace of when frame was attached, only set if frame initiated from script. - optional Runtime.StackTrace stack + # Unique script identifier. + type ScriptIdentifier extends string - # Fired when frame no longer has a scheduled navigation. - deprecated event frameClearedScheduledNavigation - parameters - # Id of the frame that has cleared its scheduled navigation. - FrameId frameId + # Transition type. + type TransitionType extends string + enum + link + typed + address_bar + auto_bookmark + auto_subframe + manual_subframe + generated + auto_toplevel + form_submit + reload + keyword + keyword_generated + other - # Fired when frame has been detached from its parent. - event frameDetached - parameters - # Id of the frame that has been detached. - FrameId frameId - experimental enum reason - # The frame is removed from the DOM. - remove - # The frame is being swapped out in favor of an out-of-process iframe. - # A new frame target will be created (see Target.attachedToTarget). - swap + # Navigation history entry. + type NavigationEntry extends object + properties + # Unique id of the navigation history entry. + integer id + # URL of the navigation history entry. + string url + # URL that the user typed in the url bar. + string userTypedURL + # Title of the navigation history entry. + string title + # Transition type. + TransitionType transitionType - # Fired before frame subtree is detached. Emitted before any frame of the - # subtree is actually detached. - experimental event frameSubtreeWillBeDetached - parameters - # Id of the frame that is the root of the subtree that will be detached. - FrameId frameId + # Screencast frame metadata. + experimental type ScreencastFrameMetadata extends object + properties + # Top offset in DIP. + number offsetTop + # Page scale factor. + number pageScaleFactor + # Device screen width in DIP. + number deviceWidth + # Device screen height in DIP. + number deviceHeight + # Position of horizontal scroll in CSS pixels. + number scrollOffsetX + # Position of vertical scroll in CSS pixels. + number scrollOffsetY + # Frame swap timestamp. + optional Network.TimeSinceEpoch timestamp - # The type of a frameNavigated event. - experimental type NavigationType extends string + # Javascript dialog type. + type DialogType extends string enum - Navigation - BackForwardCacheRestore - - # Fired once navigation of the frame has completed. Frame is now associated with the new loader. - event frameNavigated - parameters - # Frame object. - Frame frame - experimental NavigationType type + alert + confirm + prompt + beforeunload - # Fired when opening document to write to. - experimental event documentOpened - parameters - # Frame object. - Frame frame + # Error while paring app manifest. + type AppManifestError extends object + properties + # Error message. + string message + # If critical, this is a non-recoverable parse error. + integer critical + # Error line. + integer line + # Error column. + integer column - experimental event frameResized + # Parsed app manifest properties. + experimental type AppManifestParsedProperties extends object + properties + # Computed scope value + string scope - # 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 event frameStartedNavigating - parameters - # ID of the frame that is being navigated. - FrameId frameId - # The URL the navigation started with. The final URL can be different. - string url - # 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. - Network.LoaderId loaderId - enum navigationType - reload - reloadBypassingCache - restore - restoreWithPost - historySameDocument - historyDifferentDocument - sameDocument - differentDocument + # Layout viewport position and dimensions. + type LayoutViewport extends object + properties + # Horizontal offset relative to the document (CSS pixels). + integer pageX + # Vertical offset relative to the document (CSS pixels). + integer pageY + # Width (CSS pixels), excludes scrollbar if present. + integer clientWidth + # Height (CSS pixels), excludes scrollbar if present. + integer clientHeight - # Fired when a renderer-initiated navigation is requested. - # Navigation may still be cancelled after the event is issued. - experimental event frameRequestedNavigation - parameters - # Id of the frame that is being navigated. - FrameId frameId - # The reason for the navigation. - ClientNavigationReason reason - # The destination URL for the requested navigation. - string url - # The disposition for the navigation. - ClientNavigationDisposition disposition + # Visual viewport position, dimensions, and scale. + type VisualViewport extends object + properties + # Horizontal offset relative to the layout viewport (CSS pixels). + number offsetX + # Vertical offset relative to the layout viewport (CSS pixels). + number offsetY + # Horizontal offset relative to the document (CSS pixels). + number pageX + # Vertical offset relative to the document (CSS pixels). + number pageY + # Width (CSS pixels), excludes scrollbar if present. + number clientWidth + # Height (CSS pixels), excludes scrollbar if present. + number clientHeight + # Scale relative to the ideal viewport (size at width=device-width). + number scale + # Page zoom factor (CSS to device independent pixels ratio). + optional number zoom - # Fired when frame schedules a potential navigation. - deprecated event frameScheduledNavigation - parameters - # Id of the frame that has scheduled a navigation. - FrameId frameId - # Delay (in seconds) until the navigation is scheduled to begin. The navigation is not - # guaranteed to start. - number delay - # The reason for the navigation. - ClientNavigationReason reason - # The destination URL for the scheduled navigation. - string url + # Viewport for capturing screenshot. + type Viewport extends object + properties + # X offset in device independent pixels (dip). + number x + # Y offset in device independent pixels (dip). + number y + # Rectangle width in device independent pixels (dip). + number width + # Rectangle height in device independent pixels (dip). + number height + # Page scale factor. + number scale - # Fired when frame has started loading. - experimental event frameStartedLoading - parameters - # Id of the frame that has started loading. - FrameId frameId + # Generic font families collection. + experimental type FontFamilies extends object + properties + # The standard font-family. + optional string standard + # The fixed font-family. + optional string fixed + # The serif font-family. + optional string serif + # The sansSerif font-family. + optional string sansSerif + # The cursive font-family. + optional string cursive + # The fantasy font-family. + optional string fantasy + # The math font-family. + optional string math - # Fired when frame has stopped loading. - experimental event frameStoppedLoading - parameters - # Id of the frame that has stopped loading. - FrameId frameId + # Font families collection for a script. + experimental type ScriptFontFamilies extends object + properties + # Name of the script which these font families are defined for. + string script + # Generic font families collection for the script. + FontFamilies fontFamilies - # Fired when page is about to start a download. - # Deprecated. Use Browser.downloadWillBegin instead. - experimental deprecated event downloadWillBegin - parameters - # Id of the frame that caused download to begin. - FrameId frameId - # Global unique identifier of the download. - string guid - # URL of the resource being downloaded. - string url - # Suggested file name of the resource (the actual name of the file saved on disk may differ). - string suggestedFilename + # Default font sizes. + experimental type FontSizes extends object + properties + # Default standard font size. + optional integer standard + # Default fixed font size. + optional integer fixed - # Fired when download makes progress. Last call has |done| == true. - # Deprecated. Use Browser.downloadProgress instead. - experimental deprecated event downloadProgress - parameters - # Global unique identifier of the download. - string guid - # Total expected bytes to download. - number totalBytes - # Total bytes received. - number receivedBytes - # Download status. - enum state - inProgress - completed - canceled + experimental type ClientNavigationReason extends string + enum + anchorClick + formSubmissionGet + formSubmissionPost + httpHeaderRefresh + initialFrameNavigation + metaTagRefresh + other + pageBlockInterstitial + reload + scriptInitiated - # Fired when interstitial page was hidden - event interstitialHidden + experimental type ClientNavigationDisposition extends string + enum + currentTab + newTab + newWindow + download - # Fired when interstitial page was shown - event interstitialShown + experimental type InstallabilityErrorArgument extends object + properties + # Argument name (e.g. name:'minimum-icon-size-in-pixels'). + string name + # Argument value (e.g. value:'64'). + string value - # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been - # closed. - event javascriptDialogClosed + # The installability error + experimental type InstallabilityError extends object + properties + # The error id (e.g. 'manifest-missing-suitable-icon'). + string errorId + # The list of error arguments (e.g. {name:'minimum-icon-size-in-pixels', value:'64'}). + array of InstallabilityErrorArgument errorArguments + + # The referring-policy used for the navigation. + experimental type ReferrerPolicy extends string + enum + noReferrer + noReferrerWhenDowngrade + origin + originWhenCrossOrigin + sameOrigin + strictOrigin + strictOriginWhenCrossOrigin + unsafeUrl + + # Per-script compilation cache parameters for `Page.produceCompilationCache` + experimental type CompilationCacheParams extends object + properties + # The URL of the script to produce a compilation cache entry for. + string url + # A hint to the backend whether eager compilation is recommended. + # (the actual compilation mode used is upon backend discretion). + optional boolean eager + + # Deprecated, please use addScriptToEvaluateOnNewDocument instead. + experimental deprecated command addScriptToEvaluateOnLoad parameters - # Frame id. - experimental FrameId frameId - # Whether dialog was confirmed. - boolean result - # User input in case of prompt. - string userInput + string scriptSource + returns + # Identifier of the added script. + ScriptIdentifier identifier - # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to - # open. - event javascriptDialogOpening + # Evaluates given script in every frame upon creation (before loading frame's scripts). + command addScriptToEvaluateOnNewDocument parameters - # Frame url. - string url - # Frame id. - experimental FrameId frameId - # Message that will be displayed by the dialog. - string message - # Dialog type. - DialogType type - # True iff browser is capable showing or acting on the given dialog. When browser has no - # dialog handler for given target, calling alert while Page domain is engaged will stall - # the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog. - boolean hasBrowserHandler - # Default dialog prompt. - optional string defaultPrompt + string source + # If specified, creates an isolated world with the given name and evaluates given script in it. + # This world name will be used as the ExecutionContextDescription::name when the corresponding + # event is emitted. + experimental optional string worldName + # Specifies whether command line API should be available to the script, defaults + # to false. + experimental optional boolean includeCommandLineAPI + # If true, runs the script immediately on existing execution contexts or worlds. + # Default: false. + experimental optional boolean runImmediately + returns + # Identifier of the added script. + ScriptIdentifier identifier - # Fired for lifecycle events (navigation, load, paint, etc) in the current - # target (including local frames). - event lifecycleEvent + # Brings page to front (activates tab). + command bringToFront + + # Capture page screenshot. + command captureScreenshot parameters - # Id of the frame. + # Image compression format (defaults to png). + optional enum format + jpeg + png + webp + # Compression quality from range [0..100] (jpeg only). + optional integer quality + # Capture the screenshot of a given region only. + optional Viewport clip + # Capture the screenshot from the surface, rather than the view. Defaults to true. + experimental optional boolean fromSurface + # Capture the screenshot beyond the viewport. Defaults to false. + experimental optional boolean captureBeyondViewport + # Optimize image encoding for speed, not for resulting size (defaults to false) + experimental optional boolean optimizeForSpeed + returns + # Base64-encoded image data. + binary data + + # Returns a snapshot of the page as a string. For MHTML format, the serialization includes + # iframes, shadow DOM, external resources, and element-inline styles. + experimental command captureSnapshot + parameters + # Format (defaults to mhtml). + optional enum format + mhtml + returns + # Serialized page data. + string data + + # Clears the overridden device metrics. + experimental deprecated command clearDeviceMetricsOverride + # Use 'Emulation.clearDeviceMetricsOverride' instead + redirect Emulation + + # Clears the overridden Device Orientation. + experimental deprecated command clearDeviceOrientationOverride + # Use 'DeviceOrientation.clearDeviceOrientationOverride' instead + redirect DeviceOrientation + + # Clears the overridden Geolocation Position and Error. + deprecated command clearGeolocationOverride + # Use 'Emulation.clearGeolocationOverride' instead + redirect Emulation + + # Creates an isolated world for the given frame. + command createIsolatedWorld + parameters + # Id of the frame in which the isolated world should be created. FrameId frameId - # Loader identifier. Empty string if the request is fetched from worker. - Network.LoaderId loaderId + # An optional name which is reported in the Execution Context. + optional string worldName + # Whether or not universal access should be granted to the isolated world. This is a powerful + # option, use with caution. + optional boolean grantUniveralAccess + returns + # Execution context of the isolated world. + Runtime.ExecutionContextId executionContextId + + # Deletes browser cookie with given name, domain and path. + experimental deprecated command deleteCookie + # Use 'Network.deleteCookie' instead + redirect Network + parameters + # Name of the cookie to remove. + string cookieName + # URL to match cooke domain and path. + string url + + # Disables page domain notifications. + command disable + + # Enables page domain notifications. + command enable + parameters + # If true, the `Page.fileChooserOpened` event will be emitted regardless of the state set by + # `Page.setInterceptFileChooserDialog` command (default: false). + experimental optional boolean enableFileChooserOpenedEvent + + # The manifest of a webapp, see + # https://www.w3.org/TR/appmanifest/#dfn-manifest. + # Some fields do not appear in the standard since the API is designed to + # expose more browser internal states. + + experimental type FileFilter extends object + properties + optional string name + optional array of string accepts + + experimental type FileHandler extends object + properties + string action string name - Network.MonotonicTime timestamp + optional array of ImageResource icons + # Mimic a map, name is the key, accepts is the value. + optional array of FileFilter accepts + # Won't repeat the enums, using string for easy comparison. Same as the + # other enums below. + string launchType - # List of not restored reasons for back-forward cache. - experimental type BackForwardCacheNotRestoredReason extends string - enum - NotPrimaryMainFrame - BackForwardCacheDisabled - RelatedActiveContentsExist - HTTPStatusNotOK - SchemeNotHTTPOrHTTPS - Loading - WasGrantedMediaAccess - DisableForRenderFrameHostCalled - DomainNotAllowed - HTTPMethodNotGET - SubframeIsNavigating - Timeout - CacheLimit - JavaScriptExecution - RendererProcessKilled - RendererProcessCrashed - SchedulerTrackedFeatureUsed - ConflictingBrowsingInstance - CacheFlushed - ServiceWorkerVersionActivation - SessionRestored - ServiceWorkerPostMessage - EnteredBackForwardCacheBeforeServiceWorkerHostAdded - RenderFrameHostReused_SameSite - RenderFrameHostReused_CrossSite - ServiceWorkerClaim - IgnoreEventAndEvict - HaveInnerContents - TimeoutPuttingInCache - BackForwardCacheDisabledByLowMemory - BackForwardCacheDisabledByCommandLine - NetworkRequestDatapipeDrainedAsBytesConsumer - NetworkRequestRedirected - NetworkRequestTimeout - NetworkExceedsBufferLimit - NavigationCancelledWhileRestoring - NotMostRecentNavigationEntry - BackForwardCacheDisabledForPrerender - UserAgentOverrideDiffers - ForegroundCacheLimit - BrowsingInstanceNotSwapped - BackForwardCacheDisabledForDelegate - UnloadHandlerExistsInMainFrame - UnloadHandlerExistsInSubFrame - ServiceWorkerUnregistration - CacheControlNoStore - CacheControlNoStoreCookieModified - CacheControlNoStoreHTTPOnlyCookieModified - NoResponseHead - Unknown - ActivationNavigationsDisallowedForBug1234857 - ErrorDocument - FencedFramesEmbedder - CookieDisabled - HTTPAuthRequired - CookieFlushed - BroadcastChannelOnMessage - WebViewSettingsChanged - WebViewJavaScriptObjectChanged - WebViewMessageListenerInjected - WebViewSafeBrowsingAllowlistChanged - WebViewDocumentStartJavascriptChanged - #Blocklisted features - WebSocket - WebTransport - WebRTC - MainResourceHasCacheControlNoStore - MainResourceHasCacheControlNoCache - SubresourceHasCacheControlNoStore - SubresourceHasCacheControlNoCache - ContainsPlugins - DocumentLoaded - OutstandingNetworkRequestOthers - RequestedMIDIPermission - RequestedAudioCapturePermission - RequestedVideoCapturePermission - RequestedBackForwardCacheBlockedSensors - RequestedBackgroundWorkPermission - BroadcastChannel - WebXR - SharedWorker - SharedWorkerMessage - WebLocks - WebHID - WebShare - RequestedStorageAccessGrant - WebNfc - OutstandingNetworkRequestFetch - OutstandingNetworkRequestXHR - AppBanner - Printing - WebDatabase - PictureInPicture - SpeechRecognizer - IdleManager - PaymentManager - SpeechSynthesis - KeyboardLock - WebOTPService - OutstandingNetworkRequestDirectSocket - InjectedJavascript - InjectedStyleSheet - KeepaliveRequest - IndexedDBEvent - Dummy - JsNetworkRequestReceivedCacheControlNoStoreResource - WebRTCSticky - WebTransportSticky - WebSocketSticky - SmartCard - LiveMediaStreamTrack - UnloadHandler - ParserAborted - # Disabled for RenderFrameHost reasons - # See content/browser/renderer_host/back_forward_cache_disable.h for explanations. - ContentSecurityHandler - ContentWebAuthenticationAPI - ContentFileChooser - ContentSerial - ContentFileSystemAccess - ContentMediaDevicesDispatcherHost - ContentWebBluetooth - ContentWebUSB - ContentMediaSessionService - ContentScreenReader - ContentDiscarded - - # See components/back_forward_cache/back_forward_cache_disable.h for explanations. - EmbedderPopupBlockerTabHelper - EmbedderSafeBrowsingTriggeredPopupBlocker - EmbedderSafeBrowsingThreatDetails - EmbedderAppBannerManager - EmbedderDomDistillerViewerSource - EmbedderDomDistillerSelfDeletingRequestDelegate - EmbedderOomInterventionTabHelper - EmbedderOfflinePage - EmbedderChromePasswordManagerClientBindCredentialManager - EmbedderPermissionRequestManager - EmbedderModalDialog - EmbedderExtensions - EmbedderExtensionMessaging - EmbedderExtensionMessagingForOpenPort - EmbedderExtensionSentMessageToCachedFrame - RequestedByWebViewClient - PostMessageByWebViewClient - CacheControlNoStoreDeviceBoundSessionTerminated - CacheLimitPrunedOnModerateMemoryPressure - CacheLimitPrunedOnCriticalMemoryPressure - - # Types of not restored reasons for back-forward cache. - experimental type BackForwardCacheNotRestoredReasonType extends string - enum - SupportPending - PageSupportNeeded - Circumstantial - - experimental type BackForwardCacheBlockingDetails extends object + # The image definition used in both icon and screenshot. + experimental type ImageResource extends object properties - # Url of the file where blockage happened. Optional because of tests. - optional string url - # Function name where blockage happened. Optional because of anonymous functions and tests. - optional string function - # Line number in the script (0-based). - integer lineNumber - # Column number in the script (0-based). - integer columnNumber + # The src field in the definition, but changing to url in favor of + # consistency. + string url + optional string sizes + optional string type - experimental type BackForwardCacheNotRestoredExplanation extends object + experimental type LaunchHandler extends object properties - # Type of the reason - BackForwardCacheNotRestoredReasonType type - # Not restored reason - BackForwardCacheNotRestoredReason reason - # Context associated with the reason. The meaning of this context is - # dependent on the reason: - # - EmbedderExtensionSentMessageToCachedFrame: the extension ID. - # - optional string context - optional array of BackForwardCacheBlockingDetails details + string clientMode - experimental type BackForwardCacheNotRestoredExplanationTree extends object + experimental type ProtocolHandler extends object properties - # URL of each frame + string protocol string url - # Not restored reasons of each frame - array of BackForwardCacheNotRestoredExplanation explanations - # Array of children frame - array of BackForwardCacheNotRestoredExplanationTree children - - # Fired for failed bfcache history navigations if BackForwardCache feature is enabled. Do - # not assume any ordering with the Page.frameNavigated event. This event is fired only for - # main-frame history navigation where the document changes (non-same-document navigations), - # when bfcache navigation fails. - experimental event backForwardCacheNotUsed - parameters - # The loader id for the associated navigation. - Network.LoaderId loaderId - # The frame id of the associated frame. - FrameId frameId - # Array of reasons why the page could not be cached. This must not be empty. - array of BackForwardCacheNotRestoredExplanation notRestoredExplanations - # Tree structure of reasons why the page could not be cached for each frame. - optional BackForwardCacheNotRestoredExplanationTree notRestoredExplanationsTree - - event loadEventFired - parameters - Network.MonotonicTime timestamp - # Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation. - experimental event navigatedWithinDocument - parameters - # Id of the frame. - FrameId frameId - # Frame's new url. + experimental type RelatedApplication extends object + properties + optional string id string url - # Navigation type - enum navigationType - # Navigation due to fragment navigation. - fragment - # Navigation due to history API usage. - historyApi - # Navigation due to other reasons. - other + experimental type ScopeExtension extends object + properties + # Instead of using tuple, this field always returns the serialized string + # for easy understanding and comparison. + string origin + boolean hasOriginWildcard - # Compressed image data requested by the `startScreencast`. - experimental event screencastFrame - parameters - # Base64-encoded compressed image. - binary data - # Screencast frame metadata. - ScreencastFrameMetadata metadata - # Frame number. - integer sessionId - - # Fired when the page with currently enabled screencast was shown or hidden `. - experimental event screencastVisibilityChanged - parameters - # True if the page is visible. - boolean visible + experimental type Screenshot extends object + properties + ImageResource image + string formFactor + optional string label - # Fired when a new window is going to be opened, via window.open(), link click, form submission, - # etc. - event windowOpen - parameters - # The URL for the new window. - string url - # Window name. - string windowName - # An array of enabled window features. - array of string windowFeatures - # Whether or not it was triggered by user gesture. - boolean userGesture + experimental type ShareTarget extends object + properties + string action + string method + string enctype + # Embed the ShareTargetParams + optional string title + optional string text + optional string url + optional array of FileFilter files - # Issued for every compilation cache generated. - experimental event compilationCacheProduced - parameters + experimental type Shortcut extends object + properties + string name string url - # Base64-encoded data - binary data - # Enable/disable prerendering manually. - # - # This command is a short-term solution for https://crbug.com/1440085. - # See https://docs.google.com/document/d/12HVmFxYj5Jc-eJr5OmWsa2bqTJsbgGLKI6ZIyx0_wpA - # for more details. - # - # TODO(https://crbug.com/1440085): Remove this once Puppeteer supports tab targets. - experimental command setPrerenderingAllowed - parameters - boolean isAllowed - -domain Performance - - # Run-time execution metric. - type Metric extends object + experimental type WebAppManifest extends object properties - # Metric name. - string name - # Metric value. - number value - - # Disable collecting and reporting metrics. - command disable + optional string backgroundColor + # The extra description provided by the manifest. + optional string description + optional string dir + optional string display + # The overrided display mode controlled by the user. + optional array of string displayOverrides + # The handlers to open files. + optional array of FileHandler fileHandlers + optional array of ImageResource icons + optional string id + optional string lang + # TODO(crbug.com/1231886): This field is non-standard and part of a Chrome + # experiment. See: + # https://github.com/WICG/web-app-launch/blob/main/launch_handler.md + optional LaunchHandler launchHandler + optional string name + optional string orientation + optional boolean preferRelatedApplications + # The handlers to open protocols. + optional array of ProtocolHandler protocolHandlers + optional array of RelatedApplication relatedApplications + optional string scope + # Non-standard, see + # https://github.com/WICG/manifest-incubations/blob/gh-pages/scope_extensions-explainer.md + optional array of ScopeExtension scopeExtensions + # The screenshots used by chromium. + optional array of Screenshot screenshots + optional ShareTarget shareTarget + optional string shortName + optional array of Shortcut shortcuts + optional string startUrl + optional string themeColor - # Enable collecting and reporting metrics. - command enable + # Gets the processed manifest for this current document. + # This API always waits for the manifest to be loaded. + # If manifestId is provided, and it does not match the manifest of the + # current document, this API errors out. + # If there is not a loaded page, this API errors out immediately. + command getAppManifest parameters - # Time domain to use for collecting and reporting duration metrics. - optional enum timeDomain - # Use monotonically increasing abstract time (default). - timeTicks - # Use thread running time. - threadTicks + optional string manifestId + returns + # Manifest location. + string url + array of AppManifestError errors + # Manifest content. + optional string data + # Parsed manifest properties. Deprecated, use manifest instead. + experimental deprecated optional AppManifestParsedProperties parsed + experimental WebAppManifest manifest - # Sets time domain to use for collecting and reporting duration metrics. - # Note that this must be called before enabling metrics collection. Calling - # this method while metrics collection is enabled returns an error. - experimental deprecated command setTimeDomain - parameters - # Time domain - enum timeDomain - # Use monotonically increasing abstract time (default). - timeTicks - # Use thread running time. - threadTicks + experimental command getInstallabilityErrors + returns + array of InstallabilityError installabilityErrors - # Retrieve current values of run-time metrics. - command getMetrics + # Deprecated because it's not guaranteed that the returned icon is in fact the one used for PWA installation. + experimental deprecated command getManifestIcons returns - # Current values for run-time metrics. - array of Metric metrics + optional binary primaryIcon - # Current values of the metrics. - event metrics + # Returns the unique (PWA) app id. + # Only returns values if the feature flag 'WebAppEnableManifestId' is enabled + experimental command getAppId + returns + # App id, either from manifest's id attribute or computed from start_url + optional string appId + # Recommendation for manifest's id attribute to match current id computed from start_url + optional string recommendedId + + experimental command getAdScriptAncestry parameters - # Current values of the metrics. - array of Metric metrics - # Timestamp title. - string title + FrameId frameId + returns + # The ancestry chain of ad script identifiers leading to this frame's + # creation, along with the root script's filterlist rule. The ancestry + # chain is ordered from the most immediate script (in the frame creation + # stack) to more distant ancestors (that created the immediately preceding + # script). Only sent if frame is labelled as an ad and ids are available. + optional AdScriptAncestry adScriptAncestry -# Reporting of performance timeline events, as specified in -# https://w3c.github.io/performance-timeline/#dom-performanceobserver. -experimental domain PerformanceTimeline - depends on DOM - depends on Network + # Returns present frame tree structure. + command getFrameTree + returns + # Present frame tree structure. + FrameTree frameTree - # See https://github.com/WICG/LargestContentfulPaint and largest_contentful_paint.idl - type LargestContentfulPaint extends object - properties - Network.TimeSinceEpoch renderTime - Network.TimeSinceEpoch loadTime - # The number of pixels being painted. - number size - # The id attribute of the element, if available. - optional string elementId - # The URL of the image (may be trimmed). - optional string url - optional DOM.BackendNodeId nodeId + # Returns metrics relating to the layouting of the page, such as viewport bounds/scale. + command getLayoutMetrics + returns + # Deprecated metrics relating to the layout viewport. Is in device pixels. Use `cssLayoutViewport` instead. + deprecated LayoutViewport layoutViewport + # Deprecated metrics relating to the visual viewport. Is in device pixels. Use `cssVisualViewport` instead. + deprecated VisualViewport visualViewport + # Deprecated size of scrollable area. Is in DP. Use `cssContentSize` instead. + deprecated DOM.Rect contentSize + # Metrics relating to the layout viewport in CSS pixels. + LayoutViewport cssLayoutViewport + # Metrics relating to the visual viewport in CSS pixels. + VisualViewport cssVisualViewport + # Size of scrollable area in CSS pixels. + DOM.Rect cssContentSize - type LayoutShiftAttribution extends object - properties - DOM.Rect previousRect - DOM.Rect currentRect - optional DOM.BackendNodeId nodeId + # Returns navigation history for the current page. + command getNavigationHistory + returns + # Index of the current navigation history entry. + integer currentIndex + # Array of navigation history entries. + array of NavigationEntry entries - # See https://wicg.github.io/layout-instability/#sec-layout-shift and layout_shift.idl - type LayoutShift extends object - properties - # Score increment produced by this event. - number value - boolean hadRecentInput - Network.TimeSinceEpoch lastInputTime - array of LayoutShiftAttribution sources + # Resets navigation history for the current page. + command resetNavigationHistory - type TimelineEvent extends object - properties - # Identifies the frame that this event is related to. Empty for non-frame targets. - Page.FrameId frameId - # The event type, as specified in https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype - # This determines which of the optional "details" fields is present. - string type - # Name may be empty depending on the type. - string name - # Time in seconds since Epoch, monotonically increasing within document lifetime. - Network.TimeSinceEpoch time - # Event duration, if applicable. - optional number duration - optional LargestContentfulPaint lcpDetails - optional LayoutShift layoutShiftDetails + # Returns content of the given resource. + experimental command getResourceContent + parameters + # Frame id to get resource for. + FrameId frameId + # URL of the resource to get content for. + string url + returns + # Resource content. + string content + # True, if content was served as base64. + boolean base64Encoded - # Previously buffered events would be reported before method returns. - # See also: timelineEventAdded - command enable + # Returns present frame / resource tree structure. + experimental command getResourceTree + returns + # Present frame / resource tree structure. + FrameResourceTree frameTree + + # Accepts or dismisses a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload). + command handleJavaScriptDialog parameters - # The types of event to report, as specified in - # https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype - # The specified filter overrides any previous filters, passing empty - # filter disables recording. - # Note that not all types exposed to the web platform are currently supported. - array of string eventTypes + # Whether to accept or dismiss the dialog. + boolean accept + # The text to enter into the dialog prompt before accepting. Used only if this is a prompt + # dialog. + optional string promptText - # Sent when a performance timeline event is added. See reportPerformanceTimeline method. - event timelineEventAdded + # Navigates current page to the given URL. + command navigate parameters - TimelineEvent event + # URL to navigate the page to. + string url + # Referrer URL. + optional string referrer + # Intended transition type. + optional TransitionType transitionType + # Frame id to navigate, if not specified navigates the top frame. + optional FrameId frameId + # Referrer-policy used for the navigation. + experimental optional ReferrerPolicy referrerPolicy + returns + # Frame id that has navigated (or failed to navigate) + FrameId frameId + # Loader identifier. This is omitted in case of same-document navigation, + # as the previously committed loaderId would not change. + optional Network.LoaderId loaderId + # User friendly error message, present if and only if navigation has failed. + optional string errorText + # Whether the navigation resulted in a download. + experimental optional boolean isDownload -# Security -domain Security - - # An internal certificate ID value. - type CertificateId extends integer - - # A description of mixed content (HTTP resources on HTTPS pages), as defined by - # https://www.w3.org/TR/mixed-content/#categories - type MixedContentType extends string - enum - blockable - optionally-blockable - none - - # The security level of a page or resource. - type SecurityState extends string - enum - unknown - neutral - insecure - secure - info - insecure-broken - - # Details about the security state of the page certificate. - experimental type CertificateSecurityState extends object - properties - # Protocol name (e.g. "TLS 1.2" or "QUIC"). - string protocol - # Key Exchange used by the connection, or the empty string if not applicable. - string keyExchange - # (EC)DH group used by the connection, if applicable. - optional string keyExchangeGroup - # Cipher name. - string cipher - # TLS MAC. Note that AEAD ciphers do not have separate MACs. - optional string mac - # Page certificate. - array of string certificate - # Certificate subject name. - string subjectName - # Name of the issuing CA. - string issuer - # Certificate valid from date. - Network.TimeSinceEpoch validFrom - # Certificate valid to (expiration) date - Network.TimeSinceEpoch validTo - # The highest priority network error code, if the certificate has an error. - optional string certificateNetworkError - # True if the certificate uses a weak signature algorithm. - boolean certificateHasWeakSignature - # True if the certificate has a SHA1 signature in the chain. - boolean certificateHasSha1Signature - # True if modern SSL - boolean modernSSL - # True if the connection is using an obsolete SSL protocol. - boolean obsoleteSslProtocol - # True if the connection is using an obsolete SSL key exchange. - boolean obsoleteSslKeyExchange - # True if the connection is using an obsolete SSL cipher. - boolean obsoleteSslCipher - # True if the connection is using an obsolete SSL signature. - boolean obsoleteSslSignature - - experimental type SafetyTipStatus extends string - enum - badReputation - lookalike - - experimental type SafetyTipInfo extends object - properties - # Describes whether the page triggers any safety tips or reputation warnings. Default is unknown. - SafetyTipStatus safetyTipStatus - # The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches. - optional string safeUrl - - # Security state information about the page. - experimental type VisibleSecurityState extends object - properties - # The security level of the page. - SecurityState securityState - # Security state details about the page certificate. - optional CertificateSecurityState certificateSecurityState - # The type of Safety Tip triggered on the page. Note that this field will be set even if the Safety Tip UI was not actually shown. - optional SafetyTipInfo safetyTipInfo - # Array of security state issues ids. - array of string securityStateIssueIds - - # An explanation of an factor contributing to the security state. - type SecurityStateExplanation extends object - properties - # Security state representing the severity of the factor being explained. - SecurityState securityState - # Title describing the type of factor. - string title - # Short phrase describing the type of factor. - string summary - # Full text explanation of the factor. - string description - # The type of mixed content described by the explanation. - MixedContentType mixedContentType - # Page certificate. - array of string certificate - # Recommendations to fix any issues. - optional array of string recommendations - - # Information about insecure content on the page. - deprecated type InsecureContentStatus extends object - properties - # Always false. - boolean ranMixedContent - # Always false. - boolean displayedMixedContent - # Always false. - boolean containedMixedForm - # Always false. - boolean ranContentWithCertErrors - # Always false. - boolean displayedContentWithCertErrors - # Always set to unknown. - SecurityState ranInsecureContentStyle - # Always set to unknown. - SecurityState displayedInsecureContentStyle - - # The action to take when a certificate error occurs. continue will continue processing the - # request and cancel will cancel the request. - type CertificateErrorAction extends string - enum - continue - cancel - - # Disables tracking security state changes. - command disable - - # Enables tracking security state changes. - command enable + # Navigates current page to the given history entry. + command navigateToHistoryEntry + parameters + # Unique id of the entry to navigate to. + integer entryId - # Enable/disable whether all certificate errors should be ignored. - command setIgnoreCertificateErrors + # Print page as PDF. + command printToPDF parameters - # If true, all certificate errors will be ignored. - boolean ignore + # Paper orientation. Defaults to false. + optional boolean landscape + # Display header and footer. Defaults to false. + optional boolean displayHeaderFooter + # Print background graphics. Defaults to false. + optional boolean printBackground + # Scale of the webpage rendering. Defaults to 1. + optional number scale + # Paper width in inches. Defaults to 8.5 inches. + optional number paperWidth + # Paper height in inches. Defaults to 11 inches. + optional number paperHeight + # Top margin in inches. Defaults to 1cm (~0.4 inches). + optional number marginTop + # Bottom margin in inches. Defaults to 1cm (~0.4 inches). + optional number marginBottom + # Left margin in inches. Defaults to 1cm (~0.4 inches). + optional number marginLeft + # Right margin in inches. Defaults to 1cm (~0.4 inches). + optional number marginRight + # Paper ranges to print, one based, e.g., '1-5, 8, 11-13'. Pages are + # printed in the document order, not in the order specified, and no + # more than once. + # Defaults to empty string, which implies the entire document is printed. + # The page numbers are quietly capped to actual page count of the + # document, and ranges beyond the end of the document are ignored. + # If this results in no pages to print, an error is reported. + # It is an error to specify a range with start greater than end. + optional string pageRanges + # HTML template for the print header. Should be valid HTML markup with following + # classes used to inject printing values into them: + # - `date`: formatted print date + # - `title`: document title + # - `url`: document location + # - `pageNumber`: current page number + # - `totalPages`: total pages in the document + # + # For example, `` would generate span containing the title. + optional string headerTemplate + # HTML template for the print footer. Should use the same format as the `headerTemplate`. + optional string footerTemplate + # Whether or not to prefer page size as defined by css. Defaults to false, + # in which case the content will be scaled to fit the paper size. + optional boolean preferCSSPageSize + # return as stream + experimental optional enum transferMode + ReturnAsBase64 + ReturnAsStream + # Whether or not to generate tagged (accessible) PDF. Defaults to embedder choice. + experimental optional boolean generateTaggedPDF + # Whether or not to embed the document outline into the PDF. + experimental optional boolean generateDocumentOutline + returns + # Base64-encoded pdf data. Empty if |returnAsStream| is specified. + binary data + # A handle of the stream that holds resulting PDF data. + experimental optional IO.StreamHandle stream - # Handles a certificate error that fired a certificateError event. - deprecated command handleCertificateError + # Reloads given page optionally ignoring the cache. + command reload parameters - # The ID of the event. - integer eventId - # The action to take on the certificate error. - CertificateErrorAction action + # If true, browser cache is ignored (as if the user pressed Shift+refresh). + optional boolean ignoreCache + # If set, the script will be injected into all frames of the inspected page after reload. + # Argument will be ignored if reloading dataURL origin. + optional string scriptToEvaluateOnLoad + # If set, an error will be thrown if the target page's main frame's + # loader id does not match the provided id. This prevents accidentally + # reloading an unintended target in case there's a racing navigation. + experimental optional Network.LoaderId loaderId - # Enable/disable overriding certificate errors. If enabled, all certificate error events need to - # be handled by the DevTools client and should be answered with `handleCertificateError` commands. - deprecated command setOverrideCertificateErrors + # Deprecated, please use removeScriptToEvaluateOnNewDocument instead. + experimental deprecated command removeScriptToEvaluateOnLoad parameters - # If true, certificate errors will be overridden. - boolean override + ScriptIdentifier identifier - # There is a certificate error. If overriding certificate errors is enabled, then it should be - # handled with the `handleCertificateError` command. Note: this event does not fire if the - # certificate error has been allowed internally. Only one client per target should override - # certificate errors at the same time. - deprecated event certificateError + # Removes given script from the list. + command removeScriptToEvaluateOnNewDocument parameters - # The ID of the event. - integer eventId - # The type of the error. - string errorType - # The url that was requested. - string requestURL + ScriptIdentifier identifier - # The security state of the page changed. - experimental event visibleSecurityStateChanged + # Acknowledges that a screencast frame has been received by the frontend. + experimental command screencastFrameAck parameters - # Security state information about the page. - VisibleSecurityState visibleSecurityState + # Frame number. + integer sessionId - # The security state of the page changed. No longer being sent. - deprecated event securityStateChanged + # Searches for given string in resource content. + experimental command searchInResource parameters - # Security state. - SecurityState securityState - # True if the page was loaded over cryptographic transport such as HTTPS. - deprecated boolean schemeIsCryptographic - # Previously a list of explanations for the security state. Now always - # empty. - deprecated array of SecurityStateExplanation explanations - # Information about insecure content on the page. - deprecated InsecureContentStatus insecureContentStatus - # Overrides user-visible description of the state. Always omitted. - deprecated optional string summary - -experimental domain ServiceWorker - depends on Target - - type RegistrationID extends string - - # ServiceWorker registration. - type ServiceWorkerRegistration extends object - properties - RegistrationID registrationId - string scopeURL - boolean isDeleted - - type ServiceWorkerVersionRunningStatus extends string - enum - stopped - starting - running - stopping - - type ServiceWorkerVersionStatus extends string - enum - new - installing - installed - activating - activated - redundant - - # ServiceWorker version. - type ServiceWorkerVersion extends object - properties - string versionId - RegistrationID registrationId - string scriptURL - ServiceWorkerVersionRunningStatus runningStatus - ServiceWorkerVersionStatus status - # The Last-Modified header value of the main script. - optional number scriptLastModified - # The time at which the response headers of the main script were received from the server. - # For cached script it is the last time the cache entry was validated. - optional number scriptResponseTime - optional array of Target.TargetID controlledClients - optional Target.TargetID targetId - optional string routerRules - - # ServiceWorker error message. - type ServiceWorkerErrorMessage extends object - properties - string errorMessage - RegistrationID registrationId - string versionId - string sourceURL - integer lineNumber - integer columnNumber + # Frame id for resource to search in. + FrameId frameId + # URL of the resource to search in. + string url + # String to search for. + string query + # If true, search is case sensitive. + optional boolean caseSensitive + # If true, treats string parameter as regex. + optional boolean isRegex + returns + # List of search matches. + array of Debugger.SearchMatch result - command deliverPushMessage + # Enable Chrome's experimental ad filter on all sites. + experimental command setAdBlockingEnabled parameters - string origin - RegistrationID registrationId - string data - - command disable + # Whether to block ads. + boolean enabled - command dispatchSyncEvent + # Enable page Content Security Policy by-passing. + command setBypassCSP parameters - string origin - RegistrationID registrationId - string tag - boolean lastChance + # Whether to bypass page CSP. + boolean enabled - command dispatchPeriodicSyncEvent + # Get Permissions Policy state on given frame. + experimental command getPermissionsPolicyState parameters - string origin - RegistrationID registrationId - string tag + FrameId frameId + returns + array of PermissionsPolicyFeatureState states - command enable + # Get Origin Trials on given frame. + experimental command getOriginTrials + parameters + FrameId frameId + returns + array of OriginTrial originTrials - command setForceUpdateOnPageLoad + # Overrides the values of device screen dimensions (window.screen.width, window.screen.height, + # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media + # query results). + experimental deprecated command setDeviceMetricsOverride + # Use 'Emulation.setDeviceMetricsOverride' instead + redirect Emulation parameters - boolean forceUpdateOnPageLoad + # Overriding width value in pixels (minimum 0, maximum 10000000). 0 disables the override. + integer width + # Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override. + integer height + # Overriding device scale factor value. 0 disables the override. + number deviceScaleFactor + # Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text + # autosizing and more. + boolean mobile + # Scale to apply to resulting view image. + optional number scale + # Overriding screen width value in pixels (minimum 0, maximum 10000000). + optional integer screenWidth + # Overriding screen height value in pixels (minimum 0, maximum 10000000). + optional integer screenHeight + # Overriding view X position on screen in pixels (minimum 0, maximum 10000000). + optional integer positionX + # Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). + optional integer positionY + # Do not set visible view size, rely upon explicit setVisibleSize call. + optional boolean dontSetVisibleSize + # Screen orientation override. + optional Emulation.ScreenOrientation screenOrientation + # The viewport dimensions and scale. If not set, the override is cleared. + optional Viewport viewport - command skipWaiting + # Overrides the Device Orientation. + experimental deprecated command setDeviceOrientationOverride + # Use 'DeviceOrientation.setDeviceOrientationOverride' instead + redirect DeviceOrientation parameters - string scopeURL + # Mock alpha + number alpha + # Mock beta + number beta + # Mock gamma + number gamma - command startWorker + # Set generic font families. + experimental command setFontFamilies parameters - string scopeURL + # Specifies font families to set. If a font family is not specified, it won't be changed. + FontFamilies fontFamilies + # Specifies font families to set for individual scripts. + optional array of ScriptFontFamilies forScripts - command stopAllWorkers + # Set default font sizes. + experimental command setFontSizes + parameters + # Specifies font sizes to set. If a font size is not specified, it won't be changed. + FontSizes fontSizes - command stopWorker + # Sets given markup as the document's HTML. + command setDocumentContent parameters - string versionId + # Frame id to set HTML for. + FrameId frameId + # HTML content to set. + string html - command unregister + # Set the behavior when downloading a file. + experimental deprecated command setDownloadBehavior parameters - string scopeURL + # Whether to allow all or deny all download requests, or use default Chrome behavior if + # available (otherwise deny). + enum behavior + deny + allow + default + # The default path to save downloaded files to. This is required if behavior is set to 'allow' + optional string downloadPath - command updateRegistration + # Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position + # unavailable. + deprecated command setGeolocationOverride + # Use 'Emulation.setGeolocationOverride' instead + redirect Emulation parameters - string scopeURL + # Mock latitude + optional number latitude + # Mock longitude + optional number longitude + # Mock accuracy + optional number accuracy - event workerErrorReported + # Controls whether page will emit lifecycle events. + command setLifecycleEventsEnabled parameters - ServiceWorkerErrorMessage errorMessage + # If true, starts emitting lifecycle events. + boolean enabled - event workerRegistrationUpdated + # Toggles mouse event-based touch event emulation. + experimental deprecated command setTouchEmulationEnabled + # Use 'Emulation.setTouchEmulationEnabled' instead + redirect Emulation parameters - array of ServiceWorkerRegistration registrations + # Whether the touch event emulation should be enabled. + boolean enabled + # Touch/gesture events configuration. Default: current platform. + optional enum configuration + mobile + desktop - event workerVersionUpdated + # Starts sending each frame using the `screencastFrame` event. + experimental command startScreencast parameters - array of ServiceWorkerVersion versions + # Image compression format. + optional enum format + jpeg + png + # Compression quality from range [0..100]. + optional integer quality + # Maximum screenshot width. + optional integer maxWidth + # Maximum screenshot height. + optional integer maxHeight + # Send every n-th frame. + optional integer everyNthFrame -experimental domain Storage - depends on Browser - depends on Network + # Force the page stop all navigations and pending resource fetches. + command stopLoading - type SerializedStorageKey extends string + # Crashes renderer on the IO thread, generates minidumps. + experimental command crash - # Enum of possible storage types. - type StorageType extends string - enum - cookies - file_systems - indexeddb - local_storage - shader_cache - websql - service_workers - cache_storage - interest_groups - shared_storage - storage_buckets - all - other + # Tries to close page, running its beforeunload hooks, if any. + command close - # Usage for a storage type. - type UsageForType extends object - properties - # Name of storage type. - StorageType storageType - # Storage usage (bytes). - number usage + # Tries to update the web lifecycle state of the page. + # It will transition the page to the given state according to: + # https://github.com/WICG/web-lifecycle/ + experimental command setWebLifecycleState + parameters + # Target lifecycle state + enum state + frozen + active - # Pair of issuer origin and number of available (signed, but not used) Trust - # Tokens from that issuer. - experimental type TrustTokens extends object - properties - string issuerOrigin - number count + # Stops sending each frame in the `screencastFrame`. + experimental command stopScreencast - # Protected audience interest group auction identifier. - type InterestGroupAuctionId extends string + # Requests backend to produce compilation cache for the specified scripts. + # `scripts` are appended to the list of scripts for which the cache + # would be produced. The list may be reset during page navigation. + # When script with a matching URL is encountered, the cache is optionally + # produced upon backend discretion, based on internal heuristics. + # See also: `Page.compilationCacheProduced`. + experimental command produceCompilationCache + parameters + array of CompilationCacheParams scripts - # Enum of interest group access types. - type InterestGroupAccessType extends string - enum - join - leave - update - loaded - bid - win - additionalBid - additionalBidWin - topLevelBid - topLevelAdditionalBid - clear + # Seeds compilation cache for given url. Compilation cache does not survive + # cross-process navigation. + experimental command addCompilationCache + parameters + string url + # Base64-encoded data + binary data - # Enum of auction events. - type InterestGroupAuctionEventType extends string - enum - started - configResolved + # Clears seeded compilation cache. + experimental command clearCompilationCache - # Enum of network fetches auctions can do. - type InterestGroupAuctionFetchType extends string - enum - bidderJs - bidderWasm - sellerJs - bidderTrustedSignals - sellerTrustedSignals + # Sets the Secure Payment Confirmation transaction mode. + # https://w3c.github.io/secure-payment-confirmation/#sctn-automation-set-spc-transaction-mode + experimental command setSPCTransactionMode + parameters + enum mode + none + autoAccept + autoChooseToAuthAnotherWay + autoReject + autoOptOut - # Enum of shared storage access scopes. - type SharedStorageAccessScope extends string - enum - window - sharedStorageWorklet - protectedAudienceWorklet - header + # Extensions for Custom Handlers API: + # https://html.spec.whatwg.org/multipage/system-state.html#rph-automation + experimental command setRPHRegistrationMode + parameters + enum mode + none + autoAccept + autoReject - # Enum of shared storage access methods. - type SharedStorageAccessMethod extends string - enum - addModule - createWorklet - selectURL - run - batchUpdate - set - append - delete - clear - get - keys - values - entries - length - remainingBudget + # Generates a report for testing. + experimental command generateTestReport + parameters + # Message to be displayed in the report. + string message + # Specifies the endpoint group to deliver the report to. + optional string group - # Struct for a single key-value pair in an origin's shared storage. - type SharedStorageEntry extends object - properties - string key - string value + # Pauses page execution. Can be resumed using generic Runtime.runIfWaitingForDebugger. + experimental command waitForDebugger - # Details for an origin's shared storage. - type SharedStorageMetadata extends object - properties - # Time when the origin's shared storage was last created. - Network.TimeSinceEpoch creationTime - # Number of key-value pairs stored in origin's shared storage. - integer length - # Current amount of bits of entropy remaining in the navigation budget. - number remainingBudget - # Total number of bytes stored as key-value pairs in origin's shared - # storage. - integer bytesUsed + # Intercept file chooser requests and transfer control to protocol clients. + # When file chooser interception is enabled, native file chooser dialog is not shown. + # Instead, a protocol event `Page.fileChooserOpened` is emitted. + command setInterceptFileChooserDialog + parameters + boolean enabled + # If true, cancels the dialog by emitting relevant events (if any) + # in addition to not showing it if the interception is enabled + # (default: false). + experimental optional boolean cancel - # Represents a dictionary object passed in as privateAggregationConfig to - # run or selectURL. - type SharedStoragePrivateAggregationConfig extends object - properties - # The chosen aggregation service deployment. - optional string aggregationCoordinatorOrigin - # The context ID provided. - optional string contextId - # Configures the maximum size allowed for filtering IDs. - integer filteringIdMaxBytes - # The limit on the number of contributions in the final report. - optional integer maxContributions + event domContentEventFired + parameters + Network.MonotonicTime timestamp - # Pair of reporting metadata details for a candidate URL for `selectURL()`. - type SharedStorageReportingMetadata extends object - properties - string eventType - string reportingUrl + # Emitted only when `page.interceptFileChooser` is enabled. + event fileChooserOpened + parameters + # Id of the frame containing input node. + experimental FrameId frameId + # Input mode. + enum mode + selectSingle + selectMultiple + # Input node id. Only present for file choosers opened via an `` element. + experimental optional DOM.BackendNodeId backendNodeId - # Bundles a candidate URL with its reporting metadata. - type SharedStorageUrlWithMetadata extends object - properties - # Spec of candidate URL. - string url - # Any associated reporting metadata. - array of SharedStorageReportingMetadata reportingMetadata + # Fired when frame has been attached to its parent. + event frameAttached + parameters + # Id of the frame that has been attached. + FrameId frameId + # Parent frame identifier. + FrameId parentFrameId + # JavaScript stack trace of when frame was attached, only set if frame initiated from script. + optional Runtime.StackTrace stack - # Bundles the parameters for shared storage access events whose - # presence/absence can vary according to SharedStorageAccessType. - type SharedStorageAccessParams extends object - properties - # Spec of the module script URL. - # Present only for SharedStorageAccessMethods: addModule and - # createWorklet. - optional string scriptSourceUrl - # String denoting "context-origin", "script-origin", or a custom - # origin to be used as the worklet's data origin. - # Present only for SharedStorageAccessMethod: createWorklet. - optional string dataOrigin - # Name of the registered operation to be run. - # Present only for SharedStorageAccessMethods: run and selectURL. - optional string operationName - # ID of the operation call. - # Present only for SharedStorageAccessMethods: run and selectURL. - optional string operationId - # Whether or not to keep the worket alive for future run or selectURL - # calls. - # Present only for SharedStorageAccessMethods: run and selectURL. - optional boolean keepAlive - # Configures the private aggregation options. - # Present only for SharedStorageAccessMethods: run and selectURL. - optional SharedStoragePrivateAggregationConfig privateAggregationConfig - # The operation's serialized data in bytes (converted to a string). - # Present only for SharedStorageAccessMethods: run and selectURL. - # TODO(crbug.com/401011862): Consider updating this parameter to binary. - optional string serializedData - # Array of candidate URLs' specs, along with any associated metadata. - # Present only for SharedStorageAccessMethod: selectURL. - optional array of SharedStorageUrlWithMetadata urlsWithMetadata - # Spec of the URN:UUID generated for a selectURL call. - # Present only for SharedStorageAccessMethod: selectURL. - optional string urnUuid - # Key for a specific entry in an origin's shared storage. - # Present only for SharedStorageAccessMethods: set, append, delete, and - # get. - optional string key - # Value for a specific entry in an origin's shared storage. - # Present only for SharedStorageAccessMethods: set and append. - optional string value - # Whether or not to set an entry for a key if that key is already present. - # Present only for SharedStorageAccessMethod: set. - optional boolean ignoreIfPresent - # A number denoting the (0-based) order of the worklet's - # creation relative to all other shared storage worklets created by - # documents using the current storage partition. - # Present only for SharedStorageAccessMethods: addModule, createWorklet. - optional integer workletOrdinal - # Hex representation of the DevTools token used as the TargetID for the - # associated shared storage worklet. - # Present only for SharedStorageAccessMethods: addModule, createWorklet, - # run, selectURL, and any other SharedStorageAccessMethod when the - # SharedStorageAccessScope is sharedStorageWorklet. - optional Target.TargetID workletTargetId - # Name of the lock to be acquired, if present. - # Optionally present only for SharedStorageAccessMethods: batchUpdate, - # set, append, delete, and clear. - optional string withLock - # If the method has been called as part of a batchUpdate, then this - # number identifies the batch to which it belongs. - # Optionally present only for SharedStorageAccessMethods: - # batchUpdate (required), set, append, delete, and clear. - optional string batchUpdateId - # Number of modifier methods sent in batch. - # Present only for SharedStorageAccessMethod: batchUpdate. - optional integer batchSize + # Fired when frame no longer has a scheduled navigation. + deprecated event frameClearedScheduledNavigation + parameters + # Id of the frame that has cleared its scheduled navigation. + FrameId frameId - type StorageBucketsDurability extends string + # Fired when frame has been detached from its parent. + event frameDetached + parameters + # Id of the frame that has been detached. + FrameId frameId + experimental enum reason + # The frame is removed from the DOM. + remove + # The frame is being swapped out in favor of an out-of-process iframe. + # A new frame target will be created (see Target.attachedToTarget). + swap + + # Fired before frame subtree is detached. Emitted before any frame of the + # subtree is actually detached. + experimental event frameSubtreeWillBeDetached + parameters + # Id of the frame that is the root of the subtree that will be detached. + FrameId frameId + + # The type of a frameNavigated event. + experimental type NavigationType extends string enum - relaxed - strict + Navigation + BackForwardCacheRestore + + # Fired once navigation of the frame has completed. Frame is now associated with the new loader. + event frameNavigated + parameters + # Frame object. + Frame frame + experimental NavigationType type + + # Fired when opening document to write to. + experimental event documentOpened + parameters + # Frame object. + Frame frame + + experimental event frameResized + + # 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 event frameStartedNavigating + parameters + # ID of the frame that is being navigated. + FrameId frameId + # The URL the navigation started with. The final URL can be different. + string url + # 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. + Network.LoaderId loaderId + enum navigationType + reload + reloadBypassingCache + restore + restoreWithPost + historySameDocument + historyDifferentDocument + sameDocument + differentDocument + + # Fired when a renderer-initiated navigation is requested. + # Navigation may still be cancelled after the event is issued. + experimental event frameRequestedNavigation + parameters + # Id of the frame that is being navigated. + FrameId frameId + # The reason for the navigation. + ClientNavigationReason reason + # The destination URL for the requested navigation. + string url + # The disposition for the navigation. + ClientNavigationDisposition disposition + + # Fired when frame schedules a potential navigation. + deprecated event frameScheduledNavigation + parameters + # Id of the frame that has scheduled a navigation. + FrameId frameId + # Delay (in seconds) until the navigation is scheduled to begin. The navigation is not + # guaranteed to start. + number delay + # The reason for the navigation. + ClientNavigationReason reason + # The destination URL for the scheduled navigation. + string url + + # Fired when frame has started loading. + experimental event frameStartedLoading + parameters + # Id of the frame that has started loading. + FrameId frameId + + # Fired when frame has stopped loading. + experimental event frameStoppedLoading + parameters + # Id of the frame that has stopped loading. + FrameId frameId + + # Fired when page is about to start a download. + # Deprecated. Use Browser.downloadWillBegin instead. + experimental deprecated event downloadWillBegin + parameters + # Id of the frame that caused download to begin. + FrameId frameId + # Global unique identifier of the download. + string guid + # URL of the resource being downloaded. + string url + # Suggested file name of the resource (the actual name of the file saved on disk may differ). + string suggestedFilename + + # Fired when download makes progress. Last call has |done| == true. + # Deprecated. Use Browser.downloadProgress instead. + experimental deprecated event downloadProgress + parameters + # Global unique identifier of the download. + string guid + # Total expected bytes to download. + number totalBytes + # Total bytes received. + number receivedBytes + # Download status. + enum state + inProgress + completed + canceled + + # Fired when interstitial page was hidden + event interstitialHidden + + # Fired when interstitial page was shown + event interstitialShown + + # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been + # closed. + event javascriptDialogClosed + parameters + # Frame id. + experimental FrameId frameId + # Whether dialog was confirmed. + boolean result + # User input in case of prompt. + string userInput + + # Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to + # open. + event javascriptDialogOpening + parameters + # Frame url. + string url + # Frame id. + experimental FrameId frameId + # Message that will be displayed by the dialog. + string message + # Dialog type. + DialogType type + # True iff browser is capable showing or acting on the given dialog. When browser has no + # dialog handler for given target, calling alert while Page domain is engaged will stall + # the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog. + boolean hasBrowserHandler + # Default dialog prompt. + optional string defaultPrompt + + # Fired for lifecycle events (navigation, load, paint, etc) in the current + # target (including local frames). + event lifecycleEvent + parameters + # Id of the frame. + FrameId frameId + # Loader identifier. Empty string if the request is fetched from worker. + Network.LoaderId loaderId + string name + Network.MonotonicTime timestamp + + # List of not restored reasons for back-forward cache. + experimental type BackForwardCacheNotRestoredReason extends string + enum + NotPrimaryMainFrame + BackForwardCacheDisabled + RelatedActiveContentsExist + HTTPStatusNotOK + SchemeNotHTTPOrHTTPS + Loading + WasGrantedMediaAccess + DisableForRenderFrameHostCalled + DomainNotAllowed + HTTPMethodNotGET + SubframeIsNavigating + Timeout + CacheLimit + JavaScriptExecution + RendererProcessKilled + RendererProcessCrashed + SchedulerTrackedFeatureUsed + ConflictingBrowsingInstance + CacheFlushed + ServiceWorkerVersionActivation + SessionRestored + ServiceWorkerPostMessage + EnteredBackForwardCacheBeforeServiceWorkerHostAdded + RenderFrameHostReused_SameSite + RenderFrameHostReused_CrossSite + ServiceWorkerClaim + IgnoreEventAndEvict + HaveInnerContents + TimeoutPuttingInCache + BackForwardCacheDisabledByLowMemory + BackForwardCacheDisabledByCommandLine + NetworkRequestDatapipeDrainedAsBytesConsumer + NetworkRequestRedirected + NetworkRequestTimeout + NetworkExceedsBufferLimit + NavigationCancelledWhileRestoring + NotMostRecentNavigationEntry + BackForwardCacheDisabledForPrerender + UserAgentOverrideDiffers + ForegroundCacheLimit + BrowsingInstanceNotSwapped + BackForwardCacheDisabledForDelegate + UnloadHandlerExistsInMainFrame + UnloadHandlerExistsInSubFrame + ServiceWorkerUnregistration + CacheControlNoStore + CacheControlNoStoreCookieModified + CacheControlNoStoreHTTPOnlyCookieModified + NoResponseHead + Unknown + ActivationNavigationsDisallowedForBug1234857 + ErrorDocument + FencedFramesEmbedder + CookieDisabled + HTTPAuthRequired + CookieFlushed + BroadcastChannelOnMessage + WebViewSettingsChanged + WebViewJavaScriptObjectChanged + WebViewMessageListenerInjected + WebViewSafeBrowsingAllowlistChanged + WebViewDocumentStartJavascriptChanged + #Blocklisted features + WebSocket + WebTransport + WebRTC + MainResourceHasCacheControlNoStore + MainResourceHasCacheControlNoCache + SubresourceHasCacheControlNoStore + SubresourceHasCacheControlNoCache + ContainsPlugins + DocumentLoaded + OutstandingNetworkRequestOthers + RequestedMIDIPermission + RequestedAudioCapturePermission + RequestedVideoCapturePermission + RequestedBackForwardCacheBlockedSensors + RequestedBackgroundWorkPermission + BroadcastChannel + WebXR + SharedWorker + SharedWorkerMessage + SharedWorkerWithNoActiveClient + WebLocks + WebHID + WebBluetooth + WebShare + RequestedStorageAccessGrant + WebNfc + OutstandingNetworkRequestFetch + OutstandingNetworkRequestXHR + AppBanner + Printing + WebDatabase + PictureInPicture + SpeechRecognizer + IdleManager + PaymentManager + SpeechSynthesis + KeyboardLock + WebOTPService + OutstandingNetworkRequestDirectSocket + InjectedJavascript + InjectedStyleSheet + KeepaliveRequest + IndexedDBEvent + Dummy + JsNetworkRequestReceivedCacheControlNoStoreResource + WebRTCUsedWithCCNS + WebTransportUsedWithCCNS + WebSocketUsedWithCCNS + SmartCard + LiveMediaStreamTrack + UnloadHandler + ParserAborted + # Disabled for RenderFrameHost reasons + # See content/browser/renderer_host/back_forward_cache_disable.h for explanations. + ContentSecurityHandler + ContentWebAuthenticationAPI + ContentFileChooser + ContentSerial + ContentFileSystemAccess + ContentMediaDevicesDispatcherHost + ContentWebBluetooth + ContentWebUSB + ContentMediaSessionService + ContentScreenReader + ContentDiscarded + + # See components/back_forward_cache/back_forward_cache_disable.h for explanations. + EmbedderPopupBlockerTabHelper + EmbedderSafeBrowsingTriggeredPopupBlocker + EmbedderSafeBrowsingThreatDetails + EmbedderAppBannerManager + EmbedderDomDistillerViewerSource + EmbedderDomDistillerSelfDeletingRequestDelegate + EmbedderOomInterventionTabHelper + EmbedderOfflinePage + EmbedderChromePasswordManagerClientBindCredentialManager + EmbedderPermissionRequestManager + EmbedderModalDialog + EmbedderExtensions + EmbedderExtensionMessaging + EmbedderExtensionMessagingForOpenPort + EmbedderExtensionSentMessageToCachedFrame + RequestedByWebViewClient + PostMessageByWebViewClient + CacheControlNoStoreDeviceBoundSessionTerminated + CacheLimitPrunedOnModerateMemoryPressure + CacheLimitPrunedOnCriticalMemoryPressure + + # Types of not restored reasons for back-forward cache. + experimental type BackForwardCacheNotRestoredReasonType extends string + enum + SupportPending + PageSupportNeeded + Circumstantial + + experimental type BackForwardCacheBlockingDetails extends object + properties + # Url of the file where blockage happened. Optional because of tests. + optional string url + # Function name where blockage happened. Optional because of anonymous functions and tests. + optional string function + # Line number in the script (0-based). + integer lineNumber + # Column number in the script (0-based). + integer columnNumber - type StorageBucket extends object + experimental type BackForwardCacheNotRestoredExplanation extends object properties - SerializedStorageKey storageKey - # If not specified, it is the default bucket of the storageKey. - optional string name + # Type of the reason + BackForwardCacheNotRestoredReasonType type + # Not restored reason + BackForwardCacheNotRestoredReason reason + # Context associated with the reason. The meaning of this context is + # dependent on the reason: + # - EmbedderExtensionSentMessageToCachedFrame: the extension ID. + # + optional string context + optional array of BackForwardCacheBlockingDetails details - type StorageBucketInfo extends object + experimental type BackForwardCacheNotRestoredExplanationTree extends object properties - StorageBucket bucket - string id - Network.TimeSinceEpoch expiration - # Storage quota (bytes). - number quota - boolean persistent - StorageBucketsDurability durability + # URL of each frame + string url + # Not restored reasons of each frame + array of BackForwardCacheNotRestoredExplanation explanations + # Array of children frame + array of BackForwardCacheNotRestoredExplanationTree children - # Returns a storage key given a frame id. - command getStorageKeyForFrame + # Fired for failed bfcache history navigations if BackForwardCache feature is enabled. Do + # not assume any ordering with the Page.frameNavigated event. This event is fired only for + # main-frame history navigation where the document changes (non-same-document navigations), + # when bfcache navigation fails. + experimental event backForwardCacheNotUsed parameters - Page.FrameId frameId - returns - SerializedStorageKey storageKey + # The loader id for the associated navigation. + Network.LoaderId loaderId + # The frame id of the associated frame. + FrameId frameId + # Array of reasons why the page could not be cached. This must not be empty. + array of BackForwardCacheNotRestoredExplanation notRestoredExplanations + # Tree structure of reasons why the page could not be cached for each frame. + optional BackForwardCacheNotRestoredExplanationTree notRestoredExplanationsTree - # Clears storage for origin. - command clearDataForOrigin + event loadEventFired parameters - # Security origin. - string origin - # Comma separated list of StorageType to clear. - string storageTypes + Network.MonotonicTime timestamp - # Clears storage for storage key. - command clearDataForStorageKey + # Fired when same-document navigation happens, e.g. due to history API usage or anchor navigation. + experimental event navigatedWithinDocument parameters - # Storage key. - string storageKey - # Comma separated list of StorageType to clear. - string storageTypes + # Id of the frame. + FrameId frameId + # Frame's new url. + string url + # Navigation type + enum navigationType + # Navigation due to fragment navigation. + fragment + # Navigation due to history API usage. + historyApi + # Navigation due to other reasons. + other - # Returns all browser cookies. - command getCookies + + # Compressed image data requested by the `startScreencast`. + experimental event screencastFrame parameters - # Browser context to use when called on the browser endpoint. - optional Browser.BrowserContextID browserContextId - returns - # Array of cookie objects. - array of Network.Cookie cookies + # Base64-encoded compressed image. + binary data + # Screencast frame metadata. + ScreencastFrameMetadata metadata + # Frame number. + integer sessionId - # Sets given cookies. - command setCookies + # Fired when the page with currently enabled screencast was shown or hidden `. + experimental event screencastVisibilityChanged parameters - # Cookies to be set. - array of Network.CookieParam cookies - # Browser context to use when called on the browser endpoint. - optional Browser.BrowserContextID browserContextId + # True if the page is visible. + boolean visible - # Clears cookies. - command clearCookies + # Fired when a new window is going to be opened, via window.open(), link click, form submission, + # etc. + event windowOpen parameters - # Browser context to use when called on the browser endpoint. - optional Browser.BrowserContextID browserContextId + # The URL for the new window. + string url + # Window name. + string windowName + # An array of enabled window features. + array of string windowFeatures + # Whether or not it was triggered by user gesture. + boolean userGesture - # Returns usage and quota in bytes. - command getUsageAndQuota + # Issued for every compilation cache generated. + experimental event compilationCacheProduced parameters - # Security origin. - string origin + string url + # Base64-encoded data + binary data + + # Enable/disable prerendering manually. + # + # This command is a short-term solution for https://crbug.com/1440085. + # See https://docs.google.com/document/d/12HVmFxYj5Jc-eJr5OmWsa2bqTJsbgGLKI6ZIyx0_wpA + # for more details. + # + # TODO(https://crbug.com/1440085): Remove this once Puppeteer supports tab targets. + experimental command setPrerenderingAllowed + parameters + boolean isAllowed + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +domain Performance + + # Run-time execution metric. + type Metric extends object + properties + # Metric name. + string name + # Metric value. + number value + + # Disable collecting and reporting metrics. + command disable + + # Enable collecting and reporting metrics. + command enable + parameters + # Time domain to use for collecting and reporting duration metrics. + optional enum timeDomain + # Use monotonically increasing abstract time (default). + timeTicks + # Use thread running time. + threadTicks + + # Sets time domain to use for collecting and reporting duration metrics. + # Note that this must be called before enabling metrics collection. Calling + # this method while metrics collection is enabled returns an error. + experimental deprecated command setTimeDomain + parameters + # Time domain + enum timeDomain + # Use monotonically increasing abstract time (default). + timeTicks + # Use thread running time. + threadTicks + + # Retrieve current values of run-time metrics. + command getMetrics returns - # Storage usage (bytes). - number usage - # Storage quota (bytes). - number quota - # Whether or not the origin has an active storage quota override - boolean overrideActive - # Storage usage per type (bytes). - array of UsageForType usageBreakdown + # Current values for run-time metrics. + array of Metric metrics + + # Current values of the metrics. + event metrics + parameters + # Current values of the metrics. + array of Metric metrics + # Timestamp title. + string title + +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +# Reporting of performance timeline events, as specified in +# https://w3c.github.io/performance-timeline/#dom-performanceobserver. +experimental domain PerformanceTimeline + depends on DOM + depends on Network + + # See https://github.com/WICG/LargestContentfulPaint and largest_contentful_paint.idl + type LargestContentfulPaint extends object + properties + Network.TimeSinceEpoch renderTime + Network.TimeSinceEpoch loadTime + # The number of pixels being painted. + number size + # The id attribute of the element, if available. + optional string elementId + # The URL of the image (may be trimmed). + optional string url + optional DOM.BackendNodeId nodeId + + type LayoutShiftAttribution extends object + properties + DOM.Rect previousRect + DOM.Rect currentRect + optional DOM.BackendNodeId nodeId + + # See https://wicg.github.io/layout-instability/#sec-layout-shift and layout_shift.idl + type LayoutShift extends object + properties + # Score increment produced by this event. + number value + boolean hadRecentInput + Network.TimeSinceEpoch lastInputTime + array of LayoutShiftAttribution sources + + type TimelineEvent extends object + properties + # Identifies the frame that this event is related to. Empty for non-frame targets. + Page.FrameId frameId + # The event type, as specified in https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype + # This determines which of the optional "details" fields is present. + string type + # Name may be empty depending on the type. + string name + # Time in seconds since Epoch, monotonically increasing within document lifetime. + Network.TimeSinceEpoch time + # Event duration, if applicable. + optional number duration + optional LargestContentfulPaint lcpDetails + optional LayoutShift layoutShiftDetails - # Override quota for the specified origin - experimental command overrideQuotaForOrigin + # Previously buffered events would be reported before method returns. + # See also: timelineEventAdded + command enable parameters - # Security origin. - string origin - # The quota size (in bytes) to override the original quota with. - # If this is called multiple times, the overridden quota will be equal to - # the quotaSize provided in the final call. If this is called without - # specifying a quotaSize, the quota will be reset to the default value for - # the specified origin. If this is called multiple times with different - # origins, the override will be maintained for each origin until it is - # disabled (called without a quotaSize). - optional number quotaSize + # The types of event to report, as specified in + # https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype + # The specified filter overrides any previous filters, passing empty + # filter disables recording. + # Note that not all types exposed to the web platform are currently supported. + array of string eventTypes - # Registers origin to be notified when an update occurs to its cache storage list. - command trackCacheStorageForOrigin + # Sent when a performance timeline event is added. See reportPerformanceTimeline method. + event timelineEventAdded parameters - # Security origin. - string origin + TimelineEvent event - # Registers storage key to be notified when an update occurs to its cache storage list. - command trackCacheStorageForStorageKey - parameters - # Storage key. - string storageKey +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Registers origin to be notified when an update occurs to its IndexedDB. - command trackIndexedDBForOrigin - parameters - # Security origin. - string origin +experimental domain Preload + # Unique id + type RuleSetId extends string - # Registers storage key to be notified when an update occurs to its IndexedDB. - command trackIndexedDBForStorageKey - parameters - # Storage key. - string storageKey + # Corresponds to SpeculationRuleSet + type RuleSet extends object + properties + RuleSetId id + # Identifies a document which the rule set is associated with. + Network.LoaderId loaderId + # Source text of JSON representing the rule set. If it comes from + # `script` tag, it is the textContent of the node. Note that it is + # a JSON for valid case. + # + # See also: + # - https://wicg.github.io/nav-speculation/speculation-rules.html + # - https://github.com/WICG/nav-speculation/blob/main/triggers.md + string sourceText + # A speculation rule set is either added through an inline + # `script` tag or through an external resource via the + # 'Speculation-Rules' HTTP header. For the first case, we include + # the BackendNodeId of the relevant `script` tag. For the second + # case, we include the external URL where the rule set was loaded + # from, and also RequestId if Network domain is enabled. + # + # See also: + # - https://wicg.github.io/nav-speculation/speculation-rules.html#speculation-rules-script + # - https://wicg.github.io/nav-speculation/speculation-rules.html#speculation-rules-header + optional DOM.BackendNodeId backendNodeId + optional string url + optional Network.RequestId requestId + # Error information + # `errorMessage` is null iff `errorType` is null. + optional RuleSetErrorType errorType + # TODO(https://crbug.com/1425354): Replace this property with structured error. + deprecated optional string errorMessage + # For more details, see: + # https://github.com/WICG/nav-speculation/blob/main/speculation-rules-tags.md + optional string tag - # Unregisters origin from receiving notifications for cache storage. - command untrackCacheStorageForOrigin - parameters - # Security origin. - string origin + type RuleSetErrorType extends string + enum + SourceIsNotJsonObject + InvalidRulesSkipped + InvalidRulesetLevelTag - # Unregisters storage key from receiving notifications for cache storage. - command untrackCacheStorageForStorageKey - parameters - # Storage key. - string storageKey + # The type of preloading attempted. It corresponds to + # mojom::SpeculationAction (although PrefetchWithSubresources is omitted as it + # isn't being used by clients). + type SpeculationAction extends string + enum + Prefetch + Prerender + PrerenderUntilScript - # Unregisters origin from receiving notifications for IndexedDB. - command untrackIndexedDBForOrigin - parameters - # Security origin. - string origin + # Corresponds to mojom::SpeculationTargetHint. + # See https://github.com/WICG/nav-speculation/blob/main/triggers.md#window-name-targeting-hints + type SpeculationTargetHint extends string + enum + Blank + Self - # Unregisters storage key from receiving notifications for IndexedDB. - command untrackIndexedDBForStorageKey - parameters - # Storage key. - string storageKey + # A key that identifies a preloading attempt. + # + # The url used is the url specified by the trigger (i.e. the initial URL), and + # not the final url that is navigated to. For example, prerendering allows + # same-origin main frame navigations during the attempt, but the attempt is + # still keyed with the initial URL. + type PreloadingAttemptKey extends object + properties + Network.LoaderId loaderId + SpeculationAction action + string url + optional SpeculationTargetHint targetHint - # Returns the number of stored Trust Tokens per issuer for the - # current browsing context. - experimental command getTrustTokens - returns - array of TrustTokens tokens + # Lists sources for a preloading attempt, specifically the ids of rule sets + # that had a speculation rule that triggered the attempt, and the + # BackendNodeIds of or elements that triggered the + # attempt (in the case of attempts triggered by a document rule). It is + # possible for multiple rule sets and links to trigger a single attempt. + type PreloadingAttemptSource extends object + properties + PreloadingAttemptKey key + array of RuleSetId ruleSetIds + array of DOM.BackendNodeId nodeIds - # Removes all Trust Tokens issued by the provided issuerOrigin. - # Leaves other stored data, including the issuer's Redemption Records, intact. - experimental command clearTrustTokens + # Chrome manages different types of preloads together using a + # concept of preloading pipeline. For example, if a site uses a + # SpeculationRules for prerender, Chrome first starts a prefetch and + # then upgrades it to prerender. + # + # CDP events for them are emitted separately but they share + # `PreloadPipelineId`. + type PreloadPipelineId extends string + + command enable + + command disable + + # Upsert. Currently, it is only emitted when a rule set added. + event ruleSetUpdated parameters - string issuerOrigin - returns - # True if any tokens were deleted, false otherwise. - boolean didDeleteTokens + RuleSet ruleSet - # Gets details for a named interest group. - experimental command getInterestGroupDetails + event ruleSetRemoved parameters - string ownerOrigin - string name - returns - # This largely corresponds to: - # https://wicg.github.io/turtledove/#dictdef-generatebidinterestgroup - # but has absolute expirationTime instead of relative lifetimeMs and - # also adds joiningOrigin. - object details + RuleSetId id + + # List of FinalStatus reasons for Prerender2. + type PrerenderFinalStatus extends string + enum + Activated + Destroyed + LowEndDevice + InvalidSchemeRedirect + InvalidSchemeNavigation + NavigationRequestBlockedByCsp + MojoBinderPolicy + RendererProcessCrashed + RendererProcessKilled + Download + TriggerDestroyed + NavigationNotCommitted + NavigationBadHttpStatus + ClientCertRequested + NavigationRequestNetworkError + CancelAllHostsForTesting + DidFailLoad + Stop + SslCertificateError + LoginAuthRequested + UaChangeRequiresReload + BlockedByClient + AudioOutputDeviceRequested + MixedContent + TriggerBackgrounded + MemoryLimitExceeded + DataSaverEnabled + TriggerUrlHasEffectiveUrl + ActivatedBeforeStarted + InactivePageRestriction + StartFailed + TimeoutBackgrounded + CrossSiteRedirectInInitialNavigation + CrossSiteNavigationInInitialNavigation + SameSiteCrossOriginRedirectNotOptInInInitialNavigation + SameSiteCrossOriginNavigationNotOptInInInitialNavigation + ActivationNavigationParameterMismatch + ActivatedInBackground + EmbedderHostDisallowed + ActivationNavigationDestroyedBeforeSuccess + TabClosedByUserGesture + TabClosedWithoutUserGesture + PrimaryMainFrameRendererProcessCrashed + PrimaryMainFrameRendererProcessKilled + ActivationFramePolicyNotCompatible + PreloadingDisabled + BatterySaverEnabled + ActivatedDuringMainFrameNavigation + PreloadingUnsupportedByWebContents + CrossSiteRedirectInMainFrameNavigation + CrossSiteNavigationInMainFrameNavigation + SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation + SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation + MemoryPressureOnTrigger + MemoryPressureAfterTriggered + PrerenderingDisabledByDevTools + SpeculationRuleRemoved + ActivatedWithAuxiliaryBrowsingContexts + MaxNumOfRunningEagerPrerendersExceeded + MaxNumOfRunningNonEagerPrerendersExceeded + MaxNumOfRunningEmbedderPrerendersExceeded + PrerenderingUrlHasEffectiveUrl + RedirectedPrerenderingUrlHasEffectiveUrl + ActivationUrlHasEffectiveUrl + JavaScriptInterfaceAdded + JavaScriptInterfaceRemoved + AllPrerenderingCanceled + WindowClosed + SlowNetwork + OtherPrerenderedPageActivated + V8OptimizerDisabled + PrerenderFailedDuringPrefetch + BrowsingDataRemoved + PrerenderHostReused - # Enables/Disables issuing of interestGroupAccessed events. - experimental command setInterestGroupTracking + # Fired when a preload enabled state is updated. + event preloadEnabledStateUpdated parameters - boolean enable + boolean disabledByPreference + boolean disabledByDataSaver + boolean disabledByBatterySaver + boolean disabledByHoldbackPrefetchSpeculationRules + boolean disabledByHoldbackPrerenderSpeculationRules - # Enables/Disables issuing of interestGroupAuctionEventOccurred and - # interestGroupAuctionNetworkRequestCreated. - experimental command setInterestGroupAuctionTracking - parameters - boolean enable + # Preloading status values, see also PreloadingTriggeringOutcome. This + # status is shared by prefetchStatusUpdated and prerenderStatusUpdated. + type PreloadingStatus extends string + enum + Pending + Running + Ready + Success + Failure + # PreloadingTriggeringOutcome which not used by prefetch nor prerender. + NotSupported - # Gets metadata for an origin's shared storage. - experimental command getSharedStorageMetadata - parameters - string ownerOrigin - returns - SharedStorageMetadata metadata + # TODO(https://crbug.com/1384419): revisit the list of PrefetchStatus and + # filter out the ones that aren't necessary to the developers. + type PrefetchStatus extends string + enum + # Prefetch is not disabled by PrefetchHeldback. + PrefetchAllowed + PrefetchFailedIneligibleRedirect + PrefetchFailedInvalidRedirect + PrefetchFailedMIMENotSupported + PrefetchFailedNetError + PrefetchFailedNon2XX + PrefetchEvictedAfterBrowsingDataRemoved + PrefetchEvictedAfterCandidateRemoved + PrefetchEvictedForNewerPrefetch + PrefetchHeldback + # A previous prefetch to the origin got a HTTP 503 response with an + # Retry-After header that has no elapsed yet. + PrefetchIneligibleRetryAfter + PrefetchIsPrivacyDecoy + PrefetchIsStale + PrefetchNotEligibleBrowserContextOffTheRecord + PrefetchNotEligibleDataSaverEnabled + PrefetchNotEligibleExistingProxy + PrefetchNotEligibleHostIsNonUnique + PrefetchNotEligibleNonDefaultStoragePartition + PrefetchNotEligibleSameSiteCrossOriginPrefetchRequiredProxy + PrefetchNotEligibleSchemeIsNotHttps + PrefetchNotEligibleUserHasCookies + PrefetchNotEligibleUserHasServiceWorker + PrefetchNotEligibleUserHasServiceWorkerNoFetchHandler + PrefetchNotEligibleRedirectFromServiceWorker + PrefetchNotEligibleRedirectToServiceWorker + PrefetchNotEligibleBatterySaverEnabled + PrefetchNotEligiblePreloadingDisabled + PrefetchNotFinishedInTime + PrefetchNotStarted + PrefetchNotUsedCookiesChanged + PrefetchProxyNotAvailable + # The response of the prefetch is used for the next navigation. This is + # the final successful state. + PrefetchResponseUsed + # The prefetch finished successfully but was never used. + PrefetchSuccessfulButNotUsed + PrefetchNotUsedProbeFailed - # Gets the entries in an given origin's shared storage. - experimental command getSharedStorageEntries + # Fired when a prefetch attempt is updated. + event prefetchStatusUpdated parameters - string ownerOrigin - returns - array of SharedStorageEntry entries + PreloadingAttemptKey key + PreloadPipelineId pipelineId + # The frame id of the frame initiating prefetch. + Page.FrameId initiatingFrameId + string prefetchUrl + PreloadingStatus status + PrefetchStatus prefetchStatus + Network.RequestId requestId - # Sets entry with `key` and `value` for a given origin's shared storage. - experimental command setSharedStorageEntry - parameters - string ownerOrigin - string key - string value - # If `ignoreIfPresent` is included and true, then only sets the entry if - # `key` doesn't already exist. - optional boolean ignoreIfPresent + # Information of headers to be displayed when the header mismatch occurred. + type PrerenderMismatchedHeaders extends object + properties + string headerName + optional string initialValue + optional string activationValue - # Deletes entry for `key` (if it exists) for a given origin's shared storage. - experimental command deleteSharedStorageEntry + # Fired when a prerender attempt is updated. + event prerenderStatusUpdated parameters - string ownerOrigin - string key + PreloadingAttemptKey key + PreloadPipelineId pipelineId + PreloadingStatus status + optional PrerenderFinalStatus prerenderStatus + # This is used to give users more information about the name of Mojo interface + # that is incompatible with prerender and has caused the cancellation of the attempt. + optional string disallowedMojoInterface + optional array of PrerenderMismatchedHeaders mismatchedHeaders - # Clears all entries for a given origin's shared storage. - experimental command clearSharedStorageEntries + # Send a list of sources for all preloading attempts in a document. + event preloadingAttemptSourcesUpdated parameters - string ownerOrigin + Network.LoaderId loaderId + array of PreloadingAttemptSource preloadingAttemptSources - # Resets the budget for `ownerOrigin` by clearing all budget withdrawals. - experimental command resetSharedStorageBudget - parameters - string ownerOrigin +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Enables/disables issuing of sharedStorageAccessed events. - experimental command setSharedStorageTracking - parameters - boolean enable +domain Security - # Set tracking for a storage key's buckets. - experimental command setStorageBucketTracking - parameters - string storageKey - boolean enable + # An internal certificate ID value. + type CertificateId extends integer - # Deletes the Storage Bucket with the given storage key and bucket name. - experimental command deleteStorageBucket - parameters - StorageBucket bucket + # A description of mixed content (HTTP resources on HTTPS pages), as defined by + # https://www.w3.org/TR/mixed-content/#categories + type MixedContentType extends string + enum + blockable + optionally-blockable + none - # Deletes state for sites identified as potential bounce trackers, immediately. - experimental command runBounceTrackingMitigations - returns - array of string deletedSites + # The security level of a page or resource. + type SecurityState extends string + enum + unknown + neutral + insecure + secure + info + insecure-broken - # A cache's contents have been modified. - event cacheStorageContentUpdated - parameters - # Origin to update. - string origin - # Storage key to update. - string storageKey - # Storage bucket to update. - string bucketId - # Name of cache in origin. - string cacheName + # Details about the security state of the page certificate. + experimental type CertificateSecurityState extends object + properties + # Protocol name (e.g. "TLS 1.2" or "QUIC"). + string protocol + # Key Exchange used by the connection, or the empty string if not applicable. + string keyExchange + # (EC)DH group used by the connection, if applicable. + optional string keyExchangeGroup + # Cipher name. + string cipher + # TLS MAC. Note that AEAD ciphers do not have separate MACs. + optional string mac + # Page certificate. + array of string certificate + # Certificate subject name. + string subjectName + # Name of the issuing CA. + string issuer + # Certificate valid from date. + Network.TimeSinceEpoch validFrom + # Certificate valid to (expiration) date + Network.TimeSinceEpoch validTo + # The highest priority network error code, if the certificate has an error. + optional string certificateNetworkError + # True if the certificate uses a weak signature algorithm. + boolean certificateHasWeakSignature + # True if the certificate has a SHA1 signature in the chain. + boolean certificateHasSha1Signature + # True if modern SSL + boolean modernSSL + # True if the connection is using an obsolete SSL protocol. + boolean obsoleteSslProtocol + # True if the connection is using an obsolete SSL key exchange. + boolean obsoleteSslKeyExchange + # True if the connection is using an obsolete SSL cipher. + boolean obsoleteSslCipher + # True if the connection is using an obsolete SSL signature. + boolean obsoleteSslSignature - # A cache has been added/deleted. - event cacheStorageListUpdated - parameters - # Origin to update. - string origin - # Storage key to update. - string storageKey - # Storage bucket to update. - string bucketId + experimental type SafetyTipStatus extends string + enum + badReputation + lookalike + + experimental type SafetyTipInfo extends object + properties + # Describes whether the page triggers any safety tips or reputation warnings. Default is unknown. + SafetyTipStatus safetyTipStatus + # The URL the safety tip suggested ("Did you mean?"). Only filled in for lookalike matches. + optional string safeUrl + + # Security state information about the page. + experimental type VisibleSecurityState extends object + properties + # The security level of the page. + SecurityState securityState + # Security state details about the page certificate. + optional CertificateSecurityState certificateSecurityState + # The type of Safety Tip triggered on the page. Note that this field will be set even if the Safety Tip UI was not actually shown. + optional SafetyTipInfo safetyTipInfo + # Array of security state issues ids. + array of string securityStateIssueIds - # The origin's IndexedDB object store has been modified. - event indexedDBContentUpdated - parameters - # Origin to update. - string origin - # Storage key to update. - string storageKey - # Storage bucket to update. - string bucketId - # Database to update. - string databaseName - # ObjectStore to update. - string objectStoreName + # An explanation of an factor contributing to the security state. + type SecurityStateExplanation extends object + properties + # Security state representing the severity of the factor being explained. + SecurityState securityState + # Title describing the type of factor. + string title + # Short phrase describing the type of factor. + string summary + # Full text explanation of the factor. + string description + # The type of mixed content described by the explanation. + MixedContentType mixedContentType + # Page certificate. + array of string certificate + # Recommendations to fix any issues. + optional array of string recommendations - # The origin's IndexedDB database list has been modified. - event indexedDBListUpdated - parameters - # Origin to update. - string origin - # Storage key to update. - string storageKey - # Storage bucket to update. - string bucketId + # Information about insecure content on the page. + deprecated type InsecureContentStatus extends object + properties + # Always false. + boolean ranMixedContent + # Always false. + boolean displayedMixedContent + # Always false. + boolean containedMixedForm + # Always false. + boolean ranContentWithCertErrors + # Always false. + boolean displayedContentWithCertErrors + # Always set to unknown. + SecurityState ranInsecureContentStyle + # Always set to unknown. + SecurityState displayedInsecureContentStyle - # One of the interest groups was accessed. Note that these events are global - # to all targets sharing an interest group store. - event interestGroupAccessed - parameters - Network.TimeSinceEpoch accessTime - InterestGroupAccessType type - string ownerOrigin - string name - # For topLevelBid/topLevelAdditionalBid, and when appropriate, - # win and additionalBidWin - optional string componentSellerOrigin - # For bid or somethingBid event, if done locally and not on a server. - optional number bid - optional string bidCurrency - # For non-global events --- links to interestGroupAuctionEvent - optional InterestGroupAuctionId uniqueAuctionId + # The action to take when a certificate error occurs. continue will continue processing the + # request and cancel will cancel the request. + type CertificateErrorAction extends string + enum + continue + cancel - # An auction involving interest groups is taking place. These events are - # target-specific. - event interestGroupAuctionEventOccurred - parameters - Network.TimeSinceEpoch eventTime - InterestGroupAuctionEventType type - InterestGroupAuctionId uniqueAuctionId - # Set for child auctions. - optional InterestGroupAuctionId parentAuctionId - # Set for started and configResolved - optional object auctionConfig + # Disables tracking security state changes. + command disable - # Specifies which auctions a particular network fetch may be related to, and - # in what role. Note that it is not ordered with respect to - # Network.requestWillBeSent (but will happen before loadingFinished - # loadingFailed). - event interestGroupAuctionNetworkRequestCreated - parameters - InterestGroupAuctionFetchType type - Network.RequestId requestId - # This is the set of the auctions using the worklet that issued this - # request. In the case of trusted signals, it's possible that only some of - # them actually care about the keys being queried. - array of InterestGroupAuctionId auctions + # Enables tracking security state changes. + command enable - # Shared storage was accessed by the associated page. - # The following parameters are included in all events. - event sharedStorageAccessed + # Enable/disable whether all certificate errors should be ignored. + command setIgnoreCertificateErrors parameters - # Time of the access. - Network.TimeSinceEpoch accessTime - # Enum value indicating the access scope. - SharedStorageAccessScope scope - # Enum value indicating the Shared Storage API method invoked. - SharedStorageAccessMethod method - # DevTools Frame Token for the primary frame tree's root. - Page.FrameId mainFrameId - # Serialization of the origin owning the Shared Storage data. - string ownerOrigin - # Serialization of the site owning the Shared Storage data. - string ownerSite - # The sub-parameters wrapped by `params` are all optional and their - # presence/absence depends on `type`. - SharedStorageAccessParams params + # If true, all certificate errors will be ignored. + boolean ignore - # A shared storage run or selectURL operation finished its execution. - # The following parameters are included in all events. - event sharedStorageWorkletOperationExecutionFinished + # Handles a certificate error that fired a certificateError event. + deprecated command handleCertificateError parameters - # Time that the operation finished. - Network.TimeSinceEpoch finishedTime - # Time, in microseconds, from start of shared storage JS API call until - # end of operation execution in the worklet. - integer executionTime - # Enum value indicating the Shared Storage API method invoked. - SharedStorageAccessMethod method - # ID of the operation call. - string operationId - # Hex representation of the DevTools token used as the TargetID for the - # associated shared storage worklet. - Target.TargetID workletTargetId - # DevTools Frame Token for the primary frame tree's root. - Page.FrameId mainFrameId - # Serialization of the origin owning the Shared Storage data. - string ownerOrigin + # The ID of the event. + integer eventId + # The action to take on the certificate error. + CertificateErrorAction action - event storageBucketCreatedOrUpdated + # Enable/disable overriding certificate errors. If enabled, all certificate error events need to + # be handled by the DevTools client and should be answered with `handleCertificateError` commands. + deprecated command setOverrideCertificateErrors parameters - StorageBucketInfo bucketInfo + # If true, certificate errors will be overridden. + boolean override - event storageBucketDeleted + # There is a certificate error. If overriding certificate errors is enabled, then it should be + # handled with the `handleCertificateError` command. Note: this event does not fire if the + # certificate error has been allowed internally. Only one client per target should override + # certificate errors at the same time. + deprecated event certificateError parameters - string bucketId + # The ID of the event. + integer eventId + # The type of the error. + string errorType + # The url that was requested. + string requestURL - # https://wicg.github.io/attribution-reporting-api/ - experimental command setAttributionReportingLocalTestingMode + # The security state of the page changed. + experimental event visibleSecurityStateChanged parameters - # If enabled, noise is suppressed and reports are sent immediately. - boolean enabled + # Security state information about the page. + VisibleSecurityState visibleSecurityState - # Enables/disables issuing of Attribution Reporting events. - experimental command setAttributionReportingTracking + # The security state of the page changed. No longer being sent. + deprecated event securityStateChanged parameters - boolean enable - - # Sends all pending Attribution Reports immediately, regardless of their - # scheduled report time. - experimental command sendPendingAttributionReports - returns - # The number of reports that were sent. - integer numSent - - experimental type AttributionReportingSourceType extends string - enum - navigation - event - - experimental type UnsignedInt64AsBase10 extends string - experimental type UnsignedInt128AsBase16 extends string - experimental type SignedInt64AsBase10 extends string + # Security state. + SecurityState securityState + # True if the page was loaded over cryptographic transport such as HTTPS. + deprecated boolean schemeIsCryptographic + # Previously a list of explanations for the security state. Now always + # empty. + deprecated array of SecurityStateExplanation explanations + # Information about insecure content on the page. + deprecated InsecureContentStatus insecureContentStatus + # Overrides user-visible description of the state. Always omitted. + deprecated optional string summary - experimental type AttributionReportingFilterDataEntry extends object - properties - string key - array of string values +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - experimental type AttributionReportingFilterConfig extends object - properties - array of AttributionReportingFilterDataEntry filterValues - # duration in seconds - optional integer lookbackWindow +experimental domain ServiceWorker + depends on Target - experimental type AttributionReportingFilterPair extends object - properties - array of AttributionReportingFilterConfig filters - array of AttributionReportingFilterConfig notFilters + type RegistrationID extends string - experimental type AttributionReportingAggregationKeysEntry extends object + # ServiceWorker registration. + type ServiceWorkerRegistration extends object properties - string key - UnsignedInt128AsBase16 value + RegistrationID registrationId + string scopeURL + boolean isDeleted - experimental type AttributionReportingEventReportWindows extends object - properties - # duration in seconds - integer start - # duration in seconds - array of integer ends + type ServiceWorkerVersionRunningStatus extends string + enum + stopped + starting + running + stopping - experimental type AttributionReportingTriggerDataMatching extends string + type ServiceWorkerVersionStatus extends string enum - exact - modulus + new + installing + installed + activating + activated + redundant - experimental type AttributionReportingAggregatableDebugReportingData extends object + # ServiceWorker version. + type ServiceWorkerVersion extends object properties - UnsignedInt128AsBase16 keyPiece - # number instead of integer because not all uint32 can be represented by - # int - number value - array of string types + string versionId + RegistrationID registrationId + string scriptURL + ServiceWorkerVersionRunningStatus runningStatus + ServiceWorkerVersionStatus status + # The Last-Modified header value of the main script. + optional number scriptLastModified + # The time at which the response headers of the main script were received from the server. + # For cached script it is the last time the cache entry was validated. + optional number scriptResponseTime + optional array of Target.TargetID controlledClients + optional Target.TargetID targetId + optional string routerRules - experimental type AttributionReportingAggregatableDebugReportingConfig extends object + # ServiceWorker error message. + type ServiceWorkerErrorMessage extends object properties - # number instead of integer because not all uint32 can be represented by - # int, only present for source registrations - optional number budget - UnsignedInt128AsBase16 keyPiece - array of AttributionReportingAggregatableDebugReportingData debugData - optional string aggregationCoordinatorOrigin + string errorMessage + RegistrationID registrationId + string versionId + string sourceURL + integer lineNumber + integer columnNumber - experimental type AttributionScopesData extends object - properties - array of string values - # number instead of integer because not all uint32 can be represented by - # int - number limit - number maxEventStates + command deliverPushMessage + parameters + string origin + RegistrationID registrationId + string data - experimental type AttributionReportingNamedBudgetDef extends object - properties - string name - integer budget + command disable - experimental type AttributionReportingSourceRegistration extends object - properties - Network.TimeSinceEpoch time - # duration in seconds - integer expiry - # number instead of integer because not all uint32 can be represented by - # int - array of number triggerData - AttributionReportingEventReportWindows eventReportWindows - # duration in seconds - integer aggregatableReportWindow - AttributionReportingSourceType type - string sourceOrigin - string reportingOrigin - array of string destinationSites - UnsignedInt64AsBase10 eventId - SignedInt64AsBase10 priority - array of AttributionReportingFilterDataEntry filterData - array of AttributionReportingAggregationKeysEntry aggregationKeys - optional UnsignedInt64AsBase10 debugKey - AttributionReportingTriggerDataMatching triggerDataMatching - SignedInt64AsBase10 destinationLimitPriority - AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig - optional AttributionScopesData scopesData - integer maxEventLevelReports - array of AttributionReportingNamedBudgetDef namedBudgets - boolean debugReporting - number eventLevelEpsilon + command dispatchSyncEvent + parameters + string origin + RegistrationID registrationId + string tag + boolean lastChance - experimental type AttributionReportingSourceRegistrationResult extends string - enum - success - internalError - insufficientSourceCapacity - insufficientUniqueDestinationCapacity - excessiveReportingOrigins - prohibitedByBrowserPolicy - successNoised - destinationReportingLimitReached - destinationGlobalLimitReached - destinationBothLimitsReached - reportingOriginsPerSiteLimitReached - exceedsMaxChannelCapacity - exceedsMaxScopesChannelCapacity - exceedsMaxTriggerStateCardinality - exceedsMaxEventStatesLimit - destinationPerDayReportingLimitReached + command dispatchPeriodicSyncEvent + parameters + string origin + RegistrationID registrationId + string tag - experimental event attributionReportingSourceRegistered + command enable + + command setForceUpdateOnPageLoad parameters - AttributionReportingSourceRegistration registration - AttributionReportingSourceRegistrationResult result + boolean forceUpdateOnPageLoad - experimental type AttributionReportingSourceRegistrationTimeConfig extends string - enum - include - exclude + command skipWaiting + parameters + string scopeURL - experimental type AttributionReportingAggregatableValueDictEntry extends object - properties - string key - # number instead of integer because not all uint32 can be represented by - # int - number value - UnsignedInt64AsBase10 filteringId + command startWorker + parameters + string scopeURL + command stopAllWorkers - experimental type AttributionReportingAggregatableValueEntry extends object - properties - array of AttributionReportingAggregatableValueDictEntry values - AttributionReportingFilterPair filters + command stopWorker + parameters + string versionId - experimental type AttributionReportingEventTriggerData extends object - properties - UnsignedInt64AsBase10 data - SignedInt64AsBase10 priority - optional UnsignedInt64AsBase10 dedupKey - AttributionReportingFilterPair filters + command unregister + parameters + string scopeURL - experimental type AttributionReportingAggregatableTriggerData extends object - properties - UnsignedInt128AsBase16 keyPiece - array of string sourceKeys - AttributionReportingFilterPair filters + command updateRegistration + parameters + string scopeURL - experimental type AttributionReportingAggregatableDedupKey extends object - properties - optional UnsignedInt64AsBase10 dedupKey - AttributionReportingFilterPair filters + event workerErrorReported + parameters + ServiceWorkerErrorMessage errorMessage - experimental type AttributionReportingNamedBudgetCandidate extends object - properties - optional string name - AttributionReportingFilterPair filters + event workerRegistrationUpdated + parameters + array of ServiceWorkerRegistration registrations - experimental type AttributionReportingTriggerRegistration extends object - properties - AttributionReportingFilterPair filters - optional UnsignedInt64AsBase10 debugKey - array of AttributionReportingAggregatableDedupKey aggregatableDedupKeys - array of AttributionReportingEventTriggerData eventTriggerData - array of AttributionReportingAggregatableTriggerData aggregatableTriggerData - array of AttributionReportingAggregatableValueEntry aggregatableValues - integer aggregatableFilteringIdMaxBytes - boolean debugReporting - optional string aggregationCoordinatorOrigin - AttributionReportingSourceRegistrationTimeConfig sourceRegistrationTimeConfig - optional string triggerContextId - AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig - array of string scopes - array of AttributionReportingNamedBudgetCandidate namedBudgets + event workerVersionUpdated + parameters + array of ServiceWorkerVersion versions - experimental type AttributionReportingEventLevelResult extends string - enum - success - successDroppedLowerPriority - internalError - noCapacityForAttributionDestination - noMatchingSources - deduplicated - excessiveAttributions - priorityTooLow - neverAttributedSource - excessiveReportingOrigins - noMatchingSourceFilterData - prohibitedByBrowserPolicy - noMatchingConfigurations - excessiveReports - falselyAttributedSource - reportWindowPassed - notRegistered - reportWindowNotStarted - noMatchingTriggerData +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - experimental type AttributionReportingAggregatableResult extends string - enum - success - internalError - noCapacityForAttributionDestination - noMatchingSources - excessiveAttributions - excessiveReportingOrigins - noHistograms - insufficientBudget - insufficientNamedBudget - noMatchingSourceFilterData - notRegistered - prohibitedByBrowserPolicy - deduplicated - reportWindowPassed - excessiveReports +experimental domain Storage + depends on Browser + depends on Network - experimental event attributionReportingTriggerRegistered - parameters - AttributionReportingTriggerRegistration registration - AttributionReportingEventLevelResult eventLevel - AttributionReportingAggregatableResult aggregatable + type SerializedStorageKey extends string - experimental type AttributionReportingReportResult extends string + # Enum of possible storage types. + type StorageType extends string enum - # A network request was attempted for the report. - sent - # No request was attempted because of browser policy. - prohibited - # No request was attempted because of an error in report assembly, - # e.g. the aggregation service was unavailable. - failedToAssemble - # No request was attempted because the report's expiry passed. - expired - - experimental event attributionReportingReportSent - parameters - string url - object body - AttributionReportingReportResult result - # If result is `sent`, populated with net/HTTP status. - optional integer netError - optional string netErrorName - optional integer httpStatusCode + cookies + file_systems + indexeddb + local_storage + shader_cache + websql + service_workers + cache_storage + interest_groups + shared_storage + storage_buckets + all + other - experimental event attributionReportingVerboseDebugReportSent - parameters - string url - optional array of object body - optional integer netError - optional string netErrorName - optional integer httpStatusCode + # Usage for a storage type. + type UsageForType extends object + properties + # Name of storage type. + StorageType storageType + # Storage usage (bytes). + number usage - # A single Related Website Set object. - experimental type RelatedWebsiteSet extends object + # Pair of issuer origin and number of available (signed, but not used) Trust + # Tokens from that issuer. + experimental type TrustTokens extends object properties - # The primary site of this set, along with the ccTLDs if there is any. - array of string primarySites - # The associated sites of this set, along with the ccTLDs if there is any. - array of string associatedSites - # The service sites of this set, along with the ccTLDs if there is any. - array of string serviceSites + string issuerOrigin + number count - # Returns the effective Related Website Sets in use by this profile for the browser - # session. The effective Related Website Sets will not change during a browser session. - experimental command getRelatedWebsiteSets - returns - array of RelatedWebsiteSet sets + # Protected audience interest group auction identifier. + type InterestGroupAuctionId extends string - # Returns the list of URLs from a page and its embedded resources that match - # existing grace period URL pattern rules. - # https://developers.google.com/privacy-sandbox/cookies/temporary-exceptions/grace-period - experimental command getAffectedUrlsForThirdPartyCookieMetadata - parameters - # The URL of the page currently being visited. - string firstPartyUrl - # The list of embedded resource URLs from the page. - array of string thirdPartyUrls + # Enum of interest group access types. + type InterestGroupAccessType extends string + enum + join + leave + update + loaded + bid + win + additionalBid + additionalBidWin + topLevelBid + topLevelAdditionalBid + clear - returns - # Array of matching URLs. If there is a primary pattern match for the first- - # party URL, only the first-party URL is returned in the array. - array of string matchedUrls + # Enum of auction events. + type InterestGroupAuctionEventType extends string + enum + started + configResolved - command setProtectedAudienceKAnonymity - parameters - string owner - string name - array of binary hashes + # Enum of network fetches auctions can do. + type InterestGroupAuctionFetchType extends string + enum + bidderJs + bidderWasm + sellerJs + bidderTrustedSignals + sellerTrustedSignals -# The SystemInfo domain defines methods and events for querying low-level system information. -experimental domain SystemInfo + # Enum of shared storage access scopes. + type SharedStorageAccessScope extends string + enum + window + sharedStorageWorklet + protectedAudienceWorklet + header - # Describes a single graphics processor (GPU). - type GPUDevice extends object + # Enum of shared storage access methods. + type SharedStorageAccessMethod extends string + enum + addModule + createWorklet + selectURL + run + batchUpdate + set + append + delete + clear + get + keys + values + entries + length + remainingBudget + + # Struct for a single key-value pair in an origin's shared storage. + type SharedStorageEntry extends object properties - # PCI ID of the GPU vendor, if available; 0 otherwise. - number vendorId - # PCI ID of the GPU device, if available; 0 otherwise. - number deviceId - # Sub sys ID of the GPU, only available on Windows. - optional number subSysId - # Revision of the GPU, only available on Windows. - optional number revision - # String description of the GPU vendor, if the PCI ID is not available. - string vendorString - # String description of the GPU device, if the PCI ID is not available. - string deviceString - # String description of the GPU driver vendor. - string driverVendor - # String description of the GPU driver version. - string driverVersion + string key + string value - # Describes the width and height dimensions of an entity. - type Size extends object + # Details for an origin's shared storage. + type SharedStorageMetadata extends object properties - # Width in pixels. - integer width - # Height in pixels. - integer height + # Time when the origin's shared storage was last created. + Network.TimeSinceEpoch creationTime + # Number of key-value pairs stored in origin's shared storage. + integer length + # Current amount of bits of entropy remaining in the navigation budget. + number remainingBudget + # Total number of bytes stored as key-value pairs in origin's shared + # storage. + integer bytesUsed - # Describes a supported video decoding profile with its associated minimum and - # maximum resolutions. - type VideoDecodeAcceleratorCapability extends object + # Represents a dictionary object passed in as privateAggregationConfig to + # run or selectURL. + type SharedStoragePrivateAggregationConfig extends object properties - # Video codec profile that is supported, e.g. VP9 Profile 2. - string profile - # Maximum video dimensions in pixels supported for this |profile|. - Size maxResolution - # Minimum video dimensions in pixels supported for this |profile|. - Size minResolution + # The chosen aggregation service deployment. + optional string aggregationCoordinatorOrigin + # The context ID provided. + optional string contextId + # Configures the maximum size allowed for filtering IDs. + integer filteringIdMaxBytes + # The limit on the number of contributions in the final report. + optional integer maxContributions - # Describes a supported video encoding profile with its associated maximum - # resolution and maximum framerate. - type VideoEncodeAcceleratorCapability extends object + # Pair of reporting metadata details for a candidate URL for `selectURL()`. + type SharedStorageReportingMetadata extends object properties - # Video codec profile that is supported, e.g H264 Main. - string profile - # Maximum video dimensions in pixels supported for this |profile|. - Size maxResolution - # Maximum encoding framerate in frames per second supported for this - # |profile|, as fraction's numerator and denominator, e.g. 24/1 fps, - # 24000/1001 fps, etc. - integer maxFramerateNumerator - integer maxFramerateDenominator + string eventType + string reportingUrl - # YUV subsampling type of the pixels of a given image. - type SubsamplingFormat extends string - enum - yuv420 - yuv422 - yuv444 + # Bundles a candidate URL with its reporting metadata. + type SharedStorageUrlWithMetadata extends object + properties + # Spec of candidate URL. + string url + # Any associated reporting metadata. + array of SharedStorageReportingMetadata reportingMetadata + + # Bundles the parameters for shared storage access events whose + # presence/absence can vary according to SharedStorageAccessType. + type SharedStorageAccessParams extends object + properties + # Spec of the module script URL. + # Present only for SharedStorageAccessMethods: addModule and + # createWorklet. + optional string scriptSourceUrl + # String denoting "context-origin", "script-origin", or a custom + # origin to be used as the worklet's data origin. + # Present only for SharedStorageAccessMethod: createWorklet. + optional string dataOrigin + # Name of the registered operation to be run. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional string operationName + # ID of the operation call. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional string operationId + # Whether or not to keep the worket alive for future run or selectURL + # calls. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional boolean keepAlive + # Configures the private aggregation options. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional SharedStoragePrivateAggregationConfig privateAggregationConfig + # The operation's serialized data in bytes (converted to a string). + # Present only for SharedStorageAccessMethods: run and selectURL. + # TODO(crbug.com/401011862): Consider updating this parameter to binary. + optional string serializedData + # Array of candidate URLs' specs, along with any associated metadata. + # Present only for SharedStorageAccessMethod: selectURL. + optional array of SharedStorageUrlWithMetadata urlsWithMetadata + # Spec of the URN:UUID generated for a selectURL call. + # Present only for SharedStorageAccessMethod: selectURL. + optional string urnUuid + # Key for a specific entry in an origin's shared storage. + # Present only for SharedStorageAccessMethods: set, append, delete, and + # get. + optional string key + # Value for a specific entry in an origin's shared storage. + # Present only for SharedStorageAccessMethods: set and append. + optional string value + # Whether or not to set an entry for a key if that key is already present. + # Present only for SharedStorageAccessMethod: set. + optional boolean ignoreIfPresent + # A number denoting the (0-based) order of the worklet's + # creation relative to all other shared storage worklets created by + # documents using the current storage partition. + # Present only for SharedStorageAccessMethods: addModule, createWorklet. + optional integer workletOrdinal + # Hex representation of the DevTools token used as the TargetID for the + # associated shared storage worklet. + # Present only for SharedStorageAccessMethods: addModule, createWorklet, + # run, selectURL, and any other SharedStorageAccessMethod when the + # SharedStorageAccessScope is sharedStorageWorklet. + optional Target.TargetID workletTargetId + # Name of the lock to be acquired, if present. + # Optionally present only for SharedStorageAccessMethods: batchUpdate, + # set, append, delete, and clear. + optional string withLock + # If the method has been called as part of a batchUpdate, then this + # number identifies the batch to which it belongs. + # Optionally present only for SharedStorageAccessMethods: + # batchUpdate (required), set, append, delete, and clear. + optional string batchUpdateId + # Number of modifier methods sent in batch. + # Present only for SharedStorageAccessMethod: batchUpdate. + optional integer batchSize - # Image format of a given image. - type ImageType extends string + type StorageBucketsDurability extends string enum - jpeg - webp - unknown - - # Describes a supported image decoding profile with its associated minimum and - # maximum resolutions and subsampling. - type ImageDecodeAcceleratorCapability extends object - properties - # Image coded, e.g. Jpeg. - ImageType imageType - # Maximum supported dimensions of the image in pixels. - Size maxDimensions - # Minimum supported dimensions of the image in pixels. - Size minDimensions - # Optional array of supported subsampling formats, e.g. 4:2:0, if known. - array of SubsamplingFormat subsamplings + relaxed + strict - # Provides information about the GPU(s) on the system. - type GPUInfo extends object + type StorageBucket extends object properties - # The graphics devices on the system. Element 0 is the primary GPU. - array of GPUDevice devices - # An optional dictionary of additional GPU related attributes. - optional object auxAttributes - # An optional dictionary of graphics features and their status. - optional object featureStatus - # An optional array of GPU driver bug workarounds. - array of string driverBugWorkarounds - # Supported accelerated video decoding capabilities. - array of VideoDecodeAcceleratorCapability videoDecoding - # Supported accelerated video encoding capabilities. - array of VideoEncodeAcceleratorCapability videoEncoding - # Supported accelerated image decoding capabilities. - array of ImageDecodeAcceleratorCapability imageDecoding + SerializedStorageKey storageKey + # If not specified, it is the default bucket of the storageKey. + optional string name - # Represents process info. - type ProcessInfo extends object + type StorageBucketInfo extends object properties - # Specifies process type. - string type - # Specifies process id. - integer id - # Specifies cumulative CPU usage in seconds across all threads of the - # process since the process start. - number cpuTime - - # Returns information about the system. - command getInfo - returns - # Information about the GPUs on the system. - GPUInfo gpu - # A platform-dependent description of the model of the machine. On Mac OS, this is, for - # example, 'MacBookPro'. Will be the empty string if not supported. - string modelName - # A platform-dependent description of the version of the machine. On Mac OS, this is, for - # example, '10.1'. Will be the empty string if not supported. - string modelVersion - # The command line string used to launch the browser. Will be the empty string if not - # supported. - string commandLine + StorageBucket bucket + string id + Network.TimeSinceEpoch expiration + # Storage quota (bytes). + number quota + boolean persistent + StorageBucketsDurability durability - # Returns information about the feature state. - command getFeatureState + # Returns a storage key given a frame id. + # Deprecated. Please use Storage.getStorageKey instead. + deprecated command getStorageKeyForFrame parameters - string featureState + Page.FrameId frameId returns - boolean featureEnabled + SerializedStorageKey storageKey - # Returns information about all running processes. - command getProcessInfo + # Returns storage key for the given frame. If no frame ID is provided, + # the storage key of the target executing this command is returned. + experimental command getStorageKey + parameters + optional Page.FrameId frameId returns - # An array of process info blocks. - array of ProcessInfo processInfo - -# Supports additional targets discovery and allows to attach to them. -domain Target - - type TargetID extends string - - # Unique identifier of attached debugging session. - type SessionID extends string - - type TargetInfo extends object - properties - TargetID targetId - # List of types: https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypeTab%5B%5D%22 - string type - string title - string url - # Whether the target has an attached client. - boolean attached - # Opener target Id - optional TargetID openerId - # Whether the target has access to the originating window. - experimental boolean canAccessOpener - # Frame id of originating window (is only set if target has an opener). - experimental optional Page.FrameId openerFrameId - experimental optional Browser.BrowserContextID browserContextId - # Provides additional details for specific target types. For example, for - # the type of "page", this may be set to "prerender". - experimental optional string subtype + SerializedStorageKey storageKey - # A filter used by target query/discovery/auto-attach operations. - experimental type FilterEntry extends object - properties - # If set, causes exclusion of matching targets from the list. - optional boolean exclude - # If not present, matches any type. - optional string type + # Clears storage for origin. + command clearDataForOrigin + parameters + # Security origin. + string origin + # Comma separated list of StorageType to clear. + string storageTypes - # The entries in TargetFilter are matched sequentially against targets and - # the first entry that matches determines if the target is included or not, - # depending on the value of `exclude` field in the entry. - # If filter is not specified, the one assumed is - # [{type: "browser", exclude: true}, {type: "tab", exclude: true}, {}] - # (i.e. include everything but `browser` and `tab`). - experimental type TargetFilter extends array of FilterEntry + # Clears storage for storage key. + command clearDataForStorageKey + parameters + # Storage key. + string storageKey + # Comma separated list of StorageType to clear. + string storageTypes - experimental type RemoteLocation extends object - properties - string host - integer port + # Returns all browser cookies. + command getCookies + parameters + # Browser context to use when called on the browser endpoint. + optional Browser.BrowserContextID browserContextId + returns + # Array of cookie objects. + array of Network.Cookie cookies - # The state of the target window. - experimental type WindowState extends string - enum - normal - minimized - maximized - fullscreen + # Sets given cookies. + command setCookies + parameters + # Cookies to be set. + array of Network.CookieParam cookies + # Browser context to use when called on the browser endpoint. + optional Browser.BrowserContextID browserContextId - # Activates (focuses) the target. - command activateTarget + # Clears cookies. + command clearCookies parameters - TargetID targetId + # Browser context to use when called on the browser endpoint. + optional Browser.BrowserContextID browserContextId - # Attaches to the target with given id. - command attachToTarget + # Returns usage and quota in bytes. + command getUsageAndQuota parameters - TargetID targetId - # Enables "flat" access to the session via specifying sessionId attribute in the commands. - # We plan to make this the default, deprecate non-flattened mode, - # and eventually retire it. See crbug.com/991325. - optional boolean flatten + # Security origin. + string origin returns - # Id assigned to the session. - SessionID sessionId + # Storage usage (bytes). + number usage + # Storage quota (bytes). + number quota + # Whether or not the origin has an active storage quota override + boolean overrideActive + # Storage usage per type (bytes). + array of UsageForType usageBreakdown - # Attaches to the browser target, only uses flat sessionId mode. - experimental command attachToBrowserTarget - returns - # Id assigned to the session. - SessionID sessionId + # Override quota for the specified origin + experimental command overrideQuotaForOrigin + parameters + # Security origin. + string origin + # The quota size (in bytes) to override the original quota with. + # If this is called multiple times, the overridden quota will be equal to + # the quotaSize provided in the final call. If this is called without + # specifying a quotaSize, the quota will be reset to the default value for + # the specified origin. If this is called multiple times with different + # origins, the override will be maintained for each origin until it is + # disabled (called without a quotaSize). + optional number quotaSize - # Closes the target. If the target is a page that gets closed too. - command closeTarget + # Registers origin to be notified when an update occurs to its cache storage list. + command trackCacheStorageForOrigin parameters - TargetID targetId - returns - # Always set to true. If an error occurs, the response indicates protocol error. - deprecated boolean success + # Security origin. + string origin - # Inject object to the target's main frame that provides a communication - # channel with browser target. - # - # Injected object will be available as `window[bindingName]`. - # - # The object has the following API: - # - `binding.send(json)` - a method to send messages over the remote debugging protocol - # - `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses. - experimental command exposeDevToolsProtocol + # Registers storage key to be notified when an update occurs to its cache storage list. + command trackCacheStorageForStorageKey parameters - TargetID targetId - # Binding name, 'cdp' if not specified. - optional string bindingName - # If true, inherits the current root session's permissions (default: false). - optional boolean inheritPermissions + # Storage key. + string storageKey - # Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than - # one. - command createBrowserContext + # Registers origin to be notified when an update occurs to its IndexedDB. + command trackIndexedDBForOrigin parameters - # If specified, disposes this context when debugging session disconnects. - experimental optional boolean disposeOnDetach - # Proxy server, similar to the one passed to --proxy-server - experimental optional string proxyServer - # Proxy bypass list, similar to the one passed to --proxy-bypass-list - experimental optional string proxyBypassList - # An optional list of origins to grant unlimited cross-origin access to. - # Parts of the URL other than those constituting origin are ignored. - experimental optional array of string originsWithUniversalNetworkAccess - returns - # The id of the context created. - Browser.BrowserContextID browserContextId - - # Returns all browser contexts created with `Target.createBrowserContext` method. - command getBrowserContexts - returns - # An array of browser context ids. - array of Browser.BrowserContextID browserContextIds + # Security origin. + string origin - # Creates a new page. - command createTarget + # Registers storage key to be notified when an update occurs to its IndexedDB. + command trackIndexedDBForStorageKey parameters - # The initial URL the page will be navigated to. An empty string indicates about:blank. - string url - # Frame left origin in DIP (requires newWindow to be true or headless shell). - experimental optional integer left - # Frame top origin in DIP (requires newWindow to be true or headless shell). - experimental optional integer top - # Frame width in DIP (requires newWindow to be true or headless shell). - optional integer width - # Frame height in DIP (requires newWindow to be true or headless shell). - optional integer height - # Frame window state (requires newWindow to be true or headless shell). - # Default is normal. - optional WindowState windowState - # The browser context to create the page in. - experimental optional Browser.BrowserContextID browserContextId - # Whether BeginFrames for this target will be controlled via DevTools (headless shell only, - # not supported on MacOS yet, false by default). - experimental optional boolean enableBeginFrameControl - # Whether to create a new Window or Tab (false by default, not supported by headless shell). - optional boolean newWindow - # Whether to create the target in background or foreground (false by default, not supported - # by headless shell). - optional boolean background - # Whether to create the target of type "tab". - experimental optional boolean forTab - # Whether to create a hidden target. The hidden target is observable via protocol, but not - # present in the tab UI strip. Cannot be created with `forTab: true`, `newWindow: true` or - # `background: false`. The life-time of the tab is limited to the life-time of the session. - experimental optional boolean hidden - returns - # The id of the page opened. - TargetID targetId + # Storage key. + string storageKey - # Detaches session with given id. - command detachFromTarget + # Unregisters origin from receiving notifications for cache storage. + command untrackCacheStorageForOrigin parameters - # Session to detach. - optional SessionID sessionId - # Deprecated. - deprecated optional TargetID targetId + # Security origin. + string origin - # Deletes a BrowserContext. All the belonging pages will be closed without calling their - # beforeunload hooks. - command disposeBrowserContext + # Unregisters storage key from receiving notifications for cache storage. + command untrackCacheStorageForStorageKey parameters - Browser.BrowserContextID browserContextId + # Storage key. + string storageKey - # Returns information about a target. - experimental command getTargetInfo + # Unregisters origin from receiving notifications for IndexedDB. + command untrackIndexedDBForOrigin parameters - optional TargetID targetId - returns - TargetInfo targetInfo + # Security origin. + string origin - # Retrieves a list of available targets. - command getTargets + # Unregisters storage key from receiving notifications for IndexedDB. + command untrackIndexedDBForStorageKey parameters - # Only targets matching filter will be reported. If filter is not specified - # and target discovery is currently enabled, a filter used for target discovery - # is used for consistency. - experimental optional TargetFilter filter + # Storage key. + string storageKey + + # Returns the number of stored Trust Tokens per issuer for the + # current browsing context. + experimental command getTrustTokens returns - # The list of targets. - array of TargetInfo targetInfos + array of TrustTokens tokens - # Sends protocol message over session with given id. - # Consider using flat mode instead; see commands attachToTarget, setAutoAttach, - # and crbug.com/991325. - deprecated command sendMessageToTarget + # Removes all Trust Tokens issued by the provided issuerOrigin. + # Leaves other stored data, including the issuer's Redemption Records, intact. + experimental command clearTrustTokens parameters - string message - # Identifier of the session. - optional SessionID sessionId - # Deprecated. - deprecated optional TargetID targetId + string issuerOrigin + returns + # True if any tokens were deleted, false otherwise. + boolean didDeleteTokens - # Controls whether to automatically attach to new targets which are considered - # to be directly related to this one (for example, iframes or workers). - # When turned on, attaches to all existing related targets as well. When turned off, - # automatically detaches from all currently attached targets. - # This also clears all targets added by `autoAttachRelated` from the list of targets to watch - # for creation of related targets. - # You might want to call this recursively for auto-attached targets to attach - # to all available targets. - command setAutoAttach + # Gets details for a named interest group. + experimental command getInterestGroupDetails parameters - # Whether to auto-attach to related targets. - boolean autoAttach - # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` - # to run paused targets. - boolean waitForDebuggerOnStart - # Enables "flat" access to the session via specifying sessionId attribute in the commands. - # We plan to make this the default, deprecate non-flattened mode, - # and eventually retire it. See crbug.com/991325. - experimental optional boolean flatten - # Only targets matching filter will be attached. - experimental optional TargetFilter filter + string ownerOrigin + string name + returns + # This largely corresponds to: + # https://wicg.github.io/turtledove/#dictdef-generatebidinterestgroup + # but has absolute expirationTime instead of relative lifetimeMs and + # also adds joiningOrigin. + object details - # Adds the specified target to the list of targets that will be monitored for any related target - # creation (such as child frames, child workers and new versions of service worker) and reported - # through `attachedToTarget`. The specified target is also auto-attached. - # This cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent - # `setAutoAttach`. Only available at the Browser target. - experimental command autoAttachRelated + # Enables/Disables issuing of interestGroupAccessed events. + experimental command setInterestGroupTracking parameters - TargetID targetId - # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` - # to run paused targets. - boolean waitForDebuggerOnStart - # Only targets matching filter will be attached. - experimental optional TargetFilter filter + boolean enable - # Controls whether to discover available targets and notify via - # `targetCreated/targetInfoChanged/targetDestroyed` events. - command setDiscoverTargets + # Enables/Disables issuing of interestGroupAuctionEventOccurred and + # interestGroupAuctionNetworkRequestCreated. + experimental command setInterestGroupAuctionTracking parameters - # Whether to discover available targets. - boolean discover - # Only targets matching filter will be attached. If `discover` is false, - # `filter` must be omitted or empty. - experimental optional TargetFilter filter + boolean enable - # Enables target discovery for the specified locations, when `setDiscoverTargets` was set to - # `true`. - experimental command setRemoteLocations + # Gets metadata for an origin's shared storage. + experimental command getSharedStorageMetadata parameters - # List of remote locations. - array of RemoteLocation locations + string ownerOrigin + returns + SharedStorageMetadata metadata - # Issued when attached to target because of auto-attach or `attachToTarget` command. - experimental event attachedToTarget + # Gets the entries in an given origin's shared storage. + experimental command getSharedStorageEntries parameters - # Identifier assigned to the session used to send/receive messages. - SessionID sessionId - TargetInfo targetInfo - boolean waitingForDebugger + string ownerOrigin + returns + array of SharedStorageEntry entries - # Issued when detached from target for any reason (including `detachFromTarget` command). Can be - # issued multiple times per target if multiple sessions have been attached to it. - experimental event detachedFromTarget + # Sets entry with `key` and `value` for a given origin's shared storage. + experimental command setSharedStorageEntry parameters - # Detached session identifier. - SessionID sessionId - # Deprecated. - deprecated optional TargetID targetId + string ownerOrigin + string key + string value + # If `ignoreIfPresent` is included and true, then only sets the entry if + # `key` doesn't already exist. + optional boolean ignoreIfPresent - # Notifies about a new protocol message received from the session (as reported in - # `attachedToTarget` event). - event receivedMessageFromTarget - parameters - # Identifier of a session which sends a message. - SessionID sessionId - string message - # Deprecated. - deprecated optional TargetID targetId + # Deletes entry for `key` (if it exists) for a given origin's shared storage. + experimental command deleteSharedStorageEntry + parameters + string ownerOrigin + string key - # Issued when a possible inspection target is created. - event targetCreated + # Clears all entries for a given origin's shared storage. + experimental command clearSharedStorageEntries parameters - TargetInfo targetInfo + string ownerOrigin - # Issued when a target is destroyed. - event targetDestroyed + # Resets the budget for `ownerOrigin` by clearing all budget withdrawals. + experimental command resetSharedStorageBudget parameters - TargetID targetId + string ownerOrigin - # Issued when a target has crashed. - event targetCrashed + # Enables/disables issuing of sharedStorageAccessed events. + experimental command setSharedStorageTracking parameters - TargetID targetId - # Termination status type. - string status - # Termination error code. - integer errorCode + boolean enable - # Issued when some information about a target has changed. This only happens between - # `targetCreated` and `targetDestroyed`. - event targetInfoChanged + # Set tracking for a storage key's buckets. + experimental command setStorageBucketTracking parameters - TargetInfo targetInfo + string storageKey + boolean enable - # Opens a DevTools window for the target. - experimental command openDevTools + # Deletes the Storage Bucket with the given storage key and bucket name. + experimental command deleteStorageBucket parameters - # This can be the page or tab target ID. - TargetID targetId - returns - # The targetId of DevTools page target. - TargetID targetId + StorageBucket bucket -# The Tethering domain defines methods and events for browser port binding. -experimental domain Tethering + # Deletes state for sites identified as potential bounce trackers, immediately. + experimental command runBounceTrackingMitigations + returns + array of string deletedSites - # Request browser port binding. - command bind + # A cache's contents have been modified. + event cacheStorageContentUpdated parameters - # Port number to bind. - integer port + # Origin to update. + string origin + # Storage key to update. + string storageKey + # Storage bucket to update. + string bucketId + # Name of cache in origin. + string cacheName - # Request browser port unbinding. - command unbind + # A cache has been added/deleted. + event cacheStorageListUpdated parameters - # Port number to unbind. - integer port + # Origin to update. + string origin + # Storage key to update. + string storageKey + # Storage bucket to update. + string bucketId - # Informs that port was successfully bound and got a specified connection id. - event accepted + # The origin's IndexedDB object store has been modified. + event indexedDBContentUpdated parameters - # Port number that was successfully bound. - integer port - # Connection id to be used. - string connectionId - -domain Tracing - depends on IO - - # Configuration for memory dump. Used only when "memory-infra" category is enabled. - experimental type MemoryDumpConfig extends object - - type TraceConfig extends object - properties - # Controls how the trace buffer stores data. The default is `recordUntilFull`. - experimental optional enum recordMode - recordUntilFull - recordContinuously - recordAsMuchAsPossible - echoToConsole - # Size of the trace buffer in kilobytes. If not specified or zero is passed, a default value - # of 200 MB would be used. - experimental optional number traceBufferSizeInKb - # Turns on JavaScript stack sampling. - experimental optional boolean enableSampling - # Turns on system tracing. - experimental optional boolean enableSystrace - # Turns on argument filter. - experimental optional boolean enableArgumentFilter - # Included category filters. - optional array of string includedCategories - # Excluded category filters. - optional array of string excludedCategories - # Configuration to synthesize the delays in tracing. - experimental optional array of string syntheticDelays - # Configuration for memory dump triggers. Used only when "memory-infra" category is enabled. - experimental optional MemoryDumpConfig memoryDumpConfig - - # Data format of a trace. Can be either the legacy JSON format or the - # protocol buffer format. Note that the JSON format will be deprecated soon. - experimental type StreamFormat extends string - enum - json - proto - - # Compression type to use for traces returned via streams. - experimental type StreamCompression extends string - enum - none - gzip + # Origin to update. + string origin + # Storage key to update. + string storageKey + # Storage bucket to update. + string bucketId + # Database to update. + string databaseName + # ObjectStore to update. + string objectStoreName - # Details exposed when memory request explicitly declared. - # Keep consistent with memory_dump_request_args.h and - # memory_instrumentation.mojom - experimental type MemoryDumpLevelOfDetail extends string - enum - background - light - detailed + # The origin's IndexedDB database list has been modified. + event indexedDBListUpdated + parameters + # Origin to update. + string origin + # Storage key to update. + string storageKey + # Storage bucket to update. + string bucketId - # 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`. - experimental type TracingBackend extends string - enum - auto - chrome - system + # One of the interest groups was accessed. Note that these events are global + # to all targets sharing an interest group store. + event interestGroupAccessed + parameters + Network.TimeSinceEpoch accessTime + InterestGroupAccessType type + string ownerOrigin + string name + # For topLevelBid/topLevelAdditionalBid, and when appropriate, + # win and additionalBidWin + optional string componentSellerOrigin + # For bid or somethingBid event, if done locally and not on a server. + optional number bid + optional string bidCurrency + # For non-global events --- links to interestGroupAuctionEvent + optional InterestGroupAuctionId uniqueAuctionId - # Stop trace events collection. - command end + # An auction involving interest groups is taking place. These events are + # target-specific. + event interestGroupAuctionEventOccurred + parameters + Network.TimeSinceEpoch eventTime + InterestGroupAuctionEventType type + InterestGroupAuctionId uniqueAuctionId + # Set for child auctions. + optional InterestGroupAuctionId parentAuctionId + # Set for started and configResolved + optional object auctionConfig - # Gets supported tracing categories. - experimental command getCategories - returns - # A list of supported tracing categories. - array of string categories + # Specifies which auctions a particular network fetch may be related to, and + # in what role. Note that it is not ordered with respect to + # Network.requestWillBeSent (but will happen before loadingFinished + # loadingFailed). + event interestGroupAuctionNetworkRequestCreated + parameters + InterestGroupAuctionFetchType type + Network.RequestId requestId + # This is the set of the auctions using the worklet that issued this + # request. In the case of trusted signals, it's possible that only some of + # them actually care about the keys being queried. + array of InterestGroupAuctionId auctions - # Record a clock sync marker in the trace. - experimental command recordClockSyncMarker + # Shared storage was accessed by the associated page. + # The following parameters are included in all events. + event sharedStorageAccessed parameters - # The ID of this clock sync marker - string syncId + # Time of the access. + Network.TimeSinceEpoch accessTime + # Enum value indicating the access scope. + SharedStorageAccessScope scope + # Enum value indicating the Shared Storage API method invoked. + SharedStorageAccessMethod method + # DevTools Frame Token for the primary frame tree's root. + Page.FrameId mainFrameId + # Serialization of the origin owning the Shared Storage data. + string ownerOrigin + # Serialization of the site owning the Shared Storage data. + string ownerSite + # The sub-parameters wrapped by `params` are all optional and their + # presence/absence depends on `type`. + SharedStorageAccessParams params - # Request a global memory dump. - experimental command requestMemoryDump + # A shared storage run or selectURL operation finished its execution. + # The following parameters are included in all events. + event sharedStorageWorkletOperationExecutionFinished parameters - # Enables more deterministic results by forcing garbage collection - optional boolean deterministic - # Specifies level of details in memory dump. Defaults to "detailed". - optional MemoryDumpLevelOfDetail levelOfDetail - returns - # GUID of the resulting global memory dump. - string dumpGuid - # True iff the global memory dump succeeded. - boolean success + # Time that the operation finished. + Network.TimeSinceEpoch finishedTime + # Time, in microseconds, from start of shared storage JS API call until + # end of operation execution in the worklet. + integer executionTime + # Enum value indicating the Shared Storage API method invoked. + SharedStorageAccessMethod method + # ID of the operation call. + string operationId + # Hex representation of the DevTools token used as the TargetID for the + # associated shared storage worklet. + Target.TargetID workletTargetId + # DevTools Frame Token for the primary frame tree's root. + Page.FrameId mainFrameId + # Serialization of the origin owning the Shared Storage data. + string ownerOrigin - # Start trace events collection. - command start + event storageBucketCreatedOrUpdated parameters - # Category/tag filter - experimental deprecated optional string categories - # Tracing options - experimental deprecated optional string options - # If set, the agent will issue bufferUsage events at this interval, specified in milliseconds - experimental optional number bufferUsageReportingInterval - # Whether to report trace events as series of dataCollected events or to save trace to a - # stream (defaults to `ReportEvents`). - optional enum transferMode - ReportEvents - ReturnAsStream - # Trace data format to use. This only applies when using `ReturnAsStream` - # transfer mode (defaults to `json`). - optional StreamFormat streamFormat - # Compression format to use. This only applies when using `ReturnAsStream` - # transfer mode (defaults to `none`) - experimental optional StreamCompression streamCompression - optional TraceConfig traceConfig - # Base64-encoded serialized perfetto.protos.TraceConfig protobuf message - # When specified, the parameters `categories`, `options`, `traceConfig` - # are ignored. - experimental optional binary perfettoConfig - # Backend type (defaults to `auto`) - experimental optional TracingBackend tracingBackend + StorageBucketInfo bucketInfo - experimental event bufferUsage + event storageBucketDeleted parameters - # A number in range [0..1] that indicates the used size of event buffer as a fraction of its - # total size. - optional number percentFull - # An approximate number of events in the trace log. - optional number eventCount - # A number in range [0..1] that indicates the used size of event buffer as a fraction of its - # total size. - optional number value + string bucketId - # Contains a bucket of collected trace events. When tracing is stopped collected events will be - # sent as a sequence of dataCollected events followed by tracingComplete event. - experimental event dataCollected + # https://wicg.github.io/attribution-reporting-api/ + experimental command setAttributionReportingLocalTestingMode parameters - array of object value + # If enabled, noise is suppressed and reports are sent immediately. + boolean enabled - # Signals that tracing is stopped and there is no trace buffers pending flush, all data were - # delivered via dataCollected events. - event tracingComplete + # Enables/disables issuing of Attribution Reporting events. + experimental command setAttributionReportingTracking parameters - # Indicates whether some trace data is known to have been lost, e.g. because the trace ring - # buffer wrapped around. - boolean dataLossOccurred - # A handle of the stream that holds resulting trace data. - optional IO.StreamHandle stream - # Trace data format of returned stream. - optional StreamFormat traceFormat - # Compression format of returned stream. - optional StreamCompression streamCompression - -# A domain for letting clients substitute browser's network layer with client code. -domain Fetch - depends on Network - depends on IO - depends on Page + boolean enable - # Unique request identifier. - # Note that this does not identify individual HTTP requests that are part of - # a network request. - type RequestId extends string + # Sends all pending Attribution Reports immediately, regardless of their + # scheduled report time. + experimental command sendPendingAttributionReports + returns + # The number of reports that were sent. + integer numSent - # Stages of the request to handle. Request will intercept before the request is - # sent. Response will intercept after the response is received (but before response - # body is received). - type RequestStage extends string + experimental type AttributionReportingSourceType extends string enum - Request - Response + navigation + event - type RequestPattern extends object + experimental type UnsignedInt64AsBase10 extends string + experimental type UnsignedInt128AsBase16 extends string + experimental type SignedInt64AsBase10 extends string + + experimental type AttributionReportingFilterDataEntry extends object properties - # Wildcards (`'*'` -> zero or more, `'?'` -> exactly one) are allowed. Escape character is - # backslash. Omitting is equivalent to `"*"`. - optional string urlPattern - # If set, only requests for matching resource types will be intercepted. - optional Network.ResourceType resourceType - # Stage at which to begin intercepting requests. Default is Request. - optional RequestStage requestStage + string key + array of string values - # Response HTTP header entry - type HeaderEntry extends object + experimental type AttributionReportingFilterConfig extends object properties - string name - string value + array of AttributionReportingFilterDataEntry filterValues + # duration in seconds + optional integer lookbackWindow - # Authorization challenge for HTTP status code 401 or 407. - type AuthChallenge extends object + experimental type AttributionReportingFilterPair extends object properties - # Source of the authentication challenge. - optional enum source - Server - Proxy - # Origin of the challenger. - string origin - # The authentication scheme used, such as basic or digest - string scheme - # The realm of the challenge. May be empty. - string realm + array of AttributionReportingFilterConfig filters + array of AttributionReportingFilterConfig notFilters - # Response to an AuthChallenge. - type AuthChallengeResponse extends object + experimental type AttributionReportingAggregationKeysEntry extends object properties - # The decision on what to do in response to the authorization challenge. Default means - # deferring to the default behavior of the net stack, which will likely either the Cancel - # authentication or display a popup dialog box. - enum response - Default - CancelAuth - ProvideCredentials - # The username to provide, possibly empty. Should only be set if response is - # ProvideCredentials. - optional string username - # The password to provide, possibly empty. Should only be set if response is - # ProvideCredentials. - optional string password + string key + UnsignedInt128AsBase16 value - # Disables the fetch domain. - command disable + experimental type AttributionReportingEventReportWindows extends object + properties + # duration in seconds + integer start + # duration in seconds + array of integer ends - # Enables issuing of requestPaused events. A request will be paused until client - # calls one of failRequest, fulfillRequest or continueRequest/continueWithAuth. - command enable - parameters - # If specified, only requests matching any of these patterns will produce - # fetchRequested event and will be paused until clients response. If not set, - # all requests will be affected. - optional array of RequestPattern patterns - # If true, authRequired events will be issued and requests will be paused - # expecting a call to continueWithAuth. - optional boolean handleAuthRequests + experimental type AttributionReportingTriggerDataMatching extends string + enum + exact + modulus - # Causes the request to fail with specified reason. - command failRequest - parameters - # An id the client received in requestPaused event. - RequestId requestId - # Causes the request to fail with the given reason. - Network.ErrorReason errorReason + experimental type AttributionReportingAggregatableDebugReportingData extends object + properties + UnsignedInt128AsBase16 keyPiece + # number instead of integer because not all uint32 can be represented by + # int + number value + array of string types - # Provides response to the request. - command fulfillRequest - parameters - # An id the client received in requestPaused event. - RequestId requestId - # An HTTP response code. - integer responseCode - # Response headers. - optional array of HeaderEntry responseHeaders - # Alternative way of specifying response headers as a \0-separated - # series of name: value pairs. Prefer the above method unless you - # need to represent some non-UTF8 values that can't be transmitted - # over the protocol as text. - optional binary binaryResponseHeaders - # A response body. If absent, original response body will be used if - # the request is intercepted at the response stage and empty body - # will be used if the request is intercepted at the request stage. - optional binary body - # A textual representation of responseCode. - # If absent, a standard phrase matching responseCode is used. - optional string responsePhrase + experimental type AttributionReportingAggregatableDebugReportingConfig extends object + properties + # number instead of integer because not all uint32 can be represented by + # int, only present for source registrations + optional number budget + UnsignedInt128AsBase16 keyPiece + array of AttributionReportingAggregatableDebugReportingData debugData + optional string aggregationCoordinatorOrigin - # Continues the request, optionally modifying some of its parameters. - command continueRequest - parameters - # An id the client received in requestPaused event. - RequestId requestId - # If set, the request url will be modified in a way that's not observable by page. - optional string url - # If set, the request method is overridden. - optional string method - # If set, overrides the post data in the request. - optional binary postData - # If set, overrides the request headers. Note that the overrides do not - # extend to subsequent redirect hops, if a redirect happens. Another override - # may be applied to a different request produced by a redirect. - optional array of HeaderEntry headers - # If set, overrides response interception behavior for this request. - experimental optional boolean interceptResponse + experimental type AttributionScopesData extends object + properties + array of string values + # number instead of integer because not all uint32 can be represented by + # int + number limit + number maxEventStates + + experimental type AttributionReportingNamedBudgetDef extends object + properties + string name + integer budget + + experimental type AttributionReportingSourceRegistration extends object + properties + Network.TimeSinceEpoch time + # duration in seconds + integer expiry + # number instead of integer because not all uint32 can be represented by + # int + array of number triggerData + AttributionReportingEventReportWindows eventReportWindows + # duration in seconds + integer aggregatableReportWindow + AttributionReportingSourceType type + string sourceOrigin + string reportingOrigin + array of string destinationSites + UnsignedInt64AsBase10 eventId + SignedInt64AsBase10 priority + array of AttributionReportingFilterDataEntry filterData + array of AttributionReportingAggregationKeysEntry aggregationKeys + optional UnsignedInt64AsBase10 debugKey + AttributionReportingTriggerDataMatching triggerDataMatching + SignedInt64AsBase10 destinationLimitPriority + AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig + optional AttributionScopesData scopesData + integer maxEventLevelReports + array of AttributionReportingNamedBudgetDef namedBudgets + boolean debugReporting + number eventLevelEpsilon - # Continues a request supplying authChallengeResponse following authRequired event. - command continueWithAuth - parameters - # An id the client received in authRequired event. - RequestId requestId - # Response to with an authChallenge. - AuthChallengeResponse authChallengeResponse + experimental type AttributionReportingSourceRegistrationResult extends string + enum + success + internalError + insufficientSourceCapacity + insufficientUniqueDestinationCapacity + excessiveReportingOrigins + prohibitedByBrowserPolicy + successNoised + destinationReportingLimitReached + destinationGlobalLimitReached + destinationBothLimitsReached + reportingOriginsPerSiteLimitReached + exceedsMaxChannelCapacity + exceedsMaxScopesChannelCapacity + exceedsMaxTriggerStateCardinality + exceedsMaxEventStatesLimit + destinationPerDayReportingLimitReached - # Continues loading of the paused response, optionally modifying the - # response headers. If either responseCode or headers are modified, all of them - # must be present. - experimental command continueResponse + experimental event attributionReportingSourceRegistered parameters - # An id the client received in requestPaused event. - RequestId requestId - # An HTTP response code. If absent, original response code will be used. - optional integer responseCode - # A textual representation of responseCode. - # If absent, a standard phrase matching responseCode is used. - optional string responsePhrase - # Response headers. If absent, original response headers will be used. - optional array of HeaderEntry responseHeaders - # Alternative way of specifying response headers as a \0-separated - # series of name: value pairs. Prefer the above method unless you - # need to represent some non-UTF8 values that can't be transmitted - # over the protocol as text. - optional binary binaryResponseHeaders + AttributionReportingSourceRegistration registration + AttributionReportingSourceRegistrationResult result - # Causes the body of the response to be received from the server and - # returned as a single string. May only be issued for a request that - # is paused in the Response stage and is mutually exclusive with - # takeResponseBodyForInterceptionAsStream. Calling other methods that - # affect the request or disabling fetch domain before body is received - # results in an undefined behavior. - # Note that the response body is not available for redirects. Requests - # paused in the _redirect received_ state may be differentiated by - # `responseCode` and presence of `location` response header, see - # comments to `requestPaused` for details. - command getResponseBody - parameters - # Identifier for the intercepted request to get body for. - RequestId requestId - returns - # Response body. - string body - # True, if content was sent as base64. - boolean base64Encoded + experimental type AttributionReportingSourceRegistrationTimeConfig extends string + enum + include + exclude - # Returns a handle to the stream representing the response body. - # The request must be paused in the HeadersReceived stage. - # Note that after this command the request can't be continued - # as is -- client either needs to cancel it or to provide the - # response body. - # The stream only supports sequential read, IO.read will fail if the position - # is specified. - # This method is mutually exclusive with getResponseBody. - # Calling other methods that affect the request or disabling fetch - # domain before body is received results in an undefined behavior. - command takeResponseBodyAsStream - parameters - RequestId requestId - returns - IO.StreamHandle stream + experimental type AttributionReportingAggregatableValueDictEntry extends object + properties + string key + # number instead of integer because not all uint32 can be represented by + # int + number value + UnsignedInt64AsBase10 filteringId - # Issued when the domain is enabled and the request URL matches the - # specified filter. The request is paused until the client responds - # with one of continueRequest, failRequest or fulfillRequest. - # The stage of the request can be determined by presence of responseErrorReason - # and responseStatusCode -- the request is at the response stage if either - # of these fields is present and in the request stage otherwise. - # Redirect responses and subsequent requests are reported similarly to regular - # responses and requests. Redirect responses may be distinguished by the value - # of `responseStatusCode` (which is one of 301, 302, 303, 307, 308) along with - # presence of the `location` header. Requests resulting from a redirect will - # have `redirectedRequestId` field set. - event requestPaused - parameters - # Each request the page makes will have a unique id. - RequestId requestId - # The details of the request. - Network.Request request - # The id of the frame that initiated the request. - Page.FrameId frameId - # How the requested resource will be used. - Network.ResourceType resourceType - # Response error if intercepted at response stage. - optional Network.ErrorReason responseErrorReason - # Response code if intercepted at response stage. - optional integer responseStatusCode - # Response status text if intercepted at response stage. - optional string responseStatusText - # Response headers if intercepted at the response stage. - optional array of HeaderEntry responseHeaders - # If the intercepted request had a corresponding Network.requestWillBeSent event fired for it, - # then this networkId will be the same as the requestId present in the requestWillBeSent event. - optional Network.RequestId networkId - # If the request is due to a redirect response from the server, the id of the request that - # has caused the redirect. - experimental optional RequestId redirectedRequestId - # Issued when the domain is enabled with handleAuthRequests set to true. - # The request is paused until client responds with continueWithAuth. - event authRequired - parameters - # Each request the page makes will have a unique id. - RequestId requestId - # The details of the request. - Network.Request request - # The id of the frame that initiated the request. - Page.FrameId frameId - # How the requested resource will be used. - Network.ResourceType resourceType - # Details of the Authorization Challenge encountered. - # If this is set, client should respond with continueRequest that - # contains AuthChallengeResponse. - AuthChallenge authChallenge + experimental type AttributionReportingAggregatableValueEntry extends object + properties + array of AttributionReportingAggregatableValueDictEntry values + AttributionReportingFilterPair filters -# This domain allows inspection of Web Audio API. -# https://webaudio.github.io/web-audio-api/ -experimental domain WebAudio + experimental type AttributionReportingEventTriggerData extends object + properties + UnsignedInt64AsBase10 data + SignedInt64AsBase10 priority + optional UnsignedInt64AsBase10 dedupKey + AttributionReportingFilterPair filters - # An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API - type GraphObjectId extends string + experimental type AttributionReportingAggregatableTriggerData extends object + properties + UnsignedInt128AsBase16 keyPiece + array of string sourceKeys + AttributionReportingFilterPair filters - # Enum of BaseAudioContext types - type ContextType extends string - enum - realtime - offline + experimental type AttributionReportingAggregatableDedupKey extends object + properties + optional UnsignedInt64AsBase10 dedupKey + AttributionReportingFilterPair filters - # Enum of AudioContextState from the spec - type ContextState extends string - enum - suspended - running - closed - interrupted + experimental type AttributionReportingNamedBudgetCandidate extends object + properties + optional string name + AttributionReportingFilterPair filters - # Enum of AudioNode types - type NodeType extends string + experimental type AttributionReportingTriggerRegistration extends object + properties + AttributionReportingFilterPair filters + optional UnsignedInt64AsBase10 debugKey + array of AttributionReportingAggregatableDedupKey aggregatableDedupKeys + array of AttributionReportingEventTriggerData eventTriggerData + array of AttributionReportingAggregatableTriggerData aggregatableTriggerData + array of AttributionReportingAggregatableValueEntry aggregatableValues + integer aggregatableFilteringIdMaxBytes + boolean debugReporting + optional string aggregationCoordinatorOrigin + AttributionReportingSourceRegistrationTimeConfig sourceRegistrationTimeConfig + optional string triggerContextId + AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig + array of string scopes + array of AttributionReportingNamedBudgetCandidate namedBudgets - # Enum of AudioNode::ChannelCountMode from the spec - type ChannelCountMode extends string + experimental type AttributionReportingEventLevelResult extends string enum - clamped-max - explicit - max + success + successDroppedLowerPriority + internalError + noCapacityForAttributionDestination + noMatchingSources + deduplicated + excessiveAttributions + priorityTooLow + neverAttributedSource + excessiveReportingOrigins + noMatchingSourceFilterData + prohibitedByBrowserPolicy + noMatchingConfigurations + excessiveReports + falselyAttributedSource + reportWindowPassed + notRegistered + reportWindowNotStarted + noMatchingTriggerData - # Enum of AudioNode::ChannelInterpretation from the spec - type ChannelInterpretation extends string + experimental type AttributionReportingAggregatableResult extends string enum - discrete - speakers + success + internalError + noCapacityForAttributionDestination + noMatchingSources + excessiveAttributions + excessiveReportingOrigins + noHistograms + insufficientBudget + insufficientNamedBudget + noMatchingSourceFilterData + notRegistered + prohibitedByBrowserPolicy + deduplicated + reportWindowPassed + excessiveReports - # Enum of AudioParam types - type ParamType extends string + experimental event attributionReportingTriggerRegistered + parameters + AttributionReportingTriggerRegistration registration + AttributionReportingEventLevelResult eventLevel + AttributionReportingAggregatableResult aggregatable - # Enum of AudioParam::AutomationRate from the spec - type AutomationRate extends string + experimental type AttributionReportingReportResult extends string enum - a-rate - k-rate - - # Fields in AudioContext that change in real-time. - type ContextRealtimeData extends object - properties - # The current context time in second in BaseAudioContext. - number currentTime - # The time spent on rendering graph divided by render quantum duration, - # and multiplied by 100. 100 means the audio renderer reached the full - # capacity and glitch may occur. - number renderCapacity - # A running mean of callback interval. - number callbackIntervalMean - # A running variance of callback interval. - number callbackIntervalVariance - - # Protocol object for BaseAudioContext - type BaseAudioContext extends object - properties - GraphObjectId contextId - ContextType contextType - ContextState contextState - optional ContextRealtimeData realtimeData - # Platform-dependent callback buffer size. - number callbackBufferSize - # Number of output channels supported by audio hardware in use. - number maxOutputChannelCount - # Context sample rate. - number sampleRate + # A network request was attempted for the report. + sent + # No request was attempted because of browser policy. + prohibited + # No request was attempted because of an error in report assembly, + # e.g. the aggregation service was unavailable. + failedToAssemble + # No request was attempted because the report's expiry passed. + expired -# Protocol object for AudioListener - type AudioListener extends object - properties - GraphObjectId listenerId - GraphObjectId contextId + experimental event attributionReportingReportSent + parameters + string url + object body + AttributionReportingReportResult result + # If result is `sent`, populated with net/HTTP status. + optional integer netError + optional string netErrorName + optional integer httpStatusCode - # Protocol object for AudioNode - type AudioNode extends object - properties - GraphObjectId nodeId - GraphObjectId contextId - NodeType nodeType - number numberOfInputs - number numberOfOutputs - number channelCount - ChannelCountMode channelCountMode - ChannelInterpretation channelInterpretation + experimental event attributionReportingVerboseDebugReportSent + parameters + string url + optional array of object body + optional integer netError + optional string netErrorName + optional integer httpStatusCode - # Protocol object for AudioParam - type AudioParam extends object + # A single Related Website Set object. + experimental type RelatedWebsiteSet extends object properties - GraphObjectId paramId - GraphObjectId nodeId - GraphObjectId contextId - ParamType paramType - AutomationRate rate - number defaultValue - number minValue - number maxValue - - # Enables the WebAudio domain and starts sending context lifetime events. - command enable + # The primary site of this set, along with the ccTLDs if there is any. + array of string primarySites + # The associated sites of this set, along with the ccTLDs if there is any. + array of string associatedSites + # The service sites of this set, along with the ccTLDs if there is any. + array of string serviceSites - # Disables the WebAudio domain. - command disable + # Returns the effective Related Website Sets in use by this profile for the browser + # session. The effective Related Website Sets will not change during a browser session. + experimental command getRelatedWebsiteSets + returns + array of RelatedWebsiteSet sets - # Fetch the realtime data from the registered contexts. - command getRealtimeData + # Returns the list of URLs from a page and its embedded resources that match + # existing grace period URL pattern rules. + # https://developers.google.com/privacy-sandbox/cookies/temporary-exceptions/grace-period + experimental command getAffectedUrlsForThirdPartyCookieMetadata parameters - GraphObjectId contextId + # The URL of the page currently being visited. + string firstPartyUrl + # The list of embedded resource URLs from the page. + array of string thirdPartyUrls + returns - ContextRealtimeData realtimeData + # Array of matching URLs. If there is a primary pattern match for the first- + # party URL, only the first-party URL is returned in the array. + array of string matchedUrls - # Notifies that a new BaseAudioContext has been created. - event contextCreated + command setProtectedAudienceKAnonymity parameters - BaseAudioContext context + string owner + string name + array of binary hashes - # Notifies that an existing BaseAudioContext will be destroyed. - event contextWillBeDestroyed - parameters - GraphObjectId contextId +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Notifies that existing BaseAudioContext has changed some properties (id stays the same).. - event contextChanged - parameters - BaseAudioContext context +# The SystemInfo domain defines methods and events for querying low-level system information. +experimental domain SystemInfo -# Notifies that the construction of an AudioListener has finished. - event audioListenerCreated - parameters - AudioListener listener + # Describes a single graphics processor (GPU). + type GPUDevice extends object + properties + # PCI ID of the GPU vendor, if available; 0 otherwise. + number vendorId + # PCI ID of the GPU device, if available; 0 otherwise. + number deviceId + # Sub sys ID of the GPU, only available on Windows. + optional number subSysId + # Revision of the GPU, only available on Windows. + optional number revision + # String description of the GPU vendor, if the PCI ID is not available. + string vendorString + # String description of the GPU device, if the PCI ID is not available. + string deviceString + # String description of the GPU driver vendor. + string driverVendor + # String description of the GPU driver version. + string driverVersion - # Notifies that a new AudioListener has been created. - event audioListenerWillBeDestroyed - parameters - GraphObjectId contextId - GraphObjectId listenerId + # Describes the width and height dimensions of an entity. + type Size extends object + properties + # Width in pixels. + integer width + # Height in pixels. + integer height - # Notifies that a new AudioNode has been created. - event audioNodeCreated - parameters - AudioNode node + # Describes a supported video decoding profile with its associated minimum and + # maximum resolutions. + type VideoDecodeAcceleratorCapability extends object + properties + # Video codec profile that is supported, e.g. VP9 Profile 2. + string profile + # Maximum video dimensions in pixels supported for this |profile|. + Size maxResolution + # Minimum video dimensions in pixels supported for this |profile|. + Size minResolution - # Notifies that an existing AudioNode has been destroyed. - event audioNodeWillBeDestroyed - parameters - GraphObjectId contextId - GraphObjectId nodeId + # Describes a supported video encoding profile with its associated maximum + # resolution and maximum framerate. + type VideoEncodeAcceleratorCapability extends object + properties + # Video codec profile that is supported, e.g H264 Main. + string profile + # Maximum video dimensions in pixels supported for this |profile|. + Size maxResolution + # Maximum encoding framerate in frames per second supported for this + # |profile|, as fraction's numerator and denominator, e.g. 24/1 fps, + # 24000/1001 fps, etc. + integer maxFramerateNumerator + integer maxFramerateDenominator - # Notifies that a new AudioParam has been created. - event audioParamCreated - parameters - AudioParam param + # YUV subsampling type of the pixels of a given image. + type SubsamplingFormat extends string + enum + yuv420 + yuv422 + yuv444 - # Notifies that an existing AudioParam has been destroyed. - event audioParamWillBeDestroyed - parameters - GraphObjectId contextId - GraphObjectId nodeId - GraphObjectId paramId + # Image format of a given image. + type ImageType extends string + enum + jpeg + webp + unknown + + # Describes a supported image decoding profile with its associated minimum and + # maximum resolutions and subsampling. + type ImageDecodeAcceleratorCapability extends object + properties + # Image coded, e.g. Jpeg. + ImageType imageType + # Maximum supported dimensions of the image in pixels. + Size maxDimensions + # Minimum supported dimensions of the image in pixels. + Size minDimensions + # Optional array of supported subsampling formats, e.g. 4:2:0, if known. + array of SubsamplingFormat subsamplings - # Notifies that two AudioNodes are connected. - event nodesConnected - parameters - GraphObjectId contextId - GraphObjectId sourceId - GraphObjectId destinationId - optional number sourceOutputIndex - optional number destinationInputIndex + # Provides information about the GPU(s) on the system. + type GPUInfo extends object + properties + # The graphics devices on the system. Element 0 is the primary GPU. + array of GPUDevice devices + # An optional dictionary of additional GPU related attributes. + optional object auxAttributes + # An optional dictionary of graphics features and their status. + optional object featureStatus + # An optional array of GPU driver bug workarounds. + array of string driverBugWorkarounds + # Supported accelerated video decoding capabilities. + array of VideoDecodeAcceleratorCapability videoDecoding + # Supported accelerated video encoding capabilities. + array of VideoEncodeAcceleratorCapability videoEncoding + # Supported accelerated image decoding capabilities. + array of ImageDecodeAcceleratorCapability imageDecoding - # Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected. - event nodesDisconnected - parameters - GraphObjectId contextId - GraphObjectId sourceId - GraphObjectId destinationId - optional number sourceOutputIndex - optional number destinationInputIndex + # Represents process info. + type ProcessInfo extends object + properties + # Specifies process type. + string type + # Specifies process id. + integer id + # Specifies cumulative CPU usage in seconds across all threads of the + # process since the process start. + number cpuTime - # Notifies that an AudioNode is connected to an AudioParam. - event nodeParamConnected - parameters - GraphObjectId contextId - GraphObjectId sourceId - GraphObjectId destinationId - optional number sourceOutputIndex + # Returns information about the system. + command getInfo + returns + # Information about the GPUs on the system. + GPUInfo gpu + # A platform-dependent description of the model of the machine. On Mac OS, this is, for + # example, 'MacBookPro'. Will be the empty string if not supported. + string modelName + # A platform-dependent description of the version of the machine. On Mac OS, this is, for + # example, '10.1'. Will be the empty string if not supported. + string modelVersion + # The command line string used to launch the browser. Will be the empty string if not + # supported. + string commandLine - # Notifies that an AudioNode is disconnected to an AudioParam. - event nodeParamDisconnected + # Returns information about the feature state. + command getFeatureState parameters - GraphObjectId contextId - GraphObjectId sourceId - GraphObjectId destinationId - optional number sourceOutputIndex + string featureState + returns + boolean featureEnabled -# This domain allows configuring virtual authenticators to test the WebAuthn -# API. -experimental domain WebAuthn - type AuthenticatorId extends string + # Returns information about all running processes. + command getProcessInfo + returns + # An array of process info blocks. + array of ProcessInfo processInfo - type AuthenticatorProtocol extends string - enum - # Universal 2nd Factor. - u2f - # Client To Authenticator Protocol 2. - ctap2 +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - type Ctap2Version extends string - enum - ctap2_0 - ctap2_1 +# Supports additional targets discovery and allows to attach to them. +domain Target - type AuthenticatorTransport extends string - enum - # Cross-Platform authenticator attachments: - usb - nfc - ble - cable - # Platform authenticator attachment: - internal + type TargetID extends string - type VirtualAuthenticatorOptions extends object - properties - AuthenticatorProtocol protocol - # Defaults to ctap2_0. Ignored if |protocol| == u2f. - optional Ctap2Version ctap2Version - AuthenticatorTransport transport - # Defaults to false. - optional boolean hasResidentKey - # Defaults to false. - optional boolean hasUserVerification - # If set to true, the authenticator will support the largeBlob extension. - # https://w3c.github.io/webauthn#largeBlob - # Defaults to false. - optional boolean hasLargeBlob - # If set to true, the authenticator will support the credBlob extension. - # https://fidoalliance.org/specs/fido-v2.1-rd-20201208/fido-client-to-authenticator-protocol-v2.1-rd-20201208.html#sctn-credBlob-extension - # Defaults to false. - optional boolean hasCredBlob - # If set to true, the authenticator will support the minPinLength extension. - # https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#sctn-minpinlength-extension - # Defaults to false. - optional boolean hasMinPinLength - # If set to true, the authenticator will support the prf extension. - # https://w3c.github.io/webauthn/#prf-extension - # Defaults to false. - optional boolean hasPrf - # If set to true, tests of user presence will succeed immediately. - # Otherwise, they will not be resolved. Defaults to true. - optional boolean automaticPresenceSimulation - # Sets whether User Verification succeeds or fails for an authenticator. - # Defaults to false. - optional boolean isUserVerified - # Credentials created by this authenticator will have the backup - # eligibility (BE) flag set to this value. Defaults to false. - # https://w3c.github.io/webauthn/#sctn-credential-backup - optional boolean defaultBackupEligibility - # Credentials created by this authenticator will have the backup state - # (BS) flag set to this value. Defaults to false. - # https://w3c.github.io/webauthn/#sctn-credential-backup - optional boolean defaultBackupState + # Unique identifier of attached debugging session. + type SessionID extends string - type Credential extends object + type TargetInfo extends object properties - binary credentialId - boolean isResidentCredential - # Relying Party ID the credential is scoped to. Must be set when adding a - # credential. - optional string rpId - # The ECDSA P-256 private key in PKCS#8 format. - binary privateKey - # An opaque byte sequence with a maximum size of 64 bytes mapping the - # credential to a specific user. - optional binary userHandle - # Signature counter. This is incremented by one for each successful - # assertion. - # See https://w3c.github.io/webauthn/#signature-counter - integer signCount - # The large blob associated with the credential. - # See https://w3c.github.io/webauthn/#sctn-large-blob-extension - optional binary largeBlob - # Assertions returned by this credential will have the backup eligibility - # (BE) flag set to this value. Defaults to the authenticator's - # defaultBackupEligibility value. - optional boolean backupEligibility - # Assertions returned by this credential will have the backup state (BS) - # flag set to this value. Defaults to the authenticator's - # defaultBackupState value. - optional boolean backupState - # The credential's user.name property. Equivalent to empty if not set. - # https://w3c.github.io/webauthn/#dom-publickeycredentialentity-name - optional string userName - # The credential's user.displayName property. Equivalent to empty if - # not set. - # https://w3c.github.io/webauthn/#dom-publickeycredentialuserentity-displayname - optional string userDisplayName + TargetID targetId + # List of types: https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypeTab%5B%5D%22 + string type + string title + string url + # Whether the target has an attached client. + boolean attached + # Opener target Id + optional TargetID openerId + # Whether the target has access to the originating window. + experimental boolean canAccessOpener + # Frame id of originating window (is only set if target has an opener). + experimental optional Page.FrameId openerFrameId + # Id of the parent frame, only present for the "iframe" targets. + experimental optional Page.FrameId parentFrameId + experimental optional Browser.BrowserContextID browserContextId + # Provides additional details for specific target types. For example, for + # the type of "page", this may be set to "prerender". + experimental optional string subtype - # Enable the WebAuthn domain and start intercepting credential storage and - # retrieval with a virtual authenticator. - command enable - parameters - # Whether to enable the WebAuthn user interface. Enabling the UI is - # recommended for debugging and demo purposes, as it is closer to the real - # experience. Disabling the UI is recommended for automated testing. - # Supported at the embedder's discretion if UI is available. - # Defaults to false. - optional boolean enableUI + # A filter used by target query/discovery/auto-attach operations. + experimental type FilterEntry extends object + properties + # If set, causes exclusion of matching targets from the list. + optional boolean exclude + # If not present, matches any type. + optional string type - # Disable the WebAuthn domain. - command disable + # The entries in TargetFilter are matched sequentially against targets and + # the first entry that matches determines if the target is included or not, + # depending on the value of `exclude` field in the entry. + # If filter is not specified, the one assumed is + # [{type: "browser", exclude: true}, {type: "tab", exclude: true}, {}] + # (i.e. include everything but `browser` and `tab`). + experimental type TargetFilter extends array of FilterEntry - # Creates and adds a virtual authenticator. - command addVirtualAuthenticator - parameters - VirtualAuthenticatorOptions options - returns - AuthenticatorId authenticatorId + experimental type RemoteLocation extends object + properties + string host + integer port - # Resets parameters isBogusSignature, isBadUV, isBadUP to false if they are not present. - command setResponseOverrideBits - parameters - AuthenticatorId authenticatorId - # If isBogusSignature is set, overrides the signature in the authenticator response to be zero. - # Defaults to false. - optional boolean isBogusSignature - # If isBadUV is set, overrides the UV bit in the flags in the authenticator response to - # be zero. Defaults to false. - optional boolean isBadUV - # If isBadUP is set, overrides the UP bit in the flags in the authenticator response to - # be zero. Defaults to false. - optional boolean isBadUP + # The state of the target window. + experimental type WindowState extends string + enum + normal + minimized + maximized + fullscreen - # Removes the given authenticator. - command removeVirtualAuthenticator + # Activates (focuses) the target. + command activateTarget parameters - AuthenticatorId authenticatorId + TargetID targetId - # Adds the credential to the specified authenticator. - command addCredential + # Attaches to the target with given id. + command attachToTarget parameters - AuthenticatorId authenticatorId - Credential credential + TargetID targetId + # Enables "flat" access to the session via specifying sessionId attribute in the commands. + # We plan to make this the default, deprecate non-flattened mode, + # and eventually retire it. See crbug.com/991325. + optional boolean flatten + returns + # Id assigned to the session. + SessionID sessionId - # Returns a single credential stored in the given virtual authenticator that - # matches the credential ID. - command getCredential - parameters - AuthenticatorId authenticatorId - binary credentialId + # Attaches to the browser target, only uses flat sessionId mode. + experimental command attachToBrowserTarget returns - Credential credential + # Id assigned to the session. + SessionID sessionId - # Returns all the credentials stored in the given virtual authenticator. - command getCredentials + # Closes the target. If the target is a page that gets closed too. + command closeTarget parameters - AuthenticatorId authenticatorId + TargetID targetId returns - array of Credential credentials + # Always set to true. If an error occurs, the response indicates protocol error. + deprecated boolean success - # Removes a credential from the authenticator. - command removeCredential + # Inject object to the target's main frame that provides a communication + # channel with browser target. + # + # Injected object will be available as `window[bindingName]`. + # + # The object has the following API: + # - `binding.send(json)` - a method to send messages over the remote debugging protocol + # - `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses. + experimental command exposeDevToolsProtocol parameters - AuthenticatorId authenticatorId - binary credentialId + TargetID targetId + # Binding name, 'cdp' if not specified. + optional string bindingName + # If true, inherits the current root session's permissions (default: false). + optional boolean inheritPermissions - # Clears all the credentials from the specified device. - command clearCredentials + # Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than + # one. + command createBrowserContext parameters - AuthenticatorId authenticatorId + # If specified, disposes this context when debugging session disconnects. + experimental optional boolean disposeOnDetach + # Proxy server, similar to the one passed to --proxy-server + experimental optional string proxyServer + # Proxy bypass list, similar to the one passed to --proxy-bypass-list + experimental optional string proxyBypassList + # An optional list of origins to grant unlimited cross-origin access to. + # Parts of the URL other than those constituting origin are ignored. + experimental optional array of string originsWithUniversalNetworkAccess + returns + # The id of the context created. + Browser.BrowserContextID browserContextId - # Sets whether User Verification succeeds or fails for an authenticator. - # The default is true. - command setUserVerified - parameters - AuthenticatorId authenticatorId - boolean isUserVerified + # Returns all browser contexts created with `Target.createBrowserContext` method. + command getBrowserContexts + returns + # An array of browser context ids. + array of Browser.BrowserContextID browserContextIds - # Sets whether tests of user presence will succeed immediately (if true) or fail to resolve (if false) for an authenticator. - # The default is true. - command setAutomaticPresenceSimulation + # Creates a new page. + command createTarget parameters - AuthenticatorId authenticatorId - boolean enabled + # The initial URL the page will be navigated to. An empty string indicates about:blank. + string url + # Frame left origin in DIP (requires newWindow to be true or headless shell). + experimental optional integer left + # Frame top origin in DIP (requires newWindow to be true or headless shell). + experimental optional integer top + # Frame width in DIP (requires newWindow to be true or headless shell). + optional integer width + # Frame height in DIP (requires newWindow to be true or headless shell). + optional integer height + # Frame window state (requires newWindow to be true or headless shell). + # Default is normal. + optional WindowState windowState + # The browser context to create the page in. + experimental optional Browser.BrowserContextID browserContextId + # Whether BeginFrames for this target will be controlled via DevTools (headless shell only, + # not supported on MacOS yet, false by default). + experimental optional boolean enableBeginFrameControl + # Whether to create a new Window or Tab (false by default, not supported by headless shell). + optional boolean newWindow + # Whether to create the target in background or foreground (false by default, not supported + # by headless shell). + optional boolean background + # Whether to create the target of type "tab". + experimental optional boolean forTab + # Whether to create a hidden target. The hidden target is observable via protocol, but not + # present in the tab UI strip. Cannot be created with `forTab: true`, `newWindow: true` or + # `background: false`. The life-time of the tab is limited to the life-time of the session. + experimental optional boolean hidden + returns + # The id of the page opened. + TargetID targetId - # Allows setting credential properties. - # https://w3c.github.io/webauthn/#sctn-automation-set-credential-properties - command setCredentialProperties + # Detaches session with given id. + command detachFromTarget parameters - AuthenticatorId authenticatorId - binary credentialId - optional boolean backupEligibility - optional boolean backupState + # Session to detach. + optional SessionID sessionId + # Deprecated. + deprecated optional TargetID targetId - # Triggered when a credential is added to an authenticator. - event credentialAdded + # Deletes a BrowserContext. All the belonging pages will be closed without calling their + # beforeunload hooks. + command disposeBrowserContext parameters - AuthenticatorId authenticatorId - Credential credential + Browser.BrowserContextID browserContextId - # Triggered when a credential is deleted, e.g. through - # PublicKeyCredential.signalUnknownCredential(). - event credentialDeleted + # Returns information about a target. + experimental command getTargetInfo parameters - AuthenticatorId authenticatorId - binary credentialId + optional TargetID targetId + returns + TargetInfo targetInfo - # Triggered when a credential is updated, e.g. through - # PublicKeyCredential.signalCurrentUserDetails(). - event credentialUpdated + # Retrieves a list of available targets. + command getTargets parameters - AuthenticatorId authenticatorId - Credential credential + # Only targets matching filter will be reported. If filter is not specified + # and target discovery is currently enabled, a filter used for target discovery + # is used for consistency. + experimental optional TargetFilter filter + returns + # The list of targets. + array of TargetInfo targetInfos - # Triggered when a credential is used in a webauthn assertion. - event credentialAsserted + # Sends protocol message over session with given id. + # Consider using flat mode instead; see commands attachToTarget, setAutoAttach, + # and crbug.com/991325. + deprecated command sendMessageToTarget parameters - AuthenticatorId authenticatorId - Credential credential - -# This domain allows detailed inspection of media elements -experimental domain Media - - # Players will get an ID that is unique within the agent context. - type PlayerId extends string - - type Timestamp extends number - - # Have one type per entry in MediaLogRecord::Type - # Corresponds to kMessage - type PlayerMessage extends object - properties - # Keep in sync with MediaLogMessageLevel - # We are currently keeping the message level 'error' separate from the - # PlayerError type because right now they represent different things, - # this one being a DVLOG(ERROR) style log message that gets printed - # based on what log level is selected in the UI, and the other is a - # representation of a media::PipelineStatus object. Soon however we're - # going to be moving away from using PipelineStatus for errors and - # introducing a new error type which should hopefully let us integrate - # the error log level into the PlayerError type. - enum level - error - warning - info - debug string message + # Identifier of the session. + optional SessionID sessionId + # Deprecated. + deprecated optional TargetID targetId - # Corresponds to kMediaPropertyChange - type PlayerProperty extends object - properties - string name - string value - - # Corresponds to kMediaEventTriggered - type PlayerEvent extends object - properties - Timestamp timestamp - string value - - # Represents logged source line numbers reported in an error. - # NOTE: file and line are from chromium c++ implementation code, not js. - type PlayerErrorSourceLocation extends object - properties - string file - integer line - - # Corresponds to kMediaError - type PlayerError extends object - properties - string errorType - # Code is the numeric enum entry for a specific set of error codes, such - # as PipelineStatusCodes in media/base/pipeline_status.h - integer code - # A trace of where this error was caused / where it passed through. - array of PlayerErrorSourceLocation stack - # Errors potentially have a root cause error, ie, a DecoderError might be - # caused by an WindowsError - array of PlayerError cause - # Extra data attached to an error, such as an HRESULT, Video Codec, etc. - object data - - # This can be called multiple times, and can be used to set / override / - # remove player properties. A null propValue indicates removal. - event playerPropertiesChanged + # Controls whether to automatically attach to new targets which are considered + # to be directly related to this one (for example, iframes or workers). + # When turned on, attaches to all existing related targets as well. When turned off, + # automatically detaches from all currently attached targets. + # This also clears all targets added by `autoAttachRelated` from the list of targets to watch + # for creation of related targets. + # You might want to call this recursively for auto-attached targets to attach + # to all available targets. + command setAutoAttach parameters - PlayerId playerId - array of PlayerProperty properties + # Whether to auto-attach to related targets. + boolean autoAttach + # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` + # to run paused targets. + boolean waitForDebuggerOnStart + # Enables "flat" access to the session via specifying sessionId attribute in the commands. + # We plan to make this the default, deprecate non-flattened mode, + # and eventually retire it. See crbug.com/991325. + experimental optional boolean flatten + # Only targets matching filter will be attached. + experimental optional TargetFilter filter - # Send events as a list, allowing them to be batched on the browser for less - # congestion. If batched, events must ALWAYS be in chronological order. - event playerEventsAdded + # Adds the specified target to the list of targets that will be monitored for any related target + # creation (such as child frames, child workers and new versions of service worker) and reported + # through `attachedToTarget`. The specified target is also auto-attached. + # This cancels the effect of any previous `setAutoAttach` and is also cancelled by subsequent + # `setAutoAttach`. Only available at the Browser target. + experimental command autoAttachRelated parameters - PlayerId playerId - array of PlayerEvent events + TargetID targetId + # Whether to pause new targets when attaching to them. Use `Runtime.runIfWaitingForDebugger` + # to run paused targets. + boolean waitForDebuggerOnStart + # Only targets matching filter will be attached. + experimental optional TargetFilter filter - # Send a list of any messages that need to be delivered. - event playerMessagesLogged + # Controls whether to discover available targets and notify via + # `targetCreated/targetInfoChanged/targetDestroyed` events. + command setDiscoverTargets parameters - PlayerId playerId - array of PlayerMessage messages + # Whether to discover available targets. + boolean discover + # Only targets matching filter will be attached. If `discover` is false, + # `filter` must be omitted or empty. + experimental optional TargetFilter filter - # Send a list of any errors that need to be delivered. - event playerErrorsRaised + # Enables target discovery for the specified locations, when `setDiscoverTargets` was set to + # `true`. + experimental command setRemoteLocations parameters - PlayerId playerId - array of PlayerError errors + # List of remote locations. + array of RemoteLocation locations - # Called whenever a player is created, or when a new agent joins and receives - # a list of active players. If an agent is restored, it will receive the full - # list of player ids and all events again. - event playersCreated + # Issued when attached to target because of auto-attach or `attachToTarget` command. + experimental event attachedToTarget parameters - array of PlayerId players - - # Enables the Media domain - command enable - - # Disables the Media domain. - command disable - -experimental domain DeviceAccess - # Device request id. - type RequestId extends string - - # A device id. - type DeviceId extends string - - # Device information displayed in a user prompt to select a device. - type PromptDevice extends object - properties - DeviceId id - # Display name as it appears in a device request user prompt. - string name - - # Enable events in this domain. - command enable + # Identifier assigned to the session used to send/receive messages. + SessionID sessionId + TargetInfo targetInfo + boolean waitingForDebugger - # Disable events in this domain. - command disable + # Issued when detached from target for any reason (including `detachFromTarget` command). Can be + # issued multiple times per target if multiple sessions have been attached to it. + experimental event detachedFromTarget + parameters + # Detached session identifier. + SessionID sessionId + # Deprecated. + deprecated optional TargetID targetId - # Select a device in response to a DeviceAccess.deviceRequestPrompted event. - command selectPrompt + # Notifies about a new protocol message received from the session (as reported in + # `attachedToTarget` event). + event receivedMessageFromTarget parameters - RequestId id - DeviceId deviceId + # Identifier of a session which sends a message. + SessionID sessionId + string message + # Deprecated. + deprecated optional TargetID targetId - # Cancel a prompt in response to a DeviceAccess.deviceRequestPrompted event. - command cancelPrompt + # Issued when a possible inspection target is created. + event targetCreated parameters - RequestId id + TargetInfo targetInfo - # A device request opened a user prompt to select a device. Respond with the - # selectPrompt or cancelPrompt command. - event deviceRequestPrompted + # Issued when a target is destroyed. + event targetDestroyed parameters - RequestId id - array of PromptDevice devices + TargetID targetId -experimental domain Preload - # Unique id - type RuleSetId extends string + # Issued when a target has crashed. + event targetCrashed + parameters + TargetID targetId + # Termination status type. + string status + # Termination error code. + integer errorCode - # Corresponds to SpeculationRuleSet - type RuleSet extends object - properties - RuleSetId id - # Identifies a document which the rule set is associated with. - Network.LoaderId loaderId - # Source text of JSON representing the rule set. If it comes from - # `script` tag, it is the textContent of the node. Note that it is - # a JSON for valid case. - # - # See also: - # - https://wicg.github.io/nav-speculation/speculation-rules.html - # - https://github.com/WICG/nav-speculation/blob/main/triggers.md - string sourceText - # A speculation rule set is either added through an inline - # `script` tag or through an external resource via the - # 'Speculation-Rules' HTTP header. For the first case, we include - # the BackendNodeId of the relevant `script` tag. For the second - # case, we include the external URL where the rule set was loaded - # from, and also RequestId if Network domain is enabled. - # - # See also: - # - https://wicg.github.io/nav-speculation/speculation-rules.html#speculation-rules-script - # - https://wicg.github.io/nav-speculation/speculation-rules.html#speculation-rules-header - optional DOM.BackendNodeId backendNodeId - optional string url - optional Network.RequestId requestId - # Error information - # `errorMessage` is null iff `errorType` is null. - optional RuleSetErrorType errorType - # TODO(https://crbug.com/1425354): Replace this property with structured error. - deprecated optional string errorMessage + # Issued when some information about a target has changed. This only happens between + # `targetCreated` and `targetDestroyed`. + event targetInfoChanged + parameters + TargetInfo targetInfo - type RuleSetErrorType extends string - enum - SourceIsNotJsonObject - InvalidRulesSkipped - InvalidRulesetLevelTag + # Opens a DevTools window for the target. + experimental command openDevTools + parameters + # This can be the page or tab target ID. + TargetID targetId + returns + # The targetId of DevTools page target. + TargetID targetId - # The type of preloading attempted. It corresponds to - # mojom::SpeculationAction (although PrefetchWithSubresources is omitted as it - # isn't being used by clients). - type SpeculationAction extends string - enum - Prefetch - Prerender +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Corresponds to mojom::SpeculationTargetHint. - # See https://github.com/WICG/nav-speculation/blob/main/triggers.md#window-name-targeting-hints - type SpeculationTargetHint extends string - enum - Blank - Self +# The Tethering domain defines methods and events for browser port binding. +experimental domain Tethering - # A key that identifies a preloading attempt. - # - # The url used is the url specified by the trigger (i.e. the initial URL), and - # not the final url that is navigated to. For example, prerendering allows - # same-origin main frame navigations during the attempt, but the attempt is - # still keyed with the initial URL. - type PreloadingAttemptKey extends object - properties - Network.LoaderId loaderId - SpeculationAction action - string url - optional SpeculationTargetHint targetHint + # Request browser port binding. + command bind + parameters + # Port number to bind. + integer port - # Lists sources for a preloading attempt, specifically the ids of rule sets - # that had a speculation rule that triggered the attempt, and the - # BackendNodeIds of or elements that triggered the - # attempt (in the case of attempts triggered by a document rule). It is - # possible for multiple rule sets and links to trigger a single attempt. - type PreloadingAttemptSource extends object - properties - PreloadingAttemptKey key - array of RuleSetId ruleSetIds - array of DOM.BackendNodeId nodeIds + # Request browser port unbinding. + command unbind + parameters + # Port number to unbind. + integer port - # Chrome manages different types of preloads together using a - # concept of preloading pipeline. For example, if a site uses a - # SpeculationRules for prerender, Chrome first starts a prefetch and - # then upgrades it to prerender. - # - # CDP events for them are emitted separately but they share - # `PreloadPipelineId`. - type PreloadPipelineId extends string + # Informs that port was successfully bound and got a specified connection id. + event accepted + parameters + # Port number that was successfully bound. + integer port + # Connection id to be used. + string connectionId - command enable +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - command disable +domain Tracing + depends on IO - # Upsert. Currently, it is only emitted when a rule set added. - event ruleSetUpdated - parameters - RuleSet ruleSet + # Configuration for memory dump. Used only when "memory-infra" category is enabled. + experimental type MemoryDumpConfig extends object - event ruleSetRemoved - parameters - RuleSetId id + type TraceConfig extends object + properties + # Controls how the trace buffer stores data. The default is `recordUntilFull`. + experimental optional enum recordMode + recordUntilFull + recordContinuously + recordAsMuchAsPossible + echoToConsole + # Size of the trace buffer in kilobytes. If not specified or zero is passed, a default value + # of 200 MB would be used. + experimental optional number traceBufferSizeInKb + # Turns on JavaScript stack sampling. + experimental optional boolean enableSampling + # Turns on system tracing. + experimental optional boolean enableSystrace + # Turns on argument filter. + experimental optional boolean enableArgumentFilter + # Included category filters. + optional array of string includedCategories + # Excluded category filters. + optional array of string excludedCategories + # Configuration to synthesize the delays in tracing. + experimental optional array of string syntheticDelays + # Configuration for memory dump triggers. Used only when "memory-infra" category is enabled. + experimental optional MemoryDumpConfig memoryDumpConfig - # List of FinalStatus reasons for Prerender2. - type PrerenderFinalStatus extends string + # Data format of a trace. Can be either the legacy JSON format or the + # protocol buffer format. Note that the JSON format will be deprecated soon. + experimental type StreamFormat extends string enum - Activated - Destroyed - LowEndDevice - InvalidSchemeRedirect - InvalidSchemeNavigation - NavigationRequestBlockedByCsp - MojoBinderPolicy - RendererProcessCrashed - RendererProcessKilled - Download - TriggerDestroyed - NavigationNotCommitted - NavigationBadHttpStatus - ClientCertRequested - NavigationRequestNetworkError - CancelAllHostsForTesting - DidFailLoad - Stop - SslCertificateError - LoginAuthRequested - UaChangeRequiresReload - BlockedByClient - AudioOutputDeviceRequested - MixedContent - TriggerBackgrounded - MemoryLimitExceeded - DataSaverEnabled - TriggerUrlHasEffectiveUrl - ActivatedBeforeStarted - InactivePageRestriction - StartFailed - TimeoutBackgrounded - CrossSiteRedirectInInitialNavigation - CrossSiteNavigationInInitialNavigation - SameSiteCrossOriginRedirectNotOptInInInitialNavigation - SameSiteCrossOriginNavigationNotOptInInInitialNavigation - ActivationNavigationParameterMismatch - ActivatedInBackground - EmbedderHostDisallowed - ActivationNavigationDestroyedBeforeSuccess - TabClosedByUserGesture - TabClosedWithoutUserGesture - PrimaryMainFrameRendererProcessCrashed - PrimaryMainFrameRendererProcessKilled - ActivationFramePolicyNotCompatible - PreloadingDisabled - BatterySaverEnabled - ActivatedDuringMainFrameNavigation - PreloadingUnsupportedByWebContents - CrossSiteRedirectInMainFrameNavigation - CrossSiteNavigationInMainFrameNavigation - SameSiteCrossOriginRedirectNotOptInInMainFrameNavigation - SameSiteCrossOriginNavigationNotOptInInMainFrameNavigation - MemoryPressureOnTrigger - MemoryPressureAfterTriggered - PrerenderingDisabledByDevTools - SpeculationRuleRemoved - ActivatedWithAuxiliaryBrowsingContexts - MaxNumOfRunningEagerPrerendersExceeded - MaxNumOfRunningNonEagerPrerendersExceeded - MaxNumOfRunningEmbedderPrerendersExceeded - PrerenderingUrlHasEffectiveUrl - RedirectedPrerenderingUrlHasEffectiveUrl - ActivationUrlHasEffectiveUrl - JavaScriptInterfaceAdded - JavaScriptInterfaceRemoved - AllPrerenderingCanceled - WindowClosed - SlowNetwork - OtherPrerenderedPageActivated - V8OptimizerDisabled - PrerenderFailedDuringPrefetch - BrowsingDataRemoved - PrerenderHostReused + json + proto - # Fired when a preload enabled state is updated. - event preloadEnabledStateUpdated - parameters - boolean disabledByPreference - boolean disabledByDataSaver - boolean disabledByBatterySaver - boolean disabledByHoldbackPrefetchSpeculationRules - boolean disabledByHoldbackPrerenderSpeculationRules + # Compression type to use for traces returned via streams. + experimental type StreamCompression extends string + enum + none + gzip - # Preloading status values, see also PreloadingTriggeringOutcome. This - # status is shared by prefetchStatusUpdated and prerenderStatusUpdated. - type PreloadingStatus extends string + # Details exposed when memory request explicitly declared. + # Keep consistent with memory_dump_request_args.h and + # memory_instrumentation.mojom + experimental type MemoryDumpLevelOfDetail extends string enum - Pending - Running - Ready - Success - Failure - # PreloadingTriggeringOutcome which not used by prefetch nor prerender. - NotSupported + background + light + detailed - # TODO(https://crbug.com/1384419): revisit the list of PrefetchStatus and - # filter out the ones that aren't necessary to the developers. - type PrefetchStatus extends string + # 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`. + experimental type TracingBackend extends string enum - # Prefetch is not disabled by PrefetchHeldback. - PrefetchAllowed - PrefetchFailedIneligibleRedirect - PrefetchFailedInvalidRedirect - PrefetchFailedMIMENotSupported - PrefetchFailedNetError - PrefetchFailedNon2XX - PrefetchEvictedAfterBrowsingDataRemoved - PrefetchEvictedAfterCandidateRemoved - PrefetchEvictedForNewerPrefetch - PrefetchHeldback - # A previous prefetch to the origin got a HTTP 503 response with an - # Retry-After header that has no elapsed yet. - PrefetchIneligibleRetryAfter - PrefetchIsPrivacyDecoy - PrefetchIsStale - PrefetchNotEligibleBrowserContextOffTheRecord - PrefetchNotEligibleDataSaverEnabled - PrefetchNotEligibleExistingProxy - PrefetchNotEligibleHostIsNonUnique - PrefetchNotEligibleNonDefaultStoragePartition - PrefetchNotEligibleSameSiteCrossOriginPrefetchRequiredProxy - PrefetchNotEligibleSchemeIsNotHttps - PrefetchNotEligibleUserHasCookies - PrefetchNotEligibleUserHasServiceWorker - PrefetchNotEligibleUserHasServiceWorkerNoFetchHandler - PrefetchNotEligibleRedirectFromServiceWorker - PrefetchNotEligibleRedirectToServiceWorker - PrefetchNotEligibleBatterySaverEnabled - PrefetchNotEligiblePreloadingDisabled - PrefetchNotFinishedInTime - PrefetchNotStarted - PrefetchNotUsedCookiesChanged - PrefetchProxyNotAvailable - # The response of the prefetch is used for the next navigation. This is - # the final successful state. - PrefetchResponseUsed - # The prefetch finished successfully but was never used. - PrefetchSuccessfulButNotUsed - PrefetchNotUsedProbeFailed + auto + chrome + system - # Fired when a prefetch attempt is updated. - event prefetchStatusUpdated + # Stop trace events collection. + command end + + # Gets supported tracing categories. + experimental command getCategories + returns + # A list of supported tracing categories. + array of string categories + + # Record a clock sync marker in the trace. + experimental command recordClockSyncMarker parameters - PreloadingAttemptKey key - PreloadPipelineId pipelineId - # The frame id of the frame initiating prefetch. - Page.FrameId initiatingFrameId - string prefetchUrl - PreloadingStatus status - PrefetchStatus prefetchStatus - Network.RequestId requestId + # The ID of this clock sync marker + string syncId + + # Request a global memory dump. + experimental command requestMemoryDump + parameters + # Enables more deterministic results by forcing garbage collection + optional boolean deterministic + # Specifies level of details in memory dump. Defaults to "detailed". + optional MemoryDumpLevelOfDetail levelOfDetail + returns + # GUID of the resulting global memory dump. + string dumpGuid + # True iff the global memory dump succeeded. + boolean success + + # Start trace events collection. + command start + parameters + # Category/tag filter + experimental deprecated optional string categories + # Tracing options + experimental deprecated optional string options + # If set, the agent will issue bufferUsage events at this interval, specified in milliseconds + experimental optional number bufferUsageReportingInterval + # Whether to report trace events as series of dataCollected events or to save trace to a + # stream (defaults to `ReportEvents`). + optional enum transferMode + ReportEvents + ReturnAsStream + # Trace data format to use. This only applies when using `ReturnAsStream` + # transfer mode (defaults to `json`). + optional StreamFormat streamFormat + # Compression format to use. This only applies when using `ReturnAsStream` + # transfer mode (defaults to `none`) + experimental optional StreamCompression streamCompression + optional TraceConfig traceConfig + # Base64-encoded serialized perfetto.protos.TraceConfig protobuf message + # When specified, the parameters `categories`, `options`, `traceConfig` + # are ignored. + experimental optional binary perfettoConfig + # Backend type (defaults to `auto`) + experimental optional TracingBackend tracingBackend - # Information of headers to be displayed when the header mismatch occurred. - type PrerenderMismatchedHeaders extends object - properties - string headerName - optional string initialValue - optional string activationValue + experimental event bufferUsage + parameters + # A number in range [0..1] that indicates the used size of event buffer as a fraction of its + # total size. + optional number percentFull + # An approximate number of events in the trace log. + optional number eventCount + # A number in range [0..1] that indicates the used size of event buffer as a fraction of its + # total size. + optional number value - # Fired when a prerender attempt is updated. - event prerenderStatusUpdated + # Contains a bucket of collected trace events. When tracing is stopped collected events will be + # sent as a sequence of dataCollected events followed by tracingComplete event. + experimental event dataCollected parameters - PreloadingAttemptKey key - PreloadPipelineId pipelineId - PreloadingStatus status - optional PrerenderFinalStatus prerenderStatus - # This is used to give users more information about the name of Mojo interface - # that is incompatible with prerender and has caused the cancellation of the attempt. - optional string disallowedMojoInterface - optional array of PrerenderMismatchedHeaders mismatchedHeaders + array of object value - # Send a list of sources for all preloading attempts in a document. - event preloadingAttemptSourcesUpdated + # Signals that tracing is stopped and there is no trace buffers pending flush, all data were + # delivered via dataCollected events. + event tracingComplete parameters - Network.LoaderId loaderId - array of PreloadingAttemptSource preloadingAttemptSources + # Indicates whether some trace data is known to have been lost, e.g. because the trace ring + # buffer wrapped around. + boolean dataLossOccurred + # A handle of the stream that holds resulting trace data. + optional IO.StreamHandle stream + # Trace data format of returned stream. + optional StreamFormat traceFormat + # Compression format of returned stream. + optional StreamCompression streamCompression -# This domain allows interacting with the FedCM dialog. -experimental domain FedCm - # Whether this is a sign-up or sign-in action for this account, i.e. - # whether this account has ever been used to sign in to this RP before. - type LoginState extends string +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp + +# This domain allows inspection of Web Audio API. +# https://webaudio.github.io/web-audio-api/ +experimental domain WebAudio + + # An unique ID for a graph object (AudioContext, AudioNode, AudioParam) in Web Audio API + type GraphObjectId extends string + + # Enum of BaseAudioContext types + type ContextType extends string enum - SignIn - SignUp + realtime + offline - # The types of FedCM dialogs. - type DialogType extends string + # Enum of AudioContextState from the spec + type ContextState extends string enum - AccountChooser - AutoReauthn - ConfirmIdpLogin - Error + suspended + running + closed + interrupted - # The buttons on the FedCM dialog. - type DialogButton extends string + # Enum of AudioNode types + type NodeType extends string + + # Enum of AudioNode::ChannelCountMode from the spec + type ChannelCountMode extends string enum - ConfirmIdpLoginContinue - ErrorGotIt - ErrorMoreDetails + clamped-max + explicit + max - # The URLs that each account has - type AccountUrlType extends string + # Enum of AudioNode::ChannelInterpretation from the spec + type ChannelInterpretation extends string enum - TermsOfService - PrivacyPolicy + discrete + speakers - # Corresponds to IdentityRequestAccount - type Account extends object + # Enum of AudioParam types + type ParamType extends string + + # Enum of AudioParam::AutomationRate from the spec + type AutomationRate extends string + enum + a-rate + k-rate + + # Fields in AudioContext that change in real-time. + type ContextRealtimeData extends object properties - string accountId - string email - string name - string givenName - string pictureUrl - string idpConfigUrl - string idpLoginUrl - LoginState loginState - # These two are only set if the loginState is signUp - optional string termsOfServiceUrl - optional string privacyPolicyUrl + # The current context time in second in BaseAudioContext. + number currentTime + # The time spent on rendering graph divided by render quantum duration, + # and multiplied by 100. 100 means the audio renderer reached the full + # capacity and glitch may occur. + number renderCapacity + # A running mean of callback interval. + number callbackIntervalMean + # A running variance of callback interval. + number callbackIntervalVariance - event dialogShown - parameters - string dialogId - DialogType dialogType - array of Account accounts - # These exist primarily so that the caller can verify the - # RP context was used appropriately. - string title - optional string subtitle + # Protocol object for BaseAudioContext + type BaseAudioContext extends object + properties + GraphObjectId contextId + ContextType contextType + ContextState contextState + optional ContextRealtimeData realtimeData + # Platform-dependent callback buffer size. + number callbackBufferSize + # Number of output channels supported by audio hardware in use. + number maxOutputChannelCount + # Context sample rate. + number sampleRate - # Triggered when a dialog is closed, either by user action, JS abort, - # or a command below. - event dialogClosed - parameters - string dialogId +# Protocol object for AudioListener + type AudioListener extends object + properties + GraphObjectId listenerId + GraphObjectId contextId + + # Protocol object for AudioNode + type AudioNode extends object + properties + GraphObjectId nodeId + GraphObjectId contextId + NodeType nodeType + number numberOfInputs + number numberOfOutputs + number channelCount + ChannelCountMode channelCountMode + ChannelInterpretation channelInterpretation + + # Protocol object for AudioParam + type AudioParam extends object + properties + GraphObjectId paramId + GraphObjectId nodeId + GraphObjectId contextId + ParamType paramType + AutomationRate rate + number defaultValue + number minValue + number maxValue + # Enables the WebAudio domain and starts sending context lifetime events. command enable - parameters - # Allows callers to disable the promise rejection delay that would - # normally happen, if this is unimportant to what's being tested. - # (step 4 of https://fedidcg.github.io/FedCM/#browser-api-rp-sign-in) - optional boolean disableRejectionDelay + # Disables the WebAudio domain. command disable - command selectAccount + # Fetch the realtime data from the registered contexts. + command getRealtimeData parameters - string dialogId - integer accountIndex + GraphObjectId contextId + returns + ContextRealtimeData realtimeData - command clickDialogButton + # Notifies that a new BaseAudioContext has been created. + event contextCreated parameters - string dialogId - DialogButton dialogButton + BaseAudioContext context - command openUrl + # Notifies that an existing BaseAudioContext will be destroyed. + event contextWillBeDestroyed parameters - string dialogId - integer accountIndex - AccountUrlType accountUrlType + GraphObjectId contextId - command dismissDialog + # Notifies that existing BaseAudioContext has changed some properties (id stays the same).. + event contextChanged parameters - string dialogId - optional boolean triggerCooldown - - # Resets the cooldown time, if any, to allow the next FedCM call to show - # a dialog even if one was recently dismissed by the user. - command resetCooldown - -# This domain allows interacting with the browser to control PWAs. -experimental domain PWA - - # The following types are the replica of - # https://crsrc.org/c/chrome/browser/web_applications/proto/web_app_os_integration_state.proto;drc=9910d3be894c8f142c977ba1023f30a656bc13fc;l=67 - type FileHandlerAccept extends object - properties - # New name of the mimetype according to - # https://www.iana.org/assignments/media-types/media-types.xhtml - string mediaType - array of string fileExtensions + BaseAudioContext context - type FileHandler extends object - properties - string action - array of FileHandlerAccept accepts - string displayName +# Notifies that the construction of an AudioListener has finished. + event audioListenerCreated + parameters + AudioListener listener - # Returns the following OS state for the given manifest id. - command getOsAppState + # Notifies that a new AudioListener has been created. + event audioListenerWillBeDestroyed parameters - # The id from the webapp's manifest file, commonly it's the url of the - # site installing the webapp. See - # https://web.dev/learn/pwa/web-app-manifest. - string manifestId - returns - integer badgeCount - array of FileHandler fileHandlers + GraphObjectId contextId + GraphObjectId listenerId - # 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 0x00 at the end. - # 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. - command install + # Notifies that a new AudioNode has been created. + event audioNodeCreated parameters - string manifestId - # The location of the app or bundle overriding the one derived from the - # manifestId. - optional string installUrlOrBundleUrl + AudioNode node - # Uninstalls the given manifest_id and closes any opened app windows. - command uninstall + # Notifies that an existing AudioNode has been destroyed. + event audioNodeWillBeDestroyed parameters - string manifestId + GraphObjectId contextId + GraphObjectId nodeId - # 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. - command launch + # Notifies that a new AudioParam has been created. + event audioParamCreated parameters - string manifestId - optional string url - returns - # ID of the tab target created as a result. - Target.TargetID targetId + AudioParam param - # 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. - command launchFilesInApp + # Notifies that an existing AudioParam has been destroyed. + event audioParamWillBeDestroyed parameters - string manifestId - array of string files - returns - # IDs of the tab targets created as the result. - array of Target.TargetID targetIds + GraphObjectId contextId + GraphObjectId nodeId + GraphObjectId paramId - # Opens the current page in its web app identified by the manifest id, needs - # to be called on a page target. This function returns immediately without - # waiting for the app to finish loading. - command openCurrentPageInApp + # Notifies that two AudioNodes are connected. + event nodesConnected parameters - string manifestId + GraphObjectId contextId + GraphObjectId sourceId + GraphObjectId destinationId + optional number sourceOutputIndex + optional number destinationInputIndex - # If user prefers opening the app in browser or an app window. - type DisplayMode extends string - enum - standalone - browser + # Notifies that AudioNodes are disconnected. The destination can be null, and it means all the outgoing connections from the source are disconnected. + event nodesDisconnected + parameters + GraphObjectId contextId + GraphObjectId sourceId + GraphObjectId destinationId + optional number sourceOutputIndex + optional number destinationInputIndex - # Changes user settings of the web app identified by its manifestId. If the - # app was not installed, this command returns an error. Unset parameters will - # be ignored; unrecognized values will cause an error. - # - # Unlike the ones defined in the manifest files of the web apps, these - # settings are provided by the browser and controlled by the users, they - # impact the way the browser handling the web apps. - # - # See the comment of each parameter. - command changeAppUserSettings + # Notifies that an AudioNode is connected to an AudioParam. + event nodeParamConnected parameters - string manifestId - # If user allows the links clicked on by the user in the app's scope, or - # extended scope if the manifest has scope extensions and the flags - # `DesktopPWAsLinkCapturingWithScopeExtensions` and - # `WebAppEnableScopeExtensions` are enabled. - # - # Note, the API does not support resetting the linkCapturing to the - # initial value, uninstalling and installing the web app again will reset - # it. - # - # TODO(crbug.com/339453269): Setting this value on ChromeOS is not - # supported yet. - optional boolean linkCapturing - optional DisplayMode displayMode + GraphObjectId contextId + GraphObjectId sourceId + GraphObjectId destinationId + optional number sourceOutputIndex -# This domain allows configuring virtual Bluetooth devices to test -# the web-bluetooth API. -experimental domain BluetoothEmulation - # Indicates the various states of Central. - type CentralState extends string - enum - absent - powered-off - powered-on + # Notifies that an AudioNode is disconnected to an AudioParam. + event nodeParamDisconnected + parameters + GraphObjectId contextId + GraphObjectId sourceId + GraphObjectId destinationId + optional number sourceOutputIndex - # Indicates the various types of GATT event. - type GATTOperationType extends string - enum - connection - discovery +# Copyright 2017 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. +# +# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp - # Indicates the various types of characteristic write. - type CharacteristicWriteType extends string - enum - write-default-deprecated - write-with-response - write-without-response +# This domain allows configuring virtual authenticators to test the WebAuthn +# API. +experimental domain WebAuthn + type AuthenticatorId extends string - # Indicates the various types of characteristic operation. - type CharacteristicOperationType extends string + type AuthenticatorProtocol extends string enum - read - write - subscribe-to-notifications - unsubscribe-from-notifications + # Universal 2nd Factor. + u2f + # Client To Authenticator Protocol 2. + ctap2 - # Indicates the various types of descriptor operation. - type DescriptorOperationType extends string + type Ctap2Version extends string enum - read - write - - # Stores the manufacturer data - type ManufacturerData extends object - properties - # Company identifier - # https://bitbucket.org/bluetooth-SIG/public/src/main/assigned_numbers/company_identifiers/company_identifiers.yaml - # https://usb.org/developers - integer key - # Manufacturer-specific data - binary data + ctap2_0 + ctap2_1 - # Stores the byte data of the advertisement packet sent by a Bluetooth device. - type ScanRecord extends object - properties - optional string name - optional array of string uuids - # Stores the external appearance description of the device. - optional integer appearance - # Stores the transmission power of a broadcasting device. - optional integer txPower - # Key is the company identifier and the value is an array of bytes of - # manufacturer specific data. - optional array of ManufacturerData manufacturerData + type AuthenticatorTransport extends string + enum + # Cross-Platform authenticator attachments: + usb + nfc + ble + cable + # Platform authenticator attachment: + internal - # Stores the advertisement packet information that is sent by a Bluetooth device. - type ScanEntry extends object + type VirtualAuthenticatorOptions extends object properties - string deviceAddress - integer rssi - ScanRecord scanRecord + AuthenticatorProtocol protocol + # Defaults to ctap2_0. Ignored if |protocol| == u2f. + optional Ctap2Version ctap2Version + AuthenticatorTransport transport + # Defaults to false. + optional boolean hasResidentKey + # Defaults to false. + optional boolean hasUserVerification + # If set to true, the authenticator will support the largeBlob extension. + # https://w3c.github.io/webauthn#largeBlob + # Defaults to false. + optional boolean hasLargeBlob + # If set to true, the authenticator will support the credBlob extension. + # https://fidoalliance.org/specs/fido-v2.1-rd-20201208/fido-client-to-authenticator-protocol-v2.1-rd-20201208.html#sctn-credBlob-extension + # Defaults to false. + optional boolean hasCredBlob + # If set to true, the authenticator will support the minPinLength extension. + # https://fidoalliance.org/specs/fido-v2.1-ps-20210615/fido-client-to-authenticator-protocol-v2.1-ps-20210615.html#sctn-minpinlength-extension + # Defaults to false. + optional boolean hasMinPinLength + # If set to true, the authenticator will support the prf extension. + # https://w3c.github.io/webauthn/#prf-extension + # Defaults to false. + optional boolean hasPrf + # If set to true, tests of user presence will succeed immediately. + # Otherwise, they will not be resolved. Defaults to true. + optional boolean automaticPresenceSimulation + # Sets whether User Verification succeeds or fails for an authenticator. + # Defaults to false. + optional boolean isUserVerified + # Credentials created by this authenticator will have the backup + # eligibility (BE) flag set to this value. Defaults to false. + # https://w3c.github.io/webauthn/#sctn-credential-backup + optional boolean defaultBackupEligibility + # Credentials created by this authenticator will have the backup state + # (BS) flag set to this value. Defaults to false. + # https://w3c.github.io/webauthn/#sctn-credential-backup + optional boolean defaultBackupState - # Describes the properties of a characteristic. This follows Bluetooth Core - # Specification BT 4.2 Vol 3 Part G 3.3.1. Characteristic Properties. - type CharacteristicProperties extends object + type Credential extends object properties - optional boolean broadcast - optional boolean read - optional boolean writeWithoutResponse - optional boolean write - optional boolean notify - optional boolean indicate - optional boolean authenticatedSignedWrites - optional boolean extendedProperties + binary credentialId + boolean isResidentCredential + # Relying Party ID the credential is scoped to. Must be set when adding a + # credential. + optional string rpId + # The ECDSA P-256 private key in PKCS#8 format. + binary privateKey + # An opaque byte sequence with a maximum size of 64 bytes mapping the + # credential to a specific user. + optional binary userHandle + # Signature counter. This is incremented by one for each successful + # assertion. + # See https://w3c.github.io/webauthn/#signature-counter + integer signCount + # The large blob associated with the credential. + # See https://w3c.github.io/webauthn/#sctn-large-blob-extension + optional binary largeBlob + # Assertions returned by this credential will have the backup eligibility + # (BE) flag set to this value. Defaults to the authenticator's + # defaultBackupEligibility value. + optional boolean backupEligibility + # Assertions returned by this credential will have the backup state (BS) + # flag set to this value. Defaults to the authenticator's + # defaultBackupState value. + optional boolean backupState + # The credential's user.name property. Equivalent to empty if not set. + # https://w3c.github.io/webauthn/#dom-publickeycredentialentity-name + optional string userName + # The credential's user.displayName property. Equivalent to empty if + # not set. + # https://w3c.github.io/webauthn/#dom-publickeycredentialuserentity-displayname + optional string userDisplayName - # Enable the BluetoothEmulation domain. + # Enable the WebAuthn domain and start intercepting credential storage and + # retrieval with a virtual authenticator. command enable parameters - # State of the simulated central. - CentralState state - # If the simulated central supports low-energy. - boolean leSupported - - # Set the state of the simulated central. - command setSimulatedCentralState - parameters - # State of the simulated central. - CentralState state + # Whether to enable the WebAuthn user interface. Enabling the UI is + # recommended for debugging and demo purposes, as it is closer to the real + # experience. Disabling the UI is recommended for automated testing. + # Supported at the embedder's discretion if UI is available. + # Defaults to false. + optional boolean enableUI - # Disable the BluetoothEmulation domain. + # Disable the WebAuthn domain. command disable - # Simulates a peripheral with |address|, |name| and |knownServiceUuids| - # that has already been connected to the system. - command simulatePreconnectedPeripheral + # Creates and adds a virtual authenticator. + command addVirtualAuthenticator parameters - string address - string name - array of ManufacturerData manufacturerData - array of string knownServiceUuids + VirtualAuthenticatorOptions options + returns + AuthenticatorId authenticatorId - # Simulates an advertisement packet described in |entry| being received by - # the central. - command simulateAdvertisement + # Resets parameters isBogusSignature, isBadUV, isBadUP to false if they are not present. + command setResponseOverrideBits parameters - ScanEntry entry + AuthenticatorId authenticatorId + # If isBogusSignature is set, overrides the signature in the authenticator response to be zero. + # Defaults to false. + optional boolean isBogusSignature + # If isBadUV is set, overrides the UV bit in the flags in the authenticator response to + # be zero. Defaults to false. + optional boolean isBadUV + # If isBadUP is set, overrides the UP bit in the flags in the authenticator response to + # be zero. Defaults to false. + optional boolean isBadUP - # Simulates the response code from the peripheral with |address| for a - # GATT operation of |type|. The |code| value follows the HCI Error Codes from - # Bluetooth Core Specification Vol 2 Part D 1.3 List Of Error Codes. - command simulateGATTOperationResponse + # Removes the given authenticator. + command removeVirtualAuthenticator parameters - string address - GATTOperationType type - integer code + AuthenticatorId authenticatorId - # Simulates the response from the characteristic with |characteristicId| for a - # characteristic operation of |type|. The |code| value follows the Error - # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. - # The |data| is expected to exist when simulating a successful read operation - # response. - command simulateCharacteristicOperationResponse + # Adds the credential to the specified authenticator. + command addCredential parameters - string characteristicId - CharacteristicOperationType type - integer code - optional binary data + AuthenticatorId authenticatorId + Credential credential - # Simulates the response from the descriptor with |descriptorId| for a - # descriptor operation of |type|. The |code| value follows the Error - # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. - # The |data| is expected to exist when simulating a successful read operation - # response. - command simulateDescriptorOperationResponse + # Returns a single credential stored in the given virtual authenticator that + # matches the credential ID. + command getCredential parameters - string descriptorId - DescriptorOperationType type - integer code - optional binary data + AuthenticatorId authenticatorId + binary credentialId + returns + Credential credential - # Adds a service with |serviceUuid| to the peripheral with |address|. - command addService + # Returns all the credentials stored in the given virtual authenticator. + command getCredentials parameters - string address - string serviceUuid + AuthenticatorId authenticatorId returns - # An identifier that uniquely represents this service. - string serviceId + array of Credential credentials - # Removes the service respresented by |serviceId| from the simulated central. - command removeService + # Removes a credential from the authenticator. + command removeCredential parameters - string serviceId + AuthenticatorId authenticatorId + binary credentialId - # Adds a characteristic with |characteristicUuid| and |properties| to the - # service represented by |serviceId|. - command addCharacteristic + # Clears all the credentials from the specified device. + command clearCredentials parameters - string serviceId - string characteristicUuid - CharacteristicProperties properties - returns - # An identifier that uniquely represents this characteristic. - string characteristicId + AuthenticatorId authenticatorId - # Removes the characteristic respresented by |characteristicId| from the - # simulated central. - command removeCharacteristic + # Sets whether User Verification succeeds or fails for an authenticator. + # The default is true. + command setUserVerified parameters - string characteristicId + AuthenticatorId authenticatorId + boolean isUserVerified - # Adds a descriptor with |descriptorUuid| to the characteristic respresented - # by |characteristicId|. - command addDescriptor + # Sets whether tests of user presence will succeed immediately (if true) or fail to resolve (if false) for an authenticator. + # The default is true. + command setAutomaticPresenceSimulation parameters - string characteristicId - string descriptorUuid - returns - # An identifier that uniquely represents this descriptor. - string descriptorId + AuthenticatorId authenticatorId + boolean enabled - # Removes the descriptor with |descriptorId| from the simulated central. - command removeDescriptor + # Allows setting credential properties. + # https://w3c.github.io/webauthn/#sctn-automation-set-credential-properties + command setCredentialProperties parameters - string descriptorId + AuthenticatorId authenticatorId + binary credentialId + optional boolean backupEligibility + optional boolean backupState - # Simulates a GATT disconnection from the peripheral with |address|. - command simulateGATTDisconnection + # Triggered when a credential is added to an authenticator. + event credentialAdded parameters - string address + AuthenticatorId authenticatorId + Credential credential - # Event for when a GATT operation of |type| to the peripheral with |address| - # happened. - event gattOperationReceived + # Triggered when a credential is deleted, e.g. through + # PublicKeyCredential.signalUnknownCredential(). + event credentialDeleted parameters - string address - GATTOperationType type + AuthenticatorId authenticatorId + binary credentialId - # Event for when a characteristic operation of |type| to the characteristic - # respresented by |characteristicId| happened. |data| and |writeType| is - # expected to exist when |type| is write. - event characteristicOperationReceived + # Triggered when a credential is updated, e.g. through + # PublicKeyCredential.signalCurrentUserDetails(). + event credentialUpdated parameters - string characteristicId - CharacteristicOperationType type - optional binary data - optional CharacteristicWriteType writeType + AuthenticatorId authenticatorId + Credential credential - # Event for when a descriptor operation of |type| to the descriptor - # respresented by |descriptorId| happened. |data| is expected to exist when - # |type| is write. - event descriptorOperationReceived + # Triggered when a credential is used in a webauthn assertion. + event credentialAsserted parameters - string descriptorId - DescriptorOperationType type - optional binary data + AuthenticatorId authenticatorId + Credential credential + diff --git a/common/devtools/chromium/v140/js_protocol.pdl b/common/devtools/chromium/v143/js_protocol.pdl similarity index 99% rename from common/devtools/chromium/v140/js_protocol.pdl rename to common/devtools/chromium/v143/js_protocol.pdl index 73da9149b5d8b..bc86332d869b8 100644 --- a/common/devtools/chromium/v140/js_protocol.pdl +++ b/common/devtools/chromium/v143/js_protocol.pdl @@ -794,6 +794,8 @@ experimental domain HeapProfiler # Average sample interval in bytes. Poisson distribution is used for the intervals. The # default value is 32768 bytes. optional number samplingInterval + # Maximum stack depth. The default value is 128. + optional number stackDepth # 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 @@ -1140,6 +1142,8 @@ domain Runtime dataview webassemblymemory wasmvalue + # blink's subtypes. + trustedtype # Object class (constructor) name. Specified for `object` type values only. optional string className # Remote object value in case of primitive values or JSON values (if it was requested). @@ -1201,6 +1205,8 @@ domain Runtime dataview webassemblymemory wasmvalue + # blink's subtypes. + trustedtype # String representation of the object. optional string description # True iff some of the properties or entries of the original object did not fit. @@ -1250,6 +1256,8 @@ domain Runtime dataview webassemblymemory wasmvalue + # blink's subtypes. + trustedtype experimental type EntryPreview extends object properties diff --git a/dotnet/selenium-dotnet-version.bzl b/dotnet/selenium-dotnet-version.bzl index 918709e6f13b9..40d83ff97cf20 100644 --- a/dotnet/selenium-dotnet-version.bzl +++ b/dotnet/selenium-dotnet-version.bzl @@ -5,7 +5,7 @@ ASSEMBLY_VERSION = "4.0.0.0" SUPPORTED_NET_STANDARD_VERSIONS = ["netstandard2.0"] SUPPORTED_DEVTOOLS_VERSIONS = [ - "v140", + "v143", "v141", "v142", ] diff --git a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs index 45129e75ebe8c..c82fa2fdcfb4b 100644 --- a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs +++ b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs @@ -38,14 +38,14 @@ public abstract class DevToolsDomains [ 142, 141, - 140, + 143, ]; private static DevToolsDomains? CreateDevToolsDomain(int protocolVersion, DevToolsSession session) => protocolVersion switch { 142 => new V142.V142Domains(session), 141 => new V141.V141Domains(session), - 140 => new V140.V140Domains(session), + 143 => new V143.V143Domains(session), _ => null }; diff --git a/dotnet/src/webdriver/DevTools/v140/V140Domains.cs b/dotnet/src/webdriver/DevTools/v143/V143Domains.cs similarity index 78% rename from dotnet/src/webdriver/DevTools/v140/V140Domains.cs rename to dotnet/src/webdriver/DevTools/v143/V143Domains.cs index 9107d956bb037..11694135dd7e3 100644 --- a/dotnet/src/webdriver/DevTools/v140/V140Domains.cs +++ b/dotnet/src/webdriver/DevTools/v143/V143Domains.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -19,21 +19,21 @@ using System; -namespace OpenQA.Selenium.DevTools.V140; +namespace OpenQA.Selenium.DevTools.V143; /// -/// Class containing the domain implementation for version 140 of the DevTools Protocol. +/// Class containing the domain implementation for version 143 of the DevTools Protocol. /// -public class V140Domains : DevToolsDomains +public class V143Domains : DevToolsDomains { private readonly DevToolsSessionDomains domains; /// - /// Initializes a new instance of the V140Domains class. + /// Initializes a new instance of the V143Domains class. /// /// The DevToolsSession to use with this set of domains. /// If is . - public V140Domains(DevToolsSession session) + public V143Domains(DevToolsSession session) { this.domains = new DevToolsSessionDomains(session ?? throw new ArgumentNullException(nameof(session))); } @@ -41,7 +41,7 @@ public V140Domains(DevToolsSession session) /// /// Gets the DevTools Protocol version for which this class is valid. /// - public static int DevToolsVersion => 140; + public static int DevToolsVersion => 143; /// /// Gets the version-specific domains for the DevTools session. This value must be cast to a version specific type to be at all useful. @@ -51,20 +51,20 @@ public V140Domains(DevToolsSession session) /// /// Gets the object used for manipulating network information in the browser. /// - public override DevTools.Network Network => new V140Network(domains.Network, domains.Fetch); + public override DevTools.Network Network => new V143Network(domains.Network, domains.Fetch); /// /// Gets the object used for manipulating the browser's JavaScript execution. /// - public override JavaScript JavaScript => new V140JavaScript(domains.Runtime, domains.Page); + public override JavaScript JavaScript => new V143JavaScript(domains.Runtime, domains.Page); /// /// Gets the object used for manipulating DevTools Protocol targets. /// - public override DevTools.Target Target => new V140Target(domains.Target); + public override DevTools.Target Target => new V143Target(domains.Target); /// /// Gets the object used for manipulating the browser's logs. /// - public override DevTools.Log Log => new V140Log(domains.Log); + public override DevTools.Log Log => new V143Log(domains.Log); } diff --git a/dotnet/src/webdriver/DevTools/v140/V140JavaScript.cs b/dotnet/src/webdriver/DevTools/v143/V143JavaScript.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v140/V140JavaScript.cs rename to dotnet/src/webdriver/DevTools/v143/V143JavaScript.cs index decd04cca1779..d27ff8964b129 100644 --- a/dotnet/src/webdriver/DevTools/v140/V140JavaScript.cs +++ b/dotnet/src/webdriver/DevTools/v143/V143JavaScript.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,29 +17,29 @@ // under the License. // -using OpenQA.Selenium.DevTools.V140.Page; -using OpenQA.Selenium.DevTools.V140.Runtime; +using OpenQA.Selenium.DevTools.V143.Page; +using OpenQA.Selenium.DevTools.V143.Runtime; using System; using System.Collections.Generic; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V140; +namespace OpenQA.Selenium.DevTools.V143; /// -/// Class containing the JavaScript implementation for version 140 of the DevTools Protocol. +/// Class containing the JavaScript implementation for version 143 of the DevTools Protocol. /// -public class V140JavaScript : JavaScript +public class V143JavaScript : JavaScript { private readonly RuntimeAdapter runtime; private readonly PageAdapter page; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The DevTools Protocol adapter for the Runtime domain. /// The DevTools Protocol adapter for the Page domain. /// If or are . - public V140JavaScript(RuntimeAdapter runtime, PageAdapter page) + public V143JavaScript(RuntimeAdapter runtime, PageAdapter page) { this.runtime = runtime ?? throw new ArgumentNullException(nameof(runtime)); this.page = page ?? throw new ArgumentNullException(nameof(page)); diff --git a/dotnet/src/webdriver/DevTools/v140/V140Log.cs b/dotnet/src/webdriver/DevTools/v143/V143Log.cs similarity index 88% rename from dotnet/src/webdriver/DevTools/v140/V140Log.cs rename to dotnet/src/webdriver/DevTools/v143/V143Log.cs index 7004571f89201..a83a375fd4391 100644 --- a/dotnet/src/webdriver/DevTools/v140/V140Log.cs +++ b/dotnet/src/webdriver/DevTools/v143/V143Log.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,25 +17,25 @@ // under the License. // -using OpenQA.Selenium.DevTools.V140.Log; +using OpenQA.Selenium.DevTools.V143.Log; using System; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V140; +namespace OpenQA.Selenium.DevTools.V143; /// -/// Class containing the browser's log as referenced by version 140 of the DevTools Protocol. +/// Class containing the browser's log as referenced by version 143 of the DevTools Protocol. /// -public class V140Log : DevTools.Log +public class V143Log : DevTools.Log { private LogAdapter adapter; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Log domain. /// If is . - public V140Log(LogAdapter adapter) + public V143Log(LogAdapter adapter) { this.adapter = adapter ?? throw new ArgumentNullException(nameof(adapter)); this.adapter.EntryAdded += OnAdapterEntryAdded; diff --git a/dotnet/src/webdriver/DevTools/v140/V140Network.cs b/dotnet/src/webdriver/DevTools/v143/V143Network.cs similarity index 95% rename from dotnet/src/webdriver/DevTools/v140/V140Network.cs rename to dotnet/src/webdriver/DevTools/v143/V143Network.cs index a40d432fcce35..c2074770af733 100644 --- a/dotnet/src/webdriver/DevTools/v140/V140Network.cs +++ b/dotnet/src/webdriver/DevTools/v143/V143Network.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,30 +17,30 @@ // under the License. // -using OpenQA.Selenium.DevTools.V140.Fetch; -using OpenQA.Selenium.DevTools.V140.Network; +using OpenQA.Selenium.DevTools.V143.Fetch; +using OpenQA.Selenium.DevTools.V143.Network; using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V140; +namespace OpenQA.Selenium.DevTools.V143; /// -/// Class providing functionality for manipulating network calls using version 140 of the DevTools Protocol +/// Class providing functionality for manipulating network calls using version 143 of the DevTools Protocol /// -public class V140Network : DevTools.Network +public class V143Network : DevTools.Network { private FetchAdapter fetch; private NetworkAdapter network; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Network domain. /// The adapter for the Fetch domain. /// If or are . - public V140Network(NetworkAdapter network, FetchAdapter fetch) + public V143Network(NetworkAdapter network, FetchAdapter fetch) { this.network = network ?? throw new ArgumentNullException(nameof(network)); this.fetch = fetch ?? throw new ArgumentNullException(nameof(fetch)); @@ -247,9 +247,9 @@ public override async Task ContinueWithAuth(string requestId, string? userName, await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new V140.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new V143.Fetch.AuthChallengeResponse() { - Response = V140.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, + Response = V143.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, Username = userName, Password = password } @@ -266,9 +266,9 @@ public override async Task CancelAuth(string requestId) await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new OpenQA.Selenium.DevTools.V140.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new OpenQA.Selenium.DevTools.V143.Fetch.AuthChallengeResponse() { - Response = V140.Fetch.AuthChallengeResponseResponseValues.CancelAuth + Response = V143.Fetch.AuthChallengeResponseResponseValues.CancelAuth } }).ConfigureAwait(false); } diff --git a/dotnet/src/webdriver/DevTools/v140/V140Target.cs b/dotnet/src/webdriver/DevTools/v143/V143Target.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v140/V140Target.cs rename to dotnet/src/webdriver/DevTools/v143/V143Target.cs index 1ec7b6b0e715a..62da953deb063 100644 --- a/dotnet/src/webdriver/DevTools/v140/V140Target.cs +++ b/dotnet/src/webdriver/DevTools/v143/V143Target.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,27 +17,27 @@ // under the License. // -using OpenQA.Selenium.DevTools.V140.Target; +using OpenQA.Selenium.DevTools.V143.Target; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V140; +namespace OpenQA.Selenium.DevTools.V143; /// -/// Class providing functionality for manipulating targets for version 140 of the DevTools Protocol +/// Class providing functionality for manipulating targets for version 143 of the DevTools Protocol /// -public class V140Target : DevTools.Target +public class V143Target : DevTools.Target { private readonly TargetAdapter adapter; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Target domain. /// If is . - public V140Target(TargetAdapter adapter) + public V143Target(TargetAdapter adapter) { this.adapter = adapter ?? throw new ArgumentNullException(nameof(adapter)); adapter.DetachedFromTarget += OnDetachedFromTarget; diff --git a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs index e6d87de24e4d7..bba7a2f5481a1 100644 --- a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs +++ b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsConsoleTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsLogTest.cs b/dotnet/test/common/DevTools/DevToolsLogTest.cs index 9c0a793c718e5..0450e6ca614d5 100644 --- a/dotnet/test/common/DevTools/DevToolsLogTest.cs +++ b/dotnet/test/common/DevTools/DevToolsLogTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsLogTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs index 534515bec7d66..843f397bcafaf 100644 --- a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs +++ b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsNetworkTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs index 5a794b61c6fe2..7173b6572f5f0 100644 --- a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs +++ b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs @@ -22,7 +22,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsPerformanceTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs index c2e1c4b12fa0b..06e4a63197385 100644 --- a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs +++ b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs @@ -24,7 +24,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsProfilerTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs index bc3b1aa404dd3..8a94c0e783d89 100644 --- a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs +++ b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsSecurityTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsTabsTest.cs b/dotnet/test/common/DevTools/DevToolsTabsTest.cs index f277ba68329b0..4ea72fd617040 100644 --- a/dotnet/test/common/DevTools/DevToolsTabsTest.cs +++ b/dotnet/test/common/DevTools/DevToolsTabsTest.cs @@ -22,7 +22,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsTabsTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsTargetTest.cs b/dotnet/test/common/DevTools/DevToolsTargetTest.cs index eca16f8c7bf65..f710c775cbe98 100644 --- a/dotnet/test/common/DevTools/DevToolsTargetTest.cs +++ b/dotnet/test/common/DevTools/DevToolsTargetTest.cs @@ -25,12 +25,12 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V142; +using CurrentCdpVersion = V143; [TestFixture] public class DevToolsTargetTest : DevToolsTestFixture { - private int id = 142; + private int id = 143; [Test] [IgnoreBrowser(Selenium.Browser.IE, "IE does not support Chrome DevTools Protocol")] diff --git a/java/src/org/openqa/selenium/devtools/v140/BUILD.bazel b/java/src/org/openqa/selenium/devtools/v143/BUILD.bazel similarity index 98% rename from java/src/org/openqa/selenium/devtools/v140/BUILD.bazel rename to java/src/org/openqa/selenium/devtools/v143/BUILD.bazel index 3436a2f92dd4b..c16d20745a71e 100644 --- a/java/src/org/openqa/selenium/devtools/v140/BUILD.bazel +++ b/java/src/org/openqa/selenium/devtools/v143/BUILD.bazel @@ -2,7 +2,7 @@ load("//common:defs.bzl", "copy_file") load("//java:defs.bzl", "java_export", "java_library") load("//java:version.bzl", "SE_VERSION") -cdp_version = "v140" +cdp_version = "v143" java_export( name = cdp_version, diff --git a/java/src/org/openqa/selenium/devtools/v140/v140CdpInfo.java b/java/src/org/openqa/selenium/devtools/v143/v143CdpInfo.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v140/v140CdpInfo.java rename to java/src/org/openqa/selenium/devtools/v143/v143CdpInfo.java index a519bdbf1f697..7ba32062cf822 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140CdpInfo.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143CdpInfo.java @@ -15,15 +15,15 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import com.google.auto.service.AutoService; import org.openqa.selenium.devtools.CdpInfo; @AutoService(CdpInfo.class) -public class v140CdpInfo extends CdpInfo { +public class v143CdpInfo extends CdpInfo { - public v140CdpInfo() { - super(140, v140Domains::new); + public v143CdpInfo() { + super(143, v143Domains::new); } } diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Domains.java b/java/src/org/openqa/selenium/devtools/v143/v143Domains.java similarity index 77% rename from java/src/org/openqa/selenium/devtools/v140/v140Domains.java rename to java/src/org/openqa/selenium/devtools/v143/v143Domains.java index d2966452b221d..7760d1aa0d6df 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Domains.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Domains.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import org.openqa.selenium.devtools.DevTools; import org.openqa.selenium.devtools.idealized.Domains; @@ -26,21 +26,21 @@ import org.openqa.selenium.devtools.idealized.target.Target; import org.openqa.selenium.internal.Require; -public class v140Domains implements Domains { +public class v143Domains implements Domains { - private final v140Javascript js; - private final v140Events events; - private final v140Log log; - private final v140Network network; - private final v140Target target; + private final v143Javascript js; + private final v143Events events; + private final v143Log log; + private final v143Network network; + private final v143Target target; - public v140Domains(DevTools devtools) { + public v143Domains(DevTools devtools) { Require.nonNull("DevTools", devtools); - events = new v140Events(devtools); - js = new v140Javascript(devtools); - log = new v140Log(); - network = new v140Network(devtools); - target = new v140Target(); + events = new v143Events(devtools); + js = new v143Javascript(devtools); + log = new v143Log(); + network = new v143Network(devtools); + target = new v143Target(); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Events.java b/java/src/org/openqa/selenium/devtools/v143/v143Events.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v140/v140Events.java rename to java/src/org/openqa/selenium/devtools/v143/v143Events.java index 181d1a0df146f..242b053e3960e 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Events.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Events.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import java.time.Instant; import java.util.List; @@ -28,15 +28,15 @@ import org.openqa.selenium.devtools.events.ConsoleEvent; import org.openqa.selenium.devtools.idealized.Events; import org.openqa.selenium.devtools.idealized.runtime.model.RemoteObject; -import org.openqa.selenium.devtools.v140.runtime.Runtime; -import org.openqa.selenium.devtools.v140.runtime.model.ConsoleAPICalled; -import org.openqa.selenium.devtools.v140.runtime.model.ExceptionDetails; -import org.openqa.selenium.devtools.v140.runtime.model.ExceptionThrown; -import org.openqa.selenium.devtools.v140.runtime.model.StackTrace; +import org.openqa.selenium.devtools.v143.runtime.Runtime; +import org.openqa.selenium.devtools.v143.runtime.model.ConsoleAPICalled; +import org.openqa.selenium.devtools.v143.runtime.model.ExceptionDetails; +import org.openqa.selenium.devtools.v143.runtime.model.ExceptionThrown; +import org.openqa.selenium.devtools.v143.runtime.model.StackTrace; -public class v140Events extends Events { +public class v143Events extends Events { - public v140Events(DevTools devtools) { + public v143Events(DevTools devtools) { super(devtools); } @@ -77,7 +77,7 @@ protected ConsoleEvent toConsoleEvent(ConsoleAPICalled event) { protected JavascriptException toJsException(ExceptionThrown event) { ExceptionDetails details = event.getExceptionDetails(); Optional maybeTrace = details.getStackTrace(); - Optional maybeException = + Optional maybeException = details.getException(); String message = diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Javascript.java b/java/src/org/openqa/selenium/devtools/v143/v143Javascript.java similarity index 85% rename from java/src/org/openqa/selenium/devtools/v140/v140Javascript.java rename to java/src/org/openqa/selenium/devtools/v143/v143Javascript.java index 8db323c464acf..81bfc8b049dc3 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Javascript.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Javascript.java @@ -15,21 +15,21 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import java.util.Optional; import org.openqa.selenium.devtools.Command; import org.openqa.selenium.devtools.DevTools; import org.openqa.selenium.devtools.Event; import org.openqa.selenium.devtools.idealized.Javascript; -import org.openqa.selenium.devtools.v140.page.Page; -import org.openqa.selenium.devtools.v140.page.model.ScriptIdentifier; -import org.openqa.selenium.devtools.v140.runtime.Runtime; -import org.openqa.selenium.devtools.v140.runtime.model.BindingCalled; +import org.openqa.selenium.devtools.v143.page.Page; +import org.openqa.selenium.devtools.v143.page.model.ScriptIdentifier; +import org.openqa.selenium.devtools.v143.runtime.Runtime; +import org.openqa.selenium.devtools.v143.runtime.model.BindingCalled; -public class v140Javascript extends Javascript { +public class v143Javascript extends Javascript { - public v140Javascript(DevTools devtools) { + public v143Javascript(DevTools devtools) { super(devtools); } diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Log.java b/java/src/org/openqa/selenium/devtools/v143/v143Log.java similarity index 89% rename from java/src/org/openqa/selenium/devtools/v140/v140Log.java rename to java/src/org/openqa/selenium/devtools/v143/v143Log.java index 97d7241e09f57..3e0fcef3cd2e1 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Log.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Log.java @@ -15,19 +15,19 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import java.util.function.Function; import java.util.logging.Level; import org.openqa.selenium.devtools.Command; import org.openqa.selenium.devtools.ConverterFunctions; import org.openqa.selenium.devtools.Event; -import org.openqa.selenium.devtools.v140.log.Log; -import org.openqa.selenium.devtools.v140.log.model.LogEntry; -import org.openqa.selenium.devtools.v140.runtime.model.Timestamp; +import org.openqa.selenium.devtools.v143.log.Log; +import org.openqa.selenium.devtools.v143.log.model.LogEntry; +import org.openqa.selenium.devtools.v143.runtime.model.Timestamp; import org.openqa.selenium.json.JsonInput; -public class v140Log implements org.openqa.selenium.devtools.idealized.log.Log { +public class v143Log implements org.openqa.selenium.devtools.idealized.log.Log { @Override public Command enable() { diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Network.java b/java/src/org/openqa/selenium/devtools/v143/v143Network.java similarity index 92% rename from java/src/org/openqa/selenium/devtools/v140/v140Network.java rename to java/src/org/openqa/selenium/devtools/v143/v143Network.java index 3ed11a46fddbe..c1098c8e236c1 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Network.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Network.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import static java.net.HttpURLConnection.HTTP_OK; @@ -30,35 +30,35 @@ import org.openqa.selenium.devtools.DevToolsException; import org.openqa.selenium.devtools.Event; import org.openqa.selenium.devtools.idealized.Network; -import org.openqa.selenium.devtools.v140.fetch.Fetch; -import org.openqa.selenium.devtools.v140.fetch.model.*; -import org.openqa.selenium.devtools.v140.network.model.Request; +import org.openqa.selenium.devtools.v143.fetch.Fetch; +import org.openqa.selenium.devtools.v143.fetch.model.*; +import org.openqa.selenium.devtools.v143.network.model.Request; import org.openqa.selenium.internal.Either; import org.openqa.selenium.remote.http.HttpRequest; import org.openqa.selenium.remote.http.HttpResponse; -public class v140Network extends Network { +public class v143Network extends Network { - private static final Logger LOG = Logger.getLogger(v140Network.class.getName()); + private static final Logger LOG = Logger.getLogger(v143Network.class.getName()); - public v140Network(DevTools devTools) { + public v143Network(DevTools devTools) { super(devTools); } @Override protected Command setUserAgentOverride(UserAgent userAgent) { - return org.openqa.selenium.devtools.v140.network.Network.setUserAgentOverride( + return org.openqa.selenium.devtools.v143.network.Network.setUserAgentOverride( userAgent.userAgent(), userAgent.acceptLanguage(), userAgent.platform(), Optional.empty()); } @Override protected Command enableNetworkCaching() { - return org.openqa.selenium.devtools.v140.network.Network.setCacheDisabled(false); + return org.openqa.selenium.devtools.v143.network.Network.setCacheDisabled(false); } @Override protected Command disableNetworkCaching() { - return org.openqa.selenium.devtools.v140.network.Network.setCacheDisabled(true); + return org.openqa.selenium.devtools.v143.network.Network.setCacheDisabled(true); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v140/v140Target.java b/java/src/org/openqa/selenium/devtools/v143/v143Target.java similarity index 83% rename from java/src/org/openqa/selenium/devtools/v140/v140Target.java rename to java/src/org/openqa/selenium/devtools/v143/v143Target.java index 5632bf680db6c..42631c7bfa8c8 100644 --- a/java/src/org/openqa/selenium/devtools/v140/v140Target.java +++ b/java/src/org/openqa/selenium/devtools/v143/v143Target.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v140; +package org.openqa.selenium.devtools.v143; import java.util.List; import java.util.Map; @@ -28,21 +28,21 @@ import org.openqa.selenium.devtools.idealized.browser.model.BrowserContextID; import org.openqa.selenium.devtools.idealized.target.model.SessionID; import org.openqa.selenium.devtools.idealized.target.model.TargetID; -import org.openqa.selenium.devtools.v140.target.Target; -import org.openqa.selenium.devtools.v140.target.model.TargetInfo; +import org.openqa.selenium.devtools.v143.target.Target; +import org.openqa.selenium.devtools.v143.target.model.TargetInfo; import org.openqa.selenium.json.JsonInput; import org.openqa.selenium.json.TypeToken; -public class v140Target implements org.openqa.selenium.devtools.idealized.target.Target { +public class v143Target implements org.openqa.selenium.devtools.idealized.target.Target { @Override public Command detachFromTarget( Optional sessionId, Optional targetId) { return Target.detachFromTarget( sessionId.map( - id -> new org.openqa.selenium.devtools.v140.target.model.SessionID(id.toString())), + id -> new org.openqa.selenium.devtools.v143.target.model.SessionID(id.toString())), targetId.map( - id -> new org.openqa.selenium.devtools.v140.target.model.TargetID(id.toString()))); + id -> new org.openqa.selenium.devtools.v143.target.model.TargetID(id.toString()))); } @Override @@ -74,19 +74,19 @@ public Command detachFromTarget( @Override public Command attachToTarget(TargetID targetId) { - Function mapper = + Function mapper = ConverterFunctions.map( - "sessionId", org.openqa.selenium.devtools.v140.target.model.SessionID.class); + "sessionId", org.openqa.selenium.devtools.v143.target.model.SessionID.class); return new Command<>( "Target.attachToTarget", Map.of( "targetId", - new org.openqa.selenium.devtools.v140.target.model.TargetID(targetId.toString()), + new org.openqa.selenium.devtools.v143.target.model.TargetID(targetId.toString()), "flatten", true), input -> { - org.openqa.selenium.devtools.v140.target.model.SessionID id = mapper.apply(input); + org.openqa.selenium.devtools.v143.target.model.SessionID id = mapper.apply(input); return new SessionID(id.toString()); }); } @@ -101,9 +101,9 @@ public Event detached() { return new Event<>( "Target.detachedFromTarget", input -> { - Function converter = + Function converter = ConverterFunctions.map( - "targetId", org.openqa.selenium.devtools.v140.target.model.TargetID.class); + "targetId", org.openqa.selenium.devtools.v143.target.model.TargetID.class); return new TargetID(converter.apply(input).toString()); }); } diff --git a/java/src/org/openqa/selenium/devtools/versions.bzl b/java/src/org/openqa/selenium/devtools/versions.bzl index ff0c44a20e48a..d26517125f7a0 100644 --- a/java/src/org/openqa/selenium/devtools/versions.bzl +++ b/java/src/org/openqa/selenium/devtools/versions.bzl @@ -1,5 +1,5 @@ CDP_VERSIONS = [ - "v140", + "v143", "v141", "v142", ] diff --git a/javascript/selenium-webdriver/BUILD.bazel b/javascript/selenium-webdriver/BUILD.bazel index 3f0b9a7a66ae5..ffd352fc7f160 100644 --- a/javascript/selenium-webdriver/BUILD.bazel +++ b/javascript/selenium-webdriver/BUILD.bazel @@ -14,7 +14,7 @@ npm_link_all_packages(name = "node_modules") VERSION = "4.39.0-nightly202510242320" BROWSER_VERSIONS = [ - "v140", + "v143", "v141", "v142", ] diff --git a/py/BUILD.bazel b/py/BUILD.bazel index 7fb7c26b03b79..15dc72ba904e0 100644 --- a/py/BUILD.bazel +++ b/py/BUILD.bazel @@ -66,7 +66,7 @@ compile_pip_requirements( SE_VERSION = "4.39.0.202510242320" BROWSER_VERSIONS = [ - "v140", + "v143", "v141", "v142", ] diff --git a/rb/Gemfile.lock b/rb/Gemfile.lock index c73c0cbc5c40d..f6cbbe72a3e55 100644 --- a/rb/Gemfile.lock +++ b/rb/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - selenium-devtools (0.142.0) + selenium-devtools (0.143.0) selenium-webdriver (~> 4.2) selenium-webdriver (4.39.0.nightly) base64 (~> 0.2) diff --git a/rb/lib/selenium/devtools/BUILD.bazel b/rb/lib/selenium/devtools/BUILD.bazel index 9fe43583f0840..51f04a2eb698f 100644 --- a/rb/lib/selenium/devtools/BUILD.bazel +++ b/rb/lib/selenium/devtools/BUILD.bazel @@ -4,7 +4,7 @@ load("@rules_ruby//ruby:defs.bzl", "rb_binary", "rb_library") package(default_visibility = ["//rb:__subpackages__"]) CDP_VERSIONS = [ - "v140", + "v143", "v141", "v142", ] diff --git a/rb/lib/selenium/devtools/version.rb b/rb/lib/selenium/devtools/version.rb index 601de61235546..4544b31dfaa9f 100644 --- a/rb/lib/selenium/devtools/version.rb +++ b/rb/lib/selenium/devtools/version.rb @@ -19,6 +19,6 @@ module Selenium module DevTools - VERSION = '0.142.0' + VERSION = '0.143.0' end # DevTools end # Selenium From a5739e7e4234edf1c295fddfe7daafdd0ebba302 Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 3 Dec 2025 11:06:00 +0000 Subject: [PATCH 2/8] update selenium manager versions --- common/selenium_manager.bzl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/common/selenium_manager.bzl b/common/selenium_manager.bzl index e744212e4a0bc..09c70feaef491 100644 --- a/common/selenium_manager.bzl +++ b/common/selenium_manager.bzl @@ -6,22 +6,22 @@ def selenium_manager(): http_file( name = "download_sm_linux", executable = True, - sha256 = "195fc61dbc7d3a636251168b241abd8cad139f40b3e5c8afe46e61bc8fb96a13", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-d49165c/selenium-manager-linux", + sha256 = "8611d10e92d61765c96842d4af5916be6ba9fd739b5cf51e23323bb9a2ca7649", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3edce44/selenium-manager-linux", ) http_file( name = "download_sm_macos", executable = True, - sha256 = "27c09cced692fa6beebbf609891f6047240c297dd84dbe35da1accf39934651a", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-d49165c/selenium-manager-macos", + sha256 = "5aa2784e6f8194c71940437cbff0899bb7794fbc63d193a69aef8b912a3c819e", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3edce44/selenium-manager-macos", ) http_file( name = "download_sm_windows", executable = True, - sha256 = "6220742cfb31e8fcb65ab5b1920f7ba416d1ec314ad876e0f03bc59c1f073c05", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-d49165c/selenium-manager-windows.exe", + sha256 = "06fbe30e2c5b996b0dde361ccebf4fdae395afd73ee291987b2875084c826b06", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3edce44/selenium-manager-windows.exe", ) def _selenium_manager_artifacts_impl(_ctx): From 47ea158e13c90f07cf0440f97b9b6b698fab27a1 Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 3 Dec 2025 11:06:52 +0000 Subject: [PATCH 3/8] update maven dependency versions --- MODULE.bazel | 26 ++--- java/maven_install.json | 210 +++++++++++++++++++++------------------- 2 files changed, 122 insertions(+), 114 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 5c3919a6eac04..06a62230724d3 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -174,25 +174,25 @@ maven.install( name = "maven", artifacts = [ "com.beust:jcommander:1.82", - "org.checkerframework:checker-qual:3.51.1", + "org.checkerframework:checker-qual:3.52.1", "com.github.javaparser:javaparser-core:3.27.1", "com.github.spotbugs:spotbugs:4.9.8", "com.github.stephenc.jcip:jcip-annotations:1.0-1", "com.google.code.findbugs:jsr305:3.0.2", "com.google.code.gson:gson:2.13.2", "com.google.guava:guava:33.5.0-jre", - "com.github.ben-manes.caffeine:caffeine:3.2.2", + "com.github.ben-manes.caffeine:caffeine:3.2.3", "com.google.auto:auto-common:1.2.2", "com.google.auto.service:auto-service:1.1.1", "com.google.auto.service:auto-service-annotations:1.1.1", - "com.google.googlejavaformat:google-java-format:1.30.0", - "com.google.protobuf:protobuf-java:4.33.0", + "com.google.googlejavaformat:google-java-format:1.32.0", + "com.google.protobuf:protobuf-java:4.33.1", "com.google.protobuf.nano:protobuf-javanano:3.1.0", "com.graphql-java:graphql-java:24.1", - "com.uber.nullaway:nullaway:0.12.10", + "com.uber.nullaway:nullaway:0.12.13", "dev.failsafe:failsafe:3.3.2", - "io.grpc:grpc-context:1.76.0", - "io.lettuce:lettuce-core:7.0.0.RELEASE", + "io.grpc:grpc-context:1.77.0", + "io.lettuce:lettuce-core:7.1.0.RELEASE", "io.netty:netty-buffer", "io.netty:netty-codec-http", "io.netty:netty-codec-http2", @@ -210,12 +210,12 @@ maven.install( "io.opentelemetry:opentelemetry-sdk-testing", "io.opentelemetry:opentelemetry-sdk-trace", "it.ozimov:embedded-redis:0.7.3", - "net.bytebuddy:byte-buddy:1.17.8", - "org.htmlunit:htmlunit-core-js:4.17.0", - "org.apache.commons:commons-exec:1.5.0", + "net.bytebuddy:byte-buddy:1.18.2", + "org.htmlunit:htmlunit-core-js:4.19.0", + "org.apache.commons:commons-exec:1.6.0", "org.apache.logging.log4j:log4j-core:2.25.2", "org.assertj:assertj-core:3.27.6", - "org.bouncycastle:bcpkix-jdk18on:1.82", + "org.bouncycastle:bcpkix-jdk18on:1.83", "org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5", "org.hsqldb:hsqldb:2.7.4", "org.jboss.marshalling:jboss-marshalling:2.2.3.Final", @@ -237,9 +237,9 @@ maven.install( "uk.org.webcompere:system-stubs-core:2.1.8", ], boms = [ - "io.opentelemetry:opentelemetry-bom:1.55.0", + "io.opentelemetry:opentelemetry-bom:1.56.0", "io.netty:netty-bom:4.2.7.Final", - "org.junit:junit-bom:6.0.0", + "org.junit:junit-bom:6.0.1", ], excluded_artifacts = [ "org.hamcrest:hamcrest-all", # Replaced by hamcrest 2 diff --git a/java/maven_install.json b/java/maven_install.json index e2422f1e3d680..0e92b6813cd4a 100644 --- a/java/maven_install.json +++ b/java/maven_install.json @@ -1,7 +1,7 @@ { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": 1768325064, - "__RESOLVED_ARTIFACTS_HASH": 121511744, + "__INPUT_ARTIFACTS_HASH": -2085469941, + "__RESOLVED_ARTIFACTS_HASH": 448870062, "artifacts": { "com.beust:jcommander": { "shasums": { @@ -68,10 +68,10 @@ }, "com.github.ben-manes.caffeine:caffeine": { "shasums": { - "jar": "c74a6c72221dfb76eb92f2bb40108ea561a7da2f315dc3b1e64afa8f077f210c", - "sources": "2ec9bc766e34375395ca88522105efcc82247ade006848ebd8decf21bead1d7d" + "jar": "ca70c90a5d1ce1511880ce9c93d4ad22108f61111d3daf91eb52762b571bd179", + "sources": "60434a548af57d0dbe13b1aa4aaf08816e5bf1d3442264c669246f8929f4b757" }, - "version": "3.2.2" + "version": "3.2.3" }, "com.github.javaparser:javaparser-core": { "shasums": { @@ -145,10 +145,10 @@ }, "com.google.googlejavaformat:google-java-format": { "shasums": { - "jar": "c747e6f028ceed680f640b45e9f0570d32aa5b7d320b3c61bb185d59e44d47f7", - "sources": "bdb964d322edcb302e1fb6cbbec23c07d8decf022ade95e301f6c4379abf4fd4" + "jar": "3f7e3d356f48775b16ca84efe13c2233a3826c15f394ebc8ffbd5d46c5ffcd53", + "sources": "6cfcd124405ba8093755fe34b0e55e0c838aee9dc9e2bb7a1b6c202d9788e5a6" }, - "version": "1.30.0" + "version": "1.32.0" }, "com.google.guava:failureaccess": { "shasums": { @@ -186,10 +186,10 @@ }, "com.google.protobuf:protobuf-java": { "shasums": { - "jar": "6c50b4323a101dfd7b8aea209337ac49ecf5d8e33e0b210b196fc654291ed2cc", - "sources": "64e061477f46624978960d0fed6b562eb6de1307c95337c4e0ae7d079dbb6dfc" + "jar": "fd5cf3d55bc2c3ddb2a8640c9d4c69daa9a5b326fb6e05bae0e56b3f4f85e0f7", + "sources": "0674d40c616ee1059deba4740b6239db69beacb60a5e20720553c4e8a105f6d7" }, - "version": "4.33.0" + "version": "4.33.1" }, "com.graphql-java:graphql-java": { "shasums": { @@ -207,10 +207,10 @@ }, "com.uber.nullaway:nullaway": { "shasums": { - "jar": "34e6402eb8725468c1682da44034bef839d944ea0ebbc77b483e03ef99f90644", - "sources": "bca1c0d73859e6996a3227cc7224b4b324929ee53bc0cf9929bead8a4f21c418" + "jar": "50c0367cba92d910e826f0011565bd8963b3111ac1bd6c72b04adb3dcc698a75", + "sources": "61015631ac518fa76ee25e48b6515016de45199104b44eab6e84b6b7fa5d2173" }, - "version": "0.12.10" + "version": "0.12.13" }, "commons-io:commons-io": { "shasums": { @@ -242,24 +242,24 @@ }, "io.grpc:grpc-api": { "shasums": { - "jar": "13ce42c59871a04a7340f01e1dbd879fefa04811878cfd68864596321f555ed3", - "sources": "ac4458ef4d0e9a957ba013ed507ad4a1cab54faf7a8f3a57daea8b9238aef0f3" + "jar": "f2de9b6e90484fb0fe3e19402611836465f6125c0384bc8d7ac3768f1bd5505f", + "sources": "4cd3dd3fba9c281bd0f80dfbc7349593f1d673473cabe097adc81e8df20ef569" }, - "version": "1.76.0" + "version": "1.77.0" }, "io.grpc:grpc-context": { "shasums": { - "jar": "3b4eb9ca65fe5cd98b2665f9b355158fac5a048708626b5b68dc66c43fb820d3", - "sources": "8be4a10ccd6ffd2ec26d35c2a5803e87a85125904772f48b759fc799f05ab586" + "jar": "4801914d46b357653418521b47d277bf902df949b1da416f3469477a4575f1ee", + "sources": "8c0215f4251c15a2ec26e57feaae17a5076e146226e58a9381829038b3b61fce" }, - "version": "1.76.0" + "version": "1.77.0" }, "io.lettuce:lettuce-core": { "shasums": { - "jar": "698bea98eea6659f057270e242bb9f042cf8415d4ac54d54af5a33f6ec5a6d02", - "sources": "e93dcf6737e4d2185254762b32355e513f943b0c5f6ae0c0696c7177a594994e" + "jar": "d974ffdb0452e675985ff89b3c33f43ec9bc881f1cb1f7d140cfb303f8943ae6", + "sources": "ae94188ebe72113f7b3ec3483326f3ddcff5be63e25bb52c75971bc40632f4c2" }, - "version": "7.0.0.RELEASE" + "version": "7.1.0.RELEASE" }, "io.netty:netty-buffer": { "shasums": { @@ -382,87 +382,87 @@ }, "io.opentelemetry:opentelemetry-api": { "shasums": { - "jar": "387b4bf98631fc2ede9470879a8ff28dd8c5cb2d3dcf5b6ef77f5ee2bdb7b4f1", - "sources": "3abc57abcaaff4521a5fb2b89593031da5feca24aa54816ec58a8d08ab71fd4a" + "jar": "8b5f245fbeebfa8bb6f4b51d187ffd54de77a0acdcdef3bf10d735aa7a5af87d", + "sources": "2855918f92f68b9c6f42b365c431f606309f398574e72f15eb798b109e16d3af" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-common": { "shasums": { - "jar": "fca14bb87309d1193347d179b91c63045fa05a856f1fbeec6ef61c4a7f81b227", - "sources": "4219708637e60172c347e48b677b71f5ad97ab8e4850cfda2f85ed59da74e250" + "jar": "74973a303e309730841fd6a3031afd30e7d166dfa0e2bfe5c2350afaf29a2086", + "sources": "47f226771484640399ecfcf9b96d09e99a8fa135b1b7575c117d55d82aa2422e" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-context": { "shasums": { - "jar": "f34a4718b70446ec462703ced5cc2c9ad4c9b7c69dcb41d0f032ba51c625a3dd", - "sources": "e0b63b17ccb407f6208a89a180ad48c6add5cca05d29047e858a6ebe8442b3fb" + "jar": "92ad6a4edbee09472045706305d21c9f705f86a31b25c8807f9ae57119304bf5", + "sources": "c147dcded5ef13c9c265bab38fee3f7701e558f37f530a0425cd2ee1d6803781" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-exporter-logging": { "shasums": { - "jar": "068ce0d75097e6ac655e179aa007d816204e8ac8892f193e15a7fa8d9b1c3ef8", - "sources": "67fa9543ed0b3fa7913ee4dbd525803611644126f9caeb72c6ec8db456accd88" + "jar": "d7467b774a833b5a0e1502abc34a5e3f85b4cfda2cbff27cc60fcc9fb6e24a1c", + "sources": "d8460b7e7d0022ccc126fe64f5840c28c756ec092a18e060f652c70d0b2be128" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk": { "shasums": { - "jar": "d63231ea6fd33e0457c776a9aa8ae7ba778379b03119228ec56a5c8c16f9480e", - "sources": "3685819f7d9efb6761d35ecf5b6053dfc1d0161835da744b0fdb2c4d89c87a42" + "jar": "b5d3d1e0bb926dd1b2131f61953d17c77c2ae40e3b2576a1b6a907579aea7cb8", + "sources": "39c748574052f161818e867e0db1194b2dbcc0b44ce005b3db582acf882c0ab2" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-common": { "shasums": { - "jar": "e28bb83d0ae5a760ba95952daf820180ee7defb0c5783c9d21f9c00ada80020e", - "sources": "cb9423298f9c42ac2c568af5271d335e468d7730b21d7ca6c246c16c6eca25f7" + "jar": "a91282c3ad639fbc3fa1cce2e62311cde7053acfcabfaf32dd3d3eb7d6e18be6", + "sources": "812012687a720fc56d6a2ab943cc1890e0fff9e019e0823f01e4c474dfc6e248" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure": { "shasums": { - "jar": "88c32085a6f9cdd7725514ed1bbec3b196ecbd97d9375ca9b7f84c6163a48f1e", - "sources": "3dadd85ce903a3b57e043e5eb3c6a4c61c0dc26b5827f11b96249ac2d8fab81b" + "jar": "eb6f5d6034a8d0db725e6f225220fac521b0889c7b34543f0b05c2801fd0999b", + "sources": "608835ec88f65748e45cd63ea7114aa0c3ec077cf66cea7b8dd1b8d090afaaaa" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi": { "shasums": { - "jar": "3ee1f647238bb77df7b7bde47bc87a35a7807b3c5bb389ca81b0ba16c77824ff", - "sources": "71760407f00ba82b762335ff2c3470daf3d5ff1c6a798eb9ae52a24c7772f418" + "jar": "f307b2ff303916129bf56055085b30b63f6abd542d2150fedd539b2f88a3ce0a", + "sources": "6baa5c69b7a76c391051d0c0345c29243f460aea446bf7d7994adad9a96b0cad" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-logs": { "shasums": { - "jar": "d917bb833899057c7cbdbcc30290e816071b90e52c965693aaad4cc1b32ecc11", - "sources": "edb0008c29edf69671865945a1c47d1944c1f498ef7e895f7b21b916fea2f14c" + "jar": "bb94952c91e0f4186549f07bf6eccdbfb387766faaec3c2bbc6b8160779dca96", + "sources": "952cd1f846015fcfe10ea20d52ebcf1f335db788e04d5b26f611a5c3def098d6" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-metrics": { "shasums": { - "jar": "6219d69c3abdd6113bee35df94826f48e84b742041f5124b5857a2b801f74573", - "sources": "5f9c8dab78339e402caa7f7aa4616b6b5c8e2d50201335c73e23bd21aba147fd" + "jar": "467b0992e08d30e8aee55c14dac6e83d3a9db8092444c4caf3a5ace8d3b08833", + "sources": "1a15c091873a2e073a9e5ec8fef56bc28e02050cab06a4b09236c795e315debf" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-testing": { "shasums": { - "jar": "9e257ac45834e5d184abdc238b5ee146a74a259d940c57722999ef400cdc2232", - "sources": "b40c580007e26d721d406e0b85385e87f6e2e8c36bea55adfd8837d77f57ccee" + "jar": "3fd3ff0c9790740ca3e6d707a998d432bdda7dd9a77ca3a97ded2288a56b3c8e", + "sources": "8833eef8e48db03c45fad40d10888aa05317d377d47cfebb4d8d131388c79cbb" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.opentelemetry:opentelemetry-sdk-trace": { "shasums": { - "jar": "e593660b9fad8bfdb5e981ccd392aa030f788d577c55f8bac3b6c4c6dae509bb", - "sources": "2f374e9b5f2e7e33157bd6fc97eb5c629d0dac0f22a975075b52714916dfc6c5" + "jar": "25a0bdc076c1f0b5074187d4d5ac627611d96bfb257da8a80f35f9f90fbad19c", + "sources": "21a79ce067f03161f00704335d34632166a9937b700bbd84e0d601353f7e4f40" }, - "version": "1.55.0" + "version": "1.56.0" }, "io.projectreactor:reactor-core": { "shasums": { @@ -501,10 +501,10 @@ }, "net.bytebuddy:byte-buddy": { "shasums": { - "jar": "2b5ddc8c1f4234bdb7cb45338a8e10a13e0e3ca473e91d5d821d681127ea8ba1", - "sources": "5211140f46c380a5e9630a86b2c07b396a9c374128fa603ca1d321b3c7da7449" + "jar": "f55b145f4caada9b2943e49762ea3171b02599c4c7e230fba8afc66a4a5135de", + "sources": "4f239fbfbd23ee67770780b3bf65d54ba3e623fb5399bdef0f7b1ce90c763296" }, - "version": "1.17.8" + "version": "1.18.2" }, "net.bytebuddy:byte-buddy-agent": { "shasums": { @@ -536,10 +536,10 @@ }, "org.apache.commons:commons-exec": { "shasums": { - "jar": "d52d35801747902527826cca30734034e65baa7f36836cc0facf67131025f703", - "sources": "986906153ee8fe15c58e8df61eb6e18d1ecd2e8735d5df6598bdeee3fa7a55b9" + "jar": "13dcf3850478ef8de5d24d298a60eed5e8305eb20538fe632c82ea1dff6b5ea0", + "sources": "30be24e81829579865f0c020dcaa70a5c5972a8175effe67748589eebba1af90" }, - "version": "1.5.0" + "version": "1.6.0" }, "org.apache.commons:commons-lang3": { "shasums": { @@ -585,31 +585,31 @@ }, "org.bouncycastle:bcpkix-jdk18on": { "shasums": { - "jar": "bdc723e20834832ac6af136cb5b5ff05e43b71d4fa151cc6510d9212ee086e63", - "sources": "feb130d8393485cb5a829c83e0b056c18da3bbe6a9824b707d92302ffff8c2bf" + "jar": "d3c4c6b700c74ef8164bb15e549d939721b8f14fc0ff89fe19b220243bcfcbd8", + "sources": "f1f0f0565a5d84f0bdde5e812d260a9abacf9be2f57c49e461bfe9ff58340bb9" }, - "version": "1.82" + "version": "1.83" }, "org.bouncycastle:bcprov-jdk18on": { "shasums": { - "jar": "14cde2fdfaa8890480a8e5b67aceef0c90f96682c1e23c133bafdc9e0b3255ce", - "sources": "c6b82619be3e5477a60d7b6cb70ad0f2d0081c969483e0ce9c737f15437fb51b" + "jar": "82cf3a2af766c3bc874f6d36b9f20a8b99a8f09762dc776e8a227a45d8daaafb", + "sources": "0c335c8d599b92e264f4591087ca104615de0339bbba46ecc3a51af032de0b16" }, - "version": "1.82" + "version": "1.83" }, "org.bouncycastle:bcutil-jdk18on": { "shasums": { - "jar": "4420691958ad1c0ba275a6d6d8a6317adbdbdc9277055b6a72aa89c88cda8c7d", - "sources": "2eb514947cc1543195af2242681c59f3fced439f1649a63fca83053e07d3e250" + "jar": "ee7d0eb4e74de70a735f7fb36b604dd5c6ad35720d50b914604db042114a0185", + "sources": "935984a8b1d1893dd033a9f237b85898bcfa6ae7890a214f10bade935cd3536f" }, - "version": "1.82" + "version": "1.83" }, "org.checkerframework:checker-qual": { "shasums": { - "jar": "153aeffe56ca24f3a9b8b6c6ff813eace9620ccf35adfab91d491682e56cd5ce", - "sources": "b2ea75757bf4618e8864bc50322dc14fa123f4b603f29457a96ca71be12f843f" + "jar": "934641a18c8461bf66d7e939b2b054bf2a518ed4188fd7d6836a65b038f5364a", + "sources": "329e823b156b54302a6afa7981de25567dba6069ecac8f75fe33517d86f613ba" }, - "version": "3.51.1" + "version": "3.52.1" }, "org.checkerframework:dataflow-nullaway": { "shasums": { @@ -641,10 +641,10 @@ }, "org.htmlunit:htmlunit-core-js": { "shasums": { - "jar": "6616120805a400a1bf12a4d9f08f76e3666e13aabb0aba7d2109e97375dac74d", - "sources": "ae2644f6087f77518826325e15ea41af9ba0c5fa65eb640dc7118c58f93d8349" + "jar": "482e57ea524db7d883aa4098f19be877782a5a70bf5be4f22646d8b58dc1774d", + "sources": "fb28d81f1bf2b573fd4773fc9ef62db637f31610c11024b6291e242eae10d1f6" }, - "version": "4.17.0" + "version": "4.19.0" }, "org.jboss.marshalling:jboss-marshalling": { "shasums": { @@ -669,52 +669,52 @@ }, "org.junit.jupiter:junit-jupiter-api": { "shasums": { - "jar": "88d690d2d373cd66170770c317977196ce9e465f2388930f4bc9665e887385f6", - "sources": "52a9bb01e348a87c5743c6555274be8999d72ebdae0db3991b99f24bcd078e5e" + "jar": "a3ca8c7e567436093e4a6703d5d4aac02dbea36106ea32fd1367b56de20d4e02", + "sources": "b660b2445151341b45d0ee6243135ec773c93111ac0288586b2abb732520f3fd" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.jupiter:junit-jupiter-engine": { "shasums": { - "jar": "8fa1d6c37db29a6ef47183b49851ee7676f08fd7b1c27b68ccf3a4e57ce02f48", - "sources": "39e28f2826b78e68577a15367000f1352bed4f3d5e5490abb79d498ebd233d26" + "jar": "7476a56f4aaab57fc2f459847cd6bfb712b3bd04a9ac0b89ed9573f7adc2c550", + "sources": "f2674a0e1d974fd92a77d076af571e48b5faba0f7c1d634e3b39c4c41da11921" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.jupiter:junit-jupiter-params": { "shasums": { - "jar": "20847e45c553d51e392446e03355069f138fe0c51e91d7ef1bdbffc0d3af0454", - "sources": "697f479a21909e999bb40487ff8b429cf9a321b80114f5ca4454f9d8f18b2d5d" + "jar": "9566e249b4d4c7d53a6c8908f577885ce2d4c6313c916bdfbf7ffbc526b8a36f", + "sources": "af8a07e01d01b4fbf2e8173993d65b6d5e5ee4b20cf77fa66512e67db66577d4" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.platform:junit-platform-commons": { "shasums": { - "jar": "86e8faf87f3151a3d545850852a0f2cc55ea8a2434eee9e08f83881c52d55992", - "sources": "eb76cc1b09296370774f1de11c2fa037464753d98f0d542312e270b647a4c106" + "jar": "f8853f45c10f380ddb157cf42abba9b073474f05cc40335b585055f85538dcad", + "sources": "8bacec4e9aaf5aecf1f0405f79e96e57fbcbd9c6f97c4533212e09169b4656b3" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.platform:junit-platform-engine": { "shasums": { - "jar": "6f81842e9c13e997cac66b44614522f3639419e2388ae2d000c4bc0a6b92d93f", - "sources": "d324087cbe0b41ea9307c709811233f302346349fac17f2ab4c88f05a188eb79" + "jar": "f49577073a7ae184c718d9b43ae0d8edcb8abfc5ac738735ee3339d4652e92bf", + "sources": "6c0fa3b5c34a84adb49c6a92e5b6382bd7360f4f5dcbd31ce5cfe04029a2351d" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.platform:junit-platform-launcher": { "shasums": { - "jar": "5f097b00c6714bb71ecfb5dec62b59bb4c2f789763fafd1ece96c4ef0e6c280f", + "jar": "ee758ddb06fab1fd1a890c0bae4aacf8dc004c4f367e138dbffcb113cd09ebac", "sources": "b5d996a313285657990fd532d3f6375489ea2834f19ea9769d74009e9727fe9e" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.junit.platform:junit-platform-reporting": { "shasums": { - "jar": "91c6cec070da33f73bb8a92f98c60bfe52cb24f0e79b750724cc00ffa3491770", + "jar": "6bccf22ef91a32c7dd1c111fea58dc39162d0e1b13d2885800136b1bcadebfeb", "sources": "55064abe6ec1c296bd708146c12fff9459270fa0f2a7d9a92564ae2a47442fab" }, - "version": "6.0.0" + "version": "6.0.1" }, "org.mockito:mockito-core": { "shasums": { @@ -866,7 +866,7 @@ } }, "conflict_resolution": { - "com.google.errorprone:error_prone_annotations:2.40.0": "com.google.errorprone:error_prone_annotations:2.41.0", + "com.google.errorprone:error_prone_annotations:2.43.0": "com.google.errorprone:error_prone_annotations:2.41.0", "commons-io:commons-io:2.20.0": "commons-io:commons-io:2.5", "io.projectreactor:reactor-core:3.6.2": "io.projectreactor:reactor-core:3.6.6", "net.bytebuddy:byte-buddy-agent:1.17.4": "net.bytebuddy:byte-buddy-agent:1.17.7", @@ -1984,6 +1984,7 @@ "net.bytebuddy.description.field", "net.bytebuddy.description.method", "net.bytebuddy.description.modifier", + "net.bytebuddy.description.module", "net.bytebuddy.description.type", "net.bytebuddy.dynamic", "net.bytebuddy.dynamic.loading", @@ -2389,6 +2390,10 @@ "org.bouncycastle.jcajce.provider.config", "org.bouncycastle.jcajce.provider.digest", "org.bouncycastle.jcajce.provider.drbg", + "org.bouncycastle.jcajce.provider.kdf", + "org.bouncycastle.jcajce.provider.kdf.hkdf", + "org.bouncycastle.jcajce.provider.kdf.pbepbkdf2", + "org.bouncycastle.jcajce.provider.kdf.scrypt", "org.bouncycastle.jcajce.provider.keystore", "org.bouncycastle.jcajce.provider.keystore.bc", "org.bouncycastle.jcajce.provider.keystore.bcfks", @@ -2658,8 +2663,10 @@ "org.htmlunit.corejs.javascript.commonjs.module.provider", "org.htmlunit.corejs.javascript.config", "org.htmlunit.corejs.javascript.debug", + "org.htmlunit.corejs.javascript.dtoa", "org.htmlunit.corejs.javascript.json", "org.htmlunit.corejs.javascript.lc", + "org.htmlunit.corejs.javascript.lc.member", "org.htmlunit.corejs.javascript.lc.type", "org.htmlunit.corejs.javascript.lc.type.impl", "org.htmlunit.corejs.javascript.lc.type.impl.factory", @@ -3336,7 +3343,8 @@ }, "com.uber.nullaway:nullaway": { "com.google.errorprone.bugpatterns.BugChecker": [ - "com.uber.nullaway.NullAway" + "com.uber.nullaway.NullAway", + "com.uber.nullaway.RequireExplicitNullMarking" ] }, "io.lettuce:lettuce-core": { From 0ae4734c4330cc862aa6e3cc8123940cee1fbb4f Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 3 Dec 2025 11:06:57 +0000 Subject: [PATCH 4/8] update authors file --- AUTHORS | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS b/AUTHORS index 95bf0d5c1becb..d792a09e93e2a 100644 --- a/AUTHORS +++ b/AUTHORS @@ -320,6 +320,7 @@ GFHuang <4510984+GF-Huang@users.noreply.github.com> ggkiokas <115367874+ggkiokas@users.noreply.github.com> Ghjuvan Lacambre Giorgos Tzampanakis +github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Giulio Longfils glaszig Glib Briia From 823e2d9ae3f81011967db50057e97060f8b0216b Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 3 Dec 2025 11:07:10 +0000 Subject: [PATCH 5/8] bump versions in preparation for release --- .github/ISSUE_TEMPLATE/bug-report.yml | 2 +- dotnet/selenium-dotnet-version.bzl | 2 +- java/version.bzl | 2 +- javascript/selenium-webdriver/BUILD.bazel | 2 +- javascript/selenium-webdriver/package.json | 2 +- py/BUILD.bazel | 2 +- py/docs/source/conf.py | 2 +- py/pyproject.toml | 2 +- py/selenium/__init__.py | 2 +- py/selenium/webdriver/__init__.py | 2 +- rb/Gemfile.lock | 58 +++++++++++----------- rb/lib/selenium/webdriver/version.rb | 2 +- rust/BUILD.bazel | 2 +- rust/Cargo.toml | 2 +- 14 files changed, 42 insertions(+), 42 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index dc6830f1f1649..59311a66608dd 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -50,7 +50,7 @@ body: id: selenium-version attributes: label: What version of Selenium are you currently using? - description: Important! The latest released version of Selenium is 4.38 and we can't fix old versions. + description: Important! The latest released version of Selenium is 4.39 and we can't fix old versions. placeholder: e.g., 4.17.0 validations: required: true diff --git a/dotnet/selenium-dotnet-version.bzl b/dotnet/selenium-dotnet-version.bzl index 40d83ff97cf20..548fb0107c372 100644 --- a/dotnet/selenium-dotnet-version.bzl +++ b/dotnet/selenium-dotnet-version.bzl @@ -1,6 +1,6 @@ # BUILD FILE SYNTAX: STARLARK -SE_VERSION = "4.39.0-nightly202510242320" +SE_VERSION = "4.39.0" ASSEMBLY_VERSION = "4.0.0.0" SUPPORTED_NET_STANDARD_VERSIONS = ["netstandard2.0"] diff --git a/java/version.bzl b/java/version.bzl index f32a6244809e9..cec5007da16ef 100644 --- a/java/version.bzl +++ b/java/version.bzl @@ -1,2 +1,2 @@ -SE_VERSION = "4.39.0-SNAPSHOT" +SE_VERSION = "4.39.0" TOOLS_JAVA_VERSION = "17" diff --git a/javascript/selenium-webdriver/BUILD.bazel b/javascript/selenium-webdriver/BUILD.bazel index ffd352fc7f160..597dcdc8b7425 100644 --- a/javascript/selenium-webdriver/BUILD.bazel +++ b/javascript/selenium-webdriver/BUILD.bazel @@ -11,7 +11,7 @@ load("//javascript/private:browsers.bzl", "BROWSERS") npm_link_all_packages(name = "node_modules") -VERSION = "4.39.0-nightly202510242320" +VERSION = "4.39.0" BROWSER_VERSIONS = [ "v143", diff --git a/javascript/selenium-webdriver/package.json b/javascript/selenium-webdriver/package.json index 01592b48a842f..96f114b098b89 100644 --- a/javascript/selenium-webdriver/package.json +++ b/javascript/selenium-webdriver/package.json @@ -1,6 +1,6 @@ { "name": "selenium-webdriver", - "version": "4.39.0-nightly202510242320", + "version": "4.39.0", "description": "The official WebDriver JavaScript bindings from the Selenium project", "license": "Apache-2.0", "keywords": [ diff --git a/py/BUILD.bazel b/py/BUILD.bazel index 15dc72ba904e0..808cc3a9f59c5 100644 --- a/py/BUILD.bazel +++ b/py/BUILD.bazel @@ -63,7 +63,7 @@ compile_pip_requirements( ], ) -SE_VERSION = "4.39.0.202510242320" +SE_VERSION = "4.39.0" BROWSER_VERSIONS = [ "v143", diff --git a/py/docs/source/conf.py b/py/docs/source/conf.py index cc3ceb02dc1a1..d18c43df5fa0a 100644 --- a/py/docs/source/conf.py +++ b/py/docs/source/conf.py @@ -66,7 +66,7 @@ # The short X.Y version. version = "4.39" # The full version, including alpha/beta/rc tags. -release = "4.39.0.202510242320" +release = "4.39.0" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/py/pyproject.toml b/py/pyproject.toml index 1c45a3ba527c8..d154b4d19b248 100644 --- a/py/pyproject.toml +++ b/py/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "selenium" -version = "4.39.0.202510242320" +version = "4.39.0" license = "Apache-2.0" license-files = ["LICENSE", "NOTICE"] description = "Official Python bindings for Selenium WebDriver." diff --git a/py/selenium/__init__.py b/py/selenium/__init__.py index 554e1cd42c28f..de75dcaa02329 100644 --- a/py/selenium/__init__.py +++ b/py/selenium/__init__.py @@ -16,4 +16,4 @@ # under the License. -__version__ = "4.39.0.202510242320" +__version__ = "4.39.0" diff --git a/py/selenium/webdriver/__init__.py b/py/selenium/webdriver/__init__.py index 06f043102c2f1..d618ddf0311f2 100644 --- a/py/selenium/webdriver/__init__.py +++ b/py/selenium/webdriver/__init__.py @@ -44,7 +44,7 @@ from selenium.webdriver.wpewebkit.service import Service as WPEWebKitService # noqa from selenium.webdriver.wpewebkit.webdriver import WebDriver as WPEWebKit # noqa -__version__ = "4.39.0.202510242320" +__version__ = "4.39.0" # We need an explicit __all__ because the above won't otherwise be exported. __all__ = [ diff --git a/rb/Gemfile.lock b/rb/Gemfile.lock index f6cbbe72a3e55..c173a2119b446 100644 --- a/rb/Gemfile.lock +++ b/rb/Gemfile.lock @@ -3,7 +3,7 @@ PATH specs: selenium-devtools (0.143.0) selenium-webdriver (~> 4.2) - selenium-webdriver (4.39.0.nightly) + selenium-webdriver (4.39.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -13,7 +13,7 @@ PATH GEM remote: https://rubygems.org/ specs: - activesupport (7.2.2.2) + activesupport (7.2.3) base64 benchmark (>= 0.3) bigdecimal @@ -25,35 +25,35 @@ GEM minitest (>= 5.1) securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) - addressable (2.8.7) - public_suffix (>= 2.0.2, < 7.0) + addressable (2.8.8) + public_suffix (>= 2.0.2, < 8.0) ast (2.4.3) base64 (0.3.0) benchmark (0.5.0) bigdecimal (3.3.1) bigdecimal (3.3.1-java) concurrent-ruby (1.3.5) - connection_pool (2.5.4) + connection_pool (2.5.5) crack (1.0.1) bigdecimal rexml csv (3.3.5) curb (1.0.9) - date (3.4.1) - date (3.4.1-java) + date (3.5.0) + date (3.5.0-java) debug (1.11.0) irb (~> 1.10) reline (>= 0.3.8) diff-lcs (1.6.2) drb (2.2.3) - erb (5.1.1) - erb (5.1.1-java) + erb (6.0.0) + erb (6.0.0-java) ffi (1.17.2) ffi (1.17.2-java) ffi (1.17.2-x64-mingw-ucrt) ffi (1.17.2-x86_64-darwin) ffi (1.17.2-x86_64-linux-gnu) - fileutils (1.7.3) + fileutils (1.8.0) git (1.19.1) addressable (~> 2.8) rchardet (~> 1.8) @@ -62,22 +62,22 @@ GEM concurrent-ruby (~> 1.0) io-console (0.8.1) io-console (0.8.1-java) - irb (1.15.2) + irb (1.15.3) pp (>= 0.6.0) rdoc (>= 4.0.0) reline (>= 0.4.2) jar-dependencies (0.5.5) - json (2.15.1) - json (2.15.1-java) + json (2.16.0) + json (2.16.0-java) language_server-protocol (3.17.0.5) lint_roller (1.1.0) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) logger (1.7.0) - minitest (5.26.0) + minitest (5.26.2) parallel (1.27.0) - parser (3.3.9.0) + parser (3.3.10.0) ast (~> 2.4.1) racc pp (0.6.3) @@ -90,24 +90,24 @@ GEM psych (5.2.6-java) date jar-dependencies (>= 0.1.7) - public_suffix (6.0.2) + public_suffix (7.0.0) racc (1.8.1) racc (1.8.1-java) - rack (2.2.20) + rack (2.2.21) rainbow (3.1.1) - rake (13.3.0) + rake (13.3.1) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) rbs (3.9.5) logger rchardet (1.10.0) - rdoc (6.15.0) + rdoc (6.16.1) erb psych (>= 4.0.0) tsort regexp_parser (2.11.3) - reline (0.6.2) + reline (0.6.3) io-console (~> 0.5) rexml (3.4.4) rspec (3.13.2) @@ -119,11 +119,11 @@ GEM rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.6) + rspec-mocks (3.13.7) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-support (3.13.6) - rubocop (1.81.6) + rubocop (1.81.7) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -134,7 +134,7 @@ GEM rubocop-ast (>= 1.47.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.47.1) + rubocop-ast (1.48.0) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-performance (1.26.1) @@ -144,11 +144,11 @@ GEM rubocop-rake (0.7.1) lint_roller (~> 1.1) rubocop (>= 1.72.1) - rubocop-rspec (3.7.0) + rubocop-rspec (3.8.0) lint_roller (~> 1.1) - rubocop (~> 1.72, >= 1.72.1) + rubocop (~> 1.81) ruby-progressbar (1.13.0) - rubyzip (3.2.1) + rubyzip (3.2.2) securerandom (0.4.1) steep (1.5.3) activesupport (>= 5.1) @@ -165,7 +165,7 @@ GEM securerandom (>= 0.1) strscan (>= 1.0.0) terminal-table (>= 2, < 4) - stringio (3.1.7) + stringio (3.1.9) strscan (3.1.5) strscan (3.1.5-java) terminal-table (3.0.2) @@ -174,11 +174,11 @@ GEM tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.6.0) - webmock (3.25.1) + webmock (3.26.1) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) - webrick (1.9.1) + webrick (1.9.2) websocket (1.2.11) yard (0.9.37) diff --git a/rb/lib/selenium/webdriver/version.rb b/rb/lib/selenium/webdriver/version.rb index 80b7bd6249d2b..2d8da1f369ba2 100644 --- a/rb/lib/selenium/webdriver/version.rb +++ b/rb/lib/selenium/webdriver/version.rb @@ -19,6 +19,6 @@ module Selenium module WebDriver - VERSION = '4.39.0.nightly' + VERSION = '4.39.0' end # WebDriver end # Selenium diff --git a/rust/BUILD.bazel b/rust/BUILD.bazel index 7eed2c63cbab3..85dfdb6bce7ec 100644 --- a/rust/BUILD.bazel +++ b/rust/BUILD.bazel @@ -77,7 +77,7 @@ rust_binary( name = "selenium-manager", srcs = ["src/main.rs"], edition = "2024", - version = "0.4.39-nightly", + version = "0.4.39", visibility = ["//visibility:public"], deps = [ ":selenium_manager", diff --git a/rust/Cargo.toml b/rust/Cargo.toml index c0bc531dd69e8..46bbf901e79c2 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "selenium-manager" -version = "0.4.39-nightly" # don't forget to update rust/BUILD.bazel +version = "0.4.39" # don't forget to update rust/BUILD.bazel edition = "2024" authors = ["Selenium Date: Wed, 3 Dec 2025 11:07:15 +0000 Subject: [PATCH 6/8] WIP - rough auto-update of changelog, please edit --- dotnet/CHANGELOG | 46 +++++++++++++++ java/CHANGELOG | 73 ++++++++++++++++++++++++ javascript/selenium-webdriver/CHANGES.md | 17 ++++++ py/CHANGES | 24 ++++++++ rb/CHANGES | 9 +++ rust/CHANGELOG.md | 4 ++ 6 files changed, 173 insertions(+) diff --git a/dotnet/CHANGELOG b/dotnet/CHANGELOG index 0e730c6b66a96..7155908475ded 100644 --- a/dotnet/CHANGELOG +++ b/dotnet/CHANGELOG @@ -1,3 +1,49 @@ +v4.39.0 +====== +* [build] Upgrade rules_dotnet to 0.20.5 (#16592) +* [bidi] Simplify namespace for communications (#16602) +* Generate atoms statically (#16608) +* Add syntax highlighting for JavaScript string methods (#16616) + > * Add syntax highlighting for JavaScript string methods + > * Use const for JavaScript + > * Avoid ifdef in the support package + > * Add const to support package too + > * Work around internal issue + > * Fix bazel build + > * fix whitespace + > * Fix path to internal file + > * Use glob to indicate direct file + > * Fix file visibility + > * Fix reference to StringSyntaxConstants as well + > * Fix build format + > * Fix build once more +* Unwrap element wrapper recursively (#15362) + > * Unwrap element wrapper more than once + > * fix whitespace +* Simplify nuget package reference in Bazel (#16630) + > * Simplify nuget package reference in Bazel + > * Fix lint issue + > * Satisfy linter +* [bidi] Fix events subscription possibilities (#16603) +* Pack `net462` target framework (#16564) +* [bidi] Possibility to reset viewport (#16601) +* Implement third-party Permissions module (#16414) +* [bidi] JsonSerializerContext instance per module (#16649) +* [bidi] Immediately start to listen to incoming remote messages (#16651) +* [bidi] Dedicated json context for all modules (#16652) +* Move internal compiler services to Properties (#16653) +* [bidi] Rent buffer for receiving bytes in WebSocket (#16650) +* [bidi] Ignore non-serializable extension properties in BrowsingContext (#16654) +* [bidi] Cache modules in the root BiDi (#16655) +* Allow inspecting source generated files (#16656) +* Annotate JavaScript strings within BiDi (#16657) +* Fix nullability annotations on `NodeRemoteValue` (#16661) + > * Fix nullability annotations on `NodeRemoteValue` + > * Improve test for SharedId +* Replace `Lazy` with `??=` in `BrowsingContext` (#16664) +* [bidi] Avoid BiDi type in EventArgs ctor for unnecessary metadata generation (#16667) +* update devtools versions + v4.38.0 ====== * [bidi] Avoid using JsonInclude attribute to include optional property for DTO (#16413) diff --git a/java/CHANGELOG b/java/CHANGELOG index 922af4f4840f2..b1da73ed68bc0 100644 --- a/java/CHANGELOG +++ b/java/CHANGELOG @@ -1,3 +1,76 @@ +v4.39.0 +====== +* [BiDi] implement `browsingContext.downloadEnd` event (#16347) +* [BiDi] implement `emulation.setTimezoneOverride` (#16530) +* [grid] Minimum Docker API 1.44 for Docker Engine v29+ in Dynamic Grid (#16591) +* Show file modification time (#16589) + > * split method LocalNode.downloadFile() to 3 smaller methods + > * GET /se/files -> list all downloaded files + > * POST /se/files -> get specific file by name + > * DELETE /se/files -> delete downloaded files + > * replace `ImmutableMap.of` by `Map.of` + > It's available from Java 9, and it also returns an immutable map. + > * add method to get downloaded files with meta-info from Grid + > To track the downloading progress and wait for the full download completion, + > we need to know this info about downloaded files: + > 1. File modification time + > 2. File size +* [grid] Improve Docker client for Dynamic Grid (#16596) +* [grid] Improve browser container labels and naming in Dynamic Grid (#16599) +* [BiDi] emulation: allow passing null to GeolocationOverride (#16594) +* [grid] Update container label `compose.oneoff` in Dynamic Grid (#16613) +* [grid] Dynamic Grid group dynamic containers in compose stack (#16620) +* [BiDi] implement `emulation.setScriptingEnabled` (#16631) +* Avoid logging debug logs with INFO level (either in RUN or DEBUG mode) (#16584) + > avoid logging debug logs with INFO level + > ... either in RUN or DEBUG mode. + > People do debug their tests, and they don't want to see Selenium own debug logs. Especially DevTools/BiDi logs which are huge (encoded Base64 data, incl. screenshots etc). +* Add JSpecify nullable annotations to exception classes (#16026) + > * Add JSpecify nullable annotations to exception classes + > * fix dependencies on jspecify + > * add dependency jspecify to build bazel +* annotate with `@NullMarked` the whole package `org.openqa.selenium.net` (#16494) + > annotation with @NullMarked the whole package `org.openqa.selenium.net` + > So it's not needed to duplicate @NullMarked in every file. +* [bidi]: add BiDi method `BrowsingContext.setViewport(null, null)` to reset the mobile emulation mode (#16524) + > add BiDi method "BrowsingContext.setViewport(null, null, null)" for resetting mobile emulation mode + > Implementation detail: according to BiDi spec (https://www.w3.org/TR/webdriver-bidi/#command-browsingContext-setViewport), we have to call method "setViewport" with "viewport" parameter equal to "null". +* Replace Maven dependency references with artifact() for org.jspecify.jspecify (#16635) + > * Replace Maven dependency references with artifact() for org.jspecify:jspecify in multiple BUILD.bazel files + > Update BUILD.bazel to load artifact() alongside java_export + > Update BUILD.bazel to load artifact() for java_library and java_export + > * Refactor BUILD.bazel files to consolidate artifact loading in multiple modules + > * applied formatting for build files + > * applied formatting for build files for building files leftover +* 16612 download large files (#16627) + > * #16612 support downloading large files from Grid + > I added a new Grid endpoint "/se/files/:name" which allows downloading the file directly, without encoding it to Base64 and adding to Json. This transformation kills the performance and causes OutOfMemory errors for large files (e.g. 256+ MB). + > NB! Be sure that `toString()` method of objects (HttpRequest, HttpResponse, Contents.Supplier) never returns too long string - it spam debug logs and can cause OOM during debugging. + > * #16612 extract anonymous implementations of `Contents.Supplier` to separate classes + > It makes debugging easier. You can easily see what instances they are and where they come from. + > * #16612 optimize method `RemoteWebDriver.downloadFile()` + > Instead of reading the whole file to a byte array, just save given InputStream directly to the file. + > Now it can download large files (I tried 4GB) while consuming very low memory. + > * #16612 just in case, return `Contents.fromStream` only when downloading files. + > For json responses, still return `Contents.bytes` which allows re-reading its content multiple times. Just in case. + > * #16612 fix flaky test: wait until the downloads folder gets deleted + > After stopping a Grid node, the folder is deleted asynchronously (by cache removal listener). So we need to wait for it in test. + > * #16612 fix flaky test: wait until the grid node is fully stopped + > At least on my machine, stopping the node takes some time, and any checks right after `node.stop(sessionId)` often can fail. + > * #16612 fix flaky test LocalNewSessionQueueTest + > Gr... This is extremely hard to debug test. + > After hours of debugging, I came to a conclusion that we just need to increase the timeout. On my machine, `latch` gets decreased after ~1.2 seconds. So 1 second was not enough. + > * #16612 fix flaky test JdkHttpClientTest + > I don't know why, but sometimes we receive `HttpTimeoutException` instead of `InterruptedException`. Seems reasonable to consider execution as interrupted in both cases. (?) + > * #16612 remove unneeded code + > None of `is.readNBytes` implementations returns -1. It always returns 0 or positive number. + > * #16612 upload logs in case of test failure + > * ignore few more IDEA files + > * #16612 slightly improve logging in `W3CHttpResponseCodec.decode` + > Don't log the entire response body - just content type and length. +* #16573 unwrap double-wrapped webdriver (#16575) +* update devtools versions + v4.38.0 ====== * JSpecify annotations for `ExecuteMethod` (#16464) diff --git a/javascript/selenium-webdriver/CHANGES.md b/javascript/selenium-webdriver/CHANGES.md index cfff3edf5ccdd..549720e2ad9b4 100644 --- a/javascript/selenium-webdriver/CHANGES.md +++ b/javascript/selenium-webdriver/CHANGES.md @@ -1,3 +1,20 @@ +## 4.39.0 + +- bump versions to nightly +- [nodejs] Update dev dependencies to fix vulnerabilities (#16610) + > * [nodejs] Update dev dependencies to fix vulnerabilities + > * Update aspect_rules_js + > * Fix lockfile version + > * Fix aspect_rules_js version + > * Re-generate lockfile + > * Upgrade aspect_rules_* + > * Revert bazel changes + > * Update dependencies and lockfile again + > * Update dependencies and lockfile again + > * Fix formatting +- update devtools versions +- bump versions in preparation for release + ## 4.38.0 - update devtools versions diff --git a/py/CHANGES b/py/CHANGES index 636ea4c96d561..1ddfdf9c8f8d8 100644 --- a/py/CHANGES +++ b/py/CHANGES @@ -1,3 +1,27 @@ +Selenium 4.39.0 +* bump versions to nightly +* [bidi]: add emulation command - `set_locale_override` (#16504) +* [bidi]: add emulation command `set_scripting_enabled` (#16513) +* Update docstrings to google pydoc format (#16511) +* Update docstrings (remove reST leftovers and resolve D200) (#16525) +* Fix docstring formatting and apply ruff linting rules (#16527) +* Fix Ruff D417 warnings in docstrings (#16535) +* Fix ruff D415 warnings in docstrings (#16536) +* [bidi]: add `set_screen_orientation_override` command in Emulation (#16522) + > * add `set_screen_orientation_override` command + > * add tests + > * test all cases + > * refactor to `_convert_to_enum` + > * convert to lowercase in case of str +* Fix D205 ruff warnings for docstrings and add type hints (#16537) +* [bidi]: add `set_download_behavior` command (#16556) +* Fix more type annotations (#16551) +* [bidi]: add emulation command `set_user_agent_override` (#16595) +* Improve type hints with union syntax and native types (#16590) +* Use daemon threads for WebSocket connections (#16298) +* [bidi] Allow resetting viewport (#16623) +* bump versions in preparation for release + Selenium 4.38.0 * update devtools versions * [py][bidi]: add set_timezone_override command in emulation (#16500) diff --git a/rb/CHANGES b/rb/CHANGES index 0a11f6ddbfe6f..bb7ed4a9bf71f 100644 --- a/rb/CHANGES +++ b/rb/CHANGES @@ -1,3 +1,12 @@ +4.39.0 (2025-12-03) +========================= +* bump versions to nightly +* add mutable and immutable record objects to manage serialization +* Revert "add mutable and immutable record objects to manage serialization" + > This reverts commit 9f20834ddf8c84126f7ac44cd8b5fd3c595c1043. +* update devtools versions +* bump versions in preparation for release + 4.38.0 (2025-10-24) ========================= * Fix BiDi Network issue by removing nil values on network requests (#16442) diff --git a/rust/CHANGELOG.md b/rust/CHANGELOG.md index f1f6ab1f5f82a..be2becad971cc 100644 --- a/rust/CHANGELOG.md +++ b/rust/CHANGELOG.md @@ -1,3 +1,7 @@ +0.4.39 +====== + + 0.4.38 ====== From f33b652aa1bac8c20878e441ef16109d50a61c65 Mon Sep 17 00:00:00 2001 From: Boni Garcia Date: Wed, 3 Dec 2025 17:34:52 +0100 Subject: [PATCH 7/8] Update selenium-manager-windows.exe SHA after signing with EV token --- common/selenium_manager.bzl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/selenium_manager.bzl b/common/selenium_manager.bzl index 09c70feaef491..b4a4d5a8e66ca 100644 --- a/common/selenium_manager.bzl +++ b/common/selenium_manager.bzl @@ -20,7 +20,7 @@ def selenium_manager(): http_file( name = "download_sm_windows", executable = True, - sha256 = "06fbe30e2c5b996b0dde361ccebf4fdae395afd73ee291987b2875084c826b06", + sha256 = "c65ab06d504e11fcf3a3cffcb6a5457334b45d1ec1ec6dab3f9026247ae1dfee", url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3edce44/selenium-manager-windows.exe", ) From fb9fb1acd5b29225c01e0580ea51873f4dd75f6b Mon Sep 17 00:00:00 2001 From: Boni Garcia Date: Fri, 5 Dec 2025 09:30:03 +0100 Subject: [PATCH 8/8] [rust] Update lock files --- rust/Cargo.Bazel.lock | 10 +++++----- rust/Cargo.lock | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/rust/Cargo.Bazel.lock b/rust/Cargo.Bazel.lock index e29a8191f2652..fb4547eca57b1 100644 --- a/rust/Cargo.Bazel.lock +++ b/rust/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "c2f6ce33acb9a60d2a50182bd219781cb613c02f03cb33e317ad0f9341fc4606", + "checksum": "31460278a19f25995a69d362d4219f06ccb015c1620e765495db5b866d42e4cd", "crates": { "addr2line 0.25.1": { "name": "addr2line", @@ -12004,9 +12004,9 @@ ], "license_file": "LICENSE" }, - "selenium-manager 0.4.39-nightly": { + "selenium-manager 0.4.39": { "name": "selenium-manager", - "version": "0.4.39-nightly", + "version": "0.4.39", "package_url": "https://github.com/SeleniumHQ/selenium", "repository": null, "targets": [ @@ -12162,7 +12162,7 @@ "selects": {} }, "edition": "2024", - "version": "0.4.39-nightly" + "version": "0.4.39" }, "license": "Apache-2.0", "license_ids": [ @@ -20613,7 +20613,7 @@ }, "binary_crates": [], "workspace_members": { - "selenium-manager 0.4.39-nightly": "rust" + "selenium-manager 0.4.39": "rust" }, "conditions": { "aarch64-apple-darwin": [ diff --git a/rust/Cargo.lock b/rust/Cargo.lock index 2cbcdfd100184..9fd262f7e9116 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -1857,7 +1857,7 @@ dependencies = [ [[package]] name = "selenium-manager" -version = "0.4.39-nightly" +version = "0.4.39" dependencies = [ "anyhow", "apple-flat-package",