VNFPackageManagement.yaml 52.6 KB
Newer Older
        - name: "filter"
          in: "query"
          required: false
          type: "string"
          description: >  
rameshnaraya's avatar
rameshnaraya committed
            Attribute-based filtering parameters according to clause 4.3.2.
            The NFVO shall support receiving filtering parameters as part of the URI query
            string. The OSS/BSS may supply filtering parameters.
            All attribute names that appear in the PkgmSubscription and in data types
rameshnaraya's avatar
rameshnaraya committed
            referenced from it shall be supported in attribute-based filtering parameters            
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
rameshnaraya's avatar
rameshnaraya committed
          description: >
rameshnaraya's avatar
rameshnaraya committed
            
            Active subscriptions of the functional block that invokes the method.
          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              
rameshnaraya's avatar
rameshnaraya committed
              properties:
                PkgmSubscription:
                  $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription"  
        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"
        416:
          $ref: "responses/SOL005_resp.yaml#/responses/416"
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"
          
###############################################################################
# Individual subscription                                                     #
###############################################################################
  '/subscriptions/{subscriptionId}':
   #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.9 
    parameters:
      - name: subscriptionId
        description: >
          Identifier of this 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
    get:
      summary: Read an individual subscription resource.  
      description: >
        Query Subscription Information
        The GET method reads an individual subscription.
      parameters:
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
      responses:
        200:
rameshnaraya's avatar
rameshnaraya committed
          description: >
            Representation of the subscription resource.
          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            
rameshnaraya's avatar
rameshnaraya committed
            properties:
              PkgmSubscription:
rameshnaraya's avatar
rameshnaraya committed
                $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/PkgmSubscription"   
        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"
        416:
          $ref: "responses/SOL005_resp.yaml#/responses/416"
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"
    delete:
      summary: Terminate a subscription.
rameshnaraya's avatar
rameshnaraya committed
      description: >      
        The DELETE method terminates an individual subscription.
      parameters:
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
      responses:
        204:
          description: > 
            No Content

            The subscription resource was deleted 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
        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"
        416:
          $ref: "responses/SOL005_resp.yaml#/responses/416"
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
rameshnaraya's avatar
rameshnaraya committed
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"

##################################################################################
# Notification endpoint                                                          #
# Dummy URI is used for testing.                                                 #
# In real, resource URI is provided by the client when creating the subscription.#
##################################################################################
  '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageOnboardingNotification':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10
rameshnaraya's avatar
rameshnaraya committed
    post:
      summary: Notify about VNF package onboarding or change
rameshnaraya's avatar
rameshnaraya committed
      description: >
        The POST method delivers a notification from the server to the client.
        This method shall follow the provisions specified in the 
        Tables 9.4.10.3.1-1 and 9.4.10.3.1-2 for URI query parameters,
        request and response data structures, and response codes.        
rameshnaraya's avatar
rameshnaraya committed
      parameters:
        - name: VnfPackageOnboardingNotification
          description: >
            A notification about on-boarding of a VNF package.
rameshnaraya's avatar
rameshnaraya committed
          in: body
          required: true
          schema:
            properties:
              VnfPackageOnboardingNotification:
                $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageOnboardingNotification" 
rameshnaraya's avatar
rameshnaraya committed
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          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
            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             
rameshnaraya's avatar
rameshnaraya committed
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "responses/SOL005_resp.yaml#/responses/403"                        
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503" 
          
  '/URI_is_provided_by_the_client_when_creating_the_subscription-VnfPackageChangeNotification':
    #ETSI GS NFV-SOL 005 V2.4.1 location: 9.4.10  
    post:
      summary: Notify about VNF package onboarding or change
      description: >
        The POST method delivers a notification from the server to the client.
        This method shall follow the provisions specified in the 
        Tables 9.4.10.3.1-1 and 9.4.10.3.1-2 for URI query parameters,
        request and response data structures, and response codes.        
      parameters:               
        - name: VnfPackageChangeNotification
          description: >
            A notification about changes of status in a VNF package.
          in: body
          required: true
          schema:
            properties:
              VnfPackageChangeNotification:
                $ref: "definitions/SOL005VNFPMManagement_def.yaml#/definitions/VnfPackageChangeNotification"                
        - name: Accept
          description: >
            Content-Types that are acceptable for the response.
            Reference: IETF RFC 7231
          in: header
          required: true
          type: string
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          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
            
            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            
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "responses/SOL005_resp.yaml#/responses/403"                        
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"           
          
rameshnaraya's avatar
rameshnaraya committed
    get:
      summary: Test the notification endpoint
rameshnaraya's avatar
rameshnaraya committed
      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 9.4.10.3.2-1 and 9.4.10.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
        - name: Authorization
          description: >
            The authorization token for the request.
            Reference: IETF RFC 7235
          in: header
          required: false
          type: string
      responses:
        204:
          description: >
            204 No Content
            
rameshnaraya's avatar
rameshnaraya committed
            The notification endpoint was tested successfully.
            The response body shall be empty. 
        400:
          $ref: "responses/SOL005_resp.yaml#/responses/400"
        401:
          $ref: "responses/SOL005_resp.yaml#/responses/401"
        403:
          $ref: "responses/SOL005_resp.yaml#/responses/403"                        
        500:
          $ref: "responses/SOL005_resp.yaml#/responses/500"
        503:
          $ref: "responses/SOL005_resp.yaml#/responses/503"