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

# Remove push subscription(s)

> Remove a specific push subscription by endpoint, or remove all subscriptions
if no endpoint is provided.




## OpenAPI

````yaml /api-reference/openapi.yaml delete /webpush/subscription
openapi: 3.1.0
info:
  title: Site Spy API
  description: >
    # Site Spy web page monitoring and notifications API


    REST API for managing page watches, group tags, and notifications.


    Site Spy can be driven by this simple REST API — the endpoint pages include
    `curl`, Python, and JavaScript examples to help you get started faster.


    ## Where to find my API key?


    Your API key is under [**Settings →
    API**](https://sitespy.app/dashboard/settings?tab=api) in the Site Spy
    dashboard.

    Simply click the API key to copy it to your clipboard.


    ## Connection URL


    All endpoints live under `https://detect.coolify.vkuprin.com/api/v1`, for
    example:

    `https://detect.coolify.vkuprin.com/api/v1/watch/cc0cfffa-f449-477b-83ea-0caafd1dc091/history`


    ## Authentication


    Almost all API requests require authentication, provided as an **API key**
    in the header of the HTTP request.


    For example: `x-api-key: YOUR_API_KEY`
  version: 0.1.6
  contact:
    name: Site Spy
    url: https://sitespy.app
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - url: https://detect.coolify.vkuprin.com/api/v1
    description: Site Spy production
security:
  - ApiKeyAuth: []
tags:
  - name: Watch Management
    description: >
      Core functionality for managing web page monitors. Create, retrieve,
      update, and delete individual watches.

      Each watch represents a single URL being monitored for changes, with
      configurable settings for check intervals,

      notification preferences, and content filtering options.
  - name: Watch History
    description: |
      Get a list of timestamps of all changes detected for a watch.
  - name: Snapshots
    description: >
      Retrieve individual text snapshot of monitored content according to the
      `timestamp`. The text snapshot is the HTML

      to Text at page check time.


      Set the query argument `html` to any value to retrieve the last HTML
      fetched, the system only keeps the last two

      (2) HTML files fetched.


      Use the Watch History API endpoint to get a list of timestamps to pass to
      this query.
  - name: Favicon
    description: >
      Retrieve favicon images associated with monitored web pages. These are
      used in the dashboard interface

      to visually identify different watches in your monitoring list.
  - name: Tag Management
    description: >
      Organize your watches using tags and groups. Tags (also known as Groups)
      allow you to categorize monitors, set group-wide

      notification preferences, and perform bulk operations like mass rechecking
      or status changes across

      multiple related watches.
  - name: Notifications
    description: >
      Configure global notification endpoints that can be used across all your
      watches. Supports various

      notification services including email, Discord, Slack, webhooks, and many
      other popular platforms.

      These settings serve as defaults that can be overridden at the individual
      watch or tag level.


      The notification syntax uses
      [https://github.com/caronc/apprise](https://github.com/caronc/apprise).
  - name: User Settings
    description: >
      Manage user-specific settings such as default recheck intervals. These
      settings are stored per API key

      and apply to all watches created by that user unless overridden at the
      watch level.
  - name: Search
    description: >
      Search and filter your watches by URL patterns, titles, or tags. Useful
      for quickly finding specific

      monitors in large collections or identifying watches that match certain
      criteria.
  - name: Import
    description: >
      Bulk import multiple URLs for monitoring. Accepts plain text lists of URLs
      and can automatically

      apply tags, proxy settings, and other configurations to all imported
      watches simultaneously.
  - name: System Information
    description: >
      Retrieve system status and statistics about your Site Spy instance,
      including total watch

      counts, uptime information, and version details.
  - name: Email Verification
    description: >
      Manage email notification settings for your API key. Each API key can have
      one email address

      associated with it for receiving notifications. The email must be verified
      before notifications

      can be sent to it.
  - name: Telegram Notifications
    description: >
      Connect your Telegram account to receive instant change notifications.

      Generate a connect link, open it in Telegram, tap Start — done. Free for
      all plans.
  - name: Web Push Notifications
    description: >
      Subscribe to browser push notifications for instant alerts when watched
      pages change.

      Uses the Web Push protocol (RFC 8030) with VAPID authentication. Free for
      all plans.
  - name: RSS Feeds
    description: >
      Manage per-user RSS feed access tokens and retrieve feed URLs. Each user
      can generate a

      personal RSS token that provides access to their watches via standard RSS
      readers. Feeds

      are scoped to the user's watches only, ensuring multi-tenant privacy.
  - name: API Key Management
    description: >
      Generate and manage API keys. API keys are used to authenticate all
      requests to the API.

      Each API key is associated with a unique user and their watches.
  - name: Feature Flags
    description: >
      Retrieve feature flags for the current API key. Feature flags control
      which features are

      enabled or disabled for specific users.
  - name: Authentication
    description: >
      User account registration and authentication. Users can create accounts
      with email/password

      and receive an API key that links to their account. This enables syncing
      watches across

      the browser extension and web dashboard.
  - name: Plan
    description: >
      Retrieve the current subscription plan and usage for the authenticated API
      key. Plans control

      the maximum number of watches a user can create (Free: 2, Starter: 25,
      Pro: 100).
  - name: Billing
    description: >
      Manage subscriptions via Lemon Squeezy. Create checkout sessions to
      upgrade, access the

      customer billing portal, and receive webhook events from Lemon Squeezy.
  - name: Feedback
    description: >
      Collect product research responses from authenticated users. One-time PMF
      (Sean Ellis)

      survey submission per user.
  - name: Screenshots
    description: >
      Retrieve the history of visual snapshots captured for a watch. Use the
      returned timestamps

      with the Visual Diff endpoints to compare any two captures.
  - name: Visual Diff
    description: >
      Retrieve individual screenshots and pixel-level visual comparisons between
      any two captured

      snapshots of a watch, including difference metadata such as changed
      regions.
paths:
  /webpush/subscription:
    delete:
      tags:
        - Web Push Notifications
      summary: Remove push subscription(s)
      description: >
        Remove a specific push subscription by endpoint, or remove all
        subscriptions

        if no endpoint is provided.
      operationId: unsubscribeWebPush
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                endpoint:
                  type: string
                  description: >-
                    Specific subscription endpoint to remove. Omit to remove
                    all.
      responses:
        '200':
          description: Subscription(s) removed
        '404':
          description: API key not found
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. You can find your API key in the Site Spy
        dashboard under Settings → API.

````