NSPerformanceManagementNotification.yaml 11.7 KB
Newer Older
swagger: "2.0"

info:
  version: "2.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1"
  title: "SOL005 - NS Performance Management Notification interface"
  description: >
    SOL005 - NS 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/bugzilla/buglist.cgi?component=Nfv-Openapis
  license:
    name: "ETSI Forge copyright notice"
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt

externalDocs:
  description: ETSI GS NFV-SOL 005 V2.7.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.07.01_60/gs_NFV-SOL005v020701p.pdf
basePath: /callback/v2

schemes:
  - http
  - https

consumes:
  - application/json
produces:
  - application/json
paths:
  ##################################################################################
  # Notification endpoint PerformanceInformationAvailableNotification              #
  ##################################################################################
  '/URI_is_provided_by_the_client_when_creating_the_subscription_PerformanceInformationAvailableNotificatio':
    parameters:
      - name: Authorization
        description: >
          The authorization token for the request.
          Reference: IETF RFC 7235
        in: header
        required: false
        type: string
      - name: Version
        description: >
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        type: string

    post:
      summary: Notify about PM related events
      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".
        This method shall follow the provisions specified in the
        Tables 7.4.9.3.1-1 and 7.4.9.3.1-2 for URI query parameters, request and response
        data strctures, and response codes.
      parameters:
        - name: PerformanceInformationAvailableNotification
          description: >
            Notification about performance information availability.
          in: body
          required: true
          schema:
            $ref: "definitions/SOL005NSPerformanceManagementNotification_def.yaml#/definitions/PerformanceInformationAvailableNotification"
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 NO CONTENT

            Shall be returned when the notification was delivered successfully.
          headers:
            WWW-Authenticate:
              type: string
              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.
              maximum: 1
              minimum: 0
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
        404:
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
        405:
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
        406:
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
        500:
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "../responses/SOL005_resp.yaml#/responses/503"

    get:
      summary: Test the notification endpoint
      description: >
        The GET method allows the API producer to test the notification
        endpoint that is provided by the API consumer, e.g. during
        creation of the PM job or threshold resource.
        This method shall follow the provisions specified in the
        Tables 7.4.9.3.2-1 and 7.4.9.3.2-2 for URI query parameters,
        request and response data structures, and response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231.
          in: header
          required: true
          type: string
      responses:
        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:
              type: string
              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.
              maximum: 1
              minimum: 0
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
        404:
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
        405:
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
        406:
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
        500:
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "../responses/SOL005_resp.yaml#/responses/503"

  ##################################################################################
  # Notification endpoint ThresholdCrossedNotification                             #
  ##################################################################################
  '/URI_is_provided_by_the_client_when_creating_the_subscription_ThresholdCrossedNotification':
    parameters:
      - name: Authorization
        description: >
          The authorization token for the request.
          Reference: IETF RFC 7235
        in: header
        required: false
        type: string
      - name: Version
        description: >
          Version of the API requested to use when responding to this request.
        in: header
        required: true
        type: string

    post:
      summary: Notify about PM related events
      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".
        This method shall follow the provisions specified in the
        Tables 7.4.9.3.1-1 and 7.4.9.3.1-2 for URI query parameters, request and response
        data strctures, and response codes.
      parameters:
        - name: ThresholdCrossedNotification
          description: >
            Notification about threshold crossing.
          in: body
          required: true
          schema:
            $ref: "definitions/SOL005NSPerformanceManagementNotification_def.yaml#/definitions/ThresholdCrossedNotification"
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Content-Type
          description: >
            The MIME type of the body of the request.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 NO CONTENT

            Shall be returned when the notification was delivered successfully.
          headers:
            WWW-Authenticate:
              type: string
              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.
              maximum: 1
              minimum: 0
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
        404:
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
        405:
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
        406:
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
        500:
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "../responses/SOL005_resp.yaml#/responses/503"

    get:
      summary: Test the notification endpoint
      description: >
        The GET method allows the API producer to test the notification
        endpoint that is provided by the API consumer, e.g. during
        creation of the PM job or threshold resource.
        This method shall follow the provisions specified in the
        Tables 7.4.9.3.2-1 and 7.4.9.3.2-2 for URI query parameters,
        request and response data structures, and response codes.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231.
          in: header
          required: true
          type: string
      responses:
        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:
              type: string
              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.
              maximum: 1
              minimum: 0
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "../responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "../responses/SOL005_resp.yaml#/responses/403"
        404:
          $ref: "../responses/SOL005_resp.yaml#/responses/404"
        405:
          $ref: "../responses/SOL005_resp.yaml#/responses/405"
        406:
          $ref: "../responses/SOL005_resp.yaml#/responses/406"
        500:
          $ref: "../responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "../responses/SOL005_resp.yaml#/responses/503"