MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/8d22564490d8

extension

Utilities related to your add-on. Get URLs to resources packages with your add-on, get the Window object for your add-on's pages, get the values for various settings. Note that the messaging APIs in this module are deprecated in favor of the equivalent APIs in the runtime module.

Types

extension.ViewType
The type of extension view.

Properties

extension.lastError
Set for the lifetime of a callback if an ansychronous extension api has resulted in an error. If no error has occured lastError will be undefined.
extension.inIncognitoContext
True for content scripts running inside incognito tabs, and for extension pages running inside an incognito process. The latter only applies to extensions with 'split' incognito_behavior.

Functions

extension.getURL()
Converts a relative path within an extension install directory to a fully-qualified URL.
extension.getViews()
Returns an array of the Window objects for each of the pages running inside the current extension.
extension.getBackgroundPage()
Returns the Window object for the background page running inside the current extension. Returns null if the extension has no background page.
extension.isAllowedIncognitoAccess()
Retrieves the state of the extension's access to Incognito-mode (as determined by the user-controlled 'Allowed in Incognito' checkbox).
extension.isAllowedFileSchemeAccess()
Retrieves the state of the extension's access to the 'file://' scheme (as determined by the user-controlled 'Allow access to File URLs' checkbox).
extension.setUpdateUrlData()
Sets the value of the ap CGI parameter used in the extension's update URL. This value is ignored for extensions that are hosted in the browser vendor's store.

Events

extension.onRequest
Fired when a request is sent from either an extension process or a content script.
extension.onRequestExternal
Fired when a request is sent from another extension.

Browser compatibility

ChromeEdgeFirefoxFirefox for AndroidOpera
ViewTypeYesNo45.048.033
getBackgroundPageYesYes45.048.033
getExtensionTabsYesNoNoNoNo
getURLYesYes45.048.033
getViewsYesNo45.048.033
inIncognitoContextYesNo45.048.033
isAllowedFileSchemeAccessYesNo48.048.033
isAllowedIncognitoAccessYesNo48.048.033
lastErrorYesNo47.048.033
onRequestYesNoNoNo33
onRequestExternalYesNoNoNo33
sendRequestYesNoNoNoNo
setUpdateUrlDataYesNoNoNo33

Edge incompatibilities

Promises are not supported in Edge. Use callbacks instead.

Chrome incompatibilities

None.

Example add-ons

Acknowledgements

This API is based on Chromium's chrome.extension API. This documentation is derived from extension.json in the Chromium code.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

Document Tags and Contributors

 Contributors to this page: abbycar, wbamberg, bsilverberg
 Last updated by: abbycar,