alarms

Schedule code to run at a specific time in the future. This is like setTimeout() and setInterval(), except that those functions don't work with background pages that are loaded on demand.

Alarms do not persist across browser sessions. They are created globally across all contexts of a single extension. E.g. alarm created in background script will fire onAlarm event in background script, options page, popup page and extension tabs (and vice versa). Alarms API is not available in Content scripts.

To use this API you need to have the "alarms" permission.

Types

alarms.Alarm
Information about a particular alarm.

Methods

alarms.clear()
Clear a specific alarm, given its name.
alarms.clearAll()
Clear all scheduled alarms.
alarms.create()
Create a new alarm.
alarms.get()
Retrieves a specific alarm, given its name.
alarms.getAll()
Retrieve all scheduled alarms.

Events

alarms.onAlarm
Fired when an alarm goes off.

Example extensions

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
Alarm
Yes
79
45
?
Yes
14
?
?
48
?
?
?
clear
Yes
79
45
?
Yes
14
?
?
48
?
?
?
clearAll
Yes
79
45
?
Yes
14
?
?
48
?
?
?
create
Yes
79
45
45-64
Alarms scheduled for a time in the past never fire.
?
Yes
14
?
?
48
48-64
Alarms scheduled for a time in the past never fire.
?
?
?
get
Yes
79
45
?
Yes
14
?
?
48
?
?
?
getAll
Yes
79
45
?
Yes
14
?
?
48
?
?
?
onAlarm
Yes
79
45
?
Yes
14
?
?
48
?
?
?

Note: This API is based on Chromium's chrome.alarms API.

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

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/alarms