NFVManoPerformanceManagementNotification.yaml 6.21 KB
Newer Older
  title: SOL009 - NFV-MANO Performance Management Notification Interface
    SOL009 - NFV-MANO 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/SOL009/issues

  contact:
    name: NFV-SOL WG
  license:
    name: ETSI Forge copyright notice
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
  version: 2.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1

  description: ETSI GS NFV-SOL 009 V4.3.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/009/04.03.01_60/gs_NFV-SOL009v040301p.pdf
  - url: http://127.0.0.1/callback/v2
  - url: https://127.0.0.1/callback/v2
  /URI_is_provided_by_the_client_when_creating_the_subscription-PerformanceInformationNotification:
    description: >
      This resource represents a notification endpoint for NFV-MANO performance management. 
      The API producer can use this resource to send notifications related to performance 
      management events to an API consumer, which has provided the URI of this
      resource during the PM jobor threshold creation process.
    post:
      description: >
        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 resource" or "Individual threshold resource". See clause 6.5.10.3.1.
      parameters:
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
      requestBody:
        $ref: "#/components/requestBodies/PerfomanceInfoNotification"
          $ref: "#/components/responses/Notification.Post.204"
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/400
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/401
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/403
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/404
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/405
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/406
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/422
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/500
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/503
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/504

    get:
      description: >
        The GET method allows the server to test the notification endpoint that is 
        provided by the client, e.g. during creation of the PM job or threshold. See clause 6.5.10.3.2.
      parameters:
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Version"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Accept"
        - $ref: "../components/SOL009_params.yaml#/components/parameters/Authorization"
      responses:
        "204": 
          $ref: "#/components/responses/Notification.Get.204"
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/400
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/401
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/403
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/404
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/405
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/406
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/422
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/500
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/503
Giacomo Bernini's avatar
Giacomo Bernini committed
          $ref: ../components/SOL009_resp.yaml#/components/responses/504
    Notification.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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string

    Notification.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.
          schema:
            type: string
        Version:
          description: >
            Version of the API used in the response.
          schema:
            type: string

  requestBodies:
      description: >
        Notification about the avaialbility of a performance information or a threshold
        crossing.
      content:
        application/json:
          schema: 
            oneOf:
Giacomo Bernini's avatar
Giacomo Bernini committed
              - $ref: "./components/NFVManoPerformanceManagementNotification_def.yaml#/components/schemas/PerformanceInformationAvailableNotification"
              - $ref: "./components/NFVManoPerformanceManagementNotification_def.yaml#/components/schemas/ThresholdCrossedNotification"