SPOTIO Notifications V2 API

The controller is responsible for handling operations on notification objects. Notifications are created automatically when creating appointments with reminder property set. Push notifications are supported through this module.

OpenAPI Specification

spotio-notificationsv2-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v1
  title: Spotio 2.0 Notifications V2 API
  description: "    The controller is responsible for handling operations on notification objects.\n    Notifications are created automatically when creating appointments with reminder property set.\n    Push notifications are supported through this module."
  contact:
    name: Contact us
    url: https://spotio.com/contact/
    email: support@spotio.com
servers:
- url: https://api.spotio2.com
  description: Production
- url: https://app-test.spotio2.com
  description: Test
security:
- Bearer: []
tags:
- name: NotificationsV2
  description: "    The controller is responsible for handling operations on notification objects.\n    Notifications are created automatically when creating appointments with reminder property set.\n    Push notifications are supported through this module."
paths:
  /api/NotificationsV2:
    get:
      tags:
      - NotificationsV2
      summary: Get notifications
      parameters:
      - name: x-app-version
        in: header
        schema:
          type: string
      - name: filterId
        in: query
        description: refer to FiltersController
        schema:
          type: string
      - name: types
        in: query
        description: comma separated list of types, refer to the NotificationType
        schema:
          type: string
      - name: scrollId
        in: query
        description: send to fetch next page
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '401':
          description: Unauthorized
        '415':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '422':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '500':
          description: Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
      security:
      - Bearer: []
      servers:
      - url: https://api.spotio2.com
        description: Production
      - url: https://app-test.spotio2.com
        description: Test
  /api/NotificationsV2/filtered:
    get:
      tags:
      - NotificationsV2
      summary: Get filtered notifications
      parameters:
      - name: x-app-version
        in: header
        schema:
          type: string
      - name: filterId
        in: query
        description: refer to FiltersController
        schema:
          type: string
      - name: scrollId
        in: query
        description: send to fetch next page
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.Web.Helpers.ScrollResult%601%5B%5BSpotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2C%20Spotio.Frontend.ViewModel%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20PublicKeyToken%3Dnull%5D%5D'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '401':
          description: Unauthorized
        '415':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '422':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '500':
          description: Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
      security:
      - Bearer: []
      servers:
      - url: https://api.spotio2.com
        description: Production
      - url: https://app-test.spotio2.com
        description: Test
  /api/NotificationsV2/{id}:
    get:
      tags:
      - NotificationsV2
      summary: Get notification by id
      parameters:
      - name: x-app-version
        in: header
        schema:
          type: string
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.ViewModel.Notifications.NotificationV2Dto'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.ViewModel.Notifications.NotificationV2Dto'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Frontend.ViewModel.Notifications.NotificationV2Dto'
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '401':
          description: Unauthorized
        '415':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '422':
          description: Client Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
        '500':
          description: Server Error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            application/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
            text/json:
              schema:
                $ref: '#/components/schemas/Spotio.Infrastructure.Common.DataModel.Error.Error'
      security:
      - Bearer: []
      servers:
      - url: https://api.spotio2.com
        description: Production
      - url: https://app-test.spotio2.com
        description: Test
components:
  schemas:
    Spotio.Frontend.ViewModel.Notifications.NotificationV2Dto:
      type: object
      additionalProperties: false
      properties:
        id:
          type:
          - string
          - 'null'
          description: The unique identifier of the notification.
        type:
          $ref: '#/components/schemas/Spotio.Notifications.Client.Models.NotificationType'
        createdAt:
          type: string
          description: The date and time the notification was created.
          format: date-time
        dataObject:
          $ref: '#/components/schemas/Spotio.Frontend.ViewModel.Notifications.NotificationV2Dto%2BDataObjectWithParentDto'
        ghost:
          type: boolean
          description: Indicates whether the data object is visible but not accessible for the current user on the map.
        title:
          type:
          - string
          - 'null'
          description: The title of the notification.
        text:
          type:
          - string
          - 'null'
          description: The text of the notification.
        phoneNumber:
          type:
          - string
          - 'null'
          description: The phone number associated with the notification.
        email:
          type:
          - string
          - 'null'
          description: The email address associated with the notification.
        reference:
          type:
          - string
          - 'null'
          description: A reference id for the notification.
        voiceMailUrl:
          type:
          - string
          - 'null'
          description: The URL of the voice mail associated with the notification.
        scheduleDate:
          type:
          - string
          - 'null'
          description: The date and time the notification is scheduled for.
          format: date-time
        autoplayDataObjectId:
          type:
          - string
          - 'null'
          description: The unique identifier of the autoplay data object. Refer to AutoplaysController
        activityTemplateId:
          type:
          - string
          - 'null'
          description: The unique identifier of the activity template associated with the notification. Refer to WorkflowActivityTemplatesController
        auto:
          type: boolean
          description: Indicates whether the notification is from auto autoplay step.
        issueSource:
          $ref: '#/components/schemas/Spotio.Notifications.Client.Models.IssueSource'
        duration:
          type:
          - integer
          - 'null'
          description: The duration of the activity. For more details refer to ActivitiesController.
          format: int32
        territoryId:
          type:
          - integer
          - 'null'
          description: The ID of the territory associated with the notification. Refer to TerritoriesController
          format: int32
        routeId:
          type:
          - string
          - 'null'
          description: The route ID
        activityId:
          type:
          - string
          - 'null'
          description: Id of the activity associated with the notification
        bulk:
          type: boolean
          description: Indicates whether the notification is from bulk action.
        appointmentId:
          type:
          - string
          - 'null'
          description: Id of the appointment associated with the notification
    Spotio.Notifications.Client.Models.NotificationType:
      type: string
      enum:
      - MissedCall
      - Text
      - Email
      - VoiceMail
      - Reminder
      - AutoplayIssue
      - AssignedToDataObject
      - AssignedToTerritory
      - AssignedToRoute
      - AssignedToTeam
      - TodayAgenda
      - EndOfDay
      - EmailOpened
      - BusinessCardOpened
      - EngagementMondayToFridayOnly
      - TextOptedIn
      - TextOptedOut
      - AssignedToActivity
      - ActivityUpdated
      - ActivityDeleted
      - DataObjectUpdated
      - DataObjectDeleted
      - InviteResponded
    Spotio.Infrastructure.Common.DataModel.Error.Error:
      type: object
      additionalProperties: false
      properties:
        errors:
          readOnly: true
    Spotio.Notifications.Client.Models.IssueSource:
      type: string
      enum:
      - DataObject
      - UserMailIntegration
      - UserPhoneIntegration
  securitySchemes:
    Bearer:
      type: apiKey
      description: 'Enter the Bearer Authorization string as following: `Bearer Generated-JWT-Token`'
      name: Authorization
      in: header