runtime.MessageSender

An object containing information about the sender of a message or connection request; this is passed to the runtime.onMessage() listener.

It is also a property of runtime.Port, but only in the Port instance passed into the runtime.onConnect() or runtime.onConnectExternal() listeners.

Type

Values of this type are objects. They contain the following properties:

tabOptional
tabs.Tab. The tabs.Tab which opened the connection. This property will only be present when the connection was opened from a tab (including content scripts).
frameIdOptional
integer. The frame that opened the connection. Zero for top-level frames, positive for child frames. This will only be set when tab is set.
idOptional
string. The ID of the extension that sent the message, if the message was sent by an extension. If the sender set an ID explicitly using the applications key in manifest.json, then id will have this value. Otherwise it will have the ID that was generated for the sender.
Note that in Firefox, before version 54, this value was the extension's internal ID (that is, the UUID that appears in the extension's URL).
urlOptional
string. The URL of the page or frame hosting the script that sent the message.
If the sender is a script running in an extension page (such as a background page, an options page, or a browser action or page action popup), the URL will be in the form "moz-extension://<extension-internal-id>/path/to/page.html". If the sender is a background script and you haven't included a background page, it will be "moz-extension://<extension-internal-id>/_blank.html".
If the sender is a script running in a web page (including content scripts as well as normal page scripts), then url will be the web page URL. If the script is running in an iframe, url will be the iframe's URL.
tlsChannelIdOptional
string. The TLS channel ID of the page or frame that opened the connection, if requested by the extension, and if available.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaFirefox for Android
Basic supportChrome Full support 26Edge Full support 14Firefox Full support 45
Notes
Full support 45
Notes
Notes Before version 54, 'id' was the add-on's internal UUID, not the add-on ID.
Opera Full support 15Firefox Android Full support 48
Notes
Full support 48
Notes
Notes Before version 54, 'id' was the add-on's internal UUID, not the add-on ID.
urlChrome Full support 28Edge Full support 14
Notes
Full support 14
Notes
Notes The `url` is missing when the message was sent by an extension view.
Firefox Full support 45Opera Full support 15Firefox Android Full support 48
tlsChannelIdChrome Full support 32Edge No support NoFirefox Full support 45Opera Full support 19Firefox Android Full support 48
frameIdChrome Full support 41Edge Full support 14Firefox Full support 45Opera Full support 28Firefox Android Full support 48

Legend

Full support  
Full support
No support  
No support
See implementation notes.
See implementation notes.

Acknowledgements

This API is based on Chromium's chrome.runtime API. This documentation is derived from runtime.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: andrewtruongmoz, wbamberg, chrisdavidmills
Last updated by: andrewtruongmoz,