notifications.NotificationOptions

This type contains all the data needed to:

Type

Values of this type are objects. They contain the properties listed below.

The first three properties - type, title, message - are mandatory in notifications.create(), but optional in notifications.update(). Firefox currently: only supports the type, title, message, and iconUrl properties; and the only supported value for type is 'basic'.

type
notifications.TemplateType. The type of notification you want. Depending on your choice here, certain other properties are either mandatory or are not permitted.
message
string. The notification's main content.
title
string. The notification's title.
iconUrlOptional
string. A URL pointing to an icon to display in the notification. The URL can be: a data URL, a blob URL, a http or https URL, or the relative URL of a file within the extension.
contextMessageOptional
string. Supplementary content to display.
priorityOptional
number. The notification's priority: may be 0, 1, or 2. Defaults to 0 if omitted.
eventTimeOptional
number. A timestamp for the notification in milliseconds since the epoch.
buttonsOptional
array of button. An array of up to 2 buttons to include in the notification. You can listen for button clicks using notifications.onButtonClicked. Each button is specified as an object with the following properties:
title
string. Title for the button.
iconUrlOptional
string. URL pointing to an icon for the button.
imageUrl

string. A URL pointing to an image to use in the notification. The URL can be: a data URL, a blob URL, or the relative URL of a file within the extension.

This property is only permitted if type is "image". In this case, it is mandatory if the NotificationOptions is used in notifications.create(), and optional if it is used in notifications.update().

items
array of item. An array of items to include in the notification. Depending on the settings for the operating system's notification mechanism, some of the items you provide might not be displayed. Each item is specified as an object with the following properties:
title
string. Title to display in the item.
message
string. Message to display in the item.
This property is only permitted if type is "list". In this case, it is mandatory if the NotificationOptions is used in notifications.create(), and optional if it is used in notifications.update().
progress
integer. An integer between 0 and 100, used to represent the current progress in a progress indicator.
This property is only permitted if type is "progress". In this case, it is mandatory if the NotificationOptions is used in notifications.create(), and optional if it is used in notifications.update().

Note that appIconMaskUrl and isClickable are not supported.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaFirefox for Android
Basic supportChrome Full support YesEdge Full support 17Firefox Full support 45Opera Full support YesFirefox Android Full support 48
appIconMaskUrl
DeprecatedNon-standard
Chrome Full support YesEdge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera ?
Notes
?
Notes
Notes Specifying this option doesn't throw an error. It might or might not have any effect.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
buttonsChrome Full support YesEdge No support NoFirefox No support NoOpera No support No
Notes
No support No
Notes
Notes Specifying the 'buttons' option will cause an asynchronous error on Opera.
Firefox Android No support No
contextMessageChrome Full support 31Edge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored, on Opera 18 and above.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
eventTimeChrome Full support YesEdge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera ?
Notes
?
Notes
Notes Specifying this option doesn't throw an error. It might or might not have any effect.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
imageUrl
DeprecatedNon-standard
Chrome Full support YesEdge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
isClickableChrome Full support 32Edge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera No support No
Notes
No support No
Notes
Notes Setting 'isClickable' to false will cause an asynchronous error on Opera 19 and above. Older Opera versions throw an error synchronously if this options is given.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
itemsChrome Full support Yes
Notes
Full support Yes
Notes
Notes On macOS only the first item is shown.
Edge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
priorityChrome Full support YesEdge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera Full support YesFirefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
progressChrome Full support 30Edge No support NoFirefox No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
Opera No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored, on Opera 17 and above.
Firefox Android No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored.
requireInteractionChrome Full support 50Edge No support NoFirefox No support NoOpera No support No
Notes
No support No
Notes
Notes Specifying this option doesn't throw an error, but its value is ignored, on Opera 37 and above.
Firefox Android No support No

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Non-standard. Expect poor cross-browser support.
Non-standard. Expect poor cross-browser support.
Deprecated. Not for use in new websites.
Deprecated. Not for use in new websites.
See implementation notes.
See implementation notes.

Acknowledgements

This API is based on Chromium's chrome.notifications API.

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, freaktechnik, Makyen, wbamberg, kmaglione
Last updated by: andrewtruongmoz,