Commit 81cb05d9 authored by Giacomo Bernini's avatar Giacomo Bernini
Browse files

removed duplicated openapi in sol003 for quota notifications

parent 6a1f0861
Loading
Loading
Loading
Loading
Loading
+0 −153
Original line number Diff line number Diff line
swagger: "2.0"

info:
  version: "1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1"
  title: SOL003 - Virtualised Resources Quota Available Notification Notification interface
  description: >
    SOL003 - Virtualised Resources Quota Available Notification 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.


    In clause 4.3.2 of ETSI GS NFV-SOL 003 v2.4.1, an attribute-based
    filtering mechanism is defined. This mechanism is currently not
    included in the corresponding OpenAPI design for this GS version. Changes
    to the attribute-based filtering mechanism are being considered in v2.5.1
    of this GS for inclusion in the corresponding future ETSI NFV OpenAPI
    design.

    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 003 V2.6.1
  url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.06.01_60/gs_NFV-SOL003v020601p.pdf

basePath: "/callback/v1"

schemes:
  - https

consumes:
  - "application/json"
produces:
  - "application/json"

paths:
  ###############################################################################
  # Notification endpoint VnfLcmOperationOccurrenceNotification                      #
  ###############################################################################
  '/URI-is-provided-by-the-client-when-creating-the-subscription':
    post:
      description: >
        Notify.
        The POST method delivers a notification from 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 11.4.4.3.1-1 and 11.4.4.3.1-2 for URI
        query parameters, request and response data structures, and response codes.
      parameters:
        - name: VrQuotaAvailNotification
          description: A notification related to the availability of the virtualised resources quota.
          in: body
          required: true
          schema:
            $ref: "definitions/VirtualisedResourcesQuotaAvailableNotificationNotification_def.yaml#/definitions/VrQuotaAvailNotification"
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          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
          type: string
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 NO CONTENT

            Shall be returned when the notification has been delivered successfully.
          headers:
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
        404:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
          $ref: "../../responses/SOL002SOL003_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 11.4.4.3.2-1 and 11.4.4.3.2-2
        for URI query parameters, request and response data structures, and response codes.
      parameters:
        - name: Version
          description: >
            Version of the API requested to use when responding to this request.
          in: header
          required: true
          type: string
      responses:
        204:
          description: >
            204 NO CONTENT

            TheShall be returned to indicate that the notification endpoint whas been tested successfully.
            The response body shall be empty.
          headers:
            Version:
              description: >
                Version of the API used in the response.
              type: string
              maximum: 1
              minimum: 1
        400:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/400"
        401:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/401"
        403:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/403"
        404:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/404"
        405:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/405"
        406:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/406"
        500:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/500"
        503:
          $ref: "../../responses/SOL002SOL003_resp.yaml#/responses/503"
 No newline at end of file
+0 −85
Original line number Diff line number Diff line
# Copyright (c) ETSI 2017.
# https://forge.etsi.org/etsi-forge-copyright-notice.txt

definitions:
  VrQuotaAvailNotification:
    description: >
      This type represents a notification which indicates the availability of
      a quota applicable to the consumer.
      Support of this notification is mandatory if the
      Virtualised Resources Quota Available Notification interface is
      supported.
      The notification shall be triggered by the NFVO when a virtualised
      resource quota applicable to the consumer has been set.
    type: object
    required:
      - id
      - notificationType
      - subscriptionId
      - timeStamp
      - resourceGroupId
      - _links
    properties:
      id:
        description: >
          Identifier of this notification. If a notification is sent multiple
          times due to multiple subscriptions, the "id" attribute of all these
          notifications shall have the same value.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      notificationType:
        description: >
          Discriminator for the different notification types. 
          Shall be set to "VrQuotaAvailNotification" for this notification type.
        type: string
        enum:
          - VrQuotaAvailNotification
      subscriptionId:
        description: >
          Identifier of the subscription that this notification relates to.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      timeStamp:
        description: >
          Date-time of the generation of the notification.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime"
      resourceGroupId:
        description: >
          Identifier of the "infrastructure resource group", logical grouping
          of virtual resources assigned to a tenant within an Infrastructure
          Domain.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim"
      vimConnectionInfo:
        description: >
          Information about the VIM connection to manage the virtualised
          resources quota. 
          This attribute shall only be supported and present when VNF-related
          Resource Management in direct mode is applicable.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo"
      resourceProviderId:
        description: >
          Identifies the entity responsible for the management of the
          virtualised resources quota.
          This attribute shall only be supported and present when
          VNF-related Resource Management in indirect mode is applicable. The
          identification scheme is outside the scope of the present document.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier"
      _links:
        description: >
          Links to resources related to this notification.
        $ref: "#/definitions/QuotaAvailLinks"

  QuotaAvailLinks:
    description: >
      This type represents the links to resources that a notification of type
      "VrQuotaAvailNotification" can contain.
    type: object
    required:
      - subscription
    properties:
      subscription:
        description: >
          Link to the related subscription.
        $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink"