PushManager.registrations() was a legacy instance method that asked the system for existing push endpoint registrations. On success, req.result was an array of plain PushRegistration objects with pushEndpoint and version (MDN).
Pass the required arguments shown below. Check return values and browser support before you rely on the result.
Syntax
Call pushManager.registrations. Start with this line.
JavaScript
pushManager.registrations()
Call
What it does
pushManager.registrations()
Primary signature.
pushManager.registrations(...)
Call with the arguments your case needs.
Built into the browser. Call registrations(...) on a PushManager — no import required.
Library declarations
JavaScript
pushManager.registrations()
Parameters
Parameter
Description
onsuccess / onerror
Required. Handle the DOMRequest
Feature detect
Required. Missing in modern browsers
Return Value
Return Value
Description
*
DOMRequest (not a Promise)
JavaScript Examples
Example 1 — MDN registrations() Loop
List existing endpoints with pushEndpoint and version.
Wait for the worker.navigator.serviceWorker.ready gives the active registration.
Read one subscription.getSubscription() returns a Promise — not a DOMRequest.
Handle null. No subscription yet → show enable UI, then call subscribe().
Use the full object. Modern servers need endpoint and encryption keys, not only a URL string.
Compatibility
Browser Support
PushManager.registrations() is Deprecated and Non-standard on MDN. It is missing or removed in modern browsers. Prefer getSubscription() (Baseline Widely available).
✓ Deprecated · Non-standard
PushManager.registrations()
Legacy push endpoint listing — avoid in new code. Use getSubscription() instead.
LegacyDeprecated API
Google ChromeNot supported — use getSubscription()
Not supported
Mozilla FirefoxLegacy only — use getSubscription()
Legacy only
Apple SafariNever supported — use getSubscription()
Not supported
Microsoft EdgeFollow Chromium — use getSubscription()
Not supported
OperaFollow Chromium
Not supported
Internet ExplorerNo Push API
Not supported
registrations()Limited
Bottom line: Feature-detect before calling. Build new push features with getSubscription() and subscribe() after serviceWorker.ready.
Frequently Asked Questions
It asked the system about existing push endpoint registrations. On success, the DOMRequest result was an array of PushRegistration objects with pushEndpoint and version.
Yes. MDN marks it Deprecated and Non-standard. It is not Experimental. Prefer PushManager.getSubscription() in new code.
A DOMRequest object (legacy Mozilla pattern), not a Promise. On success, req.result is an array of objects with pushEndpoint (URL string) and version.
Use PushManager.getSubscription() after navigator.serviceWorker.ready. It returns a Promise that resolves to a PushSubscription or null.
No. MDN documents registrations() with no parameters.
You may see it paired with register() in old Mozilla push samples. Knowing it helps you migrate safely to getSubscription() and subscribe().