Newer
Older
swagger: "2.0"
info:
description: "DRAFT - 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\n"
title: "DRAFT - SOL005 - NSD Management Interface"
contact:
name: "NFV-SOL WG"
license:
name: "ETSI Forge copyright notice"
url: "https://forge.etsi.org/etsi-forge-copyright-notice.txt"
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
/ns_descriptors:
get:
summary: "Query NSD Info"
description: "The GET method queries information about multiple NS descriptor\
\ resources. This method shall follow the provisions specified in the Tables\
\ 5.4.2.3.2-1 and 5.4.2.3.2-2 of GS NFV-SOL 005 for URI query parameters,\
\ request and response data structures, and response codes."
parameters: []
responses:
200:
description: "Information about zero or more NS descriptors.\nThe response\
\ body shall contain a representation of zero or more NS descriptors,\
\ as defined in clause 5.5.2.2 of GS NFV-SOL 005."
schema:
$ref: "#/definitions/NsdInfo"
400:
description: "There are two possible scenarios listed below.\n\nError: Invalid\
\ attribute-based filtering parameters. \n\nThe response body shall contain\
\ a ProblemDetails structure, in which the \"detail\" attribute should\
\ convey more information about the error.\n\nError: Invalid attribute\
\ selector. The response body shall contain a ProblemDetails structure,\
\ in which the \"detail\" attribute should convey more information about\
\ the error."
post:
summary: "Create NSD Info"
description: "The POST method is used to create a new NS descriptor resource.\
\ This method shall follow the provisions specified in the Tables 5.4.2.3.1-1\
\ and 5.4.2.3.1-2 of GS NFV-SOL 005 for URI query parameters, request and\
\ response data structures, and response codes."
consumes: []
parameters:
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "CreateNsdInfoRequest"
properties:
CreateNsdInfoRequest:
$ref: "#/definitions/CreateNsdInfoRequest"
description: "The CreateNsdInfoRequest contains parameters for creating\
\ an NS descriptor resource, as defined in\nclause 5.5.2.4 of GS NFV-SOL\
\ 005."
responses:
201:
description: "Status 201"
schema:
type: "object"
description: "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."
properties:
NsdInfo:
$ref: "#/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."
/ns_descriptors/{nsdInfoId}:
get:
summary: "Query NSD Info"
description: "The GET method reads information about an individual NS descriptor.\
\ This method shall follow the provisions specified in GS NFV-SOL 005 Tables\
\ 5.4.3.3.2-1 and 5.4.3.3.2-2 of GS NFV-SOL 005 for URI query parameters,\
\ request and response data structures, and response codes."
parameters: []
responses:
200:
description: "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."
schema:
$ref: "#/definitions/NsdInfo"
delete:
summary: "Delete NSD"
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 = NOT_IN_USE) and has been disabled\
\ already (i.e. operationalState = DISABLED). Otherwise, the DELETE method\
\ shall fail. This method shall follow the provisions specified in the Tables\
\ 5.4.3.3.5-1 and 5.4.3.3.5-2 of GS NFV-SOL 005 for URI query parameters,\
\ request and response data structures, and response codes."
parameters: []
responses:
204:
description: "The operation has completed successfully. The response body\
\ shall be empty."
schema:
type: "object"
description: "The operation has completed successfully. The response body\
\ shall be empty."
409:
description: "Status 409"
schema:
required:
- "ProblemDetails"
type: "object"
description: "Error: The operation cannot be executed currently, due to\
\ a conflict with the state of the resource. Typically, this is due\
\ to the fact the NS descriptor resource is in the enabled operational\
\ state (i.e. operationalState = ENABLED) or there are running NS instances\
\ using the concerned individual NS descriptor resource (i.e. usageState\
\ = IN_USE). The response body shall contain a ProblemDetails structure,\
\ in which the \"detail\" attribute shall convey more information about\
\ the error."
properties:
ProblemDetails:
$ref: "#/definitions/ProblemDetails"
patch:
summary: "Update NSD Info"
description: "The PATCH method modifies the operational state and/or user defined\
\ data of an individual NS descriptor resource. This method can be used to:\n\
1) Enable a previously disabled individual NS descriptor resource, allowing\
\ again its use for instantiation of new\nnetwork service with this descriptor.\
\ The usage state (i.e. \"IN_USE/NOT_IN_USE\") shall not change as a\nresult.\n\
2) Disable a previously enabled individual NS descriptor resource, preventing\
\ any further use for instantiation of\nnew network service(s) with this descriptor.\
\ The usage state (i.e. \"IN_USE/NOT_IN_USE\") shall not change\nas a result.\n\
3) Modify the user defined data of an individual NS descriptor resource.\n\
This method shall follow the provisions specified in the Tables 5.4.3.3.4-1\
\ and 5.4.3.3.4-2 for URI query parameters,\nrequest and response data structures,\
\ and response codes."
consumes: []
parameters:
- name: "body"
in: "body"
required: true
schema:
type: "object"
required:
- "NsdInfoModifications"
properties:
NsdInfoModifications:
$ref: "#/definitions/NsdInfoModifications"
description: "The operation was completed successfully. The response body\
\ shall contain attribute modifications for an 'Individual NS Descriptor'\
\ resource (see clause 5.5.2.6 of GS NFV SOL-005)."
responses:
200:
description: "Status 200"
schema:
$ref: "#/definitions/NsdInfoModifications"
409:
description: "Status 409"
schema:
$ref: "#/definitions/ProblemDetails"
412:
description: "Status 412"
schema:
$ref: "#/definitions/ProblemDetails"
parameters:
- name: "nsdInfoId"
in: "path"
required: true
type: "string"
/ns_descriptors/{nsdInfoId}/nsd_content:
summary: "Get NSD Content"
description: "The GET method fetches the content of the NSD.\n\nThe NSD can\
\ be implemented as a single file or as a collection of multiple files. If\
\ the NSD is implemented in the form of multiple files, a ZIP file embedding\
\ these files shall be returned. If the NSD is implemented as a single file,\
\ either that file or a ZIP file embedding that file shall be returned.\n\n\
The selection of the format is controlled by the \"Accept\" HTTP header passed\
\ in the GET request:\n\n• If the \"Accept\" header contains only \"text/plain\"\
\ and the NSD is implemented as a single file, the file shall be returned;\
\ otherwise, an error message shall be returned.\n\n• If the \"Accept\" header\
\ contains only \"application/zip\", the single file or the multiple files\
\ that make up the NSD shall be returned embedded in a ZIP file.\n\n• If the\
\ \"Accept\" header contains both \"text/plain\" and \"application/zip\",\
\ it is up to the NFVO to choose the format to return for a single-file NSD;\
\ for a multi-file NSD, a ZIP file shall be returned.\n\nNOTE: The structure\
\ of the NSD zip file is outside the scope of the present document."
parameters:
- name: "Accept"
in: "header"
required: true
Loading full blame...