Commit 0d5a35e2 authored by rameshnaraya's avatar rameshnaraya

Fixed SOL005 v2.4.1 Review issues.

parent 4ed27582
Pipeline #302 passed with stage
in 0 seconds
swagger: "2.0"
info:
description: >
"SOL005 - NSD Management Interface IMPORTANT: Please note that
this file might be not aligned to the current version of the ETSI Group Specification
it refers to and has not been approved by the ETSI NFV ISG. 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"
version: "2.4.1"
version: "1.0.0"
title: "SOL005 - NSD Management Interface"
contact:
name: "NFV-SOL WG"
description: >
SOL005 - NSD Management Interface
IMPORTANT: Please note that this file might be not aligned to the current
version of the ETSI Group Specification it refers to and has not been
approved by the ETSI NFV ISG. 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"
url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
contact:
name: "NFV-SOL WG"
externalDocs:
description: "ETSI GS NFV-SOL 005 V2.4.1"
description: ETSI GS NFV-SOL 005 V2.4.1
url: http://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.04.01_60/gs_NFV-SOL005v020401p.pdf
basePath: "/nsd/v1"
schemes:
- https
- https
consumes:
- "application/json"
produces:
- "application/json"
paths:
###############################################################################
# NS Descriptors #
###############################################################################
'/ns_descriptors':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2.3.2
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.2
get:
summary: "Query information about multiple NS descriptor resources."
summary: Query information about multiple NS descriptor resources.
description: >
"The GET method queries information about multiple NS descriptor resources.
This method shall follow the provisions specified in the
......@@ -100,7 +98,7 @@ paths:
responses:
200:
description: >
200 OK.
200 OK
Information about zero or more NS descriptors.
The response body shall contain a representation of
......@@ -113,11 +111,13 @@ paths:
maximum: 1
minimum: 1
WWW-Authenticate:
type: string
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.
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
schema:
type: array
items:
......@@ -147,7 +147,7 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
post:
summary: "Create a new NS descriptor resource."
summary: Create a new NS descriptor resource.
description: >
The POST method is used to create a new NS descriptor resource or a new version of an on-boarded NS descriptor.
parameters:
......@@ -183,32 +183,24 @@ paths:
CreateNsdInfoRequest:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/CreateNsdInfoRequest"
description: >
The CreateNsdInfoRequest contains parameters for creating
an NS descriptor resource, as defined in clause 5.5.2.4 of GS NFV-SOL 005.
Parameters of creating an NS descriptor resource, as defined in clause 5.5.2.3
responses:
201:
description: "Status 201"
description: >
Status 201
An NS descriptor resource was created successfully, as a new NS descriptor resource.
The response body shall contain a representation
of the new NS descriptor resource, as defined in clause 5.5.2.3 of GS NFV-SOL 005.
The HTTP response shall include a "Location"
HTTP header that contains the resource URI of the
new NS descriptor resource.
schema:
type: "object"
description: >
201 Created.
An NS descriptor resource was created successfully, as a
new NS descriptor resource. The response body shall contain a representation
of the new NS descriptor resource, as defined in clause 5.5.2.2 of
GS NFV-SOL 005.
The HTTP response shall include a "Location"
HTTP header that contains the resource URI of the
new NS descriptor resource.
properties:
NsdInfo:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo"
headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type:
type: "string"
description: >
......@@ -220,7 +212,9 @@ paths:
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.
has provided an invalid authorization token.
maximum: 1
minimum: 0
400:
$ref: "responses/SOL005_resp.yaml#/responses/400"
401:
......@@ -248,8 +242,16 @@ paths:
# Individual NS Descriptor #
###############################################################################
'/ns_descriptors/{nsdInfoId}':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.3
parameters:
- name: "nsdInfoId"
description: >
Identifier of the individual NS descriptor resource.
in: "path"
required: true
type: "string"
get:
summary: "Read information about an individual NS descriptor resource."
summary: Read information about an individual NS descriptor resource.
description: >
"The GET method reads information about an individual NS descriptor.
This method shall follow the provisions specified in GS NFV-SOL 005 Tables
......@@ -272,25 +274,18 @@ paths:
type: string
responses:
200:
description: "Status 201"
description: >
200 OK
Information about the individual NS descriptor.
The response body shall contain a representation of
the individual NS descriptor.
schema:
type: "object"
description: >
200 OK.
Information about the individual NS descriptor.
The response body shall contain a representation of
the individual NS descriptor, as defined in
clause 5.5.2.2.
type: "object"
properties:
NsdInfo:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdInfo"
headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type:
type: "string"
description: >
......@@ -302,6 +297,8 @@ paths:
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-attr-selector"
401:
......@@ -366,7 +363,8 @@ paths:
responses:
200:
description: >
200 OK.
200 OK
The operation was completed successfully.
The response body shall contain attribute
modifications for an 'Individual NS Descriptor'
......@@ -378,11 +376,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
schema:
......@@ -415,7 +413,7 @@ paths:
$ref: "responses/SOL005_resp.yaml#/responses/503"
delete:
summary: "Delete an individual NS descriptor resource."
summary: Delete an individual NS descriptor resource.
description: >
The DELETE method deletes an individual NS descriptor resource.
An individual NS descriptor resource can only be deleted when there is no NS instance using it (i.e. usageState =
......@@ -438,11 +436,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
400:
......@@ -468,20 +466,19 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "nsdInfoId"
description: >
Identifier of the individual NS descriptor resource.
in: "path"
required: true
type: "string"
###############################################################################
# NSD Content #
###############################################################################
'/ns_descriptors/{nsdInfoId}/nsd_content':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.4
parameters:
- name: "nsdInfoId"
in: "path"
required: true
type: "string"
get:
summary: "Fetch the content of a NSD."
summary: Fetch the content of a NSD.
description: >
The GET method fetches the content of the NSD.
The NSD can be implemented as a single file or as a collection of multiple files.
......@@ -529,7 +526,8 @@ paths:
responses:
200:
description: >
OK.
200 OK
On success, the content of the NSD is returned.
The payload body shall contain a copy of the file
representing the NSD or a ZIP file that contains the file
......@@ -546,11 +544,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
206:
......@@ -579,7 +577,7 @@ paths:
$ref: "responses/SOL005_resp.yaml#/responses/503"
put:
summary: "Upload the content of a NSD."
summary: Upload the content of a NSD.
description: >
"The PUT method is used to upload the content of a NSD. The NSD
to be uploaded can be implemented as a single file or as a collection of
......@@ -620,6 +618,12 @@ paths:
202:
description: >
202 Accepted
The NSD content was accepted for uploading, but the
processing has not been completed. It is expected to
take some time for processing (asynchronous mode).
The response body shall be empty.
headers:
Content-Type:
description: The MIME type of the body of the response.
......@@ -627,11 +631,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
204:
......@@ -665,18 +669,14 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "nsdInfoId"
in: "path"
required: true
type: "string"
###############################################################################
# PNF Descriptors #
###############################################################################
'/pnf_descriptors':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.5
get:
summary: "Query information about multiple PNF descriptor resources."
summary: Query information about multiple PNF descriptor resources.
description: >
"The GET method queries information about multiple PNF descriptor
resources."
......@@ -739,11 +739,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
schema:
......@@ -775,7 +775,7 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
post:
summary: "Create a new PNF descriptor resource."
summary: Create a new PNF descriptor resource.
description: >
The POST method is used to create a new PNF descriptor resource
parameters:
......@@ -814,26 +814,22 @@ paths:
Parameters of creating a PNF descriptor resource.
responses:
201:
description: 201 Created.
description: >
201 Created
A PNF descriptor resource was created successfully, as a new PNF descriptor resource.
The response body shall contain a representation of
the new PNF descriptor resource, as defined in
clause 5.5.2.5.
The HTTP response shall include a "Location" HTTP
header that contains the resource URI of the new
PNF descriptor resource.
schema:
type: "object"
description: >
A PNF descriptor resource was created successfully,
as a new PNF descriptor resource.
The response body shall contain a representation of
the new PNF descriptor resource.
The HTTP response shall include a "Location" HTTP
header that contains the resource URI of the new
PNF descriptor resource
properties:
PnfdInfo:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfo"
headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type:
type: "string"
description: >
......@@ -845,7 +841,9 @@ paths:
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.
has provided an invalid authorization token.
maximum: 1
minimum: 0
206:
$ref: "responses/SOL005_resp.yaml#/responses/206"
400:
......@@ -874,8 +872,16 @@ paths:
# Individual PNF Descriptor #
###############################################################################
'/pnf_descriptors/{pnfdInfoId}':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.6
parameters:
- name: "pnfdInfoId"
description: >
Identifier of the individual PNF descriptor resource.
in: "path"
required: true
type: "string"
get:
summary: "Read an individual PNFD resource."
summary: Read an individual PNFD resource.
description: >
The GET method reads information about an individual PNF descriptor.
This method shall follow the provisions specified in the Tables 5.4.6.3.2-1
......@@ -912,11 +918,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
schema:
......@@ -947,7 +953,7 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
delete:
summary: "Delete an individual PNF descriptor resource."
summary: Delete an individual PNF descriptor resource.
description: >
The DELETE method deletes an individual PNF descriptor resource.
An individual PNF descriptor resource can only be deleted when there is no NS instance using it or there is NSD
......@@ -987,11 +993,10 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
patch:
summary: "Modify the user defined data of an individual PNF descriptor resource."
summary: Modify the user defined data of an individual PNF descriptor resource.
description: >
The PATCH method modifies the user defined data of an individual PNF descriptor resource.
parameters:
parameters:
- name: "Accept"
in: "header"
required: true
......@@ -1024,22 +1029,21 @@ paths:
PnfdInfoModifications:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications"
description: >
The PATCH method modifies the user defined data of an individual PNF descriptor resource.
Parameters for the modification of an individual PNF descriptor resource, as defined in clause 5.5.2.4.
responses:
200:
description: >
200 OK.
200 OK
The operation was completed successfully.
The response body shall contain attribute
modifications for an 'Individual PNF Descriptor' resource.
schema:
type: "object"
properties:
PnfdInfoModifications:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/PnfdInfoModifications"
headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type:
type: "string"
description: >
......@@ -1051,7 +1055,9 @@ paths:
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.
has provided an invalid authorization token.
maximum: 1
minimum: 0
206:
$ref: "responses/SOL005_resp.yaml#/responses/206"
400:
......@@ -1077,23 +1083,26 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "pnfdInfoId"
description: >
Identifier of the individual PNF descriptor resource.
in: "path"
required: true
type: "string"
###############################################################################
# PNFD Content #
###############################################################################
'/pnf_descriptors/{pnfdInfoId}/pnfd_content':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.7
parameters:
- name: "pnfdInfoId"
description: >
Identifier of the individual PNF descriptor.
in: "path"
required: true
type: "string"
get:
summary: "Fetch the content of a PNFD."
summary: Fetch the content of a PNFD.
description: >
The GET method fetches the content of the PNFD.
This resource represents the content of the individual PNF descriptor, i.e. PNFD content.
The client can use this resource to upload and download the content of the PNFD.
This method shall follow the provisions specified in the
Table 5.4.7.3.2-2 for URI query parameters,
request and response data structures, and response codes.
parameters:
- name: Accept
description: >
......@@ -1113,11 +1122,25 @@ paths:
responses:
200:
description: >
200 OK.
200 OK
On success, the content of the PNFD is returned. The payload
body shall contain a copy of the file representing the PNFD.
The Content-Type" HTTP header shall be set to "text/plain".
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
206:
$ref: "responses/SOL005_resp.yaml#/responses/206"
400:
......@@ -1143,7 +1166,7 @@ paths:
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
put:
summary: "Upload the content of a PNFD."
summary: Upload the content of a PNFD.
description: >
The PUT method is used to upload the content of a PNFD.
This resource represents the content of the individual PNF descriptor, i.e. PNFD content.
......@@ -1167,7 +1190,7 @@ paths:
responses:
204:
description: >
204 No Content.
204 No Content
The PNFD content was successfully uploaded and validated.
The response body shall be empty.
......@@ -1195,19 +1218,14 @@ paths:
$ref: "responses/SOL005_resp.yaml#/responses/500"
503:
$ref: "responses/SOL005_resp.yaml#/responses/503"
parameters:
- name: "pnfdInfoId"
description: >
Identifier of the individual PNF descriptor.
in: "path"
required: true
type: "string"
###############################################################################
# Subscriptions #
###############################################################################
'/subscriptions':
#ETSI GS NFV-SOL 005 V2.4.1 location: 5.4.8
get:
summary: "Query multiple subscriptions."
summary: Query multiple subscriptions.
description: >
The GET method queries the list of active subscriptions of the
functional block that invokes the method. It can be used e.g. for resynchronization
......@@ -1223,11 +1241,11 @@ paths:
required: false
type: "string"
description: >
"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 VnfPkgInfo and in data types referenced from it shall
be supported in attribute-based filtering parameters."
Attribute filtering parameters according to clause 4.3.2.
The NFVO shall support receiving attribute filter parameters as part of the URI query
string. The OSS/BSS may supply an attribute filter.
All attribute names that appear in the NsdmSubscription and in data types referenced
from it shall be supported in attribute filter parameters.
- name: Accept
description: >
Content-Types that are acceptable for the response.
......@@ -1258,11 +1276,11 @@ paths:
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.
type: string
authorization, or error details if the corresponding HTTP request
has provided an invalid authorization token.
maximum: 1
minimum: 0
schema:
......@@ -1307,7 +1325,7 @@ paths:
$ref: "responses/SOL005_resp.yaml#/responses/503"
post:
summary: "Subscribe to NSD and PNFD change notifications."
summary: Subscribe to NSD and PNFD change notifications.
description: >
The POST method creates a new subscription.
This method shall support the URI query parameters, request and response data structures,
......@@ -1359,11 +1377,11 @@ paths:
NsdmSubscriptionRequest:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscriptionRequest"
description: >
Parameters of creating a new NS Description request.
Details of the subscription to be created, as defined in clause 5.5.2.7.
responses:
201:
description: >
201 Created.
201 Created
The subscription was created successfully.
The response body shall contain a representation of the created subscription resource.
......@@ -1375,11 +1393,6 @@ paths:
NsdmSubscription:
$ref: "definitions/SOL005NSDescriptorManagement_def.yaml#/definitions/NsdmSubscription"
headers:
Location:
type: "string"
description: >
The HTTP response shall include a Location HTTP header
that contains the resource URI of the new NS descriptor resource.
Content-Type:
type: "string"
description: >
......@@ -1392,6 +1405,8 @@ paths:
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
206:
$ref: "responses/SOL005_resp.yaml#/responses/206"
400:
......@@ -1416,16 +1431,25 @@ paths:
$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: 5.4.9
parameters:
- name: "subscriptionId"
description: Identifier of this subscription.
in: "path"
required: true
type: "string"
get:
summary: "Read an individual subscription resource."
description: >
summary: Read an individual subscription resource.
description: >
This resource represents an individual subscription.
It can be used by the client to read and to terminate a subscription to
notifications related to NSD management.
The GET method retrieves information about a subscription by reading
an individual subscription resource.
This resource represents an individual subscription.
......@@ -1451,12 +1475,16 @@ paths:
responses:
200:
description: >
200 OK.
Information about the individual NS descriptor. The response
body shall contain a representation of the individual NS descriptor,
as defined in clause 5.5.2.2 of GS NFV-SOL 005.
200 OK
The operation has completed successfully.
The response body shall contain a representation of