openapi: 3.0.2
info:
  version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1
  title: SOL009 - NFV-MANO Fault Management Notification interface
  description: >
    SOL009 - NFV-MANO Fault 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&list_id=61&product=NFV&resolution=
  license:
    name: ETSI Forge copyright notice
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
externalDocs:
  description: ETSI GS NFV-SOL 009 V0.8.0
  url: https://docbox.etsi.org/ISG/NFV/Open/Drafts/SOL009ed331_MANO_mgmt_stage_3/NFV-SOL009ed331v080.zip

servers:
  - url: /callback/v1

paths:
  /URI-is-provided-by-the-client-when-creating-the-subscription-AlarmNotification:
    post:
      description: >
        The POST method notifies an NFV-MANO functional entity alarm or that the
        alarm list has been rebuilt. 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
        7.5.7.3.1-1 and 7.5.7.3.1-2 for URI query parameters, request and
        response data structures, and response codes.
      parameters:
        - name: Authorization
          description: >
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Content-Type
          description: >
            The Content-Type header shall be set to
            "application/merge-patch+json" according to IETF RFC 7396.
          in: header
          required: true
          schema:
            type: string
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ../NFVManoFaultManagement/definitions/SOL009NFVManoFaultManagement_def.yaml#/definitions/AlarmNotification
        description: >
          Information of a NFV-MANO functional entity alarm.
        required: true
      responses:
        "204":
          description: >
            204 NO CONTENT

            Shall be returned when the notification has been delivered 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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503
    get:
      description: >
        The GET method allows the server to test the notification endpoint that
        is provided by the client, e.g. during subscription. This method shall
        follow the provisions specified in the tables 7.5.7.3.2-1 and
        7.5.7.3.2-2 for URI query parameters, request and response data
        structures, and response codes.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            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:
              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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503
  /URI-is-provided-by-the-client-when-creating-the-subscription-AlarmClearedNotification:
    post:
      description: >
        The POST method notifies an NFV-MANO functional entity alarm or that the
        alarm list has been rebuilt. 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
        7.5.7.3.1-1 and 7.5.7.3.1-2 for URI query parameters, request and
        response data structures, and response codes.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Content-Type
          description: >
            The Content-Type header shall be set to
            "application/merge-patch+json" according to IETF RFC 7396.
          in: header
          required: true
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ../NFVManoFaultManagement/definitions/SOL009NFVManoFaultManagement_def.yaml#/definitions/AlarmClearedNotification
        description: |
          Information of the clearance of an NFV-MANO functional entity alarm.
        required: true
      responses:
        "204":
          description: >
            204 NO CONTENT

            Shall be returned when the notification has been delivered 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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503
    get:
      description: >
        The GET method allows the server to test the notification endpoint that
        is provided by the client, e.g. during subscription. This method shall
        follow the provisions specified in the tables 7.5.7.3.2-1 and
        7.5.7.3.2-2 for URI query parameters, request and response data
        structures, and response codes.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            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:
              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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503
  /URI-is-provided-by-the-client-when-creating-the-subscription-AlarmListRebuiltNotification:
    post:
      description: >
        The POST method notifies an NFV-MANO functional entity alarm or that the
        alarm list has been rebuilt. 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
        7.5.7.3.1-1 and 7.5.7.3.1-2 for URI query parameters, request and
        response data structures, and response codes.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Content-Type
          description: >
            The Content-Type header shall be set to
            "application/merge-patch+json" according to IETF RFC 7396.
          in: header
          required: true
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: ../NFVManoFaultManagement/definitions/SOL009NFVManoFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification
        description: >
          Information that the alarm list has been rebuilt by the NFV-MANO
          functional entity.
        required: true
      responses:
        "204":
          description: >
            204 NO CONTENT

            Shall be returned when the notification has been delivered 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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503
    get:
      description: >
        The GET method allows the server to test the notification endpoint that
        is provided by the client, e.g. during subscription. This method shall
        follow the provisions specified in the tables 7.5.7.3.2-1 and
        7.5.7.3.2-2 for URI query parameters, request and response data
        structures, and response codes.
      parameters:
        - name: Authorization
          description: |
            The authorization token for the request. Reference: IETF RFC 7235
          in: header
          required: false
          schema:
            type: string
        - name: Version
          description: |
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          schema:
            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:
              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
                minimum: 0
                maximum: 1
            Version:
              description: |
                Version of the API used in the response.
              schema:
                type: string
                minimum: 1
                maximum: 1
        "400":
          $ref: ../responses/SOL009_resp.yaml#/responses/400
        "401":
          $ref: ../responses/SOL009_resp.yaml#/responses/401
        "403":
          $ref: ../responses/SOL009_resp.yaml#/responses/403
        "405":
          $ref: ../responses/SOL009_resp.yaml#/responses/405
        "406":
          $ref: ../responses/SOL009_resp.yaml#/responses/406
        "500":
          $ref: ../responses/SOL009_resp.yaml#/responses/500
        "503":
          $ref: ../responses/SOL009_resp.yaml#/responses/503

