VNFPerformanceManagementNotification.yaml 10.9 KB
Newer Older
  title: SOL003 - VNF Performance Management Notification interface
    SOL003 - VNF Performance Management Notification interface

    IMPORTANT: Please note that this file might be not aligned to the current
    version of the ETSI Group Specification it refers to. In case of
    discrepancies the published ETSI Group Specification takes precedence.

    Please report bugs to https://forge.etsi.org/rep/nfv/SOL002-SOL003/issues
    name: ETSI Forge copyright notice
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
  version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
  description: ETSI GS NFV-SOL 003 V3.3.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.03.01_60/gs_NFV-SOL003v030301p.pdf
servers:
  - url: http://127.0.0.1/callback/v2
  - url: https://127.0.0.1/callback/v2
  ###############################################################################
  # Notification endpoint PerformanceInformationAvailableNotification           #
  ###############################################################################
  /URI-is-provided-by-the-client-when-creating-the-subscription-PerformanceInformationAvailableNotification:
    #SOL003 location: 6.4.9
    parameters:
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Authorization
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Version
        Notify.
        The POST method delivers a notification regarding a performance management
        event from the API producer to an API consumer.
        The API consumer shall have previously created an "Individual PM Job" or "Individual threshold" resource.
        This method shall follow the provisions specified in the tables 6.4.9.3.1-1 and 6.4.9.3.1-2
        for URI query parameters, request and response data structures, and response codes.
      parameters:
        - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/PerformanceInformationAvailableNotification'
      responses:
        204:
          $ref: '#/components/responses/PerformanceInformationAvailableNotification.Post.204'
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/400"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/401"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/403"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/405"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/406"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/500"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/503"
        The GET method allows the API producer to test the notification endpoint that is provided 
        by the API consumer, e.g. during the creation of the PM job or threshold resource.
        This method shall follow the provisions specified in the tables 6.4.9.3.2-1 and 6.4.9.3.2-2
        for URI query parameters, request and response data structures, and response codes.
      responses:
        204:
          $ref: '#/components/responses/PerformanceInformationAvailableNotification.Get.204'
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/400"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/401"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/403"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/405"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/406"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/500"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/503"
  ###############################################################################
  # Notification endpoint ThresholdCrossedNotification                          #
  ###############################################################################
  /URI-is-provided-by-the-client-when-creating-the-subscription-ThresholdCrossedNotification:
    #SOL003 location: 6.4.9
    parameters:
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Authorization
      - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/Version
        Notify.
        The POST method delivers a notification regarding a performance management
        event from the API producer to an API consumer.
        The API consumer shall have previously created an "Individual subscription resource" with a matching filter.
        This method shall follow the provisions specified in the tables 6.4.9.3.1-1 and 6.4.9.3.1-2
        for URI query parameters, request and response data structures, and response codes.
        - $ref: ../../components/SOL002SOL003_params.yaml#/components/parameters/ContentType
      requestBody:
        $ref: '#/components/requestBodies/ThresholdCrossedNotification'
          $ref: '#/components/responses/ThresholdCrossedNotification.Post.204'
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/400"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/401"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/403"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/405"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/406"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/500"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/503"
        The GET method allows the API producer to test the notification endpoint that is provided 
        by the API consumer e.g. during subscription.
        This method shall follow the provisions specified in the tables 6.4.9.3.2-1 and 6.4.9.3.2-2
        for URI query parameters, request and response data structures, and response codes.
          $ref: '#/components/responses/ThresholdCrossedNotification.Get.204'
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/400"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/401"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/403"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/405"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/406"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/500"
          $ref: "../../responses/SOL002SOL003_resp.yaml#/components/responses/503"

components:
  requestBodies:
    PerformanceInformationAvailableNotification:
      description: |
        Notification about performance information availability.
      content:
        application/json:
          schema:
            $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceInformationAvailableNotification"
      required: true

    ThresholdCrossedNotification:
      description: |
        Notification about performance information availability.
      content:
        application/json:
          schema:
            $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdCrossedNotification"
      required: true

  responses:
    PerformanceInformationAvailableNotification.Post.204: 
      description: |
        204 NO CONTENT

        Shall be returned when the notification has been delivered successfully.
      headers:
        WWW-Authenticate:
          description: |
            Challenge if the corresponding HTTP request has not provided authorization, or error details if the
            corresponding HTTP request has provided an invalid authorization token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          schema:
            type: string

    PerformanceInformationAvailableNotification.Get.204: 
      description: |
        204 NO CONTENT

        Shall be returned to indicate that the notification endpoint has been tested successfully.
        The response body shall be empty.
      headers:
        WWW-Authenticate:
          description: |
            Challenge if the corresponding HTTP request has not provided authorization, or error details if the
            corresponding HTTP request has provided an invalid authorization token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          schema:
            type: string

    ThresholdCrossedNotification.Post.204: 
      description: |
        204 NO CONTENT

        Shall be returned when the notification has been delivered successfully.
      headers:
        WWW-Authenticate:
          description: |
            Challenge if the corresponding HTTP request has not provided authorization, or error details if the
            corresponding HTTP request has provided an invalid authorization token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          schema:
            type: string

    ThresholdCrossedNotification.Get.204: 
      description: |
        204 NO CONTENT

        Shall be returned to indicate that the notification endpoint has been tested successfully.
        The response body shall be empty.
      headers:
        WWW-Authenticate:
          description: |
            Challenge if the corresponding HTTP request has not provided authorization, or error details if the
            corresponding HTTP request has provided an invalid authorization token.
          style: simple
          explode: false
          schema:
            type: string
        Version:
          description: |
            Version of the API used in the response.
          style: simple
          explode: false
          schema:
            type: string