> ## Documentation Index
> Fetch the complete documentation index at: https://docs.platform.arb.inc/llms.txt
> Use this file to discover all available pages before exploring further.

# Subscribe to web push with authentication

> Registers an authenticated user's browser for web push notifications. The subscription is bound to the user's session and organization. Returns a subscription ID that can be used to send notifications to this user.



## OpenAPI

````yaml api-reference/push.yaml post /web-push/subscribe
openapi: 3.0.3
info:
  title: push
  description: >-
    The Push service keeps track of which user browsers have signed up to
    receive notifications and how to reach them using VAPID. Other services tell
    it when a notification should be sent, and it delivers that message directly
    to the user's browser.
  version: 1.0.0
servers:
  - url: https://push.platform.arb.inc
security: []
tags:
  - name: /
  - name: demo
  - name: internal
  - name: vapid-keys
  - name: web-push
paths:
  /web-push/subscribe:
    post:
      tags:
        - web-push
      summary: Subscribe to web push with authentication
      description: >-
        Registers an authenticated user's browser for web push notifications.
        The subscription is bound to the user's session and organization.
        Returns a subscription ID that can be used to send notifications to this
        user.
      operationId: subscribeWebPush
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - subscription
                - vapidKey
              properties:
                subscription:
                  type: object
                  description: >-
                    Browser PushSubscription object containing endpoint and
                    encryption keys
                  required:
                    - endpoint
                    - keys
                  properties:
                    endpoint:
                      type: string
                      format: uri
                      description: Push service endpoint URL provided by the browser
                      example: https://fcm.googleapis.com/fcm/send/abc123def456
                    keys:
                      type: object
                      required:
                        - p256dh
                        - auth
                      properties:
                        p256dh:
                          type: string
                          description: Client ECDH public key for message encryption
                          example: >-
                            BKxMsq8lMmxKd_GFzCPJzCl8hQ3vVdYlQCL_bN8cLQhFk8z5pQ9hN1lMrT4xW2kP3sQ7
                        auth:
                          type: string
                          description: Client authentication secret for message encryption
                          example: 8sFHd5kNuLVhw2pQ9xN1mT4
                vapidKey:
                  type: string
                  description: VAPID public key that was used during browser subscription
                  example: >-
                    BNcRdreALRFXTkOOUHK1EtK2wtaz5Ry4YfYCA_0QTpQtUbVlUK3qW_HkkDQ3CskBSRU481zCtgwtR_jYDg9gNqk
      responses:
        '200':
          description: Successfully subscribed to web push notifications
          content:
            application/json:
              schema:
                type: object
                properties:
                  subscriptionID:
                    type: string
                    description: Unique identifier for this subscription
                    example: 3f8c7e4d-2a1b-4c9d-8e7f-6a5b4c3d2e1f
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      description: access token
      scheme: bearer
      bearerFormat: JWT

````