dialogbrain-com Push Notifications API

The push-notifications API from dialogbrain-com — 8 operation(s) for push-notifications.

Operations 10

GET /api/push/vapid-key Get Vapid Public Key #
POST /api/push/subscribe Subscribe Push #
DELETE /api/push/subscribe Unsubscribe Push #
DELETE /api/push/subscriptions/{subscription_id} Delete Subscription #
GET /api/push/subscriptions List Subscriptions #
GET /api/push/preferences Get Preferences #
PUT /api/push/preferences Update Preferences #
POST /api/push/test Send Test Notification #
POST /api/push/mute-thread/{thread_id} Mute Thread #
POST /api/push/unmute-thread/{thread_id} Unmute Thread #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/dialogbrain-com:dialogbrain-com-push-notifications-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

dialogbrain-com-push-notifications-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DialogBrain v2 API Gateway Push Notifications API
  description: Clean refactored API gateway with minimal vertical slice
  version: 0.1.0
tags:
- name: Push Notifications
paths:
  /api/push/vapid-key:
    get:
      tags:
      - Push Notifications
      summary: Get Vapid Public Key
      description: Get the VAPID public key for push subscription.
      operationId: get_vapid_public_key_api_push_vapid_key_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
  /api/push/subscribe:
    post:
      tags:
      - Push Notifications
      summary: Subscribe Push
      description: Register a push subscription for the current user.
      operationId: subscribe_push_api_push_subscribe_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PushSubscriptionCreate'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PushSubscription'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Push Notifications
      summary: Unsubscribe Push
      description: Unsubscribe a push endpoint.
      operationId: unsubscribe_push_api_push_subscribe_delete
      parameters:
      - name: endpoint
        in: query
        required: true
        schema:
          type: string
          title: Endpoint
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/push/subscriptions/{subscription_id}:
    delete:
      tags:
      - Push Notifications
      summary: Delete Subscription
      description: Delete a specific push subscription by ID.
      operationId: delete_subscription_api_push_subscriptions__subscription_id__delete
      parameters:
      - name: subscription_id
        in: path
        required: true
        schema:
          type: integer
          title: Subscription Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/push/subscriptions:
    get:
      tags:
      - Push Notifications
      summary: List Subscriptions
      description: List all active push subscriptions for the current user.
      operationId: list_subscriptions_api_push_subscriptions_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/PushSubscription'
                type: array
                title: Response List Subscriptions Api Push Subscriptions Get
  /api/push/preferences:
    get:
      tags:
      - Push Notifications
      summary: Get Preferences
      description: Get notification preferences for the current user.
      operationId: get_preferences_api_push_preferences_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationPreferences'
    put:
      tags:
      - Push Notifications
      summary: Update Preferences
      description: Update notification preferences for the current user.
      operationId: update_preferences_api_push_preferences_put
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/src__api__push_notifications__NotificationPreferencesUpdate'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationPreferences'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/push/test:
    post:
      tags:
      - Push Notifications
      summary: Send Test Notification
      description: Send a test push notification to all user's devices.
      operationId: send_test_notification_api_push_test_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TestNotificationRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/push/mute-thread/{thread_id}:
    post:
      tags:
      - Push Notifications
      summary: Mute Thread
      description: Mute push notifications for a specific thread.
      operationId: mute_thread_api_push_mute_thread__thread_id__post
      parameters:
      - name: thread_id
        in: path
        required: true
        schema:
          type: integer
          title: Thread Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/push/unmute-thread/{thread_id}:
    post:
      tags:
      - Push Notifications
      summary: Unmute Thread
      description: Unmute push notifications for a specific thread.
      operationId: unmute_thread_api_push_unmute_thread__thread_id__post
      parameters:
      - name: thread_id
        in: path
        required: true
        schema:
          type: integer
          title: Thread Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    src__api__push_notifications__NotificationPreferencesUpdate:
      properties:
        push_enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Push Enabled
        notify_message_new:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Message New
        notify_message_mention:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Message Mention
        notify_draft_ready:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Draft Ready
        notify_sync_error:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Sync Error
        notify_auto_reply_sent:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Auto Reply Sent
        notify_calls:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Calls
        notify_dm_only:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Notify Dm Only
        muted_thread_ids:
          anyOf:
          - items:
              type: integer
            type: array
          - type: 'null'
          title: Muted Thread Ids
        muted_workspace_ids:
          anyOf:
          - items:
              type: integer
            type: array
          - type: 'null'
          title: Muted Workspace Ids
        quiet_hours_enabled:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Quiet Hours Enabled
        quiet_hours_start:
          anyOf:
          - type: string
          - type: 'null'
          title: Quiet Hours Start
        quiet_hours_end:
          anyOf:
          - type: string
          - type: 'null'
          title: Quiet Hours End
        quiet_hours_timezone:
          anyOf:
          - type: string
          - type: 'null'
          title: Quiet Hours Timezone
      type: object
      title: NotificationPreferencesUpdate
      description: Update notification preferences.
    PushSubscriptionCreate:
      properties:
        kind:
          type: string
          enum:
          - webpush
          - fcm
          - apns
          title: Kind
          default: webpush
        endpoint:
          anyOf:
          - type: string
          - type: 'null'
          title: Endpoint
        keys:
          anyOf:
          - $ref: '#/components/schemas/PushSubscriptionKeys'
          - type: 'null'
        token:
          anyOf:
          - type: string
          - type: 'null'
          title: Token
        voip_token:
          anyOf:
          - type: string
          - type: 'null'
          title: Voip Token
        platform:
          anyOf:
          - type: string
            enum:
            - ios
            - android
          - type: 'null'
          title: Platform
        user_agent:
          anyOf:
          - type: string
          - type: 'null'
          title: User Agent
        device_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Device Name
      type: object
      title: PushSubscriptionCreate
      description: 'Request to register a push subscription.


        ``webpush`` carries a Web Push ``endpoint`` + ``keys``. ``fcm`` / ``apns``

        carry the device ``token`` (stored in ``endpoint``, keys empty); an iOS app

        also sends its PushKit ``voip_token``: a value sets it, an explicit ``null``

        clears it (PushKit invalidated the token), and no key at all keeps the

        stored one (the app could not read it this time).'
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    NotificationPreferences:
      properties:
        push_enabled:
          type: boolean
          title: Push Enabled
          default: true
        notify_message_new:
          type: boolean
          title: Notify Message New
          default: true
        notify_message_mention:
          type: boolean
          title: Notify Message Mention
          default: true
        notify_draft_ready:
          type: boolean
          title: Notify Draft Ready
          default: true
        notify_sync_error:
          type: boolean
          title: Notify Sync Error
          default: true
        notify_auto_reply_sent:
          type: boolean
          title: Notify Auto Reply Sent
          default: false
        notify_calls:
          type: boolean
          title: Notify Calls
          default: true
        notify_dm_only:
          type: boolean
          title: Notify Dm Only
          default: false
        muted_thread_ids:
          items:
            type: integer
          type: array
          title: Muted Thread Ids
          default: []
        muted_workspace_ids:
          items:
            type: integer
          type: array
          title: Muted Workspace Ids
          default: []
        quiet_hours_enabled:
          type: boolean
          title: Quiet Hours Enabled
          default: false
        quiet_hours_start:
          anyOf:
          - type: string
          - type: 'null'
          title: Quiet Hours Start
        quiet_hours_end:
          anyOf:
          - type: string
          - type: 'null'
          title: Quiet Hours End
        quiet_hours_timezone:
          type: string
          title: Quiet Hours Timezone
          default: UTC
      type: object
      title: NotificationPreferences
      description: User notification preferences.
    TestNotificationRequest:
      properties:
        title:
          type: string
          title: Title
          default: Test Notification
        body:
          type: string
          title: Body
          default: This is a test push notification from DialogBrain
      type: object
      title: TestNotificationRequest
      description: Request to send a test notification.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    PushSubscription:
      properties:
        id:
          type: integer
          title: Id
        kind:
          type: string
          title: Kind
        endpoint:
          type: string
          title: Endpoint
        device_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Device Name
        is_active:
          type: boolean
          title: Is Active
        created_at:
          type: string
          title: Created At
        last_used_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Used At
      type: object
      required:
      - id
      - kind
      - endpoint
      - is_active
      - created_at
      title: PushSubscription
      description: Push subscription response.
    PushSubscriptionKeys:
      properties:
        p256dh:
          type: string
          title: P256Dh
        auth:
          type: string
          title: Auth
      type: object
      required:
      - p256dh
      - auth
      title: PushSubscriptionKeys
      description: Web Push subscription keys.