WebPushSubscription.md 3.7 KB


title: WebPushSubscription description: Represents a subscription to the push streaming server. menu: docs:

parent: entities

aliases: [ "/entities/pushsubscription", "/entities/PushSubscription", "/entities/webpushsubscription", "/entities/WebPushSubscription", "/api/entities/pushsubscription", "/api/entities/PushSubscription", "/api/entities/webpushsubscription", "/api/entities/WebPushSubscription",

]

Example

{
  "id": 328183,
  "endpoint": "https://yourdomain.example/listener",
  "alerts": {
    "follow": false,
    "favourite": false,
    "reblog": false,
    "mention": true,
    "poll": false
  },
  "server_key": "BCk-QqERU0q-CfYZjcuB6lnyyOYfJ2AifKqfeGIm7Z-HiTU5T9eTG5GxVA0_OH5mMlI4UkkDTpaZwozy0TzdZ2M="
}

Attributes

id {#id}

Description: The ID of the Web Push subscription in the database.\ Type: String (cast from an integer, but not guaranteed to be a number)\ Version history:\ 2.4.0 - added

endpoint {#endpoint}

Description: Where push alerts will be sent to.\ Type: String (URL)\ Version history:\ 2.4.0 - added

server_key {#server_key}

Description: The streaming server's VAPID key.\ Type: String\ Version history:\ 2.4.0 - added

alerts {#alerts}

Description: Which alerts should be delivered to the endpoint.\ Type: Hash\ Version history:\ 2.4.0 - added\ 2.8.0 - added alerts[poll]\ 3.1.0 - added alerts[follow_request]\ 3.3.0 - added alerts[status]\ 3.5.0 - added alerts[update] and alerts[admin.sign_up]\ 4.0.0 - added alerts[admin.report]

alerts[mention] {#mention}

Description: Receive a push notification when someone else has mentioned you in a status?\ Type: Boolean\ Version history:\ 2.4.0 - added

alerts[status] {#status}

Description: Receive a push notification when a subscribed account posts a status?\ Type: Boolean\ Version history:\ 3.3.0 - added

alerts[reblog] {#reblog}

Description: Receive a push notification when a status you created has been boosted by someone else?\ Type: Boolean\ Version history:\ 2.4.0 - added

alerts[follow] {#follow}

Description: Receive a push notification when someone has followed you?\ Type: Boolean\ Version history:\ 2.4.0 - added

alerts[follow_request] {#follow_request}

Description: Receive a push notification when someone has requested to followed you?\ Type: Boolean\ Version history:\ 3.1.0 - added

alerts[favourite] {#favourite}

Description: Receive a push notification when a status you created has been favourited by someone else?\ Type: Boolean\ Version history:\ 2.4.0 - added

alerts[poll] {#poll}

Description: Receive a push notification when a poll you voted in or created has ended?\ Type: Boolean\ Version history:\ 2.8.0 - added

alerts[update] {#update}

Description: Receive a push notification when a status you interacted with has been edited?\ Type: Boolean\ Version history:\ 3.5.0 - added

alerts[admin.sign_up] {#admin-sign_up}

Description: Receive a push notification when a new user has signed up?\ Type: Boolean\ Version history:\ 3.5.0 - added

alerts[admin.report] {#admin-report}

Description: Receive a push notification when a new report has been filed?\ Type: Boolean\ Version history:\ 4.0.0 - added

See also

{{< page-relref ref="methods/push" caption="push API methods" >}}

{{< caption-link url="https://github.com/mastodon/mastodon/blob/main/app/serializers/rest/web_push_subscription_serializer.rb" caption="app/serializers/rest/web_push_subscription_serializer.rb" >}}