NSPerformanceManagement.yaml 53.1 KB
Newer Older
#        type: string
#
#    post:
#      summary: Subscribe to PM notifications.
#      description: >
#        The POST method creates a new subscription.
#        This method shall follow the provisions specified in the Tables 7.4.7.3.1-1 and 7.4.7.3.1-2 for URI query parameters,
#        request and response data structures, and response codes.
#        As the result of successfully executing this method, a new "Individual subscription" resource shall exist as defined
#        in clause 7.4.8. This method shall not trigger any notification.
#        Creation of two subscription resources with the same callbackURI and the same filter can result in performance
#        degradation and will provide duplicates of notifications to the OSS, and might make sense only in very rare use cases.
#        Consequently, the NFVO may either allow creating a subscription resource if another subscription resource with the
#        same filter and callbackUri already exists (in which case it shall return the "201 Created" response code), or may decide
#        to not create a duplicate subscription resource (in which case it shall return a "303 See Other" response code referencing
#        the existing subscription resource with the same filter and callbackUri)
#      parameters:
#        - 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
#        - name: body
#          in: body
#          required: true
#          schema:
#            $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/PmSubscriptionRequest"
#            description: >
#              Details of the subscription to be created.
#      responses:
#        201:
#          description: >
#            201 CREATED
#
#            Shall be returned when the subscription has been created successfully.
#            A representation of the created subscription resource
#            shall be returned in the response body, as defined in clause 7.5.2.3.
#            The HTTP response shall include a "Location" HTTP
#            header that contains the resource URI of the created subscription resource.
#          schema:
#            $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/PmSubscription"
#          headers:
#            Content-Type:
#              type: string
#              description: >
#                The MIME type of the body of the response.This header
#                field shall be present if the response has a non-empty message
#                body.
#              maximum: 1
#              minimum: 1
#            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
#        303:
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/303"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
#
#    get:
#      summary: Query PM related subscriptions.
#      description: >
#        The client can use this method to query the list of active subscriptions to Performance management notifications
#        subscribed by the client.
#        This method shall follow the provisions specified in the Tables 7.4.7.3.2-1 and 7.4.7.3.2-2 for URI query parameters,
#        request and response data structures, and response codes.
#      parameters:
#        - name: filter
#          in: query
#          required: false
#          type: string
#          description: >
#            Attribute-based filtering expression according to clause 5.2 of ETSI GS NFV-SOL 013.
#            The NFVO shall support receiving this parameter as part of the URI query string.
#            The OSS/BSS may supply this parameter.
#            All attribute names that appear in the PmSubscription and in data types referenced from it
#            shall be supported by the NFVO in the filter expression.
#        - name: nextpage_opaque_marker
#          in: query
#          required: false
#          type: string
#          description: >
#            Marker to obtain the next page of a paged response. Shall be supported by the NFVO
#            if the NFVO supports alternative 2 (paging) according to clause 5.4.2.1 of
#            ETSI GS NFV-SOL 013 for this resource.
#        - name: Accept
#          description: >
#            Content-Types that are acceptable for the response.
#            Reference: IETF RFC 7231.
#          in: header
#          required: true
#          type: string
#      responses:
#        200:
#          description: >
#            200 OK
#
#            Shall be returned when the list of subscriptions has
#            been queried successfully.
#            The response body shall contain the representations of
#            all active subscriptions of the functional block that
#            invokes the method, as defined in clause 7.5.2.3.
#            If the "filter" URI parameter was supplied in the request,
#            the data in the response body shall have been transformed
#            according to the rules specified in clause 5.2.2 of
#            ETSI GS NFV-SOL 013.
#            If the NFVO supports alternative 2 (paging) according to
#            clause 5.4.2.1 of ETSI GS NFV SOL 013 for this resource,
#            inclusion of the Link HTTP header in this response shall
#            follow the provisions in clause 5.4.2.3 of
#            ETSI GS NFV SOL 013.
#
#          headers:
#            Content-Type:
#              description: The MIME type of the body of the response.
#              type: string
#              maximum: 1
#              minimum: 1
#            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
#            Link:
#              description: >
#                Reference to other resources. Used for paging in the present document, see clause 4.7.2.1.
#              type: string
#              maximum: 1
#              minimum: 0
#          schema:
#            type: array
#            items:
#              $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/PmSubscription"
#        400:
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/400"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"

  ###############################################################################
  # Individual subscription                                                     #
  ###############################################################################
#  '/subscriptions/{subscriptionId}':
#    #ETSI GS NFV-SOL 005 V2.4.1 location: 7.4.8
#    parameters:
#      - name: subscriptionId
#        description: >
#          Identifier of the subscription.
#          This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response
#          to a POST request creating a new subscription resource. It can also be retrieved from the "id" attribute in the
#          payload body of that response.
#        in: path
#        type: string
#        required: true
#      - name: Authorization
#        description: >
#          The authorization token for the request.
#          Reference: IETF RFC 7235
#        in: header
#        required: true
#        type: string
#      - name: Version
#        description: >
#          Version of the API requested to use when responding to this request.
#        in: header
#        required: true
#        type: string
#
#    get:
#      summary: Query a single PM related subscription.
#      description: >
#        The client can use this method for reading an individual subscription about Performance management notifications
#        subscribed by the client.
#        This method shall follow the provisions specified in the Tables 7.4.8.3.2-1 and 7.4.8.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:
#        200:
#          description: >
#            200 OK
#
#            Shall be returned when the subscription has been read successfully.
#            The response body shall contain a representation of
#            the subscription resource, as defined in clause 7.5.2.3.
#          schema:
#            $ref: "definitions/SOL005NSPerformanceManagement_def.yaml#/definitions/PmSubscription"
#          headers:
#            Content-Type:
#              type: string
#              description: >
#                The MIME type of the body of the response.This header
#                field shall be present if the response has a non-empty message
#                body.
#            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#/components/responses/400"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"
#
#    delete:
#      summary: Terminate a subscription.
#      description: >
#        This method terminates an individual subscription.
#        This method shall follow the provisions specified in the
#        Tables 7.4.8.3.5-1 and 7.4.8.3.5-2 for URI query parameters,
#        request and response data structures, and response codes.
#        As the result of successfully executing this method, the
#        "Individual subscription" resource shall not exist any longer.
#        This means that no notifications for that subscription shall
#        be sent to the formerly-subscribed API consumer.
#        NOTE: Due to race conditions, some notifications might still be
#        received by the formerly-subscribed API consumer for a
#        certain time period after the deletion.
#      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 when the subscription resource has been
#            deleted 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#/components/responses/400"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/401"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/403"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/404"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/405"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/406"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/500"
#          $ref: "../responses/SOL005_resp.yaml#/components/responses/503"