Palo Alto Networks Notifications API

The Notifications API from Palo Alto Networks — 4 operation(s) for notifications.

OpenAPI Specification

palo-alto-networks-notifications-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Multi-Tenant Notifications API
  version: '1.0'
security:
- bearerAuth: []
tags:
- name: Notifications
paths:
  /api/cloud/2.0/agg/notifications/list:
    post:
      tags:
      - Notifications
      summary: List Notifications
      description: "### Overview\n\nList notifications for all child tenants for the current tenant.\n\nThe current tenant TSG ID is extracted from user JWT.\n\nThis is a per-user query.\n\n<u><b>API Body parameters:</b></u>\n\n- filters:\n    - readState - valid values are READ, UNREAD\n    - notifType - UPGRADES, ANNOUNCEMENTS\n    - By default, if no filters are provided then readState is READ and UNREAD and `notifType` is all the values\n- sortByList:\n    - field - valid values are createdTime or impactedTenantCount\n    - sortBy - value values are DESC or ASC"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotifListApiReqBody'
            examples:
              All Notifications:
                value:
                  filters:
                  - field: readState
                    values:
                    - READ
                    - UNREAD
                  - field: notifType
                    values:
                    - UPGRADES
                    - ANNOUNCEMENTS
                  sortByList:
                  - field: createdTime
                    sortBy: DESC
              Unread Upgrades:
                value:
                  filters:
                  - field: readState
                    values:
                    - UNREAD
                  - field: notifType
                    values:
                    - UPGRADES
                  sortByList:
                  - field: createdTime
                    sortBy: DESC
              Unread Announcements:
                value:
                  filters:
                  - field: readState
                    values:
                    - UNREAD
                  - field: notifType
                    values:
                    - ANNOUNCEMENTS
                  sortByList:
                  - field: createdTime
                    sortBy: DESC
              Notifications list with Pagination:
                value:
                  filters:
                  - field: readState
                    values:
                    - UNREAD
                  - field: notifType
                    values:
                    - ANNOUNCEMENTS
                  sortByList:
                  - field: createdTime
                    sortBy: DESC
                  page:
                  - num: 0
                    size: 10
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MtNotificationList'
              examples:
                example-0:
                  summary: All Notifications
                  value:
                    data:
                      notificationCounts:
                        readCount: 1
                        unreadCount: 0
                      notificationList:
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Completed
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        id: e8ebd16c-66ab-4113-aa1e-ab274c46322a
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        createdTime: 1698966600461
                        impactedTenantCount: 1
                        readState: READ
                      totalCount: 0
                    requestId: 635d3b26-913a-4451-a5de-0eda8da45040
                example-1:
                  summary: Unread Upgrades
                  value:
                    data:
                      notificationCounts:
                        readCount: 0
                        unreadCount: 0
                      notificationList: []
                      totalCount: 0
                    requestId: 8772a19b-fd60-4640-87b3-2b5e81645b58
                example-2:
                  summary: Unread Announcements
                  value:
                    data:
                      notificationCounts:
                        readCount: 0
                        unreadCount: 0
                      notificationList: []
                      totalCount: 0
                    requestId: 04099fe9-5f9a-4d53-a542-1388931c3a13
                example-3:
                  summary: Notification list with Pagination
                  value:
                    data:
                      notificationCounts:
                        readCount: 0
                        unreadCount: 10
                      notificationList:
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Upcoming
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        id: 44dab57c-e834-48da-a84a-2d1f99adc857
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        createdTime: 1698873900440
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: In Progress
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        id: b3c09288-a69d-42ee-b617-279674ff3ec1
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        createdTime: 1698873900344
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Completed
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        id: 050607cb-a61c-498a-8275-b65672102bbe
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        createdTime: 1698873900325
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Upcoming
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        id: ac0a2269-3a32-4d5b-9552-837275afba1a
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        createdTime: 1698873600215
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: In Progress
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        id: e00e4db4-90a0-4708-a5cc-12b6b4d28c9c
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: In Progress for 1091039496'
                        createdTime: 1698873600121
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Upcoming
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        id: 6477d3d5-b9ef-4ca6-9637-e2ac7f0164b6
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        createdTime: 1698873300631
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Completed
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        id: 5c3b3a0e-1ab6-42e3-afce-28530de13933
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        createdTime: 1698873300526
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Upcoming
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        id: aba778fd-2e97-48bd-a7b8-2bf963316310
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        createdTime: 1698873000205
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Completed
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        id: 123f0890-7eb1-4073-8ed4-4ef71f7a4af1
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Completed for 1091039496'
                        createdTime: 1698873000108
                        impactedTenantCount: 1
                        readState: UNREAD
                      - action: 'Action: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        aggKey:
                          category: Dataplane
                          inAppFlag: true
                          notifType: UPGRADES
                          subCategory: Upcoming
                          tsgId: '1091039496'
                        body: 'Body: Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        id: 4598f13c-8030-4f87-94ea-a0989022457a
                        name: 'Multi-Tenant UPGRADES Notification of Dataplane: Upcoming for 1091039496'
                        createdTime: 1698872700502
                        impactedTenantCount: 1
                        readState: UNREAD
                      totalCount: 4498
                    requestId: d921f075-733e-4091-a060-ef92a16cbfc0
  /api/cloud/2.0/agg/notifications/list/count:
    post:
      tags:
      - Notifications
      summary: Notification Count
      description: "### Overview\n\nGet notification count with the ability to filter by state or type.\n\nThis is a per-user query.\n\n<u><b>API Body parameters:</b></u>\n\n- filters:\n    - readState - valid values are READ, UNREAD\n    - notifType - UPGRADES, ANNOUNCEMENTS\n    - By default, if no filters are provided then `readState` is READ and UNREAD and `notifType` is all the values"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotifListApiReqBody'
            example:
              filters:
              - field: readState
                values:
                - UNREAD
              - field: notifType
                values:
                - UPGRADES
              sortByList:
              - field: createdTime
                sortBy: DESC
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                properties:
                  readCount:
                    type: number
                    description: Number of read notifications
                  unreadCount:
                    type: number
                    description: Number of unread notifications
              example:
                data:
                  readCount: 10
                  unreadCount: 20
                header:
                  createdAt: '2023-09-24T00:42:15Z'
                  clientRequestId: 641b3290-3a3c-4e2e-a6c4-fd9d009c7e14
                  dataCount: 1
                  status:
                    subCode: 200
  /api/cloud/2.0/agg/notifications/list/state:
    post:
      tags:
      - Notifications
      summary: Set Read State
      description: '### Overview

        Set the `readState` value to READ or UNREAD for the list of notifications specified in the notifIds list in the API body.

        This is a per-user query.'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotifStateChangeApiBody'
            example:
              notifIds:
              - e8ebd16c-66ab-4113-aa1e-ab274c46322a
              readState: READ
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotifStateChangeApiBody'
              example:
                data:
                  notifIds:
                  - e8ebd16c-66ab-4113-aa1e-ab274c46322a
                  readState: READ
                requestId: 9e5f8df2-616b-41bc-b928-0f438d715605
  /api/cloud/2.0/agg/notifications/list/state/{notification-id}:
    get:
      tags:
      - Notifications
      summary: Get Read State
      description: '### Overview


        Get `readState` of the notification whose id specified in the API path parameter.


        This is a per-user query.'
      parameters:
      - name: notification-profile-id
        in: path
        schema:
          type: string
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotifStateChangeApiBody'
              example:
                data:
                  aggKey:
                    category: UPGRADES_category1
                    notifType: UPGRADES
                    subCategory: UPGRADES_category1_sub_category
                    tsgId: '1091039496'
                    inAppFlag: true
                  body: body
                  id: '1'
                  impactedTenantCount: 2
                  impactedTenants:
                  - '1091039497'
                  - '1091039496'
                  name: abc
                  channels: []
                  createdTime: 1
                  readState: READ
                requestId: d99c59a0-f271-41b4-b9af-8d7c72829aa6
components:
  schemas:
    MtNotifAggKey:
      required:
      - tsgId
      - notifType
      - category
      - subCategory
      - inAppFlag
      type: object
      properties:
        tsgId:
          description: TSG Id
          type: string
        notifType:
          description: Notification Type
          type: string
          enum:
          - INCIDENTS
          - UPGRADES
          - ANNOUNCEMENTS
        category:
          description: Notification category - is associated with notification type
          type: string
        subCategory:
          description: Notification sub-category - is associated with notification type and notification category
          type: string
        inAppFlag:
          description: InApp Notification Flag
          type: boolean
    NotifListApiReqBody:
      type: object
      properties:
        filters:
          description: List of output channels that the notification is sent on
          type: array
          items:
            $ref: '#/components/schemas/NotifFilter'
        sortByList:
          description: List of output channels that the notification is sent on
          type: array
          items:
            $ref: '#/components/schemas/SortBy'
        page:
          type: object
          description: Page number
          properties:
            num:
              type: integer
              description: Page number
            size:
              type: integer
              description: Page size
    NotifChannel:
      required:
      - name
      - type
      type: object
      properties:
        name:
          description: Notification channel name
          type: string
        type:
          description: Notification channel type
          type: string
          enum:
          - EMAIL
          - WEBHOOK
        emailChannelDetails:
          description: Email channel details
          type: object
          additionalProperties:
            $ref: '#/components/schemas/EmailChannelDetails'
        webhookChannelDetails:
          description: Webhook channel details
          type: object
          additionalProperties:
            $ref: '#/components/schemas/WebhookChannelDetails'
        template:
          description: Channel output template
          type: object
          properties:
            name:
              description: Output channel template name
              type: string
            templateJson:
              description: JSON describing the output channel template
              type: string
    NotifFilter:
      type: object
      properties:
        field:
          description: Filter field
          type: string
        values:
          description: Filter field values
          type: array
          items:
            type: string
            enum:
            - readState
            - notifType
            - category
            - subCategory
            - inApp
    MtNotificationList:
      type: array
      items:
        $ref: '#/components/schemas/MtNotification'
    NotifStateChangeApiBody:
      type: object
      properties:
        notifIds:
          description: List of notification IDs
          type: array
          items:
            type: string
        readState:
          $ref: '#/components/schemas/NotifReadState'
    EmailDetails:
      required:
      - name
      - emailId
      type: object
      properties:
        name:
          description: Email owner name
          type: string
        emailId:
          description: Email id
          type: string
    NotifReadState:
      type: string
      description: Read state of the notification
      enum:
      - READ
      - UNREAD
    EmailChannelDetails:
      required:
      - emails
      type: object
      properties:
        emails:
          description: List of emails
          type: array
          items:
            $ref: '#/components/schemas/EmailDetails'
    WebhookChannelDetails:
      required:
      - urls
      - authType
      - token
      type: object
      properties:
        urls:
          description: List of Webhook URLs - do not include token in the URL
          type: array
          items:
            type: string
        authType:
          description: Webhook Authentication Type
          type: string
          enum:
          - NO_AUTH
          - TOKEN
        token:
          description: Webhook token value
          type: string
    MtNotification:
      required:
      - name
      - body
      - aggKey
      - notifReadState
      - impactedTenants
      - impactedTenantCount
      - notifChannels
      type: object
      properties:
        id:
          description: Notification id
          type: string
        name:
          description: Notification name
          type: string
        body:
          description: Description of the notification
          type: string
        action:
          description: Action to be taken on receiving the notification (if applicable)
          type: string
        createdTime:
          description: Notification creation time
          type: number
        aggKey:
          type: object
          description: Multi-Tenant Notification Aggregation Key
          properties:
            tag:
              $ref: '#/components/schemas/MtNotifAggKey'
        impactedTenants:
          description: List of impacted tenants
          type: array
          items:
            type: string
        impactedTenantCount:
          description: Number of tenants impacted by the multi-tenant notification
          type: number
        notifReadState:
          $ref: '#/components/schemas/NotifReadState'
        notifChannels:
          description: List of output channels that the notification is sent on
          type: array
          items:
            $ref: '#/components/schemas/NotifChannel'
        notifType:
          description: Notification type
          type: string
    SortBy:
      type: object
      properties:
        field:
          description: Sort field
          type: string
          enum:
          - createdTime
          - impactedTenantCount
        sortBy:
          description: Ascending or Descending
          type: string
          enum:
          - DESC
          - ASC
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer