blob: 24120ea3338fe5b5b7c786ee3249039baf113bc4 [file] [log] [blame]
garciadeblas60e2ee92018-02-27 19:09:51 +01001openapi: 3.0.0
delacruzramfb52ade2019-10-07 16:46:59 +02002
garciadeblas60e2ee92018-02-27 19:09:51 +01003servers:
4 - description: OSM NB API
5 url: https://osm.etsi.org/nbapi/v1.0.0
delacruzramfb52ade2019-10-07 16:46:59 +02006
garciadeblas60e2ee92018-02-27 19:09:51 +01007info:
8 description: |
9 This is Open Source MANO Northbound API featuring ETSI NFV SOL005.
Felipe Vicens69385fc2019-10-09 10:58:57 +020010 For more information on OSM, you can visit [http://osm.etsi.org](http://osm.etsi.org).
11 You can send us your comments and questions to OSM_TECH@list.etsi.org
12 or join the [OpenSourceMANO Slack Workplace](https://join.slack.com/t/opensourcemano/shared_invite/enQtMzQ3MzYzNTQ0NDIyLWVkNTE4ZjZjNWI0ZTQyN2VhOTI1MjViMzU1NWYwMWM3ODI4NTQyY2VlODA2ZjczMWIyYTFkZWNiZmFkM2M2ZDk)
garciadeblas60e2ee92018-02-27 19:09:51 +010013 version: "1.0.0"
14 title: OSM NB API featuring ETSI NFV SOL005
15 contact:
16 email: OSM_TECH@list.etsi.org
17 license:
18 name: Apache 2.0
19 url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
delacruzramfb52ade2019-10-07 16:46:59 +020020
garciadeblas60e2ee92018-02-27 19:09:51 +010021tags:
22 - name: 'VNF packages'
23 description: Management operations of VNF descriptors and packages
24 - name: 'NS packages'
25 description: Management operations of NS descriptors and packages
26 - name: 'NS instances'
27 description: Management operations of NS instances
delacruzramfb52ade2019-10-07 16:46:59 +020028 - name: 'NetSlice templates'
29 description: Management operations of NetSlice Templates
30 - name: 'NetSlice instances'
31 description: Management operations of NetSlice Instances
32# - name: 'NSPM'
33# description: Management operations of NSPMs
34# - name: 'PDU'
35# description: Management operations of PDUs
36# - name: 'Admin'
37# description: Management operations of Administration items
38
39security:
40 - bearerAuth: []
41
garciadeblas60e2ee92018-02-27 19:09:51 +010042paths:
delacruzramfb52ade2019-10-07 16:46:59 +020043
44# BEGIN NS Packages
garciadeblas12fcc4b2018-03-02 16:12:02 +010045 '/nsd/v1/ns_descriptors':
garciadeblas60e2ee92018-02-27 19:09:51 +010046 get:
47 tags:
48 - "NS packages"
49 summary: Query information about multiple NS descriptor resources
50 description: Query information about multiple NS descriptor resources
51 operationId: getNSDs
garciadeblas60e2ee92018-02-27 19:09:51 +010052 responses:
53 '200':
54 description: OK
55 content:
56 application/json:
57 schema:
58 $ref: '#/components/schemas/ArrayOfNsdInfo'
59 application/yaml:
60 schema:
61 $ref: '#/components/schemas/ArrayOfNsdInfo'
62 '400':
63 $ref: '#/components/responses/BadRequest'
64 '401':
65 $ref: '#/components/responses/Unauthorized'
66 '403':
67 $ref: '#/components/responses/Forbidden'
68 '404':
69 $ref: '#/components/responses/NotFound'
70 '405':
71 $ref: '#/components/responses/MethodNotAllowed'
72 '406':
73 $ref: '#/components/responses/NotAcceptable'
74 '409':
75 $ref: '#/components/responses/Conflict'
76 '422':
77 $ref: '#/components/responses/UnprocessableEntity'
78 '500':
79 $ref: '#/components/responses/InternalServerError'
80 '503':
81 $ref: '#/components/responses/ServiceUnavailable'
82 '5XX':
83 $ref: '#/components/responses/UnexpectedError'
84 default:
85 $ref: '#/components/responses/UnexpectedError'
86 post:
87 tags:
88 - "NS packages"
89 summary: Create a new NS descriptor resource
90 description: Create a new NS descriptor resource
91 operationId: addNSD
garciadeblas60e2ee92018-02-27 19:09:51 +010092 requestBody:
93 $ref: '#/components/requestBodies/CreateNsdInfoRequest'
94 responses:
95 '201':
96 description: Created
garciadeblas63fe88c2018-02-28 19:32:41 +010097 headers:
98 Location:
99 schema:
100 type: string
101 format: uri
garciadeblas60e2ee92018-02-27 19:09:51 +0100102 content:
103 application/json:
104 schema:
delacruzramfb52ade2019-10-07 16:46:59 +0200105 $ref: '#/components/schemas/ObjectId'
garciadeblas60e2ee92018-02-27 19:09:51 +0100106 application/yaml:
107 schema:
delacruzramfb52ade2019-10-07 16:46:59 +0200108 $ref: '#/components/schemas/ObjectId'
garciadeblas60e2ee92018-02-27 19:09:51 +0100109 '400':
110 $ref: '#/components/responses/BadRequest'
111 '401':
112 $ref: '#/components/responses/Unauthorized'
113 '403':
114 $ref: '#/components/responses/Forbidden'
115 '404':
116 $ref: '#/components/responses/NotFound'
117 '405':
118 $ref: '#/components/responses/MethodNotAllowed'
119 '406':
120 $ref: '#/components/responses/NotAcceptable'
121 '409':
122 $ref: '#/components/responses/Conflict'
123 '422':
124 $ref: '#/components/responses/UnprocessableEntity'
125 '500':
126 $ref: '#/components/responses/InternalServerError'
127 '503':
128 $ref: '#/components/responses/ServiceUnavailable'
129 '5XX':
130 $ref: '#/components/responses/UnexpectedError'
131 default:
132 $ref: '#/components/responses/UnexpectedError'
133 '/nsd/v1/ns_descriptors/{nsdInfoId}':
delacruzramfb52ade2019-10-07 16:46:59 +0200134 parameters:
135 - name: nsdInfoId
136 in: path
137 required: true
138 description: NSD Info ID
139 schema:
140 type : string
garciadeblas60e2ee92018-02-27 19:09:51 +0100141 get:
142 tags:
143 - "NS packages"
144 summary: Read information about an individual NS descriptor resource
145 description: Read information about an individual NS descriptor resource
146 operationId: getNSD
garciadeblas60e2ee92018-02-27 19:09:51 +0100147 responses:
148 '200':
149 description: OK
150 content:
151 application/json:
152 schema:
153 $ref: '#/components/schemas/NsdInfo'
154 application/yaml:
155 schema:
156 $ref: '#/components/schemas/NsdInfo'
157 '400':
158 $ref: '#/components/responses/BadRequest'
159 '401':
160 $ref: '#/components/responses/Unauthorized'
161 '403':
162 $ref: '#/components/responses/Forbidden'
163 '404':
164 $ref: '#/components/responses/NotFound'
165 '405':
166 $ref: '#/components/responses/MethodNotAllowed'
167 '406':
168 $ref: '#/components/responses/NotAcceptable'
169 '409':
170 $ref: '#/components/responses/Conflict'
171 '422':
172 $ref: '#/components/responses/UnprocessableEntity'
173 '500':
174 $ref: '#/components/responses/InternalServerError'
175 '503':
176 $ref: '#/components/responses/ServiceUnavailable'
177 '5XX':
178 $ref: '#/components/responses/UnexpectedError'
179 default:
180 $ref: '#/components/responses/UnexpectedError'
181 delete:
182 tags:
183 - "NS packages"
184 summary: Delete an individual NS descriptor resource
185 description: Delete an individual NS descriptor resource
186 operationId: deleteNSD
garciadeblas60e2ee92018-02-27 19:09:51 +0100187 responses:
188 '204':
189 description: No Content
190 '400':
191 $ref: '#/components/responses/BadRequest'
192 '401':
193 $ref: '#/components/responses/Unauthorized'
194 '403':
195 $ref: '#/components/responses/Forbidden'
196 '404':
197 $ref: '#/components/responses/NotFound'
198 '405':
199 $ref: '#/components/responses/MethodNotAllowed'
200 '406':
201 $ref: '#/components/responses/NotAcceptable'
202 '409':
203 $ref: '#/components/responses/Conflict'
204 '422':
205 $ref: '#/components/responses/UnprocessableEntity'
206 '500':
207 $ref: '#/components/responses/InternalServerError'
208 '503':
209 $ref: '#/components/responses/ServiceUnavailable'
210 '5XX':
211 $ref: '#/components/responses/UnexpectedError'
212 default:
213 $ref: '#/components/responses/UnexpectedError'
214 patch:
215 tags:
216 - "NS packages"
delacruzramfb52ade2019-10-07 16:46:59 +0200217 summary: Modify the data of an individual NS descriptor resource
218 description: Modify the data of an individual NS descriptor resource
garciadeblas60e2ee92018-02-27 19:09:51 +0100219 operationId: updateNSD
garciadeblas60e2ee92018-02-27 19:09:51 +0100220 requestBody:
221 $ref: '#/components/requestBodies/NsdInfoModifications'
222 responses:
delacruzramfb52ade2019-10-07 16:46:59 +0200223 '204':
224 description: No Content
garciadeblas60e2ee92018-02-27 19:09:51 +0100225 '400':
226 $ref: '#/components/responses/BadRequest'
227 '401':
228 $ref: '#/components/responses/Unauthorized'
229 '403':
230 $ref: '#/components/responses/Forbidden'
231 '404':
232 $ref: '#/components/responses/NotFound'
233 '405':
234 $ref: '#/components/responses/MethodNotAllowed'
235 '406':
236 $ref: '#/components/responses/NotAcceptable'
237 '409':
238 $ref: '#/components/responses/Conflict'
239 '422':
240 $ref: '#/components/responses/UnprocessableEntity'
241 '500':
242 $ref: '#/components/responses/InternalServerError'
243 '503':
244 $ref: '#/components/responses/ServiceUnavailable'
245 '5XX':
246 $ref: '#/components/responses/UnexpectedError'
247 default:
248 $ref: '#/components/responses/UnexpectedError'
249 '/nsd/v1/ns_descriptors/{nsdInfoId}/nsd_content':
delacruzramfb52ade2019-10-07 16:46:59 +0200250 parameters:
251 - name: nsdInfoId
252 in: path
253 required: true
254 description: NSD Info ID
255 schema:
256 type : string
garciadeblas60e2ee92018-02-27 19:09:51 +0100257 get:
258 tags:
259 - "NS packages"
260 summary: Fetch the content of a NSD
261 description: Fetch the content of a NSD
262 operationId: getNSDcontent
garciadeblas60e2ee92018-02-27 19:09:51 +0100263 responses:
264 '200':
265 description: OK
delacruzramfb52ade2019-10-07 16:46:59 +0200266 content:
267 application/zip:
268 schema:
269 $ref: '#/components/schemas/NsPackage'
garciadeblas60e2ee92018-02-27 19:09:51 +0100270 '206':
271 description: Partial Content
272 headers:
273 Content-Range:
274 schema:
275 type: string
delacruzramfb52ade2019-10-07 16:46:59 +0200276 content:
277 application/zip:
278 schema:
279 $ref: '#/components/schemas/NsPackage'
garciadeblas60e2ee92018-02-27 19:09:51 +0100280 '400':
281 $ref: '#/components/responses/BadRequest'
282 '401':
283 $ref: '#/components/responses/Unauthorized'
284 '403':
285 $ref: '#/components/responses/Forbidden'
286 '404':
287 $ref: '#/components/responses/NotFound'
288 '405':
289 $ref: '#/components/responses/MethodNotAllowed'
290 '406':
291 $ref: '#/components/responses/NotAcceptable'
292 '409':
293 $ref: '#/components/responses/Conflict'
294 '422':
295 $ref: '#/components/responses/UnprocessableEntity'
296 '500':
297 $ref: '#/components/responses/InternalServerError'
298 '503':
299 $ref: '#/components/responses/ServiceUnavailable'
300 '5XX':
301 $ref: '#/components/responses/UnexpectedError'
302 default:
303 $ref: '#/components/responses/UnexpectedError'
304 put:
305 tags:
306 - "NS packages"
307 summary: Upload the content of a NSD
308 description: Upload the content of a NSD
309 operationId: updateNSDcontent
garciadeblas60e2ee92018-02-27 19:09:51 +0100310 requestBody:
delacruzramfb52ade2019-10-07 16:46:59 +0200311 $ref: '#/components/requestBodies/NsPackage'
garciadeblas60e2ee92018-02-27 19:09:51 +0100312 responses:
313 '202':
314 description: Accepted
315 '204':
316 description: No Content
317 '400':
318 $ref: '#/components/responses/BadRequest'
319 '401':
320 $ref: '#/components/responses/Unauthorized'
321 '403':
322 $ref: '#/components/responses/Forbidden'
323 '404':
324 $ref: '#/components/responses/NotFound'
325 '405':
326 $ref: '#/components/responses/MethodNotAllowed'
327 '406':
328 $ref: '#/components/responses/NotAcceptable'
329 '409':
330 $ref: '#/components/responses/Conflict'
331 '422':
332 $ref: '#/components/responses/UnprocessableEntity'
333 '500':
334 $ref: '#/components/responses/InternalServerError'
335 '503':
336 $ref: '#/components/responses/ServiceUnavailable'
337 '5XX':
338 $ref: '#/components/responses/UnexpectedError'
339 default:
340 $ref: '#/components/responses/UnexpectedError'
delacruzramfb52ade2019-10-07 16:46:59 +0200341 '/nsd/v1/ns_descriptors/{nsdInfoId}/artifacts/{artifactPath}':
342 parameters:
343 - name: nsdInfoId
344 in: path
345 required: true
346 description: NS Package ID
347 schema:
348 type : string
349 - name: artifactPath
350 in: path
351 required: true
352 description: Artifact Path
353 schema:
354 type : string
355 get:
356 tags:
357 - "NS packages"
358 summary: Fetch individual NS package artifact
359 description: Fetch individual NS package artifact
360 operationId: getNsPkgArtifact
361 responses:
362 '200':
363 description: OK
364 content:
365 application/octet-stream:
366 schema:
367 type: string
368 format: binary
369 '206':
370 description: Partial Content
371 headers:
372 Content-Range:
373 schema:
374 type: string
375 content:
376 application/octet-stream:
377 schema:
378 type: string
379 format: binary
380 '400':
381 $ref: '#/components/responses/BadRequest'
382 '401':
383 $ref: '#/components/responses/Unauthorized'
384 '403':
385 $ref: '#/components/responses/Forbidden'
386 '404':
387 $ref: '#/components/responses/NotFound'
388 '405':
389 $ref: '#/components/responses/MethodNotAllowed'
390 '406':
391 $ref: '#/components/responses/NotAcceptable'
392 '409':
393 $ref: '#/components/responses/Conflict'
394 '422':
395 $ref: '#/components/responses/UnprocessableEntity'
396 '500':
397 $ref: '#/components/responses/InternalServerError'
398 '503':
399 $ref: '#/components/responses/ServiceUnavailable'
400 '5XX':
401 $ref: '#/components/responses/UnexpectedError'
402 default:
403 $ref: '#/components/responses/UnexpectedError'
404 '/nsd/v1/ns_descriptors/{nsdInfoId}/nsd':
405 parameters:
406 - name: nsdInfoId
407 in: path
408 required: true
409 description: NS Package ID
410 schema:
411 type : string
412 get:
413 tags:
414 - "NS packages"
415 summary: Read NSD of an on-boarded NS package
416 description: Read NSD of an on-boarded NS package
417 operationId: getNsPkgNsd
418 responses:
419 '200':
420 description: OK
421 content:
422 text/plain:
423 schema:
424 $ref: '#/components/schemas/NsDescriptor'
425 '400':
426 $ref: '#/components/responses/BadRequest'
427 '401':
428 $ref: '#/components/responses/Unauthorized'
429 '403':
430 $ref: '#/components/responses/Forbidden'
431 '404':
432 $ref: '#/components/responses/NotFound'
433 '405':
434 $ref: '#/components/responses/MethodNotAllowed'
435 '406':
436 $ref: '#/components/responses/NotAcceptable'
437 '409':
438 $ref: '#/components/responses/Conflict'
439 '422':
440 $ref: '#/components/responses/UnprocessableEntity'
441 '500':
442 $ref: '#/components/responses/InternalServerError'
443 '503':
444 $ref: '#/components/responses/ServiceUnavailable'
445 '5XX':
446 $ref: '#/components/responses/UnexpectedError'
447 default:
448 $ref: '#/components/responses/UnexpectedError'
449 '/nsd/v1/ns_descriptors_content':
450 post:
451 tags:
452 - "NS packages"
453 summary: Upload a NS package by providing the content of the NS package
454 description: Upload a NS package by providing the content of the NS package
455 operationId: uploadNsPkgsContent
456 requestBody:
457 content:
458 application/zip:
459 schema:
460 $ref: '#/components/schemas/NsPackage'
461 responses:
462 '201':
463 description: Created
464 headers:
465 Location:
466 schema:
467 type: string
468 format: uri
469 content:
470 application/json:
471 schema:
472 $ref: '#/components/schemas/ObjectId'
473 application/yaml:
474 schema:
475 $ref: '#/components/schemas/ObjectId'
476 '202':
477 description: Accepted
478 '204':
479 description: No Content
480 '400':
481 $ref: '#/components/responses/BadRequest'
482 '401':
483 $ref: '#/components/responses/Unauthorized'
484 '403':
485 $ref: '#/components/responses/Forbidden'
486 '404':
487 $ref: '#/components/responses/NotFound'
488 '405':
489 $ref: '#/components/responses/MethodNotAllowed'
490 '406':
491 $ref: '#/components/responses/NotAcceptable'
492 '409':
493 $ref: '#/components/responses/Conflict'
494 '422':
495 $ref: '#/components/responses/UnprocessableEntity'
496 '500':
497 $ref: '#/components/responses/InternalServerError'
498 '503':
499 $ref: '#/components/responses/ServiceUnavailable'
500 '5XX':
501 $ref: '#/components/responses/UnexpectedError'
502 default:
503 $ref: '#/components/responses/UnexpectedError'
504 get:
505 tags:
506 - "NS packages"
507 summary: Query information about multiple NS package resources
508 description: Query information about multiple NS package resources
509 operationId: getNsPkgsContent
510 responses:
511 '200':
512 description: OK
513 content:
514 application/json:
515 schema:
516 $ref: '#/components/schemas/ArrayOfNsdInfo'
517 application/yaml:
518 schema:
519 $ref: '#/components/schemas/ArrayOfNsdInfo'
520 '206':
521 description: Partial Content
522 headers:
523 Content-Range:
524 schema:
525 type: string
526 content:
527 application/octet-stream:
528 schema:
529 type: string
530 format: binary
531 '400':
532 $ref: '#/components/responses/BadRequest'
533 '401':
534 $ref: '#/components/responses/Unauthorized'
535 '403':
536 $ref: '#/components/responses/Forbidden'
537 '404':
538 $ref: '#/components/responses/NotFound'
539 '405':
540 $ref: '#/components/responses/MethodNotAllowed'
541 '406':
542 $ref: '#/components/responses/NotAcceptable'
543 '409':
544 $ref: '#/components/responses/Conflict'
545 '422':
546 $ref: '#/components/responses/UnprocessableEntity'
547 '500':
548 $ref: '#/components/responses/InternalServerError'
549 '503':
550 $ref: '#/components/responses/ServiceUnavailable'
551 '5XX':
552 $ref: '#/components/responses/UnexpectedError'
553 default:
554 $ref: '#/components/responses/UnexpectedError'
555 '/nsd/v1/ns_descriptors_content/{nsdInfoId}':
556 parameters:
557 - name: nsdInfoId
558 in: path
559 required: true
560 description: NS Package ID
561 schema:
562 type : string
563 get:
564 tags:
565 - "NS packages"
566 summary: Read information about an individual NS package resource
567 description: Read information about an individual NS package resource
568 operationId: getNsPkgsIdContent
569 responses:
570 '200':
571 description: OK
572 content:
573 application/json:
574 schema:
575 $ref: '#/components/schemas/NsdInfo'
576 application/yaml:
577 schema:
578 $ref: '#/components/schemas/NsdInfo'
579 '400':
580 $ref: '#/components/responses/BadRequest'
581 '401':
582 $ref: '#/components/responses/Unauthorized'
583 '403':
584 $ref: '#/components/responses/Forbidden'
585 '404':
586 $ref: '#/components/responses/NotFound'
587 '405':
588 $ref: '#/components/responses/MethodNotAllowed'
589 '406':
590 $ref: '#/components/responses/NotAcceptable'
591 '409':
592 $ref: '#/components/responses/Conflict'
593 '422':
594 $ref: '#/components/responses/UnprocessableEntity'
595 '500':
596 $ref: '#/components/responses/InternalServerError'
597 '503':
598 $ref: '#/components/responses/ServiceUnavailable'
599 '5XX':
600 $ref: '#/components/responses/UnexpectedError'
601 default:
602 $ref: '#/components/responses/UnexpectedError'
603 put:
604 tags:
605 - "NS packages"
606 summary: Modify an individual NS package resource
607 description: Modify an individual NS package resource
608 operationId: updateNsPkgsIdContent
609 requestBody:
610 $ref: '#/components/requestBodies/NsdInfoModifications'
611 responses:
612 '204':
613 description: No Content
614 '400':
615 $ref: '#/components/responses/BadRequest'
616 '401':
617 $ref: '#/components/responses/Unauthorized'
618 '403':
619 $ref: '#/components/responses/Forbidden'
620 '404':
621 $ref: '#/components/responses/NotFound'
622 '405':
623 $ref: '#/components/responses/MethodNotAllowed'
624 '406':
625 $ref: '#/components/responses/NotAcceptable'
626 '409':
627 $ref: '#/components/responses/Conflict'
628 '422':
629 $ref: '#/components/responses/UnprocessableEntity'
630 '500':
631 $ref: '#/components/responses/InternalServerError'
632 '503':
633 $ref: '#/components/responses/ServiceUnavailable'
634 '5XX':
635 $ref: '#/components/responses/UnexpectedError'
636 default:
637 $ref: '#/components/responses/UnexpectedError'
638 delete:
639 tags:
640 - "NS packages"
641 summary: Delete an individual NS package resource
642 description: Delete an individual NS package resource
643 operationId: deleteNSPkgsIdContent
644 responses:
645 '204':
646 description: No Content
647 '400':
648 $ref: '#/components/responses/BadRequest'
649 '401':
650 $ref: '#/components/responses/Unauthorized'
651 '403':
652 $ref: '#/components/responses/Forbidden'
653 '404':
654 $ref: '#/components/responses/NotFound'
655 '405':
656 $ref: '#/components/responses/MethodNotAllowed'
657 '406':
658 $ref: '#/components/responses/NotAcceptable'
659 '409':
660 $ref: '#/components/responses/Conflict'
661 '422':
662 $ref: '#/components/responses/UnprocessableEntity'
663 '500':
664 $ref: '#/components/responses/InternalServerError'
665 '503':
666 $ref: '#/components/responses/ServiceUnavailable'
667 '5XX':
668 $ref: '#/components/responses/UnexpectedError'
669 default:
670 $ref: '#/components/responses/UnexpectedError'
671# END NS Packages
672
673# BEGIN VNF Packages
garciadeblas12fcc4b2018-03-02 16:12:02 +0100674 '/vnfpkgm/v1/vnf_packages':
garciadeblas63fe88c2018-02-28 19:32:41 +0100675 get:
676 tags:
677 - "VNF packages"
678 summary: Query information about multiple VNF package resources
delacruzramfb52ade2019-10-07 16:46:59 +0200679 description: Query information about multiple VNF package resources
garciadeblas63fe88c2018-02-28 19:32:41 +0100680 operationId: getVnfPkgs
garciadeblas63fe88c2018-02-28 19:32:41 +0100681 responses:
682 '200':
683 description: OK
684 content:
685 application/json:
686 schema:
687 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
688 application/yaml:
689 schema:
690 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
691 '400':
692 $ref: '#/components/responses/BadRequest'
693 '401':
694 $ref: '#/components/responses/Unauthorized'
695 '403':
696 $ref: '#/components/responses/Forbidden'
697 '404':
698 $ref: '#/components/responses/NotFound'
699 '405':
700 $ref: '#/components/responses/MethodNotAllowed'
701 '406':
702 $ref: '#/components/responses/NotAcceptable'
703 '409':
704 $ref: '#/components/responses/Conflict'
705 '422':
706 $ref: '#/components/responses/UnprocessableEntity'
707 '500':
708 $ref: '#/components/responses/InternalServerError'
709 '503':
710 $ref: '#/components/responses/ServiceUnavailable'
711 '5XX':
712 $ref: '#/components/responses/UnexpectedError'
713 default:
714 $ref: '#/components/responses/UnexpectedError'
715 post:
716 tags:
717 - "VNF packages"
718 summary: Create a new VNF package resource
719 description: Create a new VNF package resource
720 operationId: addVnfPkg
garciadeblas63fe88c2018-02-28 19:32:41 +0100721 requestBody:
722 $ref: '#/components/requestBodies/CreateVnfPkgInfoRequest'
723 responses:
724 '201':
725 description: Created
726 headers:
727 Location:
728 schema:
729 type: string
730 format: uri
731 content:
732 application/json:
733 schema:
delacruzramfb52ade2019-10-07 16:46:59 +0200734 $ref: '#/components/schemas/ObjectId'
garciadeblas63fe88c2018-02-28 19:32:41 +0100735 application/yaml:
736 schema:
delacruzramfb52ade2019-10-07 16:46:59 +0200737 $ref: '#/components/schemas/ObjectId'
garciadeblas63fe88c2018-02-28 19:32:41 +0100738 '400':
739 $ref: '#/components/responses/BadRequest'
740 '401':
741 $ref: '#/components/responses/Unauthorized'
742 '403':
743 $ref: '#/components/responses/Forbidden'
744 '404':
745 $ref: '#/components/responses/NotFound'
746 '405':
747 $ref: '#/components/responses/MethodNotAllowed'
748 '406':
749 $ref: '#/components/responses/NotAcceptable'
750 '409':
751 $ref: '#/components/responses/Conflict'
752 '422':
753 $ref: '#/components/responses/UnprocessableEntity'
754 '500':
755 $ref: '#/components/responses/InternalServerError'
756 '503':
757 $ref: '#/components/responses/ServiceUnavailable'
758 '5XX':
759 $ref: '#/components/responses/UnexpectedError'
760 default:
761 $ref: '#/components/responses/UnexpectedError'
762 '/vnfpkgm/v1/vnf_packages/{vnfPkgId}':
delacruzramfb52ade2019-10-07 16:46:59 +0200763 parameters:
764 - name: vnfPkgId
765 in: path
766 required: true
767 description: VNF Package ID
768 schema:
769 type : string
garciadeblas63fe88c2018-02-28 19:32:41 +0100770 get:
771 tags:
772 - "VNF packages"
773 summary: Read information about an individual VNF package resource
774 description: Read information about an individual VNF package resource
775 operationId: getVnfPkg
garciadeblas63fe88c2018-02-28 19:32:41 +0100776 responses:
777 '200':
778 description: OK
779 content:
780 application/json:
781 schema:
782 $ref: '#/components/schemas/VnfPkgInfo'
783 application/yaml:
784 schema:
785 $ref: '#/components/schemas/VnfPkgInfo'
786 '400':
787 $ref: '#/components/responses/BadRequest'
788 '401':
789 $ref: '#/components/responses/Unauthorized'
790 '403':
791 $ref: '#/components/responses/Forbidden'
792 '404':
793 $ref: '#/components/responses/NotFound'
794 '405':
795 $ref: '#/components/responses/MethodNotAllowed'
796 '406':
797 $ref: '#/components/responses/NotAcceptable'
798 '409':
799 $ref: '#/components/responses/Conflict'
800 '422':
801 $ref: '#/components/responses/UnprocessableEntity'
802 '500':
803 $ref: '#/components/responses/InternalServerError'
804 '503':
805 $ref: '#/components/responses/ServiceUnavailable'
806 '5XX':
807 $ref: '#/components/responses/UnexpectedError'
808 default:
809 $ref: '#/components/responses/UnexpectedError'
810 delete:
811 tags:
812 - "VNF packages"
813 summary: Delete an individual VNF package resource
814 description: Delete an individual VNF package resource
815 operationId: deleteVnfPkg
garciadeblas63fe88c2018-02-28 19:32:41 +0100816 responses:
817 '204':
818 description: No Content
819 '400':
820 $ref: '#/components/responses/BadRequest'
821 '401':
822 $ref: '#/components/responses/Unauthorized'
823 '403':
824 $ref: '#/components/responses/Forbidden'
825 '404':
826 $ref: '#/components/responses/NotFound'
827 '405':
828 $ref: '#/components/responses/MethodNotAllowed'
829 '406':
830 $ref: '#/components/responses/NotAcceptable'
831 '409':
832 $ref: '#/components/responses/Conflict'
833 '422':
834 $ref: '#/components/responses/UnprocessableEntity'
835 '500':
836 $ref: '#/components/responses/InternalServerError'
837 '503':
838 $ref: '#/components/responses/ServiceUnavailable'
839 '5XX':
840 $ref: '#/components/responses/UnexpectedError'
841 default:
842 $ref: '#/components/responses/UnexpectedError'
843 patch:
844 tags:
845 - "VNF packages"
delacruzramfb52ade2019-10-07 16:46:59 +0200846 summary: Modify an individual VNF package resource
847 description: Modify an individual VNF package resource
garciadeblas63fe88c2018-02-28 19:32:41 +0100848 operationId: updateVnfPkg
garciadeblas63fe88c2018-02-28 19:32:41 +0100849 requestBody:
850 $ref: '#/components/requestBodies/VnfPkgInfoModifications'
851 responses:
delacruzramfb52ade2019-10-07 16:46:59 +0200852 '204':
853 description: No Content
garciadeblas63fe88c2018-02-28 19:32:41 +0100854 '400':
855 $ref: '#/components/responses/BadRequest'
856 '401':
857 $ref: '#/components/responses/Unauthorized'
858 '403':
859 $ref: '#/components/responses/Forbidden'
860 '404':
861 $ref: '#/components/responses/NotFound'
862 '405':
863 $ref: '#/components/responses/MethodNotAllowed'
864 '406':
865 $ref: '#/components/responses/NotAcceptable'
866 '409':
867 $ref: '#/components/responses/Conflict'
868 '422':
869 $ref: '#/components/responses/UnprocessableEntity'
870 '500':
871 $ref: '#/components/responses/InternalServerError'
872 '503':
873 $ref: '#/components/responses/ServiceUnavailable'
874 '5XX':
875 $ref: '#/components/responses/UnexpectedError'
876 default:
877 $ref: '#/components/responses/UnexpectedError'
878 '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/vnfd':
delacruzramfb52ade2019-10-07 16:46:59 +0200879 parameters:
880 - name: vnfPkgId
881 in: path
882 required: true
883 description: VNF Package ID
884 schema:
885 type : string
garciadeblas63fe88c2018-02-28 19:32:41 +0100886 get:
887 tags:
888 - "VNF packages"
889 summary: Read VNFD of an on-boarded VNF package
890 description: Read VNFD of an on-boarded VNF package
delacruzramfb52ade2019-10-07 16:46:59 +0200891 operationId: getVnfPkgVnfd
garciadeblas63fe88c2018-02-28 19:32:41 +0100892 responses:
893 '200':
894 description: OK
895 content:
896 text/plain:
897 schema:
898 $ref: '#/components/schemas/VnfDescriptor'
899 '400':
900 $ref: '#/components/responses/BadRequest'
901 '401':
902 $ref: '#/components/responses/Unauthorized'
903 '403':
904 $ref: '#/components/responses/Forbidden'
905 '404':
906 $ref: '#/components/responses/NotFound'
907 '405':
908 $ref: '#/components/responses/MethodNotAllowed'
909 '406':
910 $ref: '#/components/responses/NotAcceptable'
911 '409':
912 $ref: '#/components/responses/Conflict'
913 '422':
914 $ref: '#/components/responses/UnprocessableEntity'
915 '500':
916 $ref: '#/components/responses/InternalServerError'
917 '503':
918 $ref: '#/components/responses/ServiceUnavailable'
919 '5XX':
920 $ref: '#/components/responses/UnexpectedError'
921 default:
922 $ref: '#/components/responses/UnexpectedError'
923 '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content':
delacruzramfb52ade2019-10-07 16:46:59 +0200924 parameters:
925 - name: vnfPkgId
926 in: path
927 required: true
928 description: VNF Package ID
929 schema:
930 type : string
garciadeblas63fe88c2018-02-28 19:32:41 +0100931 get:
932 tags:
933 - "VNF packages"
934 summary: Fetch an on-boarded VNF package
935 description: Fetch an on-boarded VNF package
936 operationId: getVnfPkgContent
garciadeblas63fe88c2018-02-28 19:32:41 +0100937 responses:
938 '200':
939 description: OK
940 content:
941 application/zip:
942 schema:
943 $ref: '#/components/schemas/VnfPackage'
944 '206':
945 description: Partial Content
946 headers:
947 Content-Range:
948 schema:
949 type: string
950 content:
951 application/zip:
952 schema:
953 $ref: '#/components/schemas/VnfPackage'
954 '400':
955 $ref: '#/components/responses/BadRequest'
956 '401':
957 $ref: '#/components/responses/Unauthorized'
958 '403':
959 $ref: '#/components/responses/Forbidden'
960 '404':
961 $ref: '#/components/responses/NotFound'
962 '405':
963 $ref: '#/components/responses/MethodNotAllowed'
964 '406':
965 $ref: '#/components/responses/NotAcceptable'
966 '409':
967 $ref: '#/components/responses/Conflict'
968 '422':
969 $ref: '#/components/responses/UnprocessableEntity'
970 '500':
971 $ref: '#/components/responses/InternalServerError'
972 '503':
973 $ref: '#/components/responses/ServiceUnavailable'
974 '5XX':
975 $ref: '#/components/responses/UnexpectedError'
976 default:
977 $ref: '#/components/responses/UnexpectedError'
978 put:
979 tags:
980 - "VNF packages"
981 summary: Upload a VNF package by providing the content of the VNF package
982 description: Upload a VNF package by providing the content of the VNF package
983 operationId: uploadVnfPkgContent
garciadeblas63fe88c2018-02-28 19:32:41 +0100984 requestBody:
delacruzramfb52ade2019-10-07 16:46:59 +0200985 content:
986 application/zip:
987 schema:
988 $ref: '#/components/schemas/VnfPackage'
garciadeblas63fe88c2018-02-28 19:32:41 +0100989 responses:
990 '202':
991 description: Accepted
delacruzramfb52ade2019-10-07 16:46:59 +0200992 '204':
993 description: No Content
garciadeblas63fe88c2018-02-28 19:32:41 +0100994 '400':
995 $ref: '#/components/responses/BadRequest'
996 '401':
997 $ref: '#/components/responses/Unauthorized'
998 '403':
999 $ref: '#/components/responses/Forbidden'
1000 '404':
1001 $ref: '#/components/responses/NotFound'
1002 '405':
1003 $ref: '#/components/responses/MethodNotAllowed'
1004 '406':
1005 $ref: '#/components/responses/NotAcceptable'
1006 '409':
1007 $ref: '#/components/responses/Conflict'
1008 '422':
1009 $ref: '#/components/responses/UnprocessableEntity'
1010 '500':
1011 $ref: '#/components/responses/InternalServerError'
1012 '503':
1013 $ref: '#/components/responses/ServiceUnavailable'
1014 '5XX':
1015 $ref: '#/components/responses/UnexpectedError'
1016 default:
1017 $ref: '#/components/responses/UnexpectedError'
1018 '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}':
delacruzramfb52ade2019-10-07 16:46:59 +02001019 parameters:
1020 - name: vnfPkgId
1021 in: path
1022 required: true
1023 description: VNF Package ID
1024 schema:
1025 type : string
1026 - name: artifactPath
1027 in: path
1028 required: true
1029 description: Artifact Path
1030 schema:
1031 type : string
garciadeblas63fe88c2018-02-28 19:32:41 +01001032 get:
1033 tags:
1034 - "VNF packages"
1035 summary: Fetch individual VNF package artifact
1036 description: Fetch individual VNF package artifact
1037 operationId: getVnfPkgArtifact
garciadeblas63fe88c2018-02-28 19:32:41 +01001038 responses:
1039 '200':
1040 description: OK
1041 content:
1042 application/octet-stream:
1043 schema:
1044 type: string
1045 format: binary
1046 '206':
1047 description: Partial Content
1048 headers:
1049 Content-Range:
1050 schema:
1051 type: string
1052 content:
1053 application/octet-stream:
1054 schema:
1055 type: string
1056 format: binary
1057 '400':
1058 $ref: '#/components/responses/BadRequest'
1059 '401':
1060 $ref: '#/components/responses/Unauthorized'
1061 '403':
1062 $ref: '#/components/responses/Forbidden'
1063 '404':
1064 $ref: '#/components/responses/NotFound'
1065 '405':
1066 $ref: '#/components/responses/MethodNotAllowed'
1067 '406':
1068 $ref: '#/components/responses/NotAcceptable'
1069 '409':
1070 $ref: '#/components/responses/Conflict'
1071 '422':
1072 $ref: '#/components/responses/UnprocessableEntity'
1073 '500':
1074 $ref: '#/components/responses/InternalServerError'
1075 '503':
1076 $ref: '#/components/responses/ServiceUnavailable'
1077 '5XX':
1078 $ref: '#/components/responses/UnexpectedError'
1079 default:
1080 $ref: '#/components/responses/UnexpectedError'
delacruzramfb52ade2019-10-07 16:46:59 +02001081 '/vnfpkgm/v1/vnf_packages_content':
1082 post:
1083 tags:
1084 - "VNF packages"
1085 summary: Upload a VNF package by providing the content of the VNF package
1086 description: Upload a VNF package by providing the content of the VNF package
1087 operationId: uploadVnfPkgsContent
1088 requestBody:
1089 content:
1090 application/zip:
1091 schema:
1092 $ref: '#/components/schemas/VnfPackage'
1093 responses:
1094 '201':
1095 description: Created
1096 headers:
1097 Location:
1098 schema:
1099 type: string
1100 format: uri
1101 content:
1102 application/json:
1103 schema:
1104 $ref: '#/components/schemas/ObjectId'
1105 application/yaml:
1106 schema:
1107 $ref: '#/components/schemas/ObjectId'
1108 '202':
1109 description: Accepted
1110 '204':
1111 description: No Content
1112 '400':
1113 $ref: '#/components/responses/BadRequest'
1114 '401':
1115 $ref: '#/components/responses/Unauthorized'
1116 '403':
1117 $ref: '#/components/responses/Forbidden'
1118 '404':
1119 $ref: '#/components/responses/NotFound'
1120 '405':
1121 $ref: '#/components/responses/MethodNotAllowed'
1122 '406':
1123 $ref: '#/components/responses/NotAcceptable'
1124 '409':
1125 $ref: '#/components/responses/Conflict'
1126 '422':
1127 $ref: '#/components/responses/UnprocessableEntity'
1128 '500':
1129 $ref: '#/components/responses/InternalServerError'
1130 '503':
1131 $ref: '#/components/responses/ServiceUnavailable'
1132 '5XX':
1133 $ref: '#/components/responses/UnexpectedError'
1134 default:
1135 $ref: '#/components/responses/UnexpectedError'
1136 get:
1137 tags:
1138 - "VNF packages"
1139 summary: Query information about multiple VNF package resources
1140 description: Query information about multiple VNF package resources
1141 operationId: getVnfPkgsContent
1142 responses:
1143 '200':
1144 description: OK
1145 content:
1146 application/json:
1147 schema:
1148 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
1149 application/yaml:
1150 schema:
1151 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
1152 '206':
1153 description: Partial Content
1154 headers:
1155 Content-Range:
1156 schema:
1157 type: string
1158 content:
1159 application/octet-stream:
1160 schema:
1161 type: string
1162 format: binary
1163 '400':
1164 $ref: '#/components/responses/BadRequest'
1165 '401':
1166 $ref: '#/components/responses/Unauthorized'
1167 '403':
1168 $ref: '#/components/responses/Forbidden'
1169 '404':
1170 $ref: '#/components/responses/NotFound'
1171 '405':
1172 $ref: '#/components/responses/MethodNotAllowed'
1173 '406':
1174 $ref: '#/components/responses/NotAcceptable'
1175 '409':
1176 $ref: '#/components/responses/Conflict'
1177 '422':
1178 $ref: '#/components/responses/UnprocessableEntity'
1179 '500':
1180 $ref: '#/components/responses/InternalServerError'
1181 '503':
1182 $ref: '#/components/responses/ServiceUnavailable'
1183 '5XX':
1184 $ref: '#/components/responses/UnexpectedError'
1185 default:
1186 $ref: '#/components/responses/UnexpectedError'
1187 '/vnfpkgm/v1/vnf_packages_content/{packageContentId}':
1188 parameters:
1189 - name: packageContentId
1190 in: path
1191 required: true
1192 description: VNF Package Content ID
1193 schema:
1194 type : string
1195 get:
1196 tags:
1197 - "VNF packages"
1198 summary: Read information about an individual VNF package resource
1199 description: Read information about an individual VNF package resource
1200 operationId: getVnfPkgsIdContent
1201 responses:
1202 '200':
1203 description: OK
1204 content:
1205 application/json:
1206 schema:
1207 $ref: '#/components/schemas/VnfPkgInfo'
1208 application/yaml:
1209 schema:
1210 $ref: '#/components/schemas/VnfPkgInfo'
1211 '400':
1212 $ref: '#/components/responses/BadRequest'
1213 '401':
1214 $ref: '#/components/responses/Unauthorized'
1215 '403':
1216 $ref: '#/components/responses/Forbidden'
1217 '404':
1218 $ref: '#/components/responses/NotFound'
1219 '405':
1220 $ref: '#/components/responses/MethodNotAllowed'
1221 '406':
1222 $ref: '#/components/responses/NotAcceptable'
1223 '409':
1224 $ref: '#/components/responses/Conflict'
1225 '422':
1226 $ref: '#/components/responses/UnprocessableEntity'
1227 '500':
1228 $ref: '#/components/responses/InternalServerError'
1229 '503':
1230 $ref: '#/components/responses/ServiceUnavailable'
1231 '5XX':
1232 $ref: '#/components/responses/UnexpectedError'
1233 default:
1234 $ref: '#/components/responses/UnexpectedError'
1235 put:
1236 tags:
1237 - "VNF packages"
1238 summary: Modify an individual VNF package resource
1239 description: Modify an individual VNF package resource
1240 operationId: updateVnfPkgsIdContent
1241 requestBody:
1242 $ref: '#/components/requestBodies/VnfPkgInfoModifications'
1243 responses:
1244 '204':
1245 description: No Content
1246 '400':
1247 $ref: '#/components/responses/BadRequest'
1248 '401':
1249 $ref: '#/components/responses/Unauthorized'
1250 '403':
1251 $ref: '#/components/responses/Forbidden'
1252 '404':
1253 $ref: '#/components/responses/NotFound'
1254 '405':
1255 $ref: '#/components/responses/MethodNotAllowed'
1256 '406':
1257 $ref: '#/components/responses/NotAcceptable'
1258 '409':
1259 $ref: '#/components/responses/Conflict'
1260 '422':
1261 $ref: '#/components/responses/UnprocessableEntity'
1262 '500':
1263 $ref: '#/components/responses/InternalServerError'
1264 '503':
1265 $ref: '#/components/responses/ServiceUnavailable'
1266 '5XX':
1267 $ref: '#/components/responses/UnexpectedError'
1268 default:
1269 $ref: '#/components/responses/UnexpectedError'
1270 delete:
1271 tags:
1272 - "VNF packages"
1273 summary: Delete an individual VNF package resource
1274 description: Delete an individual VNF package resource
1275 operationId: deleteVnfPkgsIdContent
1276 responses:
1277 '204':
1278 description: No Content
1279 '400':
1280 $ref: '#/components/responses/BadRequest'
1281 '401':
1282 $ref: '#/components/responses/Unauthorized'
1283 '403':
1284 $ref: '#/components/responses/Forbidden'
1285 '404':
1286 $ref: '#/components/responses/NotFound'
1287 '405':
1288 $ref: '#/components/responses/MethodNotAllowed'
1289 '406':
1290 $ref: '#/components/responses/NotAcceptable'
1291 '409':
1292 $ref: '#/components/responses/Conflict'
1293 '422':
1294 $ref: '#/components/responses/UnprocessableEntity'
1295 '500':
1296 $ref: '#/components/responses/InternalServerError'
1297 '503':
1298 $ref: '#/components/responses/ServiceUnavailable'
1299 '5XX':
1300 $ref: '#/components/responses/UnexpectedError'
1301 default:
1302 $ref: '#/components/responses/UnexpectedError'
1303# END VNF Packages
1304
1305# BEGIN NS Instances
garciadeblas12fcc4b2018-03-02 16:12:02 +01001306 '/nslcm/v1/ns_instances':
1307 get:
1308 tags:
1309 - "NS instances"
1310 summary: Query information about multiple NS instances
1311 description: Query information about multiple NS isntances
1312 operationId: getNSinstances
garciadeblas12fcc4b2018-03-02 16:12:02 +01001313 responses:
1314 '200':
1315 description: OK
1316 content:
1317 application/json:
1318 schema:
1319 $ref: '#/components/schemas/ArrayOfNsInstance'
1320 application/yaml:
1321 schema:
1322 $ref: '#/components/schemas/ArrayOfNsInstance'
1323 '400':
1324 $ref: '#/components/responses/BadRequest'
1325 '401':
1326 $ref: '#/components/responses/Unauthorized'
1327 '403':
1328 $ref: '#/components/responses/Forbidden'
1329 '404':
1330 $ref: '#/components/responses/NotFound'
1331 '405':
1332 $ref: '#/components/responses/MethodNotAllowed'
1333 '406':
1334 $ref: '#/components/responses/NotAcceptable'
1335 '409':
1336 $ref: '#/components/responses/Conflict'
1337 '422':
1338 $ref: '#/components/responses/UnprocessableEntity'
1339 '500':
1340 $ref: '#/components/responses/InternalServerError'
1341 '503':
1342 $ref: '#/components/responses/ServiceUnavailable'
1343 '5XX':
1344 $ref: '#/components/responses/UnexpectedError'
1345 default:
1346 $ref: '#/components/responses/UnexpectedError'
1347 post:
1348 tags:
1349 - "NS instances"
1350 summary: Create a new NS instance resource
1351 description: Create a new NS instance resource
1352 operationId: addNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001353 requestBody:
1354 $ref: '#/components/requestBodies/CreateNsRequest'
1355 responses:
1356 '201':
1357 description: Created
1358 headers:
1359 Location:
1360 schema:
1361 type: string
1362 format: uri
1363 content:
1364 application/json:
1365 schema:
delacruzramfb52ade2019-10-07 16:46:59 +02001366 $ref: '#/components/schemas/ObjectId'
garciadeblas12fcc4b2018-03-02 16:12:02 +01001367 application/yaml:
1368 schema:
delacruzramfb52ade2019-10-07 16:46:59 +02001369 $ref: '#/components/schemas/ObjectId'
garciadeblas12fcc4b2018-03-02 16:12:02 +01001370 '400':
1371 $ref: '#/components/responses/BadRequest'
1372 '401':
1373 $ref: '#/components/responses/Unauthorized'
1374 '403':
1375 $ref: '#/components/responses/Forbidden'
1376 '404':
1377 $ref: '#/components/responses/NotFound'
1378 '405':
1379 $ref: '#/components/responses/MethodNotAllowed'
1380 '406':
1381 $ref: '#/components/responses/NotAcceptable'
1382 '409':
1383 $ref: '#/components/responses/Conflict'
1384 '422':
1385 $ref: '#/components/responses/UnprocessableEntity'
1386 '500':
1387 $ref: '#/components/responses/InternalServerError'
1388 '503':
1389 $ref: '#/components/responses/ServiceUnavailable'
1390 '5XX':
1391 $ref: '#/components/responses/UnexpectedError'
1392 default:
1393 $ref: '#/components/responses/UnexpectedError'
1394 '/nslcm/v1/ns_instances/{nsInstanceId}':
delacruzramfb52ade2019-10-07 16:46:59 +02001395 parameters:
1396 - name: nsInstanceId
1397 in: path
1398 required: true
1399 description: NS Instance ID
1400 schema:
1401 type : string
garciadeblas12fcc4b2018-03-02 16:12:02 +01001402 get:
1403 tags:
1404 - "NS instances"
1405 summary: Read an individual NS instance resource
1406 description: Read an individual NS instance resource
1407 operationId: getNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001408 responses:
1409 '200':
1410 description: OK
1411 content:
1412 application/json:
1413 schema:
1414 $ref: '#/components/schemas/NsInstance'
1415 application/yaml:
1416 schema:
1417 $ref: '#/components/schemas/NsInstance'
1418 '400':
1419 $ref: '#/components/responses/BadRequest'
1420 '401':
1421 $ref: '#/components/responses/Unauthorized'
1422 '403':
1423 $ref: '#/components/responses/Forbidden'
1424 '404':
1425 $ref: '#/components/responses/NotFound'
1426 '405':
1427 $ref: '#/components/responses/MethodNotAllowed'
1428 '406':
1429 $ref: '#/components/responses/NotAcceptable'
1430 '409':
1431 $ref: '#/components/responses/Conflict'
1432 '422':
1433 $ref: '#/components/responses/UnprocessableEntity'
1434 '500':
1435 $ref: '#/components/responses/InternalServerError'
1436 '503':
1437 $ref: '#/components/responses/ServiceUnavailable'
1438 '5XX':
1439 $ref: '#/components/responses/UnexpectedError'
1440 default:
1441 $ref: '#/components/responses/UnexpectedError'
1442 delete:
1443 tags:
1444 - "NS instances"
1445 summary: Delete an individual NS instance resource
1446 description: Delete an individual NS instance resource
1447 operationId: deleteNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001448 responses:
1449 '204':
1450 description: No Content
1451 '400':
1452 $ref: '#/components/responses/BadRequest'
1453 '401':
1454 $ref: '#/components/responses/Unauthorized'
1455 '403':
1456 $ref: '#/components/responses/Forbidden'
1457 '404':
1458 $ref: '#/components/responses/NotFound'
1459 '405':
1460 $ref: '#/components/responses/MethodNotAllowed'
1461 '406':
1462 $ref: '#/components/responses/NotAcceptable'
1463 '409':
1464 $ref: '#/components/responses/Conflict'
1465 '422':
1466 $ref: '#/components/responses/UnprocessableEntity'
1467 '500':
1468 $ref: '#/components/responses/InternalServerError'
1469 '503':
1470 $ref: '#/components/responses/ServiceUnavailable'
1471 '5XX':
1472 $ref: '#/components/responses/UnexpectedError'
1473 default:
1474 $ref: '#/components/responses/UnexpectedError'
1475 '/nslcm/v1/ns_instances/{nsInstanceId}/instantiate':
delacruzramfb52ade2019-10-07 16:46:59 +02001476 parameters:
1477 - name: nsInstanceId
1478 in: path
1479 required: true
1480 description: NS Instance ID
1481 schema:
1482 type : string
garciadeblas12fcc4b2018-03-02 16:12:02 +01001483 post:
1484 tags:
1485 - "NS instances"
1486 summary: Instantiate a NS
1487 description: |
1488 Instantiate a NS. The precondition is that the NS instance must have
1489 been created and must be in NOT_INSTANTIATED state. As a result of the
1490 success of this operation, the NFVO creates a "NS Lifecycle Operation
1491 Occurrence" resource for the request, and the NS instance state becomes
1492 INSTANTIATED.
1493 operationId: instantiateNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001494 requestBody:
1495 $ref: '#/components/requestBodies/InstantiateNsRequest'
1496 responses:
1497 '202':
1498 description: Accepted
1499 headers:
1500 Location:
1501 description: |
1502 It must point to the new "NS Lifecycle Operation Occurrence"
1503 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1504 schema:
1505 type: string
1506 format: uri
delacruzramfb52ade2019-10-07 16:46:59 +02001507 content:
1508 application/json:
1509 schema:
1510 $ref: '#/components/schemas/ObjectId'
1511 application/yaml:
1512 schema:
1513 $ref: '#/components/schemas/ObjectId'
garciadeblas12fcc4b2018-03-02 16:12:02 +01001514 '400':
1515 $ref: '#/components/responses/BadRequest'
1516 '401':
1517 $ref: '#/components/responses/Unauthorized'
1518 '403':
1519 $ref: '#/components/responses/Forbidden'
1520 '404':
1521 $ref: '#/components/responses/NotFound'
1522 '405':
1523 $ref: '#/components/responses/MethodNotAllowed'
1524 '406':
1525 $ref: '#/components/responses/NotAcceptable'
1526 '409':
1527 $ref: '#/components/responses/Conflict'
1528 '422':
1529 $ref: '#/components/responses/UnprocessableEntity'
1530 '500':
1531 $ref: '#/components/responses/InternalServerError'
1532 '503':
1533 $ref: '#/components/responses/ServiceUnavailable'
1534 '5XX':
1535 $ref: '#/components/responses/UnexpectedError'
1536 default:
1537 $ref: '#/components/responses/UnexpectedError'
1538 '/nslcm/v1/ns_instances/{nsInstanceId}/scale':
delacruzramfb52ade2019-10-07 16:46:59 +02001539 parameters:
1540 - name: nsInstanceId
1541 in: path
1542 required: true
1543 description: NS Instance ID
1544 schema:
1545 type : string
garciadeblas12fcc4b2018-03-02 16:12:02 +01001546 post:
1547 tags:
1548 - "NS instances"
1549 summary: Scale a NS instance
1550 description: |
1551 Scale a NS instance. The precondition is that the NS instance must have
1552 been created and must be in INSTANTIATED state. As a result of the
1553 success of this operation, the NFVO creates a "NS Lifecycle Operation
1554 Occurrence" resource for the request, and the NS instance state remains
1555 INSTANTIATED.
1556 operationId: scaleNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001557 requestBody:
1558 $ref: '#/components/requestBodies/ScaleNsRequest'
1559 responses:
1560 '202':
1561 description: Accepted
1562 headers:
1563 Location:
1564 description: |
1565 It must point to the new "NS Lifecycle Operation Occurrence"
1566 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1567 schema:
1568 type: string
1569 format: uri
1570 '400':
1571 $ref: '#/components/responses/BadRequest'
1572 '401':
1573 $ref: '#/components/responses/Unauthorized'
1574 '403':
1575 $ref: '#/components/responses/Forbidden'
1576 '404':
1577 $ref: '#/components/responses/NotFound'
1578 '405':
1579 $ref: '#/components/responses/MethodNotAllowed'
1580 '406':
1581 $ref: '#/components/responses/NotAcceptable'
1582 '409':
1583 $ref: '#/components/responses/Conflict'
1584 '422':
1585 $ref: '#/components/responses/UnprocessableEntity'
1586 '500':
1587 $ref: '#/components/responses/InternalServerError'
1588 '503':
1589 $ref: '#/components/responses/ServiceUnavailable'
1590 '5XX':
1591 $ref: '#/components/responses/UnexpectedError'
1592 default:
1593 $ref: '#/components/responses/UnexpectedError'
garciadeblas12fcc4b2018-03-02 16:12:02 +01001594 '/nslcm/v1/ns_instances/{nsInstanceId}/terminate':
delacruzramfb52ade2019-10-07 16:46:59 +02001595 parameters:
1596 - name: nsInstanceId
1597 in: path
1598 required: true
1599 description: NS Instance ID
1600 schema:
1601 type : string
garciadeblas12fcc4b2018-03-02 16:12:02 +01001602 post:
1603 tags:
1604 - "NS instances"
1605 summary: Terminate a NS instance
1606 description: |
1607 Terminate a NS instance. The precondition is that the NS instance must have
1608 been created and must be in INSTANTIATED state. As a result of the
1609 success of this operation, the NFVO creates a "NS Lifecycle Operation
1610 Occurrence" resource for the request, and the NS instance state becomes
1611 NOT_INSTANTIATED.
1612 operationId: terminateNSinstance
garciadeblas12fcc4b2018-03-02 16:12:02 +01001613 requestBody:
delacruzramfb52ade2019-10-07 16:46:59 +02001614 # Request data is not required
garciadeblas12fcc4b2018-03-02 16:12:02 +01001615 $ref: '#/components/requestBodies/TerminateNsRequest'
1616 responses:
1617 '202':
1618 description: Accepted
1619 headers:
1620 Location:
1621 description: |
1622 It must point to the new "NS Lifecycle Operation Occurrence"
1623 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1624 schema:
1625 type: string
1626 format: uri
delacruzramfb52ade2019-10-07 16:46:59 +02001627 content:
1628 application/json:
1629 schema:
1630 $ref: '#/components/schemas/ObjectId'
1631 application/yaml:
1632 schema:
1633 $ref: '#/components/schemas/ObjectId'
garciadeblas12fcc4b2018-03-02 16:12:02 +01001634 '400':
1635 $ref: '#/components/responses/BadRequest'
1636 '401':
1637 $ref: '#/components/responses/Unauthorized'
1638 '403':
1639 $ref: '#/components/responses/Forbidden'
1640 '404':
1641 $ref: '#/components/responses/NotFound'
1642 '405':
1643 $ref: '#/components/responses/MethodNotAllowed'
1644 '406':
1645 $ref: '#/components/responses/NotAcceptable'
1646 '409':
1647 $ref: '#/components/responses/Conflict'
1648 '422':
1649 $ref: '#/components/responses/UnprocessableEntity'
1650 '500':
1651 $ref: '#/components/responses/InternalServerError'
1652 '503':
1653 $ref: '#/components/responses/ServiceUnavailable'
1654 '5XX':
1655 $ref: '#/components/responses/UnexpectedError'
1656 default:
1657 $ref: '#/components/responses/UnexpectedError'
delacruzramfb52ade2019-10-07 16:46:59 +02001658 '/nslcm/v1/ns_instances/{nsInstanceId}/action':
1659 parameters:
1660 - name: nsInstanceId
1661 in: path
1662 required: true
1663 description: NS Instance ID
1664 schema:
1665 type : string
1666 post:
1667 tags:
1668 - "NS instances"
1669 summary: Execute an action on a NS instance
1670 description: |
1671 Execute an action on a NS instance.
1672 The NS instance must have been created and must be in INSTANTIATED state.
1673 operationId: actionOnNSinstance
1674 requestBody:
1675 content:
1676 application/json:
1677 schema:
1678 $ref: '#/components/schemas/NSinstanceActionRequest'
1679 application/yaml:
1680 schema:
1681 $ref: '#/components/schemas/NSinstanceActionRequest'
1682 responses:
1683 '202':
1684 description: Accepted
1685 headers:
1686 Location:
1687 description: |
1688 It must point to the new "NS Lifecycle Operation Occurrence"
1689 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1690 schema:
1691 type: string
1692 format: uri
1693 content:
1694 application/json:
1695 schema:
1696 $ref: '#/components/schemas/ObjectId'
1697 application/yaml:
1698 schema:
1699 $ref: '#/components/schemas/ObjectId'
1700 '400':
1701 $ref: '#/components/responses/BadRequest'
1702 '401':
1703 $ref: '#/components/responses/Unauthorized'
1704 '403':
1705 $ref: '#/components/responses/Forbidden'
1706 '404':
1707 $ref: '#/components/responses/NotFound'
1708 '405':
1709 $ref: '#/components/responses/MethodNotAllowed'
1710 '406':
1711 $ref: '#/components/responses/NotAcceptable'
1712 '409':
1713 $ref: '#/components/responses/Conflict'
1714 '422':
1715 $ref: '#/components/responses/UnprocessableEntity'
1716 '500':
1717 $ref: '#/components/responses/InternalServerError'
1718 '503':
1719 $ref: '#/components/responses/ServiceUnavailable'
1720 '5XX':
1721 $ref: '#/components/responses/UnexpectedError'
1722 default:
1723 $ref: '#/components/responses/UnexpectedError'
1724 '/nslcm/v1/ns_instances_content':
1725 get:
1726 tags:
1727 - "NS instances"
1728 summary: Query information about multiple NS instances
1729 description: Query information about multiple NS isntances
1730 operationId: getNSinstancesContent
1731 responses:
1732 '200':
1733 description: OK
1734 content:
1735 application/json:
1736 schema:
1737 $ref: '#/components/schemas/ArrayOfNsInstance'
1738 application/yaml:
1739 schema:
1740 $ref: '#/components/schemas/ArrayOfNsInstance'
1741 '400':
1742 $ref: '#/components/responses/BadRequest'
1743 '401':
1744 $ref: '#/components/responses/Unauthorized'
1745 '403':
1746 $ref: '#/components/responses/Forbidden'
1747 '404':
1748 $ref: '#/components/responses/NotFound'
1749 '405':
1750 $ref: '#/components/responses/MethodNotAllowed'
1751 '406':
1752 $ref: '#/components/responses/NotAcceptable'
1753 '409':
1754 $ref: '#/components/responses/Conflict'
1755 '422':
1756 $ref: '#/components/responses/UnprocessableEntity'
1757 '500':
1758 $ref: '#/components/responses/InternalServerError'
1759 '503':
1760 $ref: '#/components/responses/ServiceUnavailable'
1761 '5XX':
1762 $ref: '#/components/responses/UnexpectedError'
1763 default:
1764 $ref: '#/components/responses/UnexpectedError'
1765 post:
1766 tags:
1767 - "NS instances"
1768 summary: Create a new NS instance
1769 description: Create a new NS instance
1770 operationId: createNSinstanceContent
1771 requestBody:
1772 $ref: '#/components/requestBodies/CreateNSinstanceContentRequest'
1773 responses:
1774 '201':
1775 description: Created
1776 headers:
1777 Location:
1778 schema:
1779 type: string
1780 format: uri
1781 content:
1782 application/json:
1783 schema:
1784 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1785 application/yaml:
1786 schema:
1787 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1788 '400':
1789 $ref: '#/components/responses/BadRequest'
1790 '401':
1791 $ref: '#/components/responses/Unauthorized'
1792 '403':
1793 $ref: '#/components/responses/Forbidden'
1794 '404':
1795 $ref: '#/components/responses/NotFound'
1796 '405':
1797 $ref: '#/components/responses/MethodNotAllowed'
1798 '406':
1799 $ref: '#/components/responses/NotAcceptable'
1800 '409':
1801 $ref: '#/components/responses/Conflict'
1802 '422':
1803 $ref: '#/components/responses/UnprocessableEntity'
1804 '500':
1805 $ref: '#/components/responses/InternalServerError'
1806 '503':
1807 $ref: '#/components/responses/ServiceUnavailable'
1808 '5XX':
1809 $ref: '#/components/responses/UnexpectedError'
1810 default:
1811 $ref: '#/components/responses/UnexpectedError'
1812 '/nslcm/v1/ns_instances_content/{nsInstanceContentId}':
1813 parameters:
1814 - name: nsInstanceContentId
1815 in: path
1816 required: true
1817 description: NS Instance Content ID
1818 schema:
1819 type : string
1820 get:
1821 tags:
1822 - "NS instances"
1823 summary: Read an individual NS instance resource
1824 description: Read an individual NS instance resource
1825 operationId: getNSinstanceContent
1826 responses:
1827 '200':
1828 description: OK
1829 content:
1830 application/json:
1831 schema:
1832 $ref: '#/components/schemas/NsInstance'
1833 application/yaml:
1834 schema:
1835 $ref: '#/components/schemas/NsInstance'
1836 '400':
1837 $ref: '#/components/responses/BadRequest'
1838 '401':
1839 $ref: '#/components/responses/Unauthorized'
1840 '403':
1841 $ref: '#/components/responses/Forbidden'
1842 '404':
1843 $ref: '#/components/responses/NotFound'
1844 '405':
1845 $ref: '#/components/responses/MethodNotAllowed'
1846 '406':
1847 $ref: '#/components/responses/NotAcceptable'
1848 '409':
1849 $ref: '#/components/responses/Conflict'
1850 '422':
1851 $ref: '#/components/responses/UnprocessableEntity'
1852 '500':
1853 $ref: '#/components/responses/InternalServerError'
1854 '503':
1855 $ref: '#/components/responses/ServiceUnavailable'
1856 '5XX':
1857 $ref: '#/components/responses/UnexpectedError'
1858 default:
1859 $ref: '#/components/responses/UnexpectedError'
1860 delete:
1861 tags:
1862 - "NS instances"
1863 summary: Delete an individual NS instance resource
1864 description: Delete an individual NS instance resource
1865 operationId: deleteNSinstanceContent
1866 responses:
1867 '202':
1868 description: Accepted
1869 content:
1870 application/json:
1871 schema:
1872 $ref: '#/components/schemas/ObjectId'
1873 application/yaml:
1874 schema:
1875 $ref: '#/components/schemas/ObjectId'
1876 '204':
1877 description: No Content
1878 '400':
1879 $ref: '#/components/responses/BadRequest'
1880 '401':
1881 $ref: '#/components/responses/Unauthorized'
1882 '403':
1883 $ref: '#/components/responses/Forbidden'
1884 '404':
1885 $ref: '#/components/responses/NotFound'
1886 '405':
1887 $ref: '#/components/responses/MethodNotAllowed'
1888 '406':
1889 $ref: '#/components/responses/NotAcceptable'
1890 '409':
1891 $ref: '#/components/responses/Conflict'
1892 '422':
1893 $ref: '#/components/responses/UnprocessableEntity'
1894 '500':
1895 $ref: '#/components/responses/InternalServerError'
1896 '503':
1897 $ref: '#/components/responses/ServiceUnavailable'
1898 '5XX':
1899 $ref: '#/components/responses/UnexpectedError'
1900 default:
1901 $ref: '#/components/responses/UnexpectedError'
1902 '/nslcm/v1/ns_lcm_op_occs':
1903 get:
1904 tags:
1905 - "NS instances"
1906 summary: Query information about multiple NS LCM Operation Occurrences
1907 description: Query information about multiple NS LCM Operation Occurrences
1908 operationId: getNSLCMOpOccs
1909 responses:
1910 '200':
1911 description: OK
1912 content:
1913 application/json:
1914 schema:
1915 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
1916 application/yaml:
1917 schema:
1918 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
1919 '400':
1920 $ref: '#/components/responses/BadRequest'
1921 '401':
1922 $ref: '#/components/responses/Unauthorized'
1923 '403':
1924 $ref: '#/components/responses/Forbidden'
1925 '404':
1926 $ref: '#/components/responses/NotFound'
1927 '405':
1928 $ref: '#/components/responses/MethodNotAllowed'
1929 '406':
1930 $ref: '#/components/responses/NotAcceptable'
1931 '409':
1932 $ref: '#/components/responses/Conflict'
1933 '422':
1934 $ref: '#/components/responses/UnprocessableEntity'
1935 '500':
1936 $ref: '#/components/responses/InternalServerError'
1937 '503':
1938 $ref: '#/components/responses/ServiceUnavailable'
1939 '5XX':
1940 $ref: '#/components/responses/UnexpectedError'
1941 default:
1942 $ref: '#/components/responses/UnexpectedError'
1943 '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}':
1944 parameters:
1945 - name: nsLcmOpOccId
1946 in: path
1947 required: true
1948 description: NS LCM Operation Occurrence ID
1949 schema:
1950 type : string
1951 get:
1952 tags:
1953 - "NS instances"
1954 summary: Query information about an individual NS LCM Operation Occurrence
1955 description: Query information about an individual NS LCM Operation Occurrence
1956 operationId: getNSLCMOpOcc
1957 responses:
1958 '200':
1959 description: OK
1960 content:
1961 application/json:
1962 schema:
1963 $ref: '#/components/schemas/NsLcmOpOcc'
1964 application/yaml:
1965 schema:
1966 $ref: '#/components/schemas/NsLcmOpOcc'
1967 '400':
1968 $ref: '#/components/responses/BadRequest'
1969 '401':
1970 $ref: '#/components/responses/Unauthorized'
1971 '403':
1972 $ref: '#/components/responses/Forbidden'
1973 '404':
1974 $ref: '#/components/responses/NotFound'
1975 '405':
1976 $ref: '#/components/responses/MethodNotAllowed'
1977 '406':
1978 $ref: '#/components/responses/NotAcceptable'
1979 '409':
1980 $ref: '#/components/responses/Conflict'
1981 '422':
1982 $ref: '#/components/responses/UnprocessableEntity'
1983 '500':
1984 $ref: '#/components/responses/InternalServerError'
1985 '503':
1986 $ref: '#/components/responses/ServiceUnavailable'
1987 '5XX':
1988 $ref: '#/components/responses/UnexpectedError'
1989 default:
1990 $ref: '#/components/responses/UnexpectedError'
1991 '/nslcm/v1/vnf_instances':
1992 get:
1993 tags:
1994 - "NS instances"
1995 summary: Query information about multiple VNF Instances
1996 description: Query information about multiple VNF Instances
1997 operationId: getVnfInstances
1998 responses:
1999 '200':
2000 description: OK
2001 content:
2002 application/json:
2003 schema:
2004 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2005 application/yaml:
2006 schema:
2007 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2008 '400':
2009 $ref: '#/components/responses/BadRequest'
2010 '401':
2011 $ref: '#/components/responses/Unauthorized'
2012 '403':
2013 $ref: '#/components/responses/Forbidden'
2014 '404':
2015 $ref: '#/components/responses/NotFound'
2016 '405':
2017 $ref: '#/components/responses/MethodNotAllowed'
2018 '406':
2019 $ref: '#/components/responses/NotAcceptable'
2020 '409':
2021 $ref: '#/components/responses/Conflict'
2022 '422':
2023 $ref: '#/components/responses/UnprocessableEntity'
2024 '500':
2025 $ref: '#/components/responses/InternalServerError'
2026 '503':
2027 $ref: '#/components/responses/ServiceUnavailable'
2028 '5XX':
2029 $ref: '#/components/responses/UnexpectedError'
2030 default:
2031 $ref: '#/components/responses/UnexpectedError'
2032 '/nslcm/v1/vnf_instances/{vnfInstanceId}':
2033 parameters:
2034 - name: vnfInstanceId
2035 in: path
2036 required: true
2037 description: VNF Instance ID
2038 schema:
2039 type : string
2040 get:
2041 tags:
2042 - "NS instances"
2043 summary: Query information about an individual VNF Instance
2044 description: Query information about an individual VNF Instance
2045 operationId: getVnfInstance
2046 responses:
2047 '200':
2048 description: OK
2049 content:
2050 application/json:
2051 schema:
2052 $ref: '#/components/schemas/VnfInstanceInfo'
2053 application/yaml:
2054 schema:
2055 $ref: '#/components/schemas/VnfInstanceInfo'
2056 '400':
2057 $ref: '#/components/responses/BadRequest'
2058 '401':
2059 $ref: '#/components/responses/Unauthorized'
2060 '403':
2061 $ref: '#/components/responses/Forbidden'
2062 '404':
2063 $ref: '#/components/responses/NotFound'
2064 '405':
2065 $ref: '#/components/responses/MethodNotAllowed'
2066 '406':
2067 $ref: '#/components/responses/NotAcceptable'
2068 '409':
2069 $ref: '#/components/responses/Conflict'
2070 '422':
2071 $ref: '#/components/responses/UnprocessableEntity'
2072 '500':
2073 $ref: '#/components/responses/InternalServerError'
2074 '503':
2075 $ref: '#/components/responses/ServiceUnavailable'
2076 '5XX':
2077 $ref: '#/components/responses/UnexpectedError'
2078 default:
2079 $ref: '#/components/responses/UnexpectedError'
2080# END NS Instances
2081
2082# BEGIN NetSlice Templates
2083 '/nst/v1/netslice_templates':
2084 get:
2085 tags:
2086 - "NetSlice templates"
2087 summary: Query information about multiple NetSlice template resources
2088 description: Query information about multiple NetSlice template resources
2089 operationId: getNSTs
2090 responses:
2091 '200':
2092 description: OK
2093 content:
2094 application/json:
2095 schema:
2096 $ref: '#/components/schemas/ArrayOfNstInfo'
2097 application/yaml:
2098 schema:
2099 $ref: '#/components/schemas/ArrayOfNstInfo'
2100 '400':
2101 $ref: '#/components/responses/BadRequest'
2102 '401':
2103 $ref: '#/components/responses/Unauthorized'
2104 '403':
2105 $ref: '#/components/responses/Forbidden'
2106 '404':
2107 $ref: '#/components/responses/NotFound'
2108 '405':
2109 $ref: '#/components/responses/MethodNotAllowed'
2110 '406':
2111 $ref: '#/components/responses/NotAcceptable'
2112 '409':
2113 $ref: '#/components/responses/Conflict'
2114 '422':
2115 $ref: '#/components/responses/UnprocessableEntity'
2116 '500':
2117 $ref: '#/components/responses/InternalServerError'
2118 '503':
2119 $ref: '#/components/responses/ServiceUnavailable'
2120 '5XX':
2121 $ref: '#/components/responses/UnexpectedError'
2122 default:
2123 $ref: '#/components/responses/UnexpectedError'
2124 post:
2125 tags:
2126 - "NetSlice templates"
2127 summary: Create a new NetSlice template resource
2128 description: Create a new NetSlice template resource
2129 operationId: addNST
2130 requestBody:
2131 $ref: '#/components/requestBodies/CreateNstInfoRequest'
2132 responses:
2133 '201':
2134 description: Created
2135 headers:
2136 Location:
2137 schema:
2138 type: string
2139 format: uri
2140 content:
2141 application/json:
2142 schema:
2143 $ref: '#/components/schemas/ObjectId'
2144 application/yaml:
2145 schema:
2146 $ref: '#/components/schemas/ObjectId'
2147 '400':
2148 $ref: '#/components/responses/BadRequest'
2149 '401':
2150 $ref: '#/components/responses/Unauthorized'
2151 '403':
2152 $ref: '#/components/responses/Forbidden'
2153 '404':
2154 $ref: '#/components/responses/NotFound'
2155 '405':
2156 $ref: '#/components/responses/MethodNotAllowed'
2157 '406':
2158 $ref: '#/components/responses/NotAcceptable'
2159 '409':
2160 $ref: '#/components/responses/Conflict'
2161 '422':
2162 $ref: '#/components/responses/UnprocessableEntity'
2163 '500':
2164 $ref: '#/components/responses/InternalServerError'
2165 '503':
2166 $ref: '#/components/responses/ServiceUnavailable'
2167 '5XX':
2168 $ref: '#/components/responses/UnexpectedError'
2169 default:
2170 $ref: '#/components/responses/UnexpectedError'
2171 '/nst/v1/netslice_templates/{netsliceTemplateId}':
2172 parameters:
2173 - name: netsliceTemplateId
2174 in: path
2175 required: true
2176 description: NetSlice Template ID
2177 schema:
2178 type : string
2179 get:
2180 tags:
2181 - "NetSlice templates"
2182 summary: Read information about an individual NetSlice template resource
2183 description: Read information about an individual NetSlice template resource
2184 operationId: getNST
2185 responses:
2186 '200':
2187 description: OK
2188 content:
2189 application/json:
2190 schema:
2191 $ref: '#/components/schemas/NstInfo'
2192 application/yaml:
2193 schema:
2194 $ref: '#/components/schemas/NstInfo'
2195 '400':
2196 $ref: '#/components/responses/BadRequest'
2197 '401':
2198 $ref: '#/components/responses/Unauthorized'
2199 '403':
2200 $ref: '#/components/responses/Forbidden'
2201 '404':
2202 $ref: '#/components/responses/NotFound'
2203 '405':
2204 $ref: '#/components/responses/MethodNotAllowed'
2205 '406':
2206 $ref: '#/components/responses/NotAcceptable'
2207 '409':
2208 $ref: '#/components/responses/Conflict'
2209 '422':
2210 $ref: '#/components/responses/UnprocessableEntity'
2211 '500':
2212 $ref: '#/components/responses/InternalServerError'
2213 '503':
2214 $ref: '#/components/responses/ServiceUnavailable'
2215 '5XX':
2216 $ref: '#/components/responses/UnexpectedError'
2217 default:
2218 $ref: '#/components/responses/UnexpectedError'
2219 delete:
2220 tags:
2221 - "NetSlice templates"
2222 summary: Delete an individual NetSlice template resource
2223 description: Delete an individual NetSlice template resource
2224 operationId: deleteNST
2225 responses:
2226 '204':
2227 description: No Content
2228 '400':
2229 $ref: '#/components/responses/BadRequest'
2230 '401':
2231 $ref: '#/components/responses/Unauthorized'
2232 '403':
2233 $ref: '#/components/responses/Forbidden'
2234 '404':
2235 $ref: '#/components/responses/NotFound'
2236 '405':
2237 $ref: '#/components/responses/MethodNotAllowed'
2238 '406':
2239 $ref: '#/components/responses/NotAcceptable'
2240 '409':
2241 $ref: '#/components/responses/Conflict'
2242 '422':
2243 $ref: '#/components/responses/UnprocessableEntity'
2244 '500':
2245 $ref: '#/components/responses/InternalServerError'
2246 '503':
2247 $ref: '#/components/responses/ServiceUnavailable'
2248 '5XX':
2249 $ref: '#/components/responses/UnexpectedError'
2250 default:
2251 $ref: '#/components/responses/UnexpectedError'
2252 '/nst/v1/netslice_templates/{netsliceTemplateId}/artifacts/{artifactPath}':
2253 parameters:
2254 - name: netsliceTemplateId
2255 in: path
2256 required: true
2257 description: NetSlice Template ID
2258 schema:
2259 type : string
2260 - name: artifactPath
2261 in: path
2262 required: true
2263 description: Artifact Path
2264 schema:
2265 type : string
2266 get:
2267 tags:
2268 - "NetSlice templates"
2269 summary: Fetch individual NetSlice Template artifact
2270 description: Fetch individual NetSlice Template artifact
2271 operationId: getNstArtifact
2272 responses:
2273 '200':
2274 description: OK
2275 content:
2276 application/octet-stream:
2277 schema:
2278 type: string
2279 format: binary
2280 '206':
2281 description: Partial Content
2282 headers:
2283 Content-Range:
2284 schema:
2285 type: string
2286 content:
2287 application/octet-stream:
2288 schema:
2289 type: string
2290 format: binary
2291 '400':
2292 $ref: '#/components/responses/BadRequest'
2293 '401':
2294 $ref: '#/components/responses/Unauthorized'
2295 '403':
2296 $ref: '#/components/responses/Forbidden'
2297 '404':
2298 $ref: '#/components/responses/NotFound'
2299 '405':
2300 $ref: '#/components/responses/MethodNotAllowed'
2301 '406':
2302 $ref: '#/components/responses/NotAcceptable'
2303 '409':
2304 $ref: '#/components/responses/Conflict'
2305 '422':
2306 $ref: '#/components/responses/UnprocessableEntity'
2307 '500':
2308 $ref: '#/components/responses/InternalServerError'
2309 '503':
2310 $ref: '#/components/responses/ServiceUnavailable'
2311 '5XX':
2312 $ref: '#/components/responses/UnexpectedError'
2313 default:
2314 $ref: '#/components/responses/UnexpectedError'
2315 '/nst/v1/netslice_templates/{netsliceTemplateId}/nst':
2316 parameters:
2317 - name: netsliceTemplateId
2318 in: path
2319 required: true
2320 description: NetSlice Template ID
2321 schema:
2322 type : string
2323 get:
2324 tags:
2325 - "NetSlice templates"
2326 summary: Read NST of an on-boarded NetSlice Template
2327 description: Read NST of an on-boarded NetSlice Template
2328 operationId: getNstNst
2329 responses:
2330 '200':
2331 description: OK
2332 content:
2333 text/plain:
2334 schema:
2335 $ref: '#/components/schemas/NetSliceTemplate'
2336 '400':
2337 $ref: '#/components/responses/BadRequest'
2338 '401':
2339 $ref: '#/components/responses/Unauthorized'
2340 '403':
2341 $ref: '#/components/responses/Forbidden'
2342 '404':
2343 $ref: '#/components/responses/NotFound'
2344 '405':
2345 $ref: '#/components/responses/MethodNotAllowed'
2346 '406':
2347 $ref: '#/components/responses/NotAcceptable'
2348 '409':
2349 $ref: '#/components/responses/Conflict'
2350 '422':
2351 $ref: '#/components/responses/UnprocessableEntity'
2352 '500':
2353 $ref: '#/components/responses/InternalServerError'
2354 '503':
2355 $ref: '#/components/responses/ServiceUnavailable'
2356 '5XX':
2357 $ref: '#/components/responses/UnexpectedError'
2358 default:
2359 $ref: '#/components/responses/UnexpectedError'
2360 '/nst/v1/netslice_templates/{netsliceTemplateId}/nst_content':
2361 parameters:
2362 - name: netsliceTemplateId
2363 in: path
2364 required: true
2365 description: NetSlice Template ID
2366 schema:
2367 type : string
2368 get:
2369 tags:
2370 - "NetSlice templates"
2371 summary: Fetch the content of a NST
2372 description: Fetch the content of a NST
2373 operationId: getNSTcontent
2374 responses:
2375 '200':
2376 description: OK
2377 content:
2378 application/zip:
2379 schema:
2380 $ref: '#/components/schemas/NetSlicePackage'
2381 '206':
2382 description: Partial Content
2383 headers:
2384 Content-Range:
2385 schema:
2386 type: string
2387 content:
2388 application/zip:
2389 schema:
2390 $ref: '#/components/schemas/NetSlicePackage'
2391 '400':
2392 $ref: '#/components/responses/BadRequest'
2393 '401':
2394 $ref: '#/components/responses/Unauthorized'
2395 '403':
2396 $ref: '#/components/responses/Forbidden'
2397 '404':
2398 $ref: '#/components/responses/NotFound'
2399 '405':
2400 $ref: '#/components/responses/MethodNotAllowed'
2401 '406':
2402 $ref: '#/components/responses/NotAcceptable'
2403 '409':
2404 $ref: '#/components/responses/Conflict'
2405 '422':
2406 $ref: '#/components/responses/UnprocessableEntity'
2407 '500':
2408 $ref: '#/components/responses/InternalServerError'
2409 '503':
2410 $ref: '#/components/responses/ServiceUnavailable'
2411 '5XX':
2412 $ref: '#/components/responses/UnexpectedError'
2413 default:
2414 $ref: '#/components/responses/UnexpectedError'
2415 put:
2416 tags:
2417 - "NetSlice templates"
2418 summary: Upload the content of a NST
2419 description: Upload the content of a NST
2420 operationId: updateNSTcontent
2421 requestBody:
2422 $ref: '#/components/requestBodies/NetSlicePackage'
2423 responses:
2424 '202':
2425 description: Accepted
2426 '204':
2427 description: No Content
2428 '400':
2429 $ref: '#/components/responses/BadRequest'
2430 '401':
2431 $ref: '#/components/responses/Unauthorized'
2432 '403':
2433 $ref: '#/components/responses/Forbidden'
2434 '404':
2435 $ref: '#/components/responses/NotFound'
2436 '405':
2437 $ref: '#/components/responses/MethodNotAllowed'
2438 '406':
2439 $ref: '#/components/responses/NotAcceptable'
2440 '409':
2441 $ref: '#/components/responses/Conflict'
2442 '422':
2443 $ref: '#/components/responses/UnprocessableEntity'
2444 '500':
2445 $ref: '#/components/responses/InternalServerError'
2446 '503':
2447 $ref: '#/components/responses/ServiceUnavailable'
2448 '5XX':
2449 $ref: '#/components/responses/UnexpectedError'
2450 default:
2451 $ref: '#/components/responses/UnexpectedError'
2452 '/nst/v1/netslice_templates_content':
2453 post:
2454 tags:
2455 - "NetSlice templates"
2456 summary: Upload a NetSlice package by providing the content of the NetSlice package
2457 description: Upload a NetSlice package by providing the content of the NetSlice package
2458 operationId: uploadNstContent
2459 requestBody:
2460 content:
2461 application/zip:
2462 schema:
2463 $ref: '#/components/schemas/NetSlicePackage'
2464 responses:
2465 '201':
2466 description: Created
2467 headers:
2468 Location:
2469 schema:
2470 type: string
2471 format: uri
2472 content:
2473 application/json:
2474 schema:
2475 $ref: '#/components/schemas/ObjectId'
2476 application/yaml:
2477 schema:
2478 $ref: '#/components/schemas/ObjectId'
2479 '202':
2480 description: Accepted
2481 '204':
2482 description: No Content
2483 '400':
2484 $ref: '#/components/responses/BadRequest'
2485 '401':
2486 $ref: '#/components/responses/Unauthorized'
2487 '403':
2488 $ref: '#/components/responses/Forbidden'
2489 '404':
2490 $ref: '#/components/responses/NotFound'
2491 '405':
2492 $ref: '#/components/responses/MethodNotAllowed'
2493 '406':
2494 $ref: '#/components/responses/NotAcceptable'
2495 '409':
2496 $ref: '#/components/responses/Conflict'
2497 '422':
2498 $ref: '#/components/responses/UnprocessableEntity'
2499 '500':
2500 $ref: '#/components/responses/InternalServerError'
2501 '503':
2502 $ref: '#/components/responses/ServiceUnavailable'
2503 '5XX':
2504 $ref: '#/components/responses/UnexpectedError'
2505 default:
2506 $ref: '#/components/responses/UnexpectedError'
2507 get:
2508 tags:
2509 - "NetSlice templates"
2510 summary: Query information about multiple NetSlice Template resources
2511 description: Query information about multiple NetSlice Template resources
2512 operationId: getNstContent
2513 responses:
2514 '200':
2515 description: OK
2516 content:
2517 application/json:
2518 schema:
2519 $ref: '#/components/schemas/ArrayOfNstInfo'
2520 application/yaml:
2521 schema:
2522 $ref: '#/components/schemas/ArrayOfNstInfo'
2523 '206':
2524 description: Partial Content
2525 headers:
2526 Content-Range:
2527 schema:
2528 type: string
2529 content:
2530 application/octet-stream:
2531 schema:
2532 type: string
2533 format: binary
2534 '400':
2535 $ref: '#/components/responses/BadRequest'
2536 '401':
2537 $ref: '#/components/responses/Unauthorized'
2538 '403':
2539 $ref: '#/components/responses/Forbidden'
2540 '404':
2541 $ref: '#/components/responses/NotFound'
2542 '405':
2543 $ref: '#/components/responses/MethodNotAllowed'
2544 '406':
2545 $ref: '#/components/responses/NotAcceptable'
2546 '409':
2547 $ref: '#/components/responses/Conflict'
2548 '422':
2549 $ref: '#/components/responses/UnprocessableEntity'
2550 '500':
2551 $ref: '#/components/responses/InternalServerError'
2552 '503':
2553 $ref: '#/components/responses/ServiceUnavailable'
2554 '5XX':
2555 $ref: '#/components/responses/UnexpectedError'
2556 default:
2557 $ref: '#/components/responses/UnexpectedError'
2558 '/nst/v1/netslice_templates_content/{netsliceTemplateContentId}':
2559 parameters:
2560 - name: netsliceTemplateContentId
2561 in: path
2562 required: true
2563 description: NetSlice Template ID
2564 schema:
2565 type : string
2566 get:
2567 tags:
2568 - "NetSlice templates"
2569 summary: Read information about an individual NetSlice Template resource
2570 description: Read information about an individual NetSlice Template resource
2571 operationId: getNstIdContent
2572 responses:
2573 '200':
2574 description: OK
2575 content:
2576 application/json:
2577 schema:
2578 $ref: '#/components/schemas/NstInfo'
2579 application/yaml:
2580 schema:
2581 $ref: '#/components/schemas/NstInfo'
2582 '400':
2583 $ref: '#/components/responses/BadRequest'
2584 '401':
2585 $ref: '#/components/responses/Unauthorized'
2586 '403':
2587 $ref: '#/components/responses/Forbidden'
2588 '404':
2589 $ref: '#/components/responses/NotFound'
2590 '405':
2591 $ref: '#/components/responses/MethodNotAllowed'
2592 '406':
2593 $ref: '#/components/responses/NotAcceptable'
2594 '409':
2595 $ref: '#/components/responses/Conflict'
2596 '422':
2597 $ref: '#/components/responses/UnprocessableEntity'
2598 '500':
2599 $ref: '#/components/responses/InternalServerError'
2600 '503':
2601 $ref: '#/components/responses/ServiceUnavailable'
2602 '5XX':
2603 $ref: '#/components/responses/UnexpectedError'
2604 default:
2605 $ref: '#/components/responses/UnexpectedError'
2606 put:
2607 tags:
2608 - "NetSlice templates"
2609 summary: Modify an individual NetSlice Template resource
2610 description: Modify an individual NetSlice Template resource
2611 operationId: updateNstIdContent
2612 requestBody:
2613 $ref: '#/components/requestBodies/NstInfoModifications'
2614 responses:
2615 '204':
2616 description: No Content
2617 '400':
2618 $ref: '#/components/responses/BadRequest'
2619 '401':
2620 $ref: '#/components/responses/Unauthorized'
2621 '403':
2622 $ref: '#/components/responses/Forbidden'
2623 '404':
2624 $ref: '#/components/responses/NotFound'
2625 '405':
2626 $ref: '#/components/responses/MethodNotAllowed'
2627 '406':
2628 $ref: '#/components/responses/NotAcceptable'
2629 '409':
2630 $ref: '#/components/responses/Conflict'
2631 '422':
2632 $ref: '#/components/responses/UnprocessableEntity'
2633 '500':
2634 $ref: '#/components/responses/InternalServerError'
2635 '503':
2636 $ref: '#/components/responses/ServiceUnavailable'
2637 '5XX':
2638 $ref: '#/components/responses/UnexpectedError'
2639 default:
2640 $ref: '#/components/responses/UnexpectedError'
2641 delete:
2642 tags:
2643 - "NetSlice templates"
2644 summary: Delete an individual NetSlice Template resource
2645 description: Delete an individual NetSlice Template resource
2646 operationId: deleteNstIdContent
2647 responses:
2648 '204':
2649 description: No Content
2650 '400':
2651 $ref: '#/components/responses/BadRequest'
2652 '401':
2653 $ref: '#/components/responses/Unauthorized'
2654 '403':
2655 $ref: '#/components/responses/Forbidden'
2656 '404':
2657 $ref: '#/components/responses/NotFound'
2658 '405':
2659 $ref: '#/components/responses/MethodNotAllowed'
2660 '406':
2661 $ref: '#/components/responses/NotAcceptable'
2662 '409':
2663 $ref: '#/components/responses/Conflict'
2664 '422':
2665 $ref: '#/components/responses/UnprocessableEntity'
2666 '500':
2667 $ref: '#/components/responses/InternalServerError'
2668 '503':
2669 $ref: '#/components/responses/ServiceUnavailable'
2670 '5XX':
2671 $ref: '#/components/responses/UnexpectedError'
2672 default:
2673 $ref: '#/components/responses/UnexpectedError'
2674# END NetSlice Templates
2675
2676# BEGIN NetSlice Instances
2677 '/nsilcm/v1/netslice_instances':
2678 get:
2679 tags:
2680 - "NetSlice instances"
2681 summary: Query information about multiple NetSlice instances
2682 description: Query information about multiple NetSlice isntances
2683 operationId: getNSIs
2684 responses:
2685 '200':
2686 description: OK
2687 content:
2688 application/json:
2689 schema:
2690 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
2691 application/yaml:
2692 schema:
2693 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
2694 '400':
2695 $ref: '#/components/responses/BadRequest'
2696 '401':
2697 $ref: '#/components/responses/Unauthorized'
2698 '403':
2699 $ref: '#/components/responses/Forbidden'
2700 '404':
2701 $ref: '#/components/responses/NotFound'
2702 '405':
2703 $ref: '#/components/responses/MethodNotAllowed'
2704 '406':
2705 $ref: '#/components/responses/NotAcceptable'
2706 '409':
2707 $ref: '#/components/responses/Conflict'
2708 '422':
2709 $ref: '#/components/responses/UnprocessableEntity'
2710 '500':
2711 $ref: '#/components/responses/InternalServerError'
2712 '503':
2713 $ref: '#/components/responses/ServiceUnavailable'
2714 '5XX':
2715 $ref: '#/components/responses/UnexpectedError'
2716 default:
2717 $ref: '#/components/responses/UnexpectedError'
2718 post:
2719 tags:
2720 - "NetSlice instances"
2721 summary: Create a new NetSlice instance resource
2722 description: Create a new NetSlice instance resource
2723 operationId: addNSI
2724 requestBody:
2725 $ref: '#/components/requestBodies/CreateNsiRequest'
2726 responses:
2727 '201':
2728 description: Created
2729 headers:
2730 Location:
2731 schema:
2732 type: string
2733 format: uri
2734 content:
2735 application/json:
2736 schema:
2737 $ref: '#/components/schemas/ObjectId'
2738 application/yaml:
2739 schema:
2740 $ref: '#/components/schemas/ObjectId'
2741 '400':
2742 $ref: '#/components/responses/BadRequest'
2743 '401':
2744 $ref: '#/components/responses/Unauthorized'
2745 '403':
2746 $ref: '#/components/responses/Forbidden'
2747 '404':
2748 $ref: '#/components/responses/NotFound'
2749 '405':
2750 $ref: '#/components/responses/MethodNotAllowed'
2751 '406':
2752 $ref: '#/components/responses/NotAcceptable'
2753 '409':
2754 $ref: '#/components/responses/Conflict'
2755 '422':
2756 $ref: '#/components/responses/UnprocessableEntity'
2757 '500':
2758 $ref: '#/components/responses/InternalServerError'
2759 '503':
2760 $ref: '#/components/responses/ServiceUnavailable'
2761 '5XX':
2762 $ref: '#/components/responses/UnexpectedError'
2763 default:
2764 $ref: '#/components/responses/UnexpectedError'
2765 '/nsilcm/v1/netslice_instances/{netsliceInstanceId}':
2766 parameters:
2767 - name: netsliceInstanceId
2768 in: path
2769 required: true
2770 description: NetSlice Instance ID
2771 schema:
2772 type : string
2773 get:
2774 tags:
2775 - "NetSlice instances"
2776 summary: Read an individual NetSlice instance resource
2777 description: Read an individual NetSlice instance resource
2778 operationId: getNSI
2779 responses:
2780 '200':
2781 description: OK
2782 content:
2783 application/json:
2784 schema:
2785 $ref: '#/components/schemas/NetSliceInstance'
2786 application/yaml:
2787 schema:
2788 $ref: '#/components/schemas/NetSliceInstance'
2789 '400':
2790 $ref: '#/components/responses/BadRequest'
2791 '401':
2792 $ref: '#/components/responses/Unauthorized'
2793 '403':
2794 $ref: '#/components/responses/Forbidden'
2795 '404':
2796 $ref: '#/components/responses/NotFound'
2797 '405':
2798 $ref: '#/components/responses/MethodNotAllowed'
2799 '406':
2800 $ref: '#/components/responses/NotAcceptable'
2801 '409':
2802 $ref: '#/components/responses/Conflict'
2803 '422':
2804 $ref: '#/components/responses/UnprocessableEntity'
2805 '500':
2806 $ref: '#/components/responses/InternalServerError'
2807 '503':
2808 $ref: '#/components/responses/ServiceUnavailable'
2809 '5XX':
2810 $ref: '#/components/responses/UnexpectedError'
2811 default:
2812 $ref: '#/components/responses/UnexpectedError'
2813 delete:
2814 tags:
2815 - "NetSlice instances"
2816 summary: Delete an individual NetSlice instance resource
2817 description: Delete an individual NetSlice instance resource
2818 operationId: deleteNSI
2819 responses:
2820 '204':
2821 description: No Content
2822 '400':
2823 $ref: '#/components/responses/BadRequest'
2824 '401':
2825 $ref: '#/components/responses/Unauthorized'
2826 '403':
2827 $ref: '#/components/responses/Forbidden'
2828 '404':
2829 $ref: '#/components/responses/NotFound'
2830 '405':
2831 $ref: '#/components/responses/MethodNotAllowed'
2832 '406':
2833 $ref: '#/components/responses/NotAcceptable'
2834 '409':
2835 $ref: '#/components/responses/Conflict'
2836 '422':
2837 $ref: '#/components/responses/UnprocessableEntity'
2838 '500':
2839 $ref: '#/components/responses/InternalServerError'
2840 '503':
2841 $ref: '#/components/responses/ServiceUnavailable'
2842 '5XX':
2843 $ref: '#/components/responses/UnexpectedError'
2844 default:
2845 $ref: '#/components/responses/UnexpectedError'
2846 '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/instantiate':
2847 parameters:
2848 - name: netsliceInstanceId
2849 in: path
2850 required: true
2851 description: NetSlice Instance ID
2852 schema:
2853 type : string
2854 post:
2855 tags:
2856 - "NetSlice instances"
2857 summary: Instantiate a NetSlice
2858 description: |
2859 Instantiate a NetSlice. The precondition is that the NetSlice instance
2860 must have been created and must be in NOT_INSTANTIATED state. As a result
2861 of the success of this operation, the NFVO creates a "NetSlice Lifecycle
2862 Operation Occurrence" resource for the request, and the NS instance state
2863 becomes INSTANTIATED.
2864 operationId: instantiateNSI
2865 requestBody:
2866 $ref: '#/components/requestBodies/InstantiateNsiRequest'
2867 responses:
2868 '202':
2869 description: Accepted
2870 headers:
2871 Location:
2872 description: |
2873 It must point to the new "NetSlice Lifecycle Operation Occurrence"
2874 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
2875 schema:
2876 type: string
2877 format: uri
2878 content:
2879 application/json:
2880 schema:
2881 $ref: '#/components/schemas/ObjectId'
2882 application/yaml:
2883 schema:
2884 $ref: '#/components/schemas/ObjectId'
2885 '400':
2886 $ref: '#/components/responses/BadRequest'
2887 '401':
2888 $ref: '#/components/responses/Unauthorized'
2889 '403':
2890 $ref: '#/components/responses/Forbidden'
2891 '404':
2892 $ref: '#/components/responses/NotFound'
2893 '405':
2894 $ref: '#/components/responses/MethodNotAllowed'
2895 '406':
2896 $ref: '#/components/responses/NotAcceptable'
2897 '409':
2898 $ref: '#/components/responses/Conflict'
2899 '422':
2900 $ref: '#/components/responses/UnprocessableEntity'
2901 '500':
2902 $ref: '#/components/responses/InternalServerError'
2903 '503':
2904 $ref: '#/components/responses/ServiceUnavailable'
2905 '5XX':
2906 $ref: '#/components/responses/UnexpectedError'
2907 default:
2908 $ref: '#/components/responses/UnexpectedError'
2909 '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/terminate':
2910 parameters:
2911 - name: netsliceInstanceId
2912 in: path
2913 required: true
2914 description: NetSlice Instance ID
2915 schema:
2916 type : string
2917 post:
2918 tags:
2919 - "NetSlice instances"
2920 summary: Terminate a NetSlice instance
2921 description: |
2922 Terminate a NetSlice instance. The precondition is that the NetSlice instance
2923 must have been created and must be in INSTANTIATED state. As a result of the
2924 success of this operation, the NFVO creates a "NetSlice Lifecycle Operation
2925 Occurrence" resource for the request, and the NetSlice instance state becomes
2926 NOT_INSTANTIATED.
2927 operationId: terminateNSI
2928 requestBody:
2929 # Request data is not required
2930 $ref: '#/components/requestBodies/TerminateNsiRequest'
2931 responses:
2932 '202':
2933 description: Accepted
2934 headers:
2935 Location:
2936 description: |
2937 It must point to the new "NetSlice Lifecycle Operation Occurrence"
2938 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
2939 schema:
2940 type: string
2941 format: uri
2942 content:
2943 application/json:
2944 schema:
2945 $ref: '#/components/schemas/ObjectId'
2946 application/yaml:
2947 schema:
2948 $ref: '#/components/schemas/ObjectId'
2949 '400':
2950 $ref: '#/components/responses/BadRequest'
2951 '401':
2952 $ref: '#/components/responses/Unauthorized'
2953 '403':
2954 $ref: '#/components/responses/Forbidden'
2955 '404':
2956 $ref: '#/components/responses/NotFound'
2957 '405':
2958 $ref: '#/components/responses/MethodNotAllowed'
2959 '406':
2960 $ref: '#/components/responses/NotAcceptable'
2961 '409':
2962 $ref: '#/components/responses/Conflict'
2963 '422':
2964 $ref: '#/components/responses/UnprocessableEntity'
2965 '500':
2966 $ref: '#/components/responses/InternalServerError'
2967 '503':
2968 $ref: '#/components/responses/ServiceUnavailable'
2969 '5XX':
2970 $ref: '#/components/responses/UnexpectedError'
2971 default:
2972 $ref: '#/components/responses/UnexpectedError'
2973 '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/action':
2974 parameters:
2975 - name: netsliceInstanceId
2976 in: path
2977 required: true
2978 description: NetSlice Instance ID
2979 schema:
2980 type : string
2981 post:
2982 tags:
2983 - "NetSlice instances"
2984 summary: Execute an action on a NetSlice instance
2985 description: |
2986 Execute an action on a NetSlice instance.
2987 The NetSlice instance must have been created and must be in INSTANTIATED state.
2988 operationId: actionOnNSI
2989 requestBody:
2990 content:
2991 application/json:
2992 schema:
2993 $ref: '#/components/schemas/NsiActionRequest'
2994 application/yaml:
2995 schema:
2996 $ref: '#/components/schemas/NsiActionRequest'
2997 responses:
2998 '202':
2999 description: Accepted
3000 headers:
3001 Location:
3002 description: |
3003 It must point to the new "NS Lifecycle Operation Occurrence"
3004 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
3005 schema:
3006 type: string
3007 format: uri
3008 content:
3009 application/json:
3010 schema:
3011 $ref: '#/components/schemas/ObjectId'
3012 application/yaml:
3013 schema:
3014 $ref: '#/components/schemas/ObjectId'
3015 '400':
3016 $ref: '#/components/responses/BadRequest'
3017 '401':
3018 $ref: '#/components/responses/Unauthorized'
3019 '403':
3020 $ref: '#/components/responses/Forbidden'
3021 '404':
3022 $ref: '#/components/responses/NotFound'
3023 '405':
3024 $ref: '#/components/responses/MethodNotAllowed'
3025 '406':
3026 $ref: '#/components/responses/NotAcceptable'
3027 '409':
3028 $ref: '#/components/responses/Conflict'
3029 '422':
3030 $ref: '#/components/responses/UnprocessableEntity'
3031 '500':
3032 $ref: '#/components/responses/InternalServerError'
3033 '503':
3034 $ref: '#/components/responses/ServiceUnavailable'
3035 '5XX':
3036 $ref: '#/components/responses/UnexpectedError'
3037 default:
3038 $ref: '#/components/responses/UnexpectedError'
3039 '/nsilcm/v1/netslice_instances_content':
3040 get:
3041 tags:
3042 - "NetSlice instances"
3043 summary: Query information about multiple NetSlice instances
3044 description: Query information about multiple NetSlice isntances
3045 operationId: getNSIsContent
3046 responses:
3047 '200':
3048 description: OK
3049 content:
3050 application/json:
3051 schema:
3052 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3053 application/yaml:
3054 schema:
3055 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3056 '400':
3057 $ref: '#/components/responses/BadRequest'
3058 '401':
3059 $ref: '#/components/responses/Unauthorized'
3060 '403':
3061 $ref: '#/components/responses/Forbidden'
3062 '404':
3063 $ref: '#/components/responses/NotFound'
3064 '405':
3065 $ref: '#/components/responses/MethodNotAllowed'
3066 '406':
3067 $ref: '#/components/responses/NotAcceptable'
3068 '409':
3069 $ref: '#/components/responses/Conflict'
3070 '422':
3071 $ref: '#/components/responses/UnprocessableEntity'
3072 '500':
3073 $ref: '#/components/responses/InternalServerError'
3074 '503':
3075 $ref: '#/components/responses/ServiceUnavailable'
3076 '5XX':
3077 $ref: '#/components/responses/UnexpectedError'
3078 default:
3079 $ref: '#/components/responses/UnexpectedError'
3080 post:
3081 tags:
3082 - "NetSlice instances"
3083 summary: Create a new NetSlice instance
3084 description: Create a new NetSlice instance
3085 operationId: createNSIContent
3086 requestBody:
3087 $ref: '#/components/requestBodies/CreateNsiContentRequest'
3088 responses:
3089 '201':
3090 description: Created
3091 headers:
3092 Location:
3093 schema:
3094 type: string
3095 format: uri
3096 content:
3097 application/json:
3098 schema:
3099 $ref: '#/components/schemas/CreateNsiContentResponse'
3100 application/yaml:
3101 schema:
3102 $ref: '#/components/schemas/CreateNsiContentResponse'
3103 '400':
3104 $ref: '#/components/responses/BadRequest'
3105 '401':
3106 $ref: '#/components/responses/Unauthorized'
3107 '403':
3108 $ref: '#/components/responses/Forbidden'
3109 '404':
3110 $ref: '#/components/responses/NotFound'
3111 '405':
3112 $ref: '#/components/responses/MethodNotAllowed'
3113 '406':
3114 $ref: '#/components/responses/NotAcceptable'
3115 '409':
3116 $ref: '#/components/responses/Conflict'
3117 '422':
3118 $ref: '#/components/responses/UnprocessableEntity'
3119 '500':
3120 $ref: '#/components/responses/InternalServerError'
3121 '503':
3122 $ref: '#/components/responses/ServiceUnavailable'
3123 '5XX':
3124 $ref: '#/components/responses/UnexpectedError'
3125 default:
3126 $ref: '#/components/responses/UnexpectedError'
3127 '/nsilcm/v1/netslice_instances_content/{netsliceInstanceContentId}':
3128 parameters:
3129 - name: netsliceInstanceContentId
3130 in: path
3131 required: true
3132 description: NetSlice Instance Content ID
3133 schema:
3134 type : string
3135 get:
3136 tags:
3137 - "NetSlice instances"
3138 summary: Read an individual NetSlice instance resource
3139 description: Read an individual NetSlice instance resource
3140 operationId: getNSIContent
3141 responses:
3142 '200':
3143 description: OK
3144 content:
3145 application/json:
3146 schema:
3147 $ref: '#/components/schemas/NetSliceInstance'
3148 application/yaml:
3149 schema:
3150 $ref: '#/components/schemas/NetSliceInstance'
3151 '400':
3152 $ref: '#/components/responses/BadRequest'
3153 '401':
3154 $ref: '#/components/responses/Unauthorized'
3155 '403':
3156 $ref: '#/components/responses/Forbidden'
3157 '404':
3158 $ref: '#/components/responses/NotFound'
3159 '405':
3160 $ref: '#/components/responses/MethodNotAllowed'
3161 '406':
3162 $ref: '#/components/responses/NotAcceptable'
3163 '409':
3164 $ref: '#/components/responses/Conflict'
3165 '422':
3166 $ref: '#/components/responses/UnprocessableEntity'
3167 '500':
3168 $ref: '#/components/responses/InternalServerError'
3169 '503':
3170 $ref: '#/components/responses/ServiceUnavailable'
3171 '5XX':
3172 $ref: '#/components/responses/UnexpectedError'
3173 default:
3174 $ref: '#/components/responses/UnexpectedError'
3175 delete:
3176 tags:
3177 - "NetSlice instances"
3178 summary: Delete an individual NS instance resource
3179 description: Delete an individual NS instance resource
3180 operationId: deleteNSIContent
3181 responses:
3182 '202':
3183 description: Accepted
3184 content:
3185 application/json:
3186 schema:
3187 $ref: '#/components/schemas/ObjectId'
3188 application/yaml:
3189 schema:
3190 $ref: '#/components/schemas/ObjectId'
3191 '204':
3192 description: No Content
3193 '400':
3194 $ref: '#/components/responses/BadRequest'
3195 '401':
3196 $ref: '#/components/responses/Unauthorized'
3197 '403':
3198 $ref: '#/components/responses/Forbidden'
3199 '404':
3200 $ref: '#/components/responses/NotFound'
3201 '405':
3202 $ref: '#/components/responses/MethodNotAllowed'
3203 '406':
3204 $ref: '#/components/responses/NotAcceptable'
3205 '409':
3206 $ref: '#/components/responses/Conflict'
3207 '422':
3208 $ref: '#/components/responses/UnprocessableEntity'
3209 '500':
3210 $ref: '#/components/responses/InternalServerError'
3211 '503':
3212 $ref: '#/components/responses/ServiceUnavailable'
3213 '5XX':
3214 $ref: '#/components/responses/UnexpectedError'
3215 default:
3216 $ref: '#/components/responses/UnexpectedError'
3217 '/nsilcm/v1/nsi_lcm_op_occs':
3218 get:
3219 tags:
3220 - "NetSlice instances"
3221 summary: Query information about multiple NetSlice LCM Operation Occurrences
3222 description: Query information about multiple NetSlice LCM Operation Occurrences
3223 operationId: getNsiLcmOpOccs
3224 responses:
3225 '200':
3226 description: OK
3227 content:
3228 application/json:
3229 schema:
3230 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3231 application/yaml:
3232 schema:
3233 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3234 '400':
3235 $ref: '#/components/responses/BadRequest'
3236 '401':
3237 $ref: '#/components/responses/Unauthorized'
3238 '403':
3239 $ref: '#/components/responses/Forbidden'
3240 '404':
3241 $ref: '#/components/responses/NotFound'
3242 '405':
3243 $ref: '#/components/responses/MethodNotAllowed'
3244 '406':
3245 $ref: '#/components/responses/NotAcceptable'
3246 '409':
3247 $ref: '#/components/responses/Conflict'
3248 '422':
3249 $ref: '#/components/responses/UnprocessableEntity'
3250 '500':
3251 $ref: '#/components/responses/InternalServerError'
3252 '503':
3253 $ref: '#/components/responses/ServiceUnavailable'
3254 '5XX':
3255 $ref: '#/components/responses/UnexpectedError'
3256 default:
3257 $ref: '#/components/responses/UnexpectedError'
3258 '/nsilcm/v1/nsi_lcm_op_occs/{nsiLcmOpOccId}':
3259 parameters:
3260 - name: nsiLcmOpOccId
3261 in: path
3262 required: true
3263 description: NetSlice LCM Operation Occurrence ID
3264 schema:
3265 type : string
3266 get:
3267 tags:
3268 - "NetSlice instances"
3269 summary: Query information about an individual NetSlice LCM Operation Occurrence
3270 description: Query information about an individual NetSlice LCM Operation Occurrence
3271 operationId: getNsiLcmOpOcc
3272 responses:
3273 '200':
3274 description: OK
3275 content:
3276 application/json:
3277 schema:
3278 $ref: '#/components/schemas/NsiLcmOpOcc'
3279 application/yaml:
3280 schema:
3281 $ref: '#/components/schemas/NsiLcmOpOcc'
3282 '400':
3283 $ref: '#/components/responses/BadRequest'
3284 '401':
3285 $ref: '#/components/responses/Unauthorized'
3286 '403':
3287 $ref: '#/components/responses/Forbidden'
3288 '404':
3289 $ref: '#/components/responses/NotFound'
3290 '405':
3291 $ref: '#/components/responses/MethodNotAllowed'
3292 '406':
3293 $ref: '#/components/responses/NotAcceptable'
3294 '409':
3295 $ref: '#/components/responses/Conflict'
3296 '422':
3297 $ref: '#/components/responses/UnprocessableEntity'
3298 '500':
3299 $ref: '#/components/responses/InternalServerError'
3300 '503':
3301 $ref: '#/components/responses/ServiceUnavailable'
3302 '5XX':
3303 $ref: '#/components/responses/UnexpectedError'
3304 default:
3305 $ref: '#/components/responses/UnexpectedError'
3306# END NetSlice Instances
3307
3308# BEGIN NSPM
3309 # /nspm/v1/pm_jobs/{pmJobId}/reports/{reportId}
3310# END NSPM
3311
3312# BEGIN PDU
3313 # /pdu/v1/pdu_descriptors
3314 # /pdu/v1/pdu_descriptors/{pduDescriptorId}
3315# END PDU
3316
3317# BEGIN Admin
3318 # /admin/v1/tokens
3319 # /admin/v1/tokens/{tokenId}
3320 # /admin/v1/users
3321 # /admin/v1/users/{userId}
3322 # /admin/v1/projects
3323 # /admin/v1/projects/{projectId}
3324 # /admin/v1/roles
3325 # /admin/v1/roles/{roleId}
3326 # /admin/v1/vims
3327 # /admin/v1/vims/{vimId}
3328 # /admin/v1/vim_accounts
3329 # /admin/v1/vim_accounts/{vimAccountId}
3330 # /admin/v1/wim_accounts
3331 # /admin/v1/wim_accounts/{wimAccountId}
3332 # /admin/v1/sdns
3333 # /admin/v1/sdns/{sdnId}
3334# END Admin
3335
garciadeblas60e2ee92018-02-27 19:09:51 +01003336externalDocs:
3337 description: Find out more OSM
3338 url: 'http://osm.etsi.org/wikipub'
delacruzramfb52ade2019-10-07 16:46:59 +02003339
garciadeblas60e2ee92018-02-27 19:09:51 +01003340components:
3341 responses:
3342 BadRequest:
3343 description: Bad request. The server cannot process the request due to a client error.
3344 content:
3345 application/json:
3346 schema:
3347 $ref: '#/components/schemas/ProblemDetails'
3348 Unauthorized:
3349 description: Authorization information is missing or invalid.
3350 content:
3351 application/json:
3352 schema:
3353 $ref: '#/components/schemas/ProblemDetails'
3354 Forbidden:
3355 description: Not enough permissions to do this operation.
3356 content:
3357 application/json:
3358 schema:
3359 $ref: '#/components/schemas/ProblemDetails'
3360 NotFound:
3361 description: The specified resource was not found.
3362 content:
3363 application/json:
3364 schema:
3365 $ref: '#/components/schemas/ProblemDetails'
3366 MethodNotAllowed:
3367 description: This method is not supported for the requested resource.
3368 content:
3369 application/json:
3370 schema:
3371 $ref: '#/components/schemas/ProblemDetails'
3372 NotAcceptable:
3373 description: The requested resource content cannot match the Accept headers sent in the request.
3374 content:
3375 application/json:
3376 schema:
3377 $ref: '#/components/schemas/ProblemDetails'
3378 Conflict:
3379 description: The operation cannot be executed currently, due to a conflict with the state of the resource.
3380 content:
3381 application/json:
3382 schema:
3383 $ref: '#/components/schemas/ProblemDetails'
3384 UnprocessableEntity:
3385 description: The request was well-formed but was unable to be followed due to semantic errors.
3386 content:
3387 application/json:
3388 schema:
3389 $ref: '#/components/schemas/ProblemDetails'
3390 InternalServerError:
3391 description: Internal server error.
3392 content:
3393 application/json:
3394 schema:
3395 $ref: '#/components/schemas/ProblemDetails'
3396 ServiceUnavailable:
3397 description: Service temporarily unavailable.
3398 content:
3399 application/json:
3400 schema:
3401 $ref: '#/components/schemas/ProblemDetails'
3402 UnexpectedError:
3403 description: Unexpected error.
3404 content:
3405 application/json:
3406 schema:
3407 $ref: '#/components/schemas/ProblemDetails'
delacruzramfb52ade2019-10-07 16:46:59 +02003408 VnfDescriptor:
3409 description: VNF Descriptor (plaintext)
3410 content:
3411 text/plain:
3412 schema:
3413 $ref: '#/components/schemas/VnfDescriptor'
3414 VnfPackage:
3415 description: VNF Package (compressed)
3416 content:
3417 application/zip:
3418 schema:
3419 $ref: '#/components/schemas/VnfPackage'
garciadeblas60e2ee92018-02-27 19:09:51 +01003420 NsDescriptor:
delacruzramfb52ade2019-10-07 16:46:59 +02003421 description: NS Descriptor (plaintext)
3422 content:
3423 text/plain:
3424 schema:
3425 $ref: '#/components/schemas/NsDescriptor'
garciadeblas60e2ee92018-02-27 19:09:51 +01003426 NsPackage:
delacruzramfb52ade2019-10-07 16:46:59 +02003427 description: NS Package (compressed)
3428 content:
3429 application/zip:
3430 schema:
3431 $ref: '#/components/schemas/NsPackage'
3432 NetSliceTemplate:
3433 description: NetSlice Template (plaintext)
3434 content:
3435 text/plain:
3436 schema:
3437 $ref: '#/components/schemas/NetSliceTemplate'
3438 NetSlicePackage:
3439 description: NetSlice Package (compressed)
3440 content:
3441 application/zip:
3442 schema:
3443 $ref: '#/components/schemas/NetSlicePackage'
3444 # END RESPONSES
3445
3446 schemas:
3447 ObjectId:
garciadeblas60e2ee92018-02-27 19:09:51 +01003448 type: object
3449 properties:
3450 id:
delacruzramfb52ade2019-10-07 16:46:59 +02003451 type: string
3452 format: uuid
3453 KeyValuePairs:
3454 # A free list of key:value pairs
3455 type: object
3456 additionalProperties: true
3457 NsDescriptor:
3458 type: string
3459 format: yaml|json
3460 NsPackage:
3461 type: string
3462 format: binary
3463 CreateNsdInfoRequest:
3464 # A free list of key:value pairs
3465 type: object
3466 additionalProperties: true
3467 NsdInfoModifications:
3468 description: |
3469 NS Descriptor Information
3470 Only generic fields (id, name, description) are described
3471 For a full specification of the NS Descriptor see:
3472 http://osm-download.etsi.org/ftp/osm-doc/nsd.html
3473 type: object
3474 properties:
3475 id:
3476 description: NSD Identifier
3477 type: string
3478 name:
3479 description: NSD Name
3480 type: string
3481 description:
3482 description: NSD Description
3483 type: string
3484 nsd:
3485 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsd.html'
3486 NsdInfo:
3487 description: |
3488 NS Descriptor Information
3489 Only generic fields (_id, id, name, description) are described
3490 For a full specification of the NS Descriptor see:
3491 http://osm-download.etsi.org/ftp/osm-doc/nsd.html
3492 type: object
3493 properties:
3494 _id:
garciadeblas60e2ee92018-02-27 19:09:51 +01003495 description: |
garciadeblas12fcc4b2018-03-02 16:12:02 +01003496 Identifier of the onboarded individual NS descriptor
3497 resource. This identifier is allocated by the NFVO.
garciadeblas60e2ee92018-02-27 19:09:51 +01003498 type: string
3499 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003500 id:
garciadeblas60e2ee92018-02-27 19:09:51 +01003501 description: |
3502 This identifier, which is allocated by the NSD
3503 designer, identifies the NSD in a globally unique
3504 way. It is copied from the NSD content and shall be
3505 present after the NSD content is on-boarded.
3506 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003507 name:
garciadeblas60e2ee92018-02-27 19:09:51 +01003508 description: |
3509 Name of the onboarded NSD. This information is
3510 copied from the NSD content and shall be present
garciadeblas60e2ee92018-02-27 19:09:51 +01003511 after the NSD content is on-boarded.
3512 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003513 description:
garciadeblas60e2ee92018-02-27 19:09:51 +01003514 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003515 Description of the onboarded NSD.
3516 This information is copied from the NSD content.
garciadeblas60e2ee92018-02-27 19:09:51 +01003517 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003518 nsd:
3519 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsd.html'
garciadeblas60e2ee92018-02-27 19:09:51 +01003520 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003521 - _id
garciadeblas60e2ee92018-02-27 19:09:51 +01003522 - id
3523 ArrayOfNsdInfo:
3524 type: array
3525 items:
3526 $ref: '#/components/schemas/NsdInfo'
garciadeblas60e2ee92018-02-27 19:09:51 +01003527 ProblemDetails:
3528 type: object
3529 properties:
3530 type:
3531 type: string
3532 format: uri
3533 title:
3534 type: string
3535 status:
3536 type: integer
3537 detail:
3538 type: string
3539 instance:
3540 type: string
3541 format: uri
3542 additionalProperties: true
3543 required:
3544 - status
3545 - detail
garciadeblas63fe88c2018-02-28 19:32:41 +01003546 VnfDescriptor:
3547 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003548 format: yaml|json
garciadeblas63fe88c2018-02-28 19:32:41 +01003549 VnfPackage:
3550 type: string
3551 format: binary
3552 CreateVnfPkgInfoRequest:
delacruzramfb52ade2019-10-07 16:46:59 +02003553 # A free list of key:value pairs
garciadeblas63fe88c2018-02-28 19:32:41 +01003554 type: object
3555 additionalProperties: true
3556 VnfPkgInfoModifications:
delacruzramfb52ade2019-10-07 16:46:59 +02003557 description: |
3558 VNF Package Information
3559 Only generic fields (id, name, description) are described
3560 For a full specification of the VNF Descriptor see:
3561 http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
garciadeblas63fe88c2018-02-28 19:32:41 +01003562 type: object
3563 properties:
3564 id:
delacruzramfb52ade2019-10-07 16:46:59 +02003565 description: VNF Package Identifier
3566 type: string
3567 name:
3568 description: VNF Package Name
3569 type: string
3570 description:
3571 description: VNF Package description
3572 type: string
3573 vnfd:
3574 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfd.html'
3575 VnfPkgInfo:
3576 description: |
3577 VNF Package Information
3578 Only generic fields (_id, id, name, description) are described
3579 For a full specification of the VNF Descriptor see:
3580 http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
3581 type: object
3582 properties:
3583 _id:
garciadeblas63fe88c2018-02-28 19:32:41 +01003584 description: |
garciadeblas12fcc4b2018-03-02 16:12:02 +01003585 Identifier of the VNF package. This identifier is allocated by the NFVO.
garciadeblas63fe88c2018-02-28 19:32:41 +01003586 type: string
3587 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003588 id:
3589 description: VNF Package Identifier
garciadeblas63fe88c2018-02-28 19:32:41 +01003590 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003591 name:
3592 description: VNF Package Name
garciadeblas63fe88c2018-02-28 19:32:41 +01003593 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003594 description:
3595 description: VNF Package description
garciadeblas63fe88c2018-02-28 19:32:41 +01003596 type: string
garciadeblas63fe88c2018-02-28 19:32:41 +01003597 vnfd:
delacruzramfb52ade2019-10-07 16:46:59 +02003598 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfd.html'
garciadeblas63fe88c2018-02-28 19:32:41 +01003599 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003600 - _id
garciadeblas63fe88c2018-02-28 19:32:41 +01003601 - id
garciadeblas63fe88c2018-02-28 19:32:41 +01003602 ArrayOfVnfPkgInfo:
3603 type: array
3604 items:
3605 $ref: '#/components/schemas/VnfPkgInfo'
garciadeblas12fcc4b2018-03-02 16:12:02 +01003606 CreateNsRequest:
3607 type: object
3608 properties:
3609 nsdId:
3610 description: |
3611 Identifier of the NSD that defines the NS instance to be created.
3612 type: string
3613 format: uuid
3614 nsName:
3615 description: |
3616 Human-readable name of the NS instance to be created.
3617 type: string
3618 nsDescription:
3619 description: |
3620 Human-readable description of the NS instance to be created.
3621 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003622 vimAccountId:
3623 description: |
3624 Identifier of the VIM Account where the NS instance shall be created.
3625 type: string
3626 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003627 required:
3628 - nsdId
3629 - nsName
delacruzramfb52ade2019-10-07 16:46:59 +02003630 - vimAccountId
garciadeblas12fcc4b2018-03-02 16:12:02 +01003631 NsInstance:
delacruzramfb52ade2019-10-07 16:46:59 +02003632 description: |
3633 NS Instance Information
3634 Only generic fields (_id, id, name, description) are described
3635 For a full specification of the NS Instance see:
3636 http://osm-download.etsi.org/ftp/osm-doc/nsr.html
garciadeblas12fcc4b2018-03-02 16:12:02 +01003637 type: object
3638 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003639 _id:
3640 description: Identifier of the NS instance.
3641 type: string
3642 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003643 id:
3644 description: Identifier of the NS instance.
3645 type: string
3646 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003647 name:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003648 description: Human readable name of the NS instance.
3649 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003650 description:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003651 description: Human readable description of the NS instance.
3652 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003653 nsr:
3654 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsr.html'
garciadeblas12fcc4b2018-03-02 16:12:02 +01003655 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003656 - _id
garciadeblas12fcc4b2018-03-02 16:12:02 +01003657 - id
delacruzramfb52ade2019-10-07 16:46:59 +02003658 - name
garciadeblas12fcc4b2018-03-02 16:12:02 +01003659 InstantiateNsRequest:
3660 type: object
3661 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003662 nsName:
3663 description: |
3664 Human-readable name of the NS instance to be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003665 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003666 nsdId:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003667 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003668 Identifier of the NSD that defines the NS instance to be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003669 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003670 format: uuid
3671 vimAccountId:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003672 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003673 Identifier of the VIM Account where the NS instance shall be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003674 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003675 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003676 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003677 - nsName
3678 - nsdId
3679 - vimAccountId
garciadeblas12fcc4b2018-03-02 16:12:02 +01003680 ScaleNsRequest:
3681 type: object
garciadeblas12fcc4b2018-03-02 16:12:02 +01003682 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003683 scaleType:
3684 type: string
3685 enum:
3686 - SCALE_VNF
3687 scaleVnfData:
3688 type: object
3689 properties:
3690 scaleVnfType:
3691 type: string
3692 enum:
3693 - SCALE_IN
3694 - SCALE_OUT
3695 scaleByStepData:
3696 type: object
3697 properties:
3698 scaling-group-descriptor:
3699 type: string
3700 member-vnf-index:
3701 type: string
3702 additionalProperties: true
3703 additionalProperties: true
3704 additionalProperties: true
garciadeblas12fcc4b2018-03-02 16:12:02 +01003705 TerminateNsRequest:
3706 type: object
3707 properties:
3708 terminationTime:
3709 description: |
3710 Timestamp indicating the end time of the NS, i.e. the NS will be terminated
3711 automatically at this timestamp. Cardinality "0" indicates the NS termination
3712 takes place immediately.
3713 type: string
3714 format: date-time
3715 ArrayOfNsInstance:
3716 type: array
3717 items:
3718 $ref: '#/components/schemas/NsInstance'
delacruzramfb52ade2019-10-07 16:46:59 +02003719 NSinstanceActionRequest:
3720 type: object
3721 properties:
3722 primitive:
3723 type: string
3724 primitive_params:
3725 $ref: '#/components/schemas/KeyValuePairs'
3726 lcmOperationType:
3727 type: string
3728 nsInstanceId:
3729 type: string
3730 format: uuid
3731 member_vnf_index:
3732 type: string
3733 vdu_id:
3734 type: string
3735 vdu_count_index:
3736 type: integer
3737 required:
3738 - primitive
3739 - primitive_params
3740 additionalProperties: false
3741 CreateNSinstanceContentRequest:
3742 type: object
3743 properties:
3744 nsdId:
3745 description: |
3746 Identifier of the NSD that defines the NS instance to be created.
3747 type: string
3748 format: uuid
3749 nsName:
3750 description: |
3751 Human-readable name of the NS instance to be created.
3752 type: string
3753 vimAccountId:
3754 description: |
3755 Identifier of the VIM Account where the NS instance shall be created.
3756 type: string
3757 format: uuid
3758 required:
3759 - nsdId
3760 - nsName
3761 - vimAccountId
3762 CreateNSinstanceContentResponse:
3763 type: object
3764 properties:
3765 id:
3766 type: string
3767 format: uuid
3768 nslcmop_id:
3769 type: string
3770 format: uuid
3771 NsLcmOpOcc:
3772 type: object
3773 properties:
3774 _id:
3775 type: string
3776 format: uuid
3777 id:
3778 type: string
3779 format: uuid
3780 lcmOperationType:
3781 type: string
3782 nsInstanceId:
3783 type: string
3784 format: uuid
3785 isAutomaticInvocation:
3786 type: boolean
3787 isCancelPending:
3788 type: boolean
3789 startTime:
3790 type: number
3791 format: float
3792 statusEnteredTime:
3793 type: number
3794 format: float
3795 operationParams:
3796 type: object
3797 properties:
3798 nsName:
3799 type: string
3800 nsdId:
3801 type: string
3802 format: uuid
3803 vimAccountId:
3804 type: string
3805 format: uuid
3806 nsInstanceId:
3807 type: string
3808 format: uuid
3809 lcmOperationType:
3810 type: string
3811 operationState:
3812 type: string
3813 detailed-status:
3814 type: string
3815 links:
3816 type: object
3817 properties:
3818 self:
3819 type: string
3820 format: path # uri?
3821 nsInstance:
3822 type: string
3823 format: path # uri?
3824 ArrayOfNsLcmOpOcc:
3825 type: array
3826 items:
3827 $ref: '#/components/schemas/NsLcmOpOcc'
3828 VnfInstanceInfo:
3829 description: |
3830 VNF Instance Information
3831 Only generic fields (_id, id) are described
3832 For a full specification of the VNF Instance see:
3833 http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
3834 type: object
3835 properties:
3836 _id:
3837 type: string
3838 format: uuid
3839 id:
3840 type: string
3841 format: uuid
3842 vnfr:
3843 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/vnfr.html'
3844 ArrayOfVnfInstanceInfo:
3845 type: array
3846 items:
3847 $ref: '#/components/schemas/VnfInstanceInfo'
3848 NstInfo:
3849 description: |
3850 NetSlice Template Information
3851 Only generic fields (_id, id, name) are described
3852 For a full specification of the NetSlice Template see:
3853 http://osm-download.etsi.org/ftp/osm-doc/nst.html
3854 type: object
3855 properties:
3856 _id:
3857 description: NetSlice Template Identifier
3858 type: string
3859 format: uuid
3860 id:
3861 description: Human readable NetSlice Template Identifier
3862 type: string
3863 name:
3864 description: Human readable name of the NetSlice Template
3865 type: string
3866 nst:
3867 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nst.html'
3868 ArrayOfNstInfo:
3869 type: array
3870 items:
3871 $ref: '#/components/schemas/NstInfo'
3872 CreateNstInfoRequest:
3873 # A free list of key:value pairs
3874 type: object
3875 additionalProperties: true
3876 NetSliceTemplate:
3877 type: string
3878 format: yaml|json
3879 NetSlicePackage:
3880 type: string
3881 format: binary
3882 NstInfoModifications:
3883 description: |
3884 NetSlice Template Information
3885 Only generic fields (id, name) are described
3886 For a full specification of the NetSlice Template see:
3887 http://osm-download.etsi.org/ftp/osm-doc/nst.html
3888 type: object
3889 properties:
3890 id:
3891 description: NST Identifier
3892 type: string
3893 name:
3894 description: NST Name
3895 type: string
3896 nsd:
3897 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nst.html'
3898 NetSliceInstance:
3899 description: |
3900 NetSlice Instance Information
3901 Only generic fields (_id, id, name, description) are described
3902 For a full specification of the NetSlice Instance see:
3903 http://osm-download.etsi.org/ftp/osm-doc/nsi.html
3904 type: object
3905 properties:
3906 _id:
3907 description: Identifier of the NetSlice instance.
3908 type: string
3909 format: uuid
3910 id:
3911 description: Identifier of the NetSlice instance.
3912 type: string
3913 format: uuid
3914 name:
3915 description: Human readable name of the NetSlice instance.
3916 type: string
3917 description:
3918 description: Human readable description of the NetSlice instance.
3919 type: string
3920 nsi:
3921 $ref: 'http://osm-download.etsi.org/ftp/osm-doc/nsi.html'
3922 required:
3923 - _id
3924 - id
3925 - name
3926 ArrayOfNetSliceInstance:
3927 type: array
3928 items:
3929 $ref: '#/components/schemas/NetSliceInstance'
3930 CreateNsiRequest:
3931 type: object
3932 properties:
3933 nstId:
3934 description: |
3935 Identifier of the NST that defines the NetSlice instance to be created.
3936 type: string
3937 format: uuid
3938 nsiName:
3939 description: |
3940 Human-readable name of the NetSlice instance to be created.
3941 type: string
3942 nsiDescription:
3943 description: |
3944 Human-readable description of the NetSlice instance to be created.
3945 type: string
3946 vimAccountId:
3947 description: |
3948 Identifier of the VIM Account where the NetSlice instance shall be created.
3949 type: string
3950 format: uuid
3951 required:
3952 - nstId
3953 - nsiName
3954 - vimAccountId
3955 InstantiateNsiRequest:
3956 type: object
3957 properties:
3958 nsiName:
3959 description: |
3960 Human-readable name of the NetSlice instance to be created.
3961 type: string
3962 nstId:
3963 description: |
3964 Identifier of the NST that defines the NetSlice instance to be created.
3965 type: string
3966 format: uuid
3967 vimAccountId:
3968 description: |
3969 Identifier of the VIM Account where the NetSlice instance shall be created.
3970 type: string
3971 format: uuid
3972 required:
3973 - nsiName
3974 - nstId
3975 - vimAccountId
3976 TerminateNsiRequest:
3977 type: object
3978 properties:
3979 terminationTime:
3980 description: |
3981 Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
3982 automatically at this timestamp. Cardinality "0" indicates the NSI termination
3983 takes place immediately.
3984 type: string
3985 format: date-time
3986 NsiActionRequest:
3987 type: object
3988 properties:
3989 primitive:
3990 type: string
3991 primitive_params:
3992 $ref: '#/components/schemas/KeyValuePairs'
3993 lcmOperationType:
3994 type: string
3995 netsliceInstanceId:
3996 type: string
3997 format: uuid
3998 required:
3999 - primitive
4000 - primitive_params
4001 CreateNsiContentRequest:
4002 type: object
4003 properties:
4004 nstId:
4005 description: |
4006 Identifier of the NST that defines the NetSlice instance to be created.
4007 type: string
4008 format: uuid
4009 nsiName:
4010 description: |
4011 Human-readable name of the NetSlice instance to be created.
4012 type: string
4013 vimAccountId:
4014 description: |
4015 Identifier of the VIM Account where the NetSlice instance shall be created.
4016 type: string
4017 format: uuid
4018 required:
4019 - nsdId
4020 - nsName
4021 - vimAccountId
4022 CreateNsiContentResponse:
4023 type: object
4024 properties:
4025 id:
4026 type: string
4027 format: uuid
4028 nsilcmop_id:
4029 type: string
4030 format: uuid
4031 NsiLcmOpOcc:
4032 type: object
4033 properties:
4034 _id:
4035 type: string
4036 format: uuid
4037 id:
4038 type: string
4039 format: uuid
4040 lcmOperationType:
4041 type: string
4042 netsliceInstanceId:
4043 type: string
4044 format: uuid
4045 isAutomaticInvocation:
4046 type: boolean
4047 isCancelPending:
4048 type: boolean
4049 startTime:
4050 type: number
4051 format: float
4052 statusEnteredTime:
4053 type: number
4054 format: float
4055 operationParams:
4056 type: object
4057 properties:
4058 nsiName:
4059 type: string
4060 nstId:
4061 type: string
4062 format: uuid
4063 vimAccountId:
4064 type: string
4065 format: uuid
4066 netsliceInstanceId:
4067 type: string
4068 format: uuid
4069 lcmOperationType:
4070 type: string
4071 nslcmops_ids:
4072 type: array
4073 items:
4074 type: string
4075 format: uuid
4076 operationState:
4077 type: string
4078 detailed-status:
4079 type: string
4080 links:
4081 type: object
4082 properties:
4083 self:
4084 type: string
4085 format: path # uri?
4086 netsliceInstanceId:
4087 type: string
4088 format: path # uri?
4089 ArrayOfNsiLcmOpOcc:
4090 type: array
4091 items:
4092 $ref: '#/components/schemas/NsiLcmOpOcc'
4093 # END SCHEMAS
4094
garciadeblas60e2ee92018-02-27 19:09:51 +01004095 requestBodies:
4096 CreateNsdInfoRequest:
4097 content:
4098 application/json:
4099 schema:
4100 $ref: '#/components/schemas/CreateNsdInfoRequest'
4101 application/yaml:
4102 schema:
4103 $ref: '#/components/schemas/CreateNsdInfoRequest'
4104 NsdInfoModifications:
4105 content:
4106 application/json:
4107 schema:
4108 $ref: '#/components/schemas/NsdInfoModifications'
4109 application/yaml:
4110 schema:
4111 $ref: '#/components/schemas/NsdInfoModifications'
delacruzramfb52ade2019-10-07 16:46:59 +02004112 NsDescriptor:
garciadeblas60e2ee92018-02-27 19:09:51 +01004113 content:
4114 text/plain:
4115 schema:
4116 $ref: '#/components/schemas/NsDescriptor'
delacruzramfb52ade2019-10-07 16:46:59 +02004117 NsPackage:
4118 content:
garciadeblas60e2ee92018-02-27 19:09:51 +01004119 application/zip:
4120 schema:
4121 $ref: '#/components/schemas/NsPackage'
garciadeblas63fe88c2018-02-28 19:32:41 +01004122 CreateVnfPkgInfoRequest:
4123 content:
4124 application/json:
4125 schema:
4126 $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
4127 application/yaml:
4128 schema:
4129 $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
4130 VnfPkgInfoModifications:
4131 content:
4132 application/json:
4133 schema:
4134 $ref: '#/components/schemas/VnfPkgInfoModifications'
4135 application/yaml:
4136 schema:
4137 $ref: '#/components/schemas/VnfPkgInfoModifications'
4138 VnfPackage:
4139 content:
4140 application/zip:
4141 schema:
4142 $ref: '#/components/schemas/VnfPackage'
delacruzramfb52ade2019-10-07 16:46:59 +02004143 VnfDescriptor:
garciadeblas63fe88c2018-02-28 19:32:41 +01004144 content:
delacruzramfb52ade2019-10-07 16:46:59 +02004145 text/plain:
garciadeblas63fe88c2018-02-28 19:32:41 +01004146 schema:
delacruzramfb52ade2019-10-07 16:46:59 +02004147 $ref: '#/components/schemas/VnfDescriptor'
garciadeblas12fcc4b2018-03-02 16:12:02 +01004148 CreateNsRequest:
4149 content:
4150 application/json:
4151 schema:
4152 $ref: '#/components/schemas/CreateNsRequest'
4153 application/yaml:
4154 schema:
4155 $ref: '#/components/schemas/CreateNsRequest'
4156 InstantiateNsRequest:
4157 content:
4158 application/json:
4159 schema:
4160 $ref: '#/components/schemas/InstantiateNsRequest'
4161 application/yaml:
4162 schema:
4163 $ref: '#/components/schemas/InstantiateNsRequest'
4164 ScaleNsRequest:
4165 content:
4166 application/json:
4167 schema:
4168 $ref: '#/components/schemas/ScaleNsRequest'
4169 application/yaml:
4170 schema:
4171 $ref: '#/components/schemas/ScaleNsRequest'
garciadeblas12fcc4b2018-03-02 16:12:02 +01004172 TerminateNsRequest:
4173 content:
4174 application/json:
4175 schema:
4176 $ref: '#/components/schemas/TerminateNsRequest'
4177 application/yaml:
4178 schema:
4179 $ref: '#/components/schemas/TerminateNsRequest'
delacruzramfb52ade2019-10-07 16:46:59 +02004180 CreateNSinstanceContentRequest:
4181 content:
4182 application/json:
4183 schema:
4184 $ref: '#/components/schemas/CreateNSinstanceContentRequest'
4185 application/yaml:
4186 schema:
4187 $ref: '#/components/schemas/CreateNSinstanceContentRequest'
4188 CreateNstInfoRequest:
4189 content:
4190 application/json:
4191 schema:
4192 $ref: '#/components/schemas/CreateNstInfoRequest'
4193 application/yaml:
4194 schema:
4195 $ref: '#/components/schemas/CreateNstInfoRequest'
4196 NetSliceTemplate:
4197 content:
4198 text/plain:
4199 schema:
4200 $ref: '#/components/schemas/NetSliceTemplate'
4201 NetSlicePackage:
4202 content:
4203 application/zip:
4204 schema:
4205 $ref: '#/components/schemas/NetSlicePackage'
4206 NstInfoModifications:
4207 content:
4208 application/json:
4209 schema:
4210 $ref: '#/components/schemas/NstInfoModifications'
4211 application/yaml:
4212 schema:
4213 $ref: '#/components/schemas/NstInfoModifications'
4214 CreateNsiRequest:
4215 content:
4216 application/json:
4217 schema:
4218 $ref: '#/components/schemas/CreateNsiRequest'
4219 application/yaml:
4220 schema:
4221 $ref: '#/components/schemas/CreateNsiRequest'
4222 InstantiateNsiRequest:
4223 content:
4224 application/json:
4225 schema:
4226 $ref: '#/components/schemas/InstantiateNsiRequest'
4227 application/yaml:
4228 schema:
4229 $ref: '#/components/schemas/InstantiateNsiRequest'
4230 TerminateNsiRequest:
4231 content:
4232 application/json:
4233 schema:
4234 $ref: '#/components/schemas/TerminateNsiRequest'
4235 application/yaml:
4236 schema:
4237 $ref: '#/components/schemas/TerminateNsiRequest'
4238 NsiActionRequest:
4239 content:
4240 application/json:
4241 schema:
4242 $ref: '#/components/schemas/NsiActionRequest'
4243 application/yaml:
4244 schema:
4245 $ref: '#/components/schemas/NsiActionRequest'
4246 CreateNsiContentRequest:
4247 content:
4248 application/json:
4249 schema:
4250 $ref: '#/components/schemas/CreateNsiContentRequest'
4251 application/yaml:
4252 schema:
4253 $ref: '#/components/schemas/CreateNsiContentRequest'
4254 # END REQUEST BODIES
4255
garciadeblas60e2ee92018-02-27 19:09:51 +01004256 securitySchemes:
4257 bearerAuth:
4258 type: http
4259 scheme: bearer