On Mozilla's PushSubscription.endpoint page, they have listed all browser compatibilities.
However, they do not state which Push Services are being used by each one of them. I figured, I might as well download each browser and test them all out by subscribing through PushManager.subscribe().
Now, I'm just wondering which one is needed for Safari v16 and higher?
You think also configure these endpoints as CORS endpoints which are allowed to send notifications to one of your App Services for example, which can be convenient.
Complete list of Push Services are down below:
- Chrome (v42 or higher): https://fcm.googleapis.com
- Edge (v17 or higher): https://wns2-am3p.notify.windows.com
- Firefox (v44 or higher): https://updates.push.services.mozilla.com
- Opera (v29 or higher): https://fcm.googleapis.com
- Safari (v16 or higher): ?
- Chrome Android (v42 or higher): https://fcm.googleapis.com
- Firefox for Android (v48 or higher): https://fcm.googleapis.com
- Opera Android (v29 or higher): https://fcm.googleapis.com
- Safari on iOS: NOT SUPPORTED
- Samsung Internet (v4.0 or higher): https://fcm.googleapis.com
- WebView Android: NOT SUPPORTED
Please let me know, in case you know which Push Service is being used for Safari v16 or higher. Thank you.
UPDATE: January 16, 2023 9:54 PM
According to the following GitHub repository List of all known push services, the following list can be used:
- android.googleapis.com
- fcm.googleapis.com
- updates.push.services.mozilla.com
- updates-autopush.stage.mozaws.net
- updates-autopush.dev.mozaws.net
- *.notify.windows.com
- *.push.apple.com
Thanks to @collimarco.
You can see a list of all known push services here:
https://github.com/pushpad/known-push-services
The list of push service hosts is complete and covers all major browsers (Chrome, Firefox, Opera, Edge, Safari, etc.). We use that list for limiting outgoing connections to trusted hosts.
For example for Safari the host is
*.push.apple.com
.