blob: 8c57f4349486732802c789ed2a45b62de69fe187 [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
delacruzramfb52ade2019-10-07 16:46:59 +02003484 NsdInfo:
3485 description: |
3486 NS Descriptor Information
3487 Only generic fields (_id, id, name, description) are described
3488 For a full specification of the NS Descriptor see:
3489 http://osm-download.etsi.org/ftp/osm-doc/nsd.html
3490 type: object
3491 properties:
3492 _id:
garciadeblas60e2ee92018-02-27 19:09:51 +01003493 description: |
garciadeblas12fcc4b2018-03-02 16:12:02 +01003494 Identifier of the onboarded individual NS descriptor
3495 resource. This identifier is allocated by the NFVO.
garciadeblas60e2ee92018-02-27 19:09:51 +01003496 type: string
3497 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003498 id:
garciadeblas60e2ee92018-02-27 19:09:51 +01003499 description: |
3500 This identifier, which is allocated by the NSD
3501 designer, identifies the NSD in a globally unique
3502 way. It is copied from the NSD content and shall be
3503 present after the NSD content is on-boarded.
3504 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003505 name:
garciadeblas60e2ee92018-02-27 19:09:51 +01003506 description: |
3507 Name of the onboarded NSD. This information is
3508 copied from the NSD content and shall be present
garciadeblas60e2ee92018-02-27 19:09:51 +01003509 after the NSD content is on-boarded.
3510 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003511 description:
garciadeblas60e2ee92018-02-27 19:09:51 +01003512 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003513 Description of the onboarded NSD.
3514 This information is copied from the NSD content.
garciadeblas60e2ee92018-02-27 19:09:51 +01003515 type: string
garciadeblas60e2ee92018-02-27 19:09:51 +01003516 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003517 - _id
garciadeblas60e2ee92018-02-27 19:09:51 +01003518 - id
3519 ArrayOfNsdInfo:
3520 type: array
3521 items:
3522 $ref: '#/components/schemas/NsdInfo'
garciadeblas60e2ee92018-02-27 19:09:51 +01003523 ProblemDetails:
3524 type: object
3525 properties:
3526 type:
3527 type: string
3528 format: uri
3529 title:
3530 type: string
3531 status:
3532 type: integer
3533 detail:
3534 type: string
3535 instance:
3536 type: string
3537 format: uri
3538 additionalProperties: true
3539 required:
3540 - status
3541 - detail
garciadeblas63fe88c2018-02-28 19:32:41 +01003542 VnfDescriptor:
3543 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003544 format: yaml|json
garciadeblas63fe88c2018-02-28 19:32:41 +01003545 VnfPackage:
3546 type: string
3547 format: binary
3548 CreateVnfPkgInfoRequest:
delacruzramfb52ade2019-10-07 16:46:59 +02003549 # A free list of key:value pairs
garciadeblas63fe88c2018-02-28 19:32:41 +01003550 type: object
3551 additionalProperties: true
3552 VnfPkgInfoModifications:
delacruzramfb52ade2019-10-07 16:46:59 +02003553 description: |
3554 VNF Package Information
3555 Only generic fields (id, name, description) are described
3556 For a full specification of the VNF Descriptor see:
3557 http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
garciadeblas63fe88c2018-02-28 19:32:41 +01003558 type: object
3559 properties:
3560 id:
delacruzramfb52ade2019-10-07 16:46:59 +02003561 description: VNF Package Identifier
3562 type: string
3563 name:
3564 description: VNF Package Name
3565 type: string
3566 description:
3567 description: VNF Package description
3568 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003569 VnfPkgInfo:
3570 description: |
3571 VNF Package Information
3572 Only generic fields (_id, id, name, description) are described
3573 For a full specification of the VNF Descriptor see:
3574 http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
3575 type: object
3576 properties:
3577 _id:
garciadeblas63fe88c2018-02-28 19:32:41 +01003578 description: |
garciadeblas12fcc4b2018-03-02 16:12:02 +01003579 Identifier of the VNF package. This identifier is allocated by the NFVO.
garciadeblas63fe88c2018-02-28 19:32:41 +01003580 type: string
3581 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003582 id:
3583 description: VNF Package Identifier
garciadeblas63fe88c2018-02-28 19:32:41 +01003584 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003585 name:
3586 description: VNF Package Name
garciadeblas63fe88c2018-02-28 19:32:41 +01003587 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003588 description:
3589 description: VNF Package description
garciadeblas63fe88c2018-02-28 19:32:41 +01003590 type: string
garciadeblas63fe88c2018-02-28 19:32:41 +01003591 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003592 - _id
garciadeblas63fe88c2018-02-28 19:32:41 +01003593 - id
garciadeblas63fe88c2018-02-28 19:32:41 +01003594 ArrayOfVnfPkgInfo:
3595 type: array
3596 items:
3597 $ref: '#/components/schemas/VnfPkgInfo'
garciadeblas12fcc4b2018-03-02 16:12:02 +01003598 CreateNsRequest:
3599 type: object
3600 properties:
3601 nsdId:
3602 description: |
3603 Identifier of the NSD that defines the NS instance to be created.
3604 type: string
3605 format: uuid
3606 nsName:
3607 description: |
3608 Human-readable name of the NS instance to be created.
3609 type: string
3610 nsDescription:
3611 description: |
3612 Human-readable description of the NS instance to be created.
3613 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003614 vimAccountId:
3615 description: |
3616 Identifier of the VIM Account where the NS instance shall be created.
3617 type: string
3618 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003619 required:
3620 - nsdId
3621 - nsName
delacruzramfb52ade2019-10-07 16:46:59 +02003622 - vimAccountId
garciadeblas12fcc4b2018-03-02 16:12:02 +01003623 NsInstance:
delacruzramfb52ade2019-10-07 16:46:59 +02003624 description: |
3625 NS Instance Information
3626 Only generic fields (_id, id, name, description) are described
3627 For a full specification of the NS Instance see:
3628 http://osm-download.etsi.org/ftp/osm-doc/nsr.html
garciadeblas12fcc4b2018-03-02 16:12:02 +01003629 type: object
3630 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003631 _id:
3632 description: Identifier of the NS instance.
3633 type: string
3634 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003635 id:
3636 description: Identifier of the NS instance.
3637 type: string
3638 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003639 name:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003640 description: Human readable name of the NS instance.
3641 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003642 description:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003643 description: Human readable description of the NS instance.
3644 type: string
garciadeblas12fcc4b2018-03-02 16:12:02 +01003645 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003646 - _id
garciadeblas12fcc4b2018-03-02 16:12:02 +01003647 - id
delacruzramfb52ade2019-10-07 16:46:59 +02003648 - name
garciadeblas12fcc4b2018-03-02 16:12:02 +01003649 InstantiateNsRequest:
3650 type: object
3651 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003652 nsName:
3653 description: |
3654 Human-readable name of the NS instance to be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003655 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003656 nsdId:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003657 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003658 Identifier of the NSD that defines the NS instance to be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003659 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003660 format: uuid
3661 vimAccountId:
garciadeblas12fcc4b2018-03-02 16:12:02 +01003662 description: |
delacruzramfb52ade2019-10-07 16:46:59 +02003663 Identifier of the VIM Account where the NS instance shall be created.
garciadeblas12fcc4b2018-03-02 16:12:02 +01003664 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003665 format: uuid
garciadeblas12fcc4b2018-03-02 16:12:02 +01003666 required:
delacruzramfb52ade2019-10-07 16:46:59 +02003667 - nsName
3668 - nsdId
3669 - vimAccountId
garciadeblas12fcc4b2018-03-02 16:12:02 +01003670 ScaleNsRequest:
3671 type: object
garciadeblas12fcc4b2018-03-02 16:12:02 +01003672 properties:
delacruzramfb52ade2019-10-07 16:46:59 +02003673 scaleType:
3674 type: string
3675 enum:
3676 - SCALE_VNF
3677 scaleVnfData:
3678 type: object
3679 properties:
3680 scaleVnfType:
3681 type: string
3682 enum:
3683 - SCALE_IN
3684 - SCALE_OUT
3685 scaleByStepData:
3686 type: object
3687 properties:
3688 scaling-group-descriptor:
3689 type: string
3690 member-vnf-index:
3691 type: string
3692 additionalProperties: true
3693 additionalProperties: true
3694 additionalProperties: true
garciadeblas12fcc4b2018-03-02 16:12:02 +01003695 TerminateNsRequest:
3696 type: object
3697 properties:
3698 terminationTime:
3699 description: |
3700 Timestamp indicating the end time of the NS, i.e. the NS will be terminated
3701 automatically at this timestamp. Cardinality "0" indicates the NS termination
3702 takes place immediately.
3703 type: string
3704 format: date-time
3705 ArrayOfNsInstance:
3706 type: array
3707 items:
3708 $ref: '#/components/schemas/NsInstance'
delacruzramfb52ade2019-10-07 16:46:59 +02003709 NSinstanceActionRequest:
3710 type: object
3711 properties:
3712 primitive:
3713 type: string
3714 primitive_params:
3715 $ref: '#/components/schemas/KeyValuePairs'
3716 lcmOperationType:
3717 type: string
3718 nsInstanceId:
3719 type: string
3720 format: uuid
3721 member_vnf_index:
3722 type: string
3723 vdu_id:
3724 type: string
3725 vdu_count_index:
3726 type: integer
3727 required:
3728 - primitive
3729 - primitive_params
3730 additionalProperties: false
3731 CreateNSinstanceContentRequest:
3732 type: object
3733 properties:
3734 nsdId:
3735 description: |
3736 Identifier of the NSD that defines the NS instance to be created.
3737 type: string
3738 format: uuid
3739 nsName:
3740 description: |
3741 Human-readable name of the NS instance to be created.
3742 type: string
3743 vimAccountId:
3744 description: |
3745 Identifier of the VIM Account where the NS instance shall be created.
3746 type: string
3747 format: uuid
3748 required:
3749 - nsdId
3750 - nsName
3751 - vimAccountId
3752 CreateNSinstanceContentResponse:
3753 type: object
3754 properties:
3755 id:
3756 type: string
3757 format: uuid
3758 nslcmop_id:
3759 type: string
3760 format: uuid
3761 NsLcmOpOcc:
3762 type: object
3763 properties:
3764 _id:
3765 type: string
3766 format: uuid
3767 id:
3768 type: string
3769 format: uuid
3770 lcmOperationType:
3771 type: string
3772 nsInstanceId:
3773 type: string
3774 format: uuid
3775 isAutomaticInvocation:
3776 type: boolean
3777 isCancelPending:
3778 type: boolean
3779 startTime:
3780 type: number
3781 format: float
3782 statusEnteredTime:
3783 type: number
3784 format: float
3785 operationParams:
3786 type: object
3787 properties:
3788 nsName:
3789 type: string
3790 nsdId:
3791 type: string
3792 format: uuid
3793 vimAccountId:
3794 type: string
3795 format: uuid
3796 nsInstanceId:
3797 type: string
3798 format: uuid
3799 lcmOperationType:
3800 type: string
3801 operationState:
3802 type: string
3803 detailed-status:
3804 type: string
3805 links:
3806 type: object
3807 properties:
3808 self:
3809 type: string
3810 format: path # uri?
3811 nsInstance:
3812 type: string
3813 format: path # uri?
3814 ArrayOfNsLcmOpOcc:
3815 type: array
3816 items:
3817 $ref: '#/components/schemas/NsLcmOpOcc'
3818 VnfInstanceInfo:
3819 description: |
3820 VNF Instance Information
3821 Only generic fields (_id, id) are described
3822 For a full specification of the VNF Instance see:
3823 http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
3824 type: object
3825 properties:
3826 _id:
3827 type: string
3828 format: uuid
3829 id:
3830 type: string
3831 format: uuid
delacruzramfb52ade2019-10-07 16:46:59 +02003832 ArrayOfVnfInstanceInfo:
3833 type: array
3834 items:
3835 $ref: '#/components/schemas/VnfInstanceInfo'
3836 NstInfo:
3837 description: |
3838 NetSlice Template Information
3839 Only generic fields (_id, id, name) are described
3840 For a full specification of the NetSlice Template see:
3841 http://osm-download.etsi.org/ftp/osm-doc/nst.html
3842 type: object
3843 properties:
3844 _id:
3845 description: NetSlice Template Identifier
3846 type: string
3847 format: uuid
3848 id:
3849 description: Human readable NetSlice Template Identifier
3850 type: string
3851 name:
3852 description: Human readable name of the NetSlice Template
3853 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003854 ArrayOfNstInfo:
3855 type: array
3856 items:
3857 $ref: '#/components/schemas/NstInfo'
3858 CreateNstInfoRequest:
3859 # A free list of key:value pairs
3860 type: object
3861 additionalProperties: true
3862 NetSliceTemplate:
3863 type: string
3864 format: yaml|json
3865 NetSlicePackage:
3866 type: string
3867 format: binary
3868 NstInfoModifications:
3869 description: |
3870 NetSlice Template Information
3871 Only generic fields (id, name) are described
3872 For a full specification of the NetSlice Template see:
3873 http://osm-download.etsi.org/ftp/osm-doc/nst.html
3874 type: object
3875 properties:
3876 id:
3877 description: NST Identifier
3878 type: string
3879 name:
3880 description: NST Name
3881 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003882 NetSliceInstance:
3883 description: |
3884 NetSlice Instance Information
3885 Only generic fields (_id, id, name, description) are described
3886 For a full specification of the NetSlice Instance see:
3887 http://osm-download.etsi.org/ftp/osm-doc/nsi.html
3888 type: object
3889 properties:
3890 _id:
3891 description: Identifier of the NetSlice instance.
3892 type: string
3893 format: uuid
3894 id:
3895 description: Identifier of the NetSlice instance.
3896 type: string
3897 format: uuid
3898 name:
3899 description: Human readable name of the NetSlice instance.
3900 type: string
3901 description:
3902 description: Human readable description of the NetSlice instance.
3903 type: string
delacruzramfb52ade2019-10-07 16:46:59 +02003904 required:
3905 - _id
3906 - id
3907 - name
3908 ArrayOfNetSliceInstance:
3909 type: array
3910 items:
3911 $ref: '#/components/schemas/NetSliceInstance'
3912 CreateNsiRequest:
3913 type: object
3914 properties:
3915 nstId:
3916 description: |
3917 Identifier of the NST that defines the NetSlice instance to be created.
3918 type: string
3919 format: uuid
3920 nsiName:
3921 description: |
3922 Human-readable name of the NetSlice instance to be created.
3923 type: string
3924 nsiDescription:
3925 description: |
3926 Human-readable description of the NetSlice instance to be created.
3927 type: string
3928 vimAccountId:
3929 description: |
3930 Identifier of the VIM Account where the NetSlice instance shall be created.
3931 type: string
3932 format: uuid
3933 required:
3934 - nstId
3935 - nsiName
3936 - vimAccountId
3937 InstantiateNsiRequest:
3938 type: object
3939 properties:
3940 nsiName:
3941 description: |
3942 Human-readable name of the NetSlice instance to be created.
3943 type: string
3944 nstId:
3945 description: |
3946 Identifier of the NST that defines the NetSlice instance to be created.
3947 type: string
3948 format: uuid
3949 vimAccountId:
3950 description: |
3951 Identifier of the VIM Account where the NetSlice instance shall be created.
3952 type: string
3953 format: uuid
3954 required:
3955 - nsiName
3956 - nstId
3957 - vimAccountId
3958 TerminateNsiRequest:
3959 type: object
3960 properties:
3961 terminationTime:
3962 description: |
3963 Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
3964 automatically at this timestamp. Cardinality "0" indicates the NSI termination
3965 takes place immediately.
3966 type: string
3967 format: date-time
3968 NsiActionRequest:
3969 type: object
3970 properties:
3971 primitive:
3972 type: string
3973 primitive_params:
3974 $ref: '#/components/schemas/KeyValuePairs'
3975 lcmOperationType:
3976 type: string
3977 netsliceInstanceId:
3978 type: string
3979 format: uuid
3980 required:
3981 - primitive
3982 - primitive_params
3983 CreateNsiContentRequest:
3984 type: object
3985 properties:
3986 nstId:
3987 description: |
3988 Identifier of the NST that defines the NetSlice instance to be created.
3989 type: string
3990 format: uuid
3991 nsiName:
3992 description: |
3993 Human-readable name of the NetSlice instance to be created.
3994 type: string
3995 vimAccountId:
3996 description: |
3997 Identifier of the VIM Account where the NetSlice instance shall be created.
3998 type: string
3999 format: uuid
4000 required:
4001 - nsdId
4002 - nsName
4003 - vimAccountId
4004 CreateNsiContentResponse:
4005 type: object
4006 properties:
4007 id:
4008 type: string
4009 format: uuid
4010 nsilcmop_id:
4011 type: string
4012 format: uuid
4013 NsiLcmOpOcc:
4014 type: object
4015 properties:
4016 _id:
4017 type: string
4018 format: uuid
4019 id:
4020 type: string
4021 format: uuid
4022 lcmOperationType:
4023 type: string
4024 netsliceInstanceId:
4025 type: string
4026 format: uuid
4027 isAutomaticInvocation:
4028 type: boolean
4029 isCancelPending:
4030 type: boolean
4031 startTime:
4032 type: number
4033 format: float
4034 statusEnteredTime:
4035 type: number
4036 format: float
4037 operationParams:
4038 type: object
4039 properties:
4040 nsiName:
4041 type: string
4042 nstId:
4043 type: string
4044 format: uuid
4045 vimAccountId:
4046 type: string
4047 format: uuid
4048 netsliceInstanceId:
4049 type: string
4050 format: uuid
4051 lcmOperationType:
4052 type: string
4053 nslcmops_ids:
4054 type: array
4055 items:
4056 type: string
4057 format: uuid
4058 operationState:
4059 type: string
4060 detailed-status:
4061 type: string
4062 links:
4063 type: object
4064 properties:
4065 self:
4066 type: string
4067 format: path # uri?
4068 netsliceInstanceId:
4069 type: string
4070 format: path # uri?
4071 ArrayOfNsiLcmOpOcc:
4072 type: array
4073 items:
4074 $ref: '#/components/schemas/NsiLcmOpOcc'
4075 # END SCHEMAS
4076
garciadeblas60e2ee92018-02-27 19:09:51 +01004077 requestBodies:
4078 CreateNsdInfoRequest:
4079 content:
4080 application/json:
4081 schema:
4082 $ref: '#/components/schemas/CreateNsdInfoRequest'
4083 application/yaml:
4084 schema:
4085 $ref: '#/components/schemas/CreateNsdInfoRequest'
4086 NsdInfoModifications:
4087 content:
4088 application/json:
4089 schema:
4090 $ref: '#/components/schemas/NsdInfoModifications'
4091 application/yaml:
4092 schema:
4093 $ref: '#/components/schemas/NsdInfoModifications'
delacruzramfb52ade2019-10-07 16:46:59 +02004094 NsDescriptor:
garciadeblas60e2ee92018-02-27 19:09:51 +01004095 content:
4096 text/plain:
4097 schema:
4098 $ref: '#/components/schemas/NsDescriptor'
delacruzramfb52ade2019-10-07 16:46:59 +02004099 NsPackage:
4100 content:
garciadeblas60e2ee92018-02-27 19:09:51 +01004101 application/zip:
4102 schema:
4103 $ref: '#/components/schemas/NsPackage'
garciadeblas63fe88c2018-02-28 19:32:41 +01004104 CreateVnfPkgInfoRequest:
4105 content:
4106 application/json:
4107 schema:
4108 $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
4109 application/yaml:
4110 schema:
4111 $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
4112 VnfPkgInfoModifications:
4113 content:
4114 application/json:
4115 schema:
4116 $ref: '#/components/schemas/VnfPkgInfoModifications'
4117 application/yaml:
4118 schema:
4119 $ref: '#/components/schemas/VnfPkgInfoModifications'
4120 VnfPackage:
4121 content:
4122 application/zip:
4123 schema:
4124 $ref: '#/components/schemas/VnfPackage'
delacruzramfb52ade2019-10-07 16:46:59 +02004125 VnfDescriptor:
garciadeblas63fe88c2018-02-28 19:32:41 +01004126 content:
delacruzramfb52ade2019-10-07 16:46:59 +02004127 text/plain:
garciadeblas63fe88c2018-02-28 19:32:41 +01004128 schema:
delacruzramfb52ade2019-10-07 16:46:59 +02004129 $ref: '#/components/schemas/VnfDescriptor'
garciadeblas12fcc4b2018-03-02 16:12:02 +01004130 CreateNsRequest:
4131 content:
4132 application/json:
4133 schema:
4134 $ref: '#/components/schemas/CreateNsRequest'
4135 application/yaml:
4136 schema:
4137 $ref: '#/components/schemas/CreateNsRequest'
4138 InstantiateNsRequest:
4139 content:
4140 application/json:
4141 schema:
4142 $ref: '#/components/schemas/InstantiateNsRequest'
4143 application/yaml:
4144 schema:
4145 $ref: '#/components/schemas/InstantiateNsRequest'
4146 ScaleNsRequest:
4147 content:
4148 application/json:
4149 schema:
4150 $ref: '#/components/schemas/ScaleNsRequest'
4151 application/yaml:
4152 schema:
4153 $ref: '#/components/schemas/ScaleNsRequest'
garciadeblas12fcc4b2018-03-02 16:12:02 +01004154 TerminateNsRequest:
4155 content:
4156 application/json:
4157 schema:
4158 $ref: '#/components/schemas/TerminateNsRequest'
4159 application/yaml:
4160 schema:
4161 $ref: '#/components/schemas/TerminateNsRequest'
delacruzramfb52ade2019-10-07 16:46:59 +02004162 CreateNSinstanceContentRequest:
4163 content:
4164 application/json:
4165 schema:
4166 $ref: '#/components/schemas/CreateNSinstanceContentRequest'
4167 application/yaml:
4168 schema:
4169 $ref: '#/components/schemas/CreateNSinstanceContentRequest'
4170 CreateNstInfoRequest:
4171 content:
4172 application/json:
4173 schema:
4174 $ref: '#/components/schemas/CreateNstInfoRequest'
4175 application/yaml:
4176 schema:
4177 $ref: '#/components/schemas/CreateNstInfoRequest'
4178 NetSliceTemplate:
4179 content:
4180 text/plain:
4181 schema:
4182 $ref: '#/components/schemas/NetSliceTemplate'
4183 NetSlicePackage:
4184 content:
4185 application/zip:
4186 schema:
4187 $ref: '#/components/schemas/NetSlicePackage'
4188 NstInfoModifications:
4189 content:
4190 application/json:
4191 schema:
4192 $ref: '#/components/schemas/NstInfoModifications'
4193 application/yaml:
4194 schema:
4195 $ref: '#/components/schemas/NstInfoModifications'
4196 CreateNsiRequest:
4197 content:
4198 application/json:
4199 schema:
4200 $ref: '#/components/schemas/CreateNsiRequest'
4201 application/yaml:
4202 schema:
4203 $ref: '#/components/schemas/CreateNsiRequest'
4204 InstantiateNsiRequest:
4205 content:
4206 application/json:
4207 schema:
4208 $ref: '#/components/schemas/InstantiateNsiRequest'
4209 application/yaml:
4210 schema:
4211 $ref: '#/components/schemas/InstantiateNsiRequest'
4212 TerminateNsiRequest:
4213 content:
4214 application/json:
4215 schema:
4216 $ref: '#/components/schemas/TerminateNsiRequest'
4217 application/yaml:
4218 schema:
4219 $ref: '#/components/schemas/TerminateNsiRequest'
4220 NsiActionRequest:
4221 content:
4222 application/json:
4223 schema:
4224 $ref: '#/components/schemas/NsiActionRequest'
4225 application/yaml:
4226 schema:
4227 $ref: '#/components/schemas/NsiActionRequest'
4228 CreateNsiContentRequest:
4229 content:
4230 application/json:
4231 schema:
4232 $ref: '#/components/schemas/CreateNsiContentRequest'
4233 application/yaml:
4234 schema:
4235 $ref: '#/components/schemas/CreateNsiContentRequest'
4236 # END REQUEST BODIES
4237
garciadeblas60e2ee92018-02-27 19:09:51 +01004238 securitySchemes:
4239 bearerAuth:
4240 type: http
4241 scheme: bearer