webRequest.ResourceType

This type is a string, which represents the context in which a resource was fetched in a web request.

It's used to filter the requests you listen to using the webRequest API. For example: you can listen to requests only for images, or only for scripts.

Type

Values of this type are strings. Possible values are:

beacon

Requests sent through the Beacon API.

csp_report

Requests sent to the report-uri given in the Content-Security-Policy header, when an attempt to violate the policy is detected.

font

Web fonts loaded for a @font-face CSS rule.

image

Resources loaded to be rendered as image, except for imageset on browsers that support that type (see browser compatibility below).

imageset

Images loaded by a <picture> element or given in an <img> element's srcset attribute.

main_frame

Top-level documents loaded into a tab.

media

Resources loaded by a <video> or <audio> element.

object

Resources loaded by an <object> or <embed> element.

Browsers that don't have a dedicated object_subrequest type (see browser compatibility below), also label subsequent requests sent by the plugin as object.

object_subrequest

Requests sent by plugins.

ping

Requests sent to the URL given in a hyperlink's ping attribute, when the hyperlink is followed.

Browsers that don't have a dedicated beacon type (see browser compatibility below), also label requests sent through the Beacon API as ping.

script

Code that is loaded to be executed by a <script> element or running in a Worker.

speculative

In a speculative connection, the browser has determined that a request to a URI may be coming soon, so it starts a TCP and/or TLS handshake immediately, so it is ready more quickly when the resource is actually requested. Note that this type of connection does not provide valid tab information, so request details such as tabId, frameId, parentFrameId, etc. are inaccurate.

stylesheet

CSS stylesheets loaded to describe the representation of a document.

sub_frame

Documents loaded into an <iframe> or <frame> element.

web_manifest

Web App Manifests loaded for websites that can be installed to the homescreen.

websocket

Requests initiating a connection to a server through the WebSocket API.

xml_dtd

DTDs loaded for an XML document.

xmlhttprequest

Requests sent by an XMLHttpRequest object or through the Fetch API.

xslt

XSLT stylesheets loaded for transforming an XML document.

other

Resources that aren't covered by any other available type.

Browser compatibility

BCD tables only load in the browser

Note: This API is based on Chromium's chrome.webRequest API. This documentation is derived from web_request.json in the Chromium code.