PushSubscription
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The PushSubscription interface of the Push API provides a subscription's URL endpoint and allows unsubscribing from a push service.
An instance of this interface can be serialized.
Properties
PushSubscription.endpointRead only-
A
USVStringcontaining the endpoint associated with the push subscription. PushSubscription.expirationTimeRead only-
A
DOMHighResTimeStampof the subscription expiration time associated with the push subscription, if there is one, or null otherwise. PushSubscription.optionsRead only-
An object containing the options used to create the subscription.
PushSubscription.subscriptionIdRead only-
A
DOMStringcontaining the subscription ID associated with the push subscription.
Methods
PushSubscription.getKey()-
Returns an
ArrayBufferwhich contains the client's public key, which can then be sent to a server and used in encrypting push message data. PushSubscription.toJSON()-
Standard serializer — returns a JSON representation of the subscription properties.
PushSubscription.unsubscribe()-
Starts the asynchronous process of unsubscribing from the push service, returning a
Promisethat resolves to a boolean value when the current subscription is successfully unregistered.
Example
navigator.serviceWorker.ready.then(function(reg) {
reg.pushManager.getSubscription().then(function(subscription) {
subscription.unsubscribe().then(function(successful) {
// You've successfully unsubscribed
}).catch(function(e) {
// Unsubscribing failed
})
})
});
Specifications
| Specification |
|---|
| Push API # pushsubscription-interface |
Browser compatibility
BCD tables only load in the browser