ServiceChannel NotificationSubscriptions API

The NotificationSubscriptions API from ServiceChannel — 7 operation(s) for notificationsubscriptions.

Operations 11

GET /NotificationSubscriptions/Http List existing subscriptions #
POST /NotificationSubscriptions/Http Create a subscription #
GET /NotificationSubscriptions/Http/{id} Get a subscription #
PUT /NotificationSubscriptions/Http/{id} Update a subscription #
DELETE /NotificationSubscriptions/Http/{id} Delete a subscription #
GET /NotificationSubscriptions/msteams Get MSTeams Subscription #
POST /NotificationSubscriptions Subscribe to Notification #
DELETE /NotificationSubscriptions/{id} UnSubscribe #
GET /NotificationSubscriptions/SigningKey Get a signing key #
PUT /NotificationSubscriptions/SigningKey Regenerate a signing key #
GET /GetProvidersExclusionList Get providers exclusion list #

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/servicechannel-notificationsubscriptions-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

servicechannel-notificationsubscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: bearer.v1
  title: Fixxbook.Bearer.Api.V1 AfterHours Notification Subscriptions API
  isOdataApi: false
  relativePath: ''
  discoveryPath: docs/bearer.v1
  _isAuthorizedAccess: true
servers:
- url: https://sb2fixxbook.servicechannel.com:443/api
security:
- oauth2: []
tags:
- name: NotificationSubscriptions
paths:
  /NotificationSubscriptions/Http:
    get:
      tags:
      - NotificationSubscriptions
      summary: List existing subscriptions
      description: Returns a list of subscriptions for the current subscriber or provider.
      operationId: GETv3_NotificationSubscriptions_Http
      responses:
        '200':
          description: The subscriptions are in the response.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
    post:
      tags:
      - NotificationSubscriptions
      summary: Create a subscription
      description: "Creates a new subscription to the specified [event types](/guides/wh/types-of-events/). Returns a unique subscription ID for a successful request.\n            See [Event Objects](/guides/wh/event-objects/) for example notification objects and descriptions of their fields.\n            <br />**Example Request**\n            \n                POST /NotificationSubscriptions/Http\n                {\n                  \"Url\": \"https://your-company.com/webhook-target-URL\",\n                  \"Enabled\": true,\n                  \"Name\": \"Subscription to new WOs\",\n                  \"EventTypes\": [\n                    \"WorkOrderCreated\"\n                  ],\n                  \"Rules\": {\n                    \"Trades\": [\n                      \"GLASS\"\n                    ],\n                    \"Categories\": [\n                      \"MAINTENANCE\"\n                    ]\n                  }\n                }"
      operationId: POSTv3_NotificationSubscriptions_Http
      responses:
        '201':
          description: The subscription is created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddNotificationSubsciptionResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddNotificationSubsciptionResponse'
        '400':
          description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n            <br/>Error codes:\n            503 - Required data missing or incorrect"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddHttpNotificationSubscriptionRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddHttpNotificationSubscriptionRequest'
        description: The subscription object that needs to be created.
        required: true
  /NotificationSubscriptions/Http/{id}:
    get:
      tags:
      - NotificationSubscriptions
      summary: Get a subscription
      description: Retrieves the details of the specified subscription.
      operationId: GETv3_NotificationSubscriptions_Http_{id}
      parameters:
      - name: id
        in: path
        description: The unique ID of the subscription to return.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: The requested subscription is in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
        '400':
          description: "The requested data are not found.\n            <br/>Error codes:\n            502 - Subscription not found"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
    put:
      tags:
      - NotificationSubscriptions
      summary: Update a subscription
      description: "Updates the specified subscription by setting the values of the parameters passed.\n            <br />**Example Request**\n            \n                PUT /NotificationSubscriptions/Http/{id}\n                {\n                  \"Id\": 1111,\n                  \"Url\": \"https://your-company.com/webhook-target-URL\",\n                  \"Enabled\": true,\n                  \"Name\": \"Subscription to new WOs\",\n                  \"EventTypes\": [\n                    \"WorkOrderCreated\"\n                  ],\n                  \"Rules\": {\n                    \"Trades\": [\n                      \"GLASS\"\n                    ],\n                    \"Categories\": [\n                      \"MAINTENANCE\"\n                    ]\n                  }\n                }"
      operationId: PUTv3_NotificationSubscriptions_Http_{id}
      parameters:
      - name: id
        in: path
        description: The unique ID of the subscription to update.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: The subscription is updated, and the response is intentionally blank.
        '400':
          description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n            <br/>Error codes:\n            502 - Subscription not found\n            503 - Required data missing or incorrect"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
          text/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription'
        description: The subscription object that needs to be updated.
        required: true
    delete:
      tags:
      - NotificationSubscriptions
      summary: Delete a subscription
      description: Permanently deletes the specified subscription. It cannot be undone.
      operationId: DELETEv3_NotificationSubscriptions_Http_{id}
      parameters:
      - name: id
        in: path
        description: The unique ID of the subscription to delete.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: The subscription is deleted, and the response is intentionally blank.
        '400':
          description: "The requested data are not found.\n            <br/>Error codes:\n            502 - Subscription not found"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
  /NotificationSubscriptions/msteams:
    get:
      tags:
      - NotificationSubscriptions
      summary: Get MSTeams Subscription
      description: Retrieves the details of the specified subscription.
      operationId: GETv3_NotificationSubscriptions_msteams?conversationId={conversationId}
      parameters:
      - name: conversationId
        in: query
        description: Conversation Identifier.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The requested subscription is in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.MSBotNotificationSubscriptionResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.MSBotNotificationSubscriptionResponse'
        '400':
          description: "The requested data are not found.\n            <br/>Error codes:\n            502 - Subscription not found"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
  /NotificationSubscriptions:
    post:
      tags:
      - NotificationSubscriptions
      summary: Subscribe to Notification
      description: "Creates a new Subscription. Returns a unique subscription ID for a successful request.\n            See [Event Objects](/guides/wh/event-objects/) for example notification objects and descriptions of their fields.\n            <br />**Example Request**\n            \n                POST /NotificationSubscriptions/Subscribe\n                {\n                  \"Name\": \"New Subscription\",\n                  \"IsEnabled\": true,\n                  \"Type\": \"MSBot\",\n                  \"Content\": \n                  {\n                    \"ConversationId\":\"a:1aV4BNOWtTdqJhkdgsdfhsdfhsgjdfgjdrtydjyj\",\n                    \"TenantId\":\"1111111-1111-1111-1111-111111111111\",\n                    \"UserId\":\"29:1oTNViX5ByDxfsgdfgsdhgjlnkkli\",\n                    \"UserName\":\"First Last\",\n                    \"ServiceUrl\":\"https://smba.trafficmanager.net/amer/\"\n                  }\n                }"
      operationId: POSTv3_NotificationSubscriptions
      responses:
        '201':
          description: The subscription is created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddNotificationSubsciptionResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.AddNotificationSubsciptionResponse'
        '400':
          description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n            <br/>Error codes:\n            2105 - Operation is not allowed.\n            503 - Required data missing or incorrect"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.NotificationSubscriptionRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.NotificationSubscriptionRequest'
        description: The subscription object that needs to be created.
        required: true
  /NotificationSubscriptions/{id}:
    delete:
      tags:
      - NotificationSubscriptions
      summary: UnSubscribe
      description: Permanently deletes the specified subscription. It cannot be undone.
      operationId: DELETEv3_NotificationSubscriptions_{id}?type={type}
      parameters:
      - name: id
        in: path
        description: The unique ID of the subscription.
        required: true
        schema:
          type: integer
          format: int32
      - name: type
        in: query
        description: type of the subscription.
        required: true
        schema:
          type: string
          enum:
          - MSTeams
      responses:
        '204':
          description: The subscription is deleted, and the response is intentionally blank.
        '400':
          description: "The requested data are not found.\n            <br/>Error codes:\n            2105 - Operation is not allowed.\n            502 - Subscription not found"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
  /NotificationSubscriptions/SigningKey:
    get:
      tags:
      - NotificationSubscriptions
      summary: Get a signing key
      description: "Retrieves the current subscriber's or provider's signing key.\n            A signing key is used to generate event signatures. Use your key to [verify that notifications are sent by SC](/guides/wh/receive-events-and-respond/#verify-an-event)."
      operationId: GETv3_NotificationSubscriptions_SigningKey
      responses:
        '200':
          description: The signing key is in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.SigningKeyResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.SigningKeyResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
    put:
      tags:
      - NotificationSubscriptions
      summary: Regenerate a signing key
      description: Regenerates the current subscriber's or provider's signing key. The previous signing key becomes invalid.
      operationId: PUTv3_NotificationSubscriptions_SigningKey
      responses:
        '200':
          description: The new signing key is in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.SigningKeyResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.SigningKeyResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 - Missing or incorrect authentication credentials"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
  /GetProvidersExclusionList:
    get:
      tags:
      - NotificationSubscriptions
      summary: Get providers exclusion list
      description: List providers who opted out to not receive the notifications
      operationId: GETv3_GetProvidersExclusionList?emailNotificationType={emailNotificationType}
      parameters:
      - name: emailNotificationType
        in: query
        description: 1 - Declined WO; 2 - WO Assigned to User; 4 - ETA Missed; 5 - LNH Autocopy
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: The requested providers are in the response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Permission.ProvidersExclusionListResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Permission.ProvidersExclusionListResponse'
        '400':
          description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n            <br/>Error codes:\n            401 — Invalid subsriber ID\n            804 — User has no permissions to perform this action"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '401':
          description: "The request is not authorized.\n            <br/>Error codes:\n            504 — API call rejected by security permissions"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '404':
          description: The requested resource does not exist on the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
        '500':
          description: The server was unable to complete the request due to an internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
      deprecated: false
      x-access: Any
components:
  schemas:
    ServiceChannel.Services.Messaging.Notifications.AddHttpNotificationSubscriptionRequest:
      required:
      - Url
      - Name
      - EventTypes
      type: object
      properties:
        Url:
          description: The URL to which the events should be delivered.
          type: string
        Enabled:
          description: Defines if the subscription is active or inactive.
          default: false
          type: boolean
        Name:
          description: The user-friendly name for the subscription.
          type: string
        EventTypes:
          description: The list of events to subscribe to. Events within one subscription should belong to one object.
          type: array
          items:
            enum:
            - WorkOrderCreated
            - WorkOrderNoteAdded
            - WorkOrderNotePinned
            - WorkOrderNoteUnpinned
            - WorkOrderNoteActionResolved
            - WorkOrderStatusChanged
            - WorkOrderAttachmentAdded
            - WorkOrderAttachmentDeleted
            - WorkOrderNumberChanged
            - WorkOrderCallerChanged
            - WorkOrderMoeNumberChanged
            - WorkOrderServiceNowIdChanged
            - WorkOrderPriorityChanged
            - WorkOrderScheduledDateChanged
            - WorkOrderTradeChanged
            - WorkOrderNteChanged
            - WorkOrderCategoryChanged
            - WorkOrderProviderChanged
            - WorkOrderDescriptionChanged
            - WorkOrderResolutionCreated
            - RefrigerantWasUsedChanged
            - WorkOrderResolutionUpdated
            - WorkOrderResolutionCodeUpdated
            - WorkOrderRootCauseCodeUpdated
            - WorkOrderAssetAttached
            - WorkOrderAssetDetached
            - WorkOrderAssetValidated
            - WorkOrderLabelAdded
            - WorkOrderLabelDeleted
            - WorkOrderWeatherTypeChanged
            - WorkOrderWeatherTypeDeleted
            - WorkOrderVerbalApprovalChanged
            - WorkOrderGLCodeChanged
            - WorkOrderAdditionalApprovalCodesChanged
            - WorkOrderFeedbackRequested
            - WorkOrderAssigneeChanged
            - WorkOrderAssigneeDeleted
            - WorkOrderProjectLink
            - WorkOrderProjectUnlink
            - WorkOrderRecallChanged
            - WorkOrderRecallDeleted
            - WorkOrderIssueChoiceChanged
            - WorkOrderTechnicianAssigned
            - WorkOrderTechnicianUnassigned
            - WorkOrderTechnicianAccepted
            - WorkOrderTechnicianDeclined
            - WorkOrderCertifiedTechnicianAssigned
            - WorkOrderLinksAdded
            - WorkOrderLinksDeleted
            - WorkOrderStarAdded
            - WorkOrderStarRemoved
            - WorkOrderWorkActivityAdded
            - WorkOrderWorkActivityDeleted
            - WorkOrderWorkActivityChanged
            - WorkOrderCheckIn
            - WorkOrderCheckOut
            - BadgeScanRequired
            - InvoiceCreated
            - InvoiceOpen
            - InvoiceApproved
            - InvoiceOnHold
            - InvoiceReviewed
            - InvoiceRejected
            - InvoiceApprovalCodeChanged
            - InvoiceAdditionalApprovalCodesChanged
            - InvoiceStarAdded
            - InvoiceStarRemoved
            - InvoiceDisputed
            - InvoiceVoided
            - InvoicePaid
            - ProposalCreated
            - ProposalOpen
            - ProposalApproved
            - ProposalOnHold
            - ProposalRejected
            - ProposalReviewed
            - ProposalUserAssigned
            - ProposalWorkOrderAssigned
            - ProposalAttachmentAdded
            - ProposalScheduled
            - ProposalVoided
            - ProposalPendingExternalApproval
            - FbInvitationAccepted
            - CalendarIntegrationAdded
            - CalendarIntegrationUpdated
            - LocationCreated
            - LocationUpdated
            - LocationDeleted
            - LocationNoteHeaderCreated
            - LocationNoteHeaderUpdated
            - LocationNoteHeaderDeleted
            - LocationNotesChanged
            - SubscriberTradeCreated
            - SubscriberTradeUpdated
            - SubscriberTradeDeleted
            - SubscriberPriorityCreated
            - SubscriberPriorityUpdated
            - SubscriberPriorityDeleted
            - SubscriberStatusCreated
            - SubscriberStatusUpdated
            - SubscriberStatusDeleted
            - SubscriberCategoryCreated
            - SubscriberCategoryUpdated
            - SubscriberCategoryDeleted
            - SubscriberGlCodeCreated
            - SubscriberGlCodeUpdated
            - SubscriberGlCodeDeleted
            - SubscriberAdditionalApprovalCodeCreated
            - SubscriberAdditionalApprovalCodeUpdated
            - SubscriberNameUpdated
            - ProviderTradeAssigned
            - ProviderTradeUnassigned
            - ProviderTradeUpdated
            - ProviderNameUpdated
            - LeakRecordCreated
            - LeakRecordUpdated
            - LeakRecordDeleted
            - CheckListResponseAdded
            - CheckListResponseUpdated
            - CheckListCreated
            - CheckListUpdated
            - CheckListDeleted
            - IssueListAssigned
            - AssetCreated
            - AssetUpdated
            - AssetAttachmentAdded
            - AssetAttachmentDeleted
            - AssetRefrigerantChanged
            type: string
        Rules:
          $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.NotificationSubscriptionsRules'
    ServiceChannel.Services.Messaging.Notifications.MSBotNotificationSubscriptionResponse:
      description: MSBotNotificationSubscriptionResponse
      type: object
      properties:
        Id:
          format: int32
          description: Subscription identifier
          type: integer
        UserId:
          format: int32
          description: Service Channel User identifier
          type: integer
        UserEmailAddress:
          description: Service Channel User Email Address
          type: string
        SubscriberId:
          format: int32
          description: Subscriber identifier
          type: integer
        ProviderId:
          format: int32
          description: Provider identifier
          type: integer
        IsEnabled:
          description: Is Enabled
          default: false
          type: boolean
        ConversationReference:
          $ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notifications.MSBotConversationReference'
          description: Conversation Reference
    ServiceChannel.Services.Messaging.Notifications.AddNotificationSubsciptionResponse:
      type: object
      properties:
        Id:
          format: int32
          description: The unique subscription ID. Generated automatically and cannot be modified.
          type: integer
          readOnly: true
    ServiceChannel.Services.Messaging.Notifications.HttpNotificationSubscription:
      required:
      - Url
      - Name
      - EventTypes
      type: object
      properties:
        Id:
          format: int32
          description: The unique subscription ID. Generated automatically and cannot be modified.
          type: integer
        Url:
          description: The URL to which the events should be delivered.
          type: string
        Enabled:
          description: Defines if the subscription is active or inactive.
          default: false
          type: boolean
        Name:
          description: The user-friendly name for the subscription.
          type: string
        EventTypes:
          description: The list of events to subscribe to. Events within one subscription should belong to one object.
          type: array
          items:
            enum:
            - WorkOrderCreated
            - WorkOrderNoteAdded
            - WorkOrderNotePinned
            - WorkOrderNoteUnpinned
            - WorkOrderNoteActionResolved
            - WorkOrderStatusChanged
            - WorkOrderAttachmentAdded
            - WorkOrderAttachmentDeleted
            - WorkOrderNumberChanged
            - WorkOrderCallerChanged
            - WorkOrderMoeNumberChanged
            - WorkOrderServiceNowIdChanged
            - WorkOrderPriorityChanged
            - WorkOrderScheduledDateChanged
            - WorkOrderTradeChanged
            - WorkOrderNteChanged
            - WorkOrderCategoryChanged
            - WorkOrderProviderChanged
            - WorkOrderDescriptionChanged
            - WorkOrderResolutionCreated
            - RefrigerantWasUsedChanged
            - WorkOrderResolutionUpdated
            - WorkOrderResolutionCodeUpdated
            - WorkOrderRootCauseCodeUpdated
            - WorkOrderAssetAttached
            - WorkOrderAssetDetached
            - WorkOrderAssetValidated
            - WorkOrderLabelAdded
            - WorkOrderLabelDeleted
            - WorkOrderWeatherTypeChanged
            - WorkOrderWeatherTypeDeleted
            - WorkOrderVerbalApprovalChanged
            - WorkOrderGLCodeChanged
            - WorkOrderAdditionalApprovalCodesChanged
            - WorkOrderFeedbackRequested
            - WorkOrderAssigneeChanged
            - WorkOrderAssigneeDeleted
            - WorkOrd

# --- truncated at 32 KB (102 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/servicechannel/refs/heads/main/openapi/servicechannel-notificationsubscriptions-api-openapi.yml