c167e74c3b2c11267b6f7d7e3f5668adf497b7a2
[osm/SOL005.git] / osm-openapi.yaml
1 openapi: 3.0.0
2
3 servers:
4   - description: OSM NB API
5     url: 'https://osm.etsi.org/nbapi/v1.0.0'
6
7 info:
8   description: |
9     This is Open Source MANO Northbound API featuring ETSI NFV SOL005.
10     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)
13   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'
20
21 tags:
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
28   - name: 'NetSlice templates'
29     description: Management operations of NetSlice Templates
30   - name: 'NetSlice instances'
31     description: Management operations of NetSlice Instances
32   - name: 'NS Performance Management'
33     description: Management operations related to Performance Mangement of NS instances
34   - name: 'Physical Data Units (PDU)'
35     description: Management operations of PDUs
36   - name: 'Authentication'
37     description: Authentication operations
38   - name: 'Identity'
39     description: Management operations of users, projects and roles
40   - name: 'Infrastructure'
41     description: Management operations of VIM, VIM accounts, WIM and SDN controllers
42   - name: 'Repositories'
43     description: Management operations of repositories
44   - name: 'Admin'
45     description: Management operations of Administration items
46
47 security:
48   - bearerAuth: []
49
50 paths:
51
52 # BEGIN NS Packages
53   '/nsd/v1/ns_descriptors':
54     get:
55       tags:
56         - "NS packages"
57       summary: Query information about multiple NS descriptor resources
58       description: Query information about multiple NS descriptor resources
59       operationId: getNSDs
60       responses:
61         '200':
62           description: OK
63           content:
64             application/json:
65               schema:
66                 $ref: '#/components/schemas/ArrayOfNsdInfo'
67             application/yaml:
68               schema:
69                 $ref: '#/components/schemas/ArrayOfNsdInfo'
70         '400':
71           $ref: '#/components/responses/BadRequest'
72         '401':
73           $ref: '#/components/responses/Unauthorized'
74         '403':
75           $ref: '#/components/responses/Forbidden'
76         '404':
77           $ref: '#/components/responses/NotFound'
78         '405':
79           $ref: '#/components/responses/MethodNotAllowed'
80         '406':
81           $ref: '#/components/responses/NotAcceptable'
82         '409':
83           $ref: '#/components/responses/Conflict'
84         '422':
85           $ref: '#/components/responses/UnprocessableEntity'
86         '500':
87           $ref: '#/components/responses/InternalServerError'
88         '503':
89           $ref: '#/components/responses/ServiceUnavailable'
90         '5XX':
91           $ref: '#/components/responses/UnexpectedError'
92         default:
93           $ref: '#/components/responses/UnexpectedError'
94     post:
95       tags:
96         - "NS packages"
97       summary: Create a new NS descriptor resource
98       description: Create a new NS descriptor resource
99       operationId: addNSD
100       requestBody:
101         $ref: '#/components/requestBodies/CreateNsdInfoRequest'
102       responses:
103         '201':
104           description: Created
105           headers:
106             Location:
107               schema:
108                 type: string
109                 format: uri
110           content:
111             application/json:
112               schema:
113                 $ref: '#/components/schemas/ObjectId'
114             application/yaml:
115               schema:
116                 $ref: '#/components/schemas/ObjectId'
117         '400':
118           $ref: '#/components/responses/BadRequest'
119         '401':
120           $ref: '#/components/responses/Unauthorized'
121         '403':
122           $ref: '#/components/responses/Forbidden'
123         '404':
124           $ref: '#/components/responses/NotFound'
125         '405':
126           $ref: '#/components/responses/MethodNotAllowed'
127         '406':
128           $ref: '#/components/responses/NotAcceptable'
129         '409':
130           $ref: '#/components/responses/Conflict'
131         '422':
132           $ref: '#/components/responses/UnprocessableEntity'
133         '500':
134           $ref: '#/components/responses/InternalServerError'
135         '503':
136           $ref: '#/components/responses/ServiceUnavailable'
137         '5XX':
138           $ref: '#/components/responses/UnexpectedError'
139         default:
140           $ref: '#/components/responses/UnexpectedError'
141   '/nsd/v1/ns_descriptors/{nsdInfoId}':
142     parameters:
143       - name: nsdInfoId
144         in: path
145         required: true
146         description: NSD Info ID
147         schema:
148           type: string
149     get:
150       tags:
151         - "NS packages"
152       summary: Read information about an individual NS descriptor resource
153       description: Read information about an individual NS descriptor resource
154       operationId: getNSD
155       responses:
156         '200':
157           description: OK
158           content:
159             application/json:
160               schema:
161                 $ref: '#/components/schemas/NsdInfo'
162             application/yaml:
163               schema:
164                 $ref: '#/components/schemas/NsdInfo'
165         '400':
166           $ref: '#/components/responses/BadRequest'
167         '401':
168           $ref: '#/components/responses/Unauthorized'
169         '403':
170           $ref: '#/components/responses/Forbidden'
171         '404':
172           $ref: '#/components/responses/NotFound'
173         '405':
174           $ref: '#/components/responses/MethodNotAllowed'
175         '406':
176           $ref: '#/components/responses/NotAcceptable'
177         '409':
178           $ref: '#/components/responses/Conflict'
179         '422':
180           $ref: '#/components/responses/UnprocessableEntity'
181         '500':
182           $ref: '#/components/responses/InternalServerError'
183         '503':
184           $ref: '#/components/responses/ServiceUnavailable'
185         '5XX':
186           $ref: '#/components/responses/UnexpectedError'
187         default:
188           $ref: '#/components/responses/UnexpectedError'
189     delete:
190       tags:
191         - "NS packages"
192       summary: Delete an individual NS descriptor resource
193       description: Delete an individual NS descriptor resource
194       operationId: deleteNSD
195       responses:
196         '204':
197           description: No Content
198         '400':
199           $ref: '#/components/responses/BadRequest'
200         '401':
201           $ref: '#/components/responses/Unauthorized'
202         '403':
203           $ref: '#/components/responses/Forbidden'
204         '404':
205           $ref: '#/components/responses/NotFound'
206         '405':
207           $ref: '#/components/responses/MethodNotAllowed'
208         '406':
209           $ref: '#/components/responses/NotAcceptable'
210         '409':
211           $ref: '#/components/responses/Conflict'
212         '422':
213           $ref: '#/components/responses/UnprocessableEntity'
214         '500':
215           $ref: '#/components/responses/InternalServerError'
216         '503':
217           $ref: '#/components/responses/ServiceUnavailable'
218         '5XX':
219           $ref: '#/components/responses/UnexpectedError'
220         default:
221           $ref: '#/components/responses/UnexpectedError'
222     patch:
223       tags:
224         - "NS packages"
225       summary: Modify the data of an  individual NS descriptor resource
226       description: Modify the data of an  individual NS descriptor resource
227       operationId: updateNSD
228       requestBody:
229         $ref: '#/components/requestBodies/NsdInfoModifications'
230       responses:
231         '204':
232           description: No Content
233         '400':
234           $ref: '#/components/responses/BadRequest'
235         '401':
236           $ref: '#/components/responses/Unauthorized'
237         '403':
238           $ref: '#/components/responses/Forbidden'
239         '404':
240           $ref: '#/components/responses/NotFound'
241         '405':
242           $ref: '#/components/responses/MethodNotAllowed'
243         '406':
244           $ref: '#/components/responses/NotAcceptable'
245         '409':
246           $ref: '#/components/responses/Conflict'
247         '422':
248           $ref: '#/components/responses/UnprocessableEntity'
249         '500':
250           $ref: '#/components/responses/InternalServerError'
251         '503':
252           $ref: '#/components/responses/ServiceUnavailable'
253         '5XX':
254           $ref: '#/components/responses/UnexpectedError'
255         default:
256           $ref: '#/components/responses/UnexpectedError'
257   '/nsd/v1/ns_descriptors/{nsdInfoId}/nsd_content':
258     parameters:
259       - name: nsdInfoId
260         in: path
261         required: true
262         description: NSD Info ID
263         schema:
264           type: string
265     get:
266       tags:
267         - "NS packages"
268       summary: Fetch the content of a NSD
269       description: Fetch the content of a NSD
270       operationId: getNSDcontent
271       responses:
272         '200':
273           description: OK
274           content:
275             application/zip:
276               schema:
277                 $ref: '#/components/schemas/NsPackage'
278         '206':
279           description: Partial Content
280           headers:
281             Content-Range:
282               schema:
283                 type: string
284           content:
285             application/zip:
286               schema:
287                 $ref: '#/components/schemas/NsPackage'
288         '400':
289           $ref: '#/components/responses/BadRequest'
290         '401':
291           $ref: '#/components/responses/Unauthorized'
292         '403':
293           $ref: '#/components/responses/Forbidden'
294         '404':
295           $ref: '#/components/responses/NotFound'
296         '405':
297           $ref: '#/components/responses/MethodNotAllowed'
298         '406':
299           $ref: '#/components/responses/NotAcceptable'
300         '409':
301           $ref: '#/components/responses/Conflict'
302         '422':
303           $ref: '#/components/responses/UnprocessableEntity'
304         '500':
305           $ref: '#/components/responses/InternalServerError'
306         '503':
307           $ref: '#/components/responses/ServiceUnavailable'
308         '5XX':
309           $ref: '#/components/responses/UnexpectedError'
310         default:
311           $ref: '#/components/responses/UnexpectedError'
312     put:
313       tags:
314         - "NS packages"
315       summary: Upload the content of a NSD
316       description: Upload the content of a NSD
317       operationId: updateNSDcontent
318       requestBody:
319         $ref: '#/components/requestBodies/NsPackage'
320       responses:
321         '202':
322           description: Accepted
323         '204':
324           description: No Content
325         '400':
326           $ref: '#/components/responses/BadRequest'
327         '401':
328           $ref: '#/components/responses/Unauthorized'
329         '403':
330           $ref: '#/components/responses/Forbidden'
331         '404':
332           $ref: '#/components/responses/NotFound'
333         '405':
334           $ref: '#/components/responses/MethodNotAllowed'
335         '406':
336           $ref: '#/components/responses/NotAcceptable'
337         '409':
338           $ref: '#/components/responses/Conflict'
339         '422':
340           $ref: '#/components/responses/UnprocessableEntity'
341         '500':
342           $ref: '#/components/responses/InternalServerError'
343         '503':
344           $ref: '#/components/responses/ServiceUnavailable'
345         '5XX':
346           $ref: '#/components/responses/UnexpectedError'
347         default:
348           $ref: '#/components/responses/UnexpectedError'
349   '/nsd/v1/ns_descriptors/{nsdInfoId}/artifacts/{artifactPath}':
350     parameters:
351       - name: nsdInfoId
352         in: path
353         required: true
354         description: NS Package ID
355         schema:
356           type: string
357       - name: artifactPath
358         in: path
359         required: true
360         description: Artifact Path
361         schema:
362           type: string
363     get:
364       tags:
365         - "NS packages"
366       summary: Fetch individual NS package artifact
367       description: Fetch individual NS package artifact
368       operationId: getNsPkgArtifact
369       responses:
370         '200':
371           description: OK
372           content:
373             application/octet-stream:
374               schema:
375                 type: string
376                 format: binary
377         '206':
378           description: Partial Content
379           headers:
380             Content-Range:
381               schema:
382                 type: string
383           content:
384             application/octet-stream:
385               schema:
386                 type: string
387                 format: binary
388         '400':
389           $ref: '#/components/responses/BadRequest'
390         '401':
391           $ref: '#/components/responses/Unauthorized'
392         '403':
393           $ref: '#/components/responses/Forbidden'
394         '404':
395           $ref: '#/components/responses/NotFound'
396         '405':
397           $ref: '#/components/responses/MethodNotAllowed'
398         '406':
399           $ref: '#/components/responses/NotAcceptable'
400         '409':
401           $ref: '#/components/responses/Conflict'
402         '422':
403           $ref: '#/components/responses/UnprocessableEntity'
404         '500':
405           $ref: '#/components/responses/InternalServerError'
406         '503':
407           $ref: '#/components/responses/ServiceUnavailable'
408         '5XX':
409           $ref: '#/components/responses/UnexpectedError'
410         default:
411           $ref: '#/components/responses/UnexpectedError'
412   '/nsd/v1/ns_descriptors/{nsdInfoId}/nsd':
413     parameters:
414       - name: nsdInfoId
415         in: path
416         required: true
417         description: NS Package ID
418         schema:
419           type: string
420     get:
421       tags:
422         - "NS packages"
423       summary: Read NSD of an on-boarded NS package
424       description: Read NSD of an on-boarded NS package
425       operationId: getNsPkgNsd
426       responses:
427         '200':
428           description: OK
429           content:
430             text/plain:
431               schema:
432                 $ref: '#/components/schemas/NsDescriptor'
433         '400':
434           $ref: '#/components/responses/BadRequest'
435         '401':
436           $ref: '#/components/responses/Unauthorized'
437         '403':
438           $ref: '#/components/responses/Forbidden'
439         '404':
440           $ref: '#/components/responses/NotFound'
441         '405':
442           $ref: '#/components/responses/MethodNotAllowed'
443         '406':
444           $ref: '#/components/responses/NotAcceptable'
445         '409':
446           $ref: '#/components/responses/Conflict'
447         '422':
448           $ref: '#/components/responses/UnprocessableEntity'
449         '500':
450           $ref: '#/components/responses/InternalServerError'
451         '503':
452           $ref: '#/components/responses/ServiceUnavailable'
453         '5XX':
454           $ref: '#/components/responses/UnexpectedError'
455         default:
456           $ref: '#/components/responses/UnexpectedError'
457   '/nsd/v1/ns_descriptors_content':
458     post:
459       tags:
460         - "NS packages"
461       summary: Upload a NS package by providing the content of the NS package
462       description: Upload a NS package by providing the content of the NS package
463       operationId: uploadNsPkgsContent
464       requestBody:
465         content:
466           application/zip:
467             schema:
468               $ref: '#/components/schemas/NsPackage'
469       responses:
470         '201':
471           description: Created
472           headers:
473             Location:
474               schema:
475                 type: string
476                 format: uri
477           content:
478             application/json:
479               schema:
480                 $ref: '#/components/schemas/ObjectId'
481             application/yaml:
482               schema:
483                 $ref: '#/components/schemas/ObjectId'
484         '202':
485           description: Accepted
486         '204':
487           description: No Content
488         '400':
489           $ref: '#/components/responses/BadRequest'
490         '401':
491           $ref: '#/components/responses/Unauthorized'
492         '403':
493           $ref: '#/components/responses/Forbidden'
494         '404':
495           $ref: '#/components/responses/NotFound'
496         '405':
497           $ref: '#/components/responses/MethodNotAllowed'
498         '406':
499           $ref: '#/components/responses/NotAcceptable'
500         '409':
501           $ref: '#/components/responses/Conflict'
502         '422':
503           $ref: '#/components/responses/UnprocessableEntity'
504         '500':
505           $ref: '#/components/responses/InternalServerError'
506         '503':
507           $ref: '#/components/responses/ServiceUnavailable'
508         '5XX':
509           $ref: '#/components/responses/UnexpectedError'
510         default:
511           $ref: '#/components/responses/UnexpectedError'
512     get:
513       tags:
514         - "NS packages"
515       summary: Query information about multiple NS package resources
516       description: Query information about multiple NS package resources
517       operationId: getNsPkgsContent
518       responses:
519         '200':
520           description: OK
521           content:
522             application/json:
523               schema:
524                 $ref: '#/components/schemas/ArrayOfNsdInfo'
525             application/yaml:
526               schema:
527                 $ref: '#/components/schemas/ArrayOfNsdInfo'
528         '206':
529           description: Partial Content
530           headers:
531             Content-Range:
532               schema:
533                 type: string
534           content:
535             application/octet-stream:
536               schema:
537                 type: string
538                 format: binary
539         '400':
540           $ref: '#/components/responses/BadRequest'
541         '401':
542           $ref: '#/components/responses/Unauthorized'
543         '403':
544           $ref: '#/components/responses/Forbidden'
545         '404':
546           $ref: '#/components/responses/NotFound'
547         '405':
548           $ref: '#/components/responses/MethodNotAllowed'
549         '406':
550           $ref: '#/components/responses/NotAcceptable'
551         '409':
552           $ref: '#/components/responses/Conflict'
553         '422':
554           $ref: '#/components/responses/UnprocessableEntity'
555         '500':
556           $ref: '#/components/responses/InternalServerError'
557         '503':
558           $ref: '#/components/responses/ServiceUnavailable'
559         '5XX':
560           $ref: '#/components/responses/UnexpectedError'
561         default:
562           $ref: '#/components/responses/UnexpectedError'
563   '/nsd/v1/ns_descriptors_content/{nsdInfoId}':
564     parameters:
565       - name: nsdInfoId
566         in: path
567         required: true
568         description: NS Package ID
569         schema:
570           type: string
571     get:
572       tags:
573         - "NS packages"
574       summary: Read information about an individual NS package resource
575       description: Read information about an individual NS package resource
576       operationId: getNsPkgsIdContent
577       responses:
578         '200':
579           description: OK
580           content:
581             application/json:
582               schema:
583                 $ref: '#/components/schemas/NsdInfo'
584             application/yaml:
585               schema:
586                 $ref: '#/components/schemas/NsdInfo'
587         '400':
588           $ref: '#/components/responses/BadRequest'
589         '401':
590           $ref: '#/components/responses/Unauthorized'
591         '403':
592           $ref: '#/components/responses/Forbidden'
593         '404':
594           $ref: '#/components/responses/NotFound'
595         '405':
596           $ref: '#/components/responses/MethodNotAllowed'
597         '406':
598           $ref: '#/components/responses/NotAcceptable'
599         '409':
600           $ref: '#/components/responses/Conflict'
601         '422':
602           $ref: '#/components/responses/UnprocessableEntity'
603         '500':
604           $ref: '#/components/responses/InternalServerError'
605         '503':
606           $ref: '#/components/responses/ServiceUnavailable'
607         '5XX':
608           $ref: '#/components/responses/UnexpectedError'
609         default:
610           $ref: '#/components/responses/UnexpectedError'
611     put:
612       tags:
613         - "NS packages"
614       summary: Modify an individual NS package resource
615       description: Modify an individual NS package resource
616       operationId: updateNsPkgsIdContent
617       requestBody:
618         $ref: '#/components/requestBodies/NsdInfoModifications'
619       responses:
620         '204':
621           description: No Content
622         '400':
623           $ref: '#/components/responses/BadRequest'
624         '401':
625           $ref: '#/components/responses/Unauthorized'
626         '403':
627           $ref: '#/components/responses/Forbidden'
628         '404':
629           $ref: '#/components/responses/NotFound'
630         '405':
631           $ref: '#/components/responses/MethodNotAllowed'
632         '406':
633           $ref: '#/components/responses/NotAcceptable'
634         '409':
635           $ref: '#/components/responses/Conflict'
636         '422':
637           $ref: '#/components/responses/UnprocessableEntity'
638         '500':
639           $ref: '#/components/responses/InternalServerError'
640         '503':
641           $ref: '#/components/responses/ServiceUnavailable'
642         '5XX':
643           $ref: '#/components/responses/UnexpectedError'
644         default:
645           $ref: '#/components/responses/UnexpectedError'
646     delete:
647       tags:
648         - "NS packages"
649       summary: Delete an individual NS package resource
650       description: Delete an individual NS package resource
651       operationId: deleteNSPkgsIdContent
652       responses:
653         '204':
654           description: No Content
655         '400':
656           $ref: '#/components/responses/BadRequest'
657         '401':
658           $ref: '#/components/responses/Unauthorized'
659         '403':
660           $ref: '#/components/responses/Forbidden'
661         '404':
662           $ref: '#/components/responses/NotFound'
663         '405':
664           $ref: '#/components/responses/MethodNotAllowed'
665         '406':
666           $ref: '#/components/responses/NotAcceptable'
667         '409':
668           $ref: '#/components/responses/Conflict'
669         '422':
670           $ref: '#/components/responses/UnprocessableEntity'
671         '500':
672           $ref: '#/components/responses/InternalServerError'
673         '503':
674           $ref: '#/components/responses/ServiceUnavailable'
675         '5XX':
676           $ref: '#/components/responses/UnexpectedError'
677         default:
678           $ref: '#/components/responses/UnexpectedError'
679 # END NS Packages
680
681 # BEGIN VNF Packages
682   '/vnfpkgm/v1/vnf_packages':
683     get:
684       tags:
685         - "VNF packages"
686       summary: Query information about multiple VNF package resources
687       description: Query information about multiple VNF package resources
688       operationId: getVnfPkgs
689       responses:
690         '200':
691           description: OK
692           content:
693             application/json:
694               schema:
695                 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
696             application/yaml:
697               schema:
698                 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
699         '400':
700           $ref: '#/components/responses/BadRequest'
701         '401':
702           $ref: '#/components/responses/Unauthorized'
703         '403':
704           $ref: '#/components/responses/Forbidden'
705         '404':
706           $ref: '#/components/responses/NotFound'
707         '405':
708           $ref: '#/components/responses/MethodNotAllowed'
709         '406':
710           $ref: '#/components/responses/NotAcceptable'
711         '409':
712           $ref: '#/components/responses/Conflict'
713         '422':
714           $ref: '#/components/responses/UnprocessableEntity'
715         '500':
716           $ref: '#/components/responses/InternalServerError'
717         '503':
718           $ref: '#/components/responses/ServiceUnavailable'
719         '5XX':
720           $ref: '#/components/responses/UnexpectedError'
721         default:
722           $ref: '#/components/responses/UnexpectedError'
723     post:
724       tags:
725         - "VNF packages"
726       summary: Create a new VNF package resource
727       description: Create a new VNF package resource
728       operationId: addVnfPkg
729       requestBody:
730         $ref: '#/components/requestBodies/CreateVnfPkgInfoRequest'
731       responses:
732         '201':
733           description: Created
734           headers:
735             Location:
736               schema:
737                 type: string
738                 format: uri
739           content:
740             application/json:
741               schema:
742                 $ref: '#/components/schemas/ObjectId'
743             application/yaml:
744               schema:
745                 $ref: '#/components/schemas/ObjectId'
746         '400':
747           $ref: '#/components/responses/BadRequest'
748         '401':
749           $ref: '#/components/responses/Unauthorized'
750         '403':
751           $ref: '#/components/responses/Forbidden'
752         '404':
753           $ref: '#/components/responses/NotFound'
754         '405':
755           $ref: '#/components/responses/MethodNotAllowed'
756         '406':
757           $ref: '#/components/responses/NotAcceptable'
758         '409':
759           $ref: '#/components/responses/Conflict'
760         '422':
761           $ref: '#/components/responses/UnprocessableEntity'
762         '500':
763           $ref: '#/components/responses/InternalServerError'
764         '503':
765           $ref: '#/components/responses/ServiceUnavailable'
766         '5XX':
767           $ref: '#/components/responses/UnexpectedError'
768         default:
769           $ref: '#/components/responses/UnexpectedError'
770   '/vnfpkgm/v1/vnf_packages/{vnfPkgId}':
771     parameters:
772       - name: vnfPkgId
773         in: path
774         required: true
775         description: VNF Package ID
776         schema:
777           type: string
778     get:
779       tags:
780         - "VNF packages"
781       summary: Read information about an individual VNF package resource
782       description: Read information about an individual VNF package resource
783       operationId: getVnfPkg
784       responses:
785         '200':
786           description: OK
787           content:
788             application/json:
789               schema:
790                 $ref: '#/components/schemas/VnfPkgInfo'
791             application/yaml:
792               schema:
793                 $ref: '#/components/schemas/VnfPkgInfo'
794         '400':
795           $ref: '#/components/responses/BadRequest'
796         '401':
797           $ref: '#/components/responses/Unauthorized'
798         '403':
799           $ref: '#/components/responses/Forbidden'
800         '404':
801           $ref: '#/components/responses/NotFound'
802         '405':
803           $ref: '#/components/responses/MethodNotAllowed'
804         '406':
805           $ref: '#/components/responses/NotAcceptable'
806         '409':
807           $ref: '#/components/responses/Conflict'
808         '422':
809           $ref: '#/components/responses/UnprocessableEntity'
810         '500':
811           $ref: '#/components/responses/InternalServerError'
812         '503':
813           $ref: '#/components/responses/ServiceUnavailable'
814         '5XX':
815           $ref: '#/components/responses/UnexpectedError'
816         default:
817           $ref: '#/components/responses/UnexpectedError'
818     delete:
819       tags:
820         - "VNF packages"
821       summary: Delete an individual VNF package resource
822       description: Delete an individual VNF package resource
823       operationId: deleteVnfPkg
824       responses:
825         '204':
826           description: No Content
827         '400':
828           $ref: '#/components/responses/BadRequest'
829         '401':
830           $ref: '#/components/responses/Unauthorized'
831         '403':
832           $ref: '#/components/responses/Forbidden'
833         '404':
834           $ref: '#/components/responses/NotFound'
835         '405':
836           $ref: '#/components/responses/MethodNotAllowed'
837         '406':
838           $ref: '#/components/responses/NotAcceptable'
839         '409':
840           $ref: '#/components/responses/Conflict'
841         '422':
842           $ref: '#/components/responses/UnprocessableEntity'
843         '500':
844           $ref: '#/components/responses/InternalServerError'
845         '503':
846           $ref: '#/components/responses/ServiceUnavailable'
847         '5XX':
848           $ref: '#/components/responses/UnexpectedError'
849         default:
850           $ref: '#/components/responses/UnexpectedError'
851     patch:
852       tags:
853         - "VNF packages"
854       summary: Modify an individual VNF package resource
855       description: Modify an individual VNF package resource
856       operationId: updateVnfPkg
857       requestBody:
858         $ref: '#/components/requestBodies/VnfPkgInfoModifications'
859       responses:
860         '204':
861           description: No Content
862         '400':
863           $ref: '#/components/responses/BadRequest'
864         '401':
865           $ref: '#/components/responses/Unauthorized'
866         '403':
867           $ref: '#/components/responses/Forbidden'
868         '404':
869           $ref: '#/components/responses/NotFound'
870         '405':
871           $ref: '#/components/responses/MethodNotAllowed'
872         '406':
873           $ref: '#/components/responses/NotAcceptable'
874         '409':
875           $ref: '#/components/responses/Conflict'
876         '422':
877           $ref: '#/components/responses/UnprocessableEntity'
878         '500':
879           $ref: '#/components/responses/InternalServerError'
880         '503':
881           $ref: '#/components/responses/ServiceUnavailable'
882         '5XX':
883           $ref: '#/components/responses/UnexpectedError'
884         default:
885           $ref: '#/components/responses/UnexpectedError'
886   '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/vnfd':
887     parameters:
888       - name: vnfPkgId
889         in: path
890         required: true
891         description: VNF Package ID
892         schema:
893           type: string
894     get:
895       tags:
896         - "VNF packages"
897       summary: Read VNFD of an on-boarded VNF package
898       description: Read VNFD of an on-boarded VNF package
899       operationId: getVnfPkgVnfd
900       responses:
901         '200':
902           description: OK
903           content:
904             text/plain:
905               schema:
906                 $ref: '#/components/schemas/VnfDescriptor'
907         '400':
908           $ref: '#/components/responses/BadRequest'
909         '401':
910           $ref: '#/components/responses/Unauthorized'
911         '403':
912           $ref: '#/components/responses/Forbidden'
913         '404':
914           $ref: '#/components/responses/NotFound'
915         '405':
916           $ref: '#/components/responses/MethodNotAllowed'
917         '406':
918           $ref: '#/components/responses/NotAcceptable'
919         '409':
920           $ref: '#/components/responses/Conflict'
921         '422':
922           $ref: '#/components/responses/UnprocessableEntity'
923         '500':
924           $ref: '#/components/responses/InternalServerError'
925         '503':
926           $ref: '#/components/responses/ServiceUnavailable'
927         '5XX':
928           $ref: '#/components/responses/UnexpectedError'
929         default:
930           $ref: '#/components/responses/UnexpectedError'
931   '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content':
932     parameters:
933       - name: vnfPkgId
934         in: path
935         required: true
936         description: VNF Package ID
937         schema:
938           type: string
939     get:
940       tags:
941         - "VNF packages"
942       summary: Fetch an on-boarded VNF package
943       description: Fetch an on-boarded VNF package
944       operationId: getVnfPkgContent
945       responses:
946         '200':
947           description: OK
948           content:
949             application/zip:
950               schema:
951                 $ref: '#/components/schemas/VnfPackage'
952         '206':
953           description: Partial Content
954           headers:
955             Content-Range:
956               schema:
957                 type: string
958           content:
959             application/zip:
960               schema:
961                 $ref: '#/components/schemas/VnfPackage'
962         '400':
963           $ref: '#/components/responses/BadRequest'
964         '401':
965           $ref: '#/components/responses/Unauthorized'
966         '403':
967           $ref: '#/components/responses/Forbidden'
968         '404':
969           $ref: '#/components/responses/NotFound'
970         '405':
971           $ref: '#/components/responses/MethodNotAllowed'
972         '406':
973           $ref: '#/components/responses/NotAcceptable'
974         '409':
975           $ref: '#/components/responses/Conflict'
976         '422':
977           $ref: '#/components/responses/UnprocessableEntity'
978         '500':
979           $ref: '#/components/responses/InternalServerError'
980         '503':
981           $ref: '#/components/responses/ServiceUnavailable'
982         '5XX':
983           $ref: '#/components/responses/UnexpectedError'
984         default:
985           $ref: '#/components/responses/UnexpectedError'
986     put:
987       tags:
988         - "VNF packages"
989       summary: Upload a VNF package by providing the content of the VNF package
990       description: Upload a VNF package by providing the content of the VNF package
991       operationId: uploadVnfPkgContent
992       requestBody:
993         content:
994           application/zip:
995             schema:
996               $ref: '#/components/schemas/VnfPackage'
997       responses:
998         '202':
999           description: Accepted
1000         '204':
1001           description: No Content
1002         '400':
1003           $ref: '#/components/responses/BadRequest'
1004         '401':
1005           $ref: '#/components/responses/Unauthorized'
1006         '403':
1007           $ref: '#/components/responses/Forbidden'
1008         '404':
1009           $ref: '#/components/responses/NotFound'
1010         '405':
1011           $ref: '#/components/responses/MethodNotAllowed'
1012         '406':
1013           $ref: '#/components/responses/NotAcceptable'
1014         '409':
1015           $ref: '#/components/responses/Conflict'
1016         '422':
1017           $ref: '#/components/responses/UnprocessableEntity'
1018         '500':
1019           $ref: '#/components/responses/InternalServerError'
1020         '503':
1021           $ref: '#/components/responses/ServiceUnavailable'
1022         '5XX':
1023           $ref: '#/components/responses/UnexpectedError'
1024         default:
1025           $ref: '#/components/responses/UnexpectedError'
1026   '/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}':
1027     parameters:
1028       - name: vnfPkgId
1029         in: path
1030         required: true
1031         description: VNF Package ID
1032         schema:
1033           type: string
1034       - name: artifactPath
1035         in: path
1036         required: true
1037         description: Artifact Path
1038         schema:
1039           type: string
1040     get:
1041       tags:
1042         - "VNF packages"
1043       summary: Fetch individual VNF package artifact
1044       description: Fetch individual VNF package artifact
1045       operationId: getVnfPkgArtifact
1046       responses:
1047         '200':
1048           description: OK
1049           content:
1050             application/octet-stream:
1051               schema:
1052                 type: string
1053                 format: binary
1054         '206':
1055           description: Partial Content
1056           headers:
1057             Content-Range:
1058               schema:
1059                 type: string
1060           content:
1061             application/octet-stream:
1062               schema:
1063                 type: string
1064                 format: binary
1065         '400':
1066           $ref: '#/components/responses/BadRequest'
1067         '401':
1068           $ref: '#/components/responses/Unauthorized'
1069         '403':
1070           $ref: '#/components/responses/Forbidden'
1071         '404':
1072           $ref: '#/components/responses/NotFound'
1073         '405':
1074           $ref: '#/components/responses/MethodNotAllowed'
1075         '406':
1076           $ref: '#/components/responses/NotAcceptable'
1077         '409':
1078           $ref: '#/components/responses/Conflict'
1079         '422':
1080           $ref: '#/components/responses/UnprocessableEntity'
1081         '500':
1082           $ref: '#/components/responses/InternalServerError'
1083         '503':
1084           $ref: '#/components/responses/ServiceUnavailable'
1085         '5XX':
1086           $ref: '#/components/responses/UnexpectedError'
1087         default:
1088           $ref: '#/components/responses/UnexpectedError'
1089   '/vnfpkgm/v1/vnf_packages_content':
1090     post:
1091       tags:
1092         - "VNF packages"
1093       summary: Upload a VNF package by providing the content of the VNF package
1094       description: Upload a VNF package by providing the content of the VNF package
1095       operationId: uploadVnfPkgsContent
1096       requestBody:
1097         content:
1098           application/zip:
1099             schema:
1100               $ref: '#/components/schemas/VnfPackage'
1101       responses:
1102         '201':
1103           description: Created
1104           headers:
1105             Location:
1106               schema:
1107                 type: string
1108                 format: uri
1109           content:
1110             application/json:
1111               schema:
1112                 $ref: '#/components/schemas/ObjectId'
1113             application/yaml:
1114               schema:
1115                 $ref: '#/components/schemas/ObjectId'
1116         '202':
1117           description: Accepted
1118         '204':
1119           description: No Content
1120         '400':
1121           $ref: '#/components/responses/BadRequest'
1122         '401':
1123           $ref: '#/components/responses/Unauthorized'
1124         '403':
1125           $ref: '#/components/responses/Forbidden'
1126         '404':
1127           $ref: '#/components/responses/NotFound'
1128         '405':
1129           $ref: '#/components/responses/MethodNotAllowed'
1130         '406':
1131           $ref: '#/components/responses/NotAcceptable'
1132         '409':
1133           $ref: '#/components/responses/Conflict'
1134         '422':
1135           $ref: '#/components/responses/UnprocessableEntity'
1136         '500':
1137           $ref: '#/components/responses/InternalServerError'
1138         '503':
1139           $ref: '#/components/responses/ServiceUnavailable'
1140         '5XX':
1141           $ref: '#/components/responses/UnexpectedError'
1142         default:
1143           $ref: '#/components/responses/UnexpectedError'
1144     get:
1145       tags:
1146         - "VNF packages"
1147       summary: Query information about multiple VNF package resources
1148       description: Query information about multiple VNF package resources
1149       operationId: getVnfPkgsContent
1150       responses:
1151         '200':
1152           description: OK
1153           content:
1154             application/json:
1155               schema:
1156                 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
1157             application/yaml:
1158               schema:
1159                 $ref: '#/components/schemas/ArrayOfVnfPkgInfo'
1160         '206':
1161           description: Partial Content
1162           headers:
1163             Content-Range:
1164               schema:
1165                 type: string
1166           content:
1167             application/octet-stream:
1168               schema:
1169                 type: string
1170                 format: binary
1171         '400':
1172           $ref: '#/components/responses/BadRequest'
1173         '401':
1174           $ref: '#/components/responses/Unauthorized'
1175         '403':
1176           $ref: '#/components/responses/Forbidden'
1177         '404':
1178           $ref: '#/components/responses/NotFound'
1179         '405':
1180           $ref: '#/components/responses/MethodNotAllowed'
1181         '406':
1182           $ref: '#/components/responses/NotAcceptable'
1183         '409':
1184           $ref: '#/components/responses/Conflict'
1185         '422':
1186           $ref: '#/components/responses/UnprocessableEntity'
1187         '500':
1188           $ref: '#/components/responses/InternalServerError'
1189         '503':
1190           $ref: '#/components/responses/ServiceUnavailable'
1191         '5XX':
1192           $ref: '#/components/responses/UnexpectedError'
1193         default:
1194           $ref: '#/components/responses/UnexpectedError'
1195   '/vnfpkgm/v1/vnf_packages_content/{packageContentId}':
1196     parameters:
1197       - name: packageContentId
1198         in: path
1199         required: true
1200         description: VNF Package Content ID
1201         schema:
1202           type: string
1203     get:
1204       tags:
1205         - "VNF packages"
1206       summary: Read information about an individual VNF package resource
1207       description: Read information about an individual VNF package resource
1208       operationId: getVnfPkgsIdContent
1209       responses:
1210         '200':
1211           description: OK
1212           content:
1213             application/json:
1214               schema:
1215                 $ref: '#/components/schemas/VnfPkgInfo'
1216             application/yaml:
1217               schema:
1218                 $ref: '#/components/schemas/VnfPkgInfo'
1219         '400':
1220           $ref: '#/components/responses/BadRequest'
1221         '401':
1222           $ref: '#/components/responses/Unauthorized'
1223         '403':
1224           $ref: '#/components/responses/Forbidden'
1225         '404':
1226           $ref: '#/components/responses/NotFound'
1227         '405':
1228           $ref: '#/components/responses/MethodNotAllowed'
1229         '406':
1230           $ref: '#/components/responses/NotAcceptable'
1231         '409':
1232           $ref: '#/components/responses/Conflict'
1233         '422':
1234           $ref: '#/components/responses/UnprocessableEntity'
1235         '500':
1236           $ref: '#/components/responses/InternalServerError'
1237         '503':
1238           $ref: '#/components/responses/ServiceUnavailable'
1239         '5XX':
1240           $ref: '#/components/responses/UnexpectedError'
1241         default:
1242           $ref: '#/components/responses/UnexpectedError'
1243     put:
1244       tags:
1245         - "VNF packages"
1246       summary: Modify an individual VNF package resource
1247       description: Modify an individual VNF package resource
1248       operationId: updateVnfPkgsIdContent
1249       requestBody:
1250         $ref: '#/components/requestBodies/VnfPkgInfoModifications'
1251       responses:
1252         '204':
1253           description: No Content
1254         '400':
1255           $ref: '#/components/responses/BadRequest'
1256         '401':
1257           $ref: '#/components/responses/Unauthorized'
1258         '403':
1259           $ref: '#/components/responses/Forbidden'
1260         '404':
1261           $ref: '#/components/responses/NotFound'
1262         '405':
1263           $ref: '#/components/responses/MethodNotAllowed'
1264         '406':
1265           $ref: '#/components/responses/NotAcceptable'
1266         '409':
1267           $ref: '#/components/responses/Conflict'
1268         '422':
1269           $ref: '#/components/responses/UnprocessableEntity'
1270         '500':
1271           $ref: '#/components/responses/InternalServerError'
1272         '503':
1273           $ref: '#/components/responses/ServiceUnavailable'
1274         '5XX':
1275           $ref: '#/components/responses/UnexpectedError'
1276         default:
1277           $ref: '#/components/responses/UnexpectedError'
1278     delete:
1279       tags:
1280         - "VNF packages"
1281       summary: Delete an individual VNF package resource
1282       description: Delete an individual VNF package resource
1283       operationId: deleteVnfPkgsIdContent
1284       responses:
1285         '204':
1286           description: No Content
1287         '400':
1288           $ref: '#/components/responses/BadRequest'
1289         '401':
1290           $ref: '#/components/responses/Unauthorized'
1291         '403':
1292           $ref: '#/components/responses/Forbidden'
1293         '404':
1294           $ref: '#/components/responses/NotFound'
1295         '405':
1296           $ref: '#/components/responses/MethodNotAllowed'
1297         '406':
1298           $ref: '#/components/responses/NotAcceptable'
1299         '409':
1300           $ref: '#/components/responses/Conflict'
1301         '422':
1302           $ref: '#/components/responses/UnprocessableEntity'
1303         '500':
1304           $ref: '#/components/responses/InternalServerError'
1305         '503':
1306           $ref: '#/components/responses/ServiceUnavailable'
1307         '5XX':
1308           $ref: '#/components/responses/UnexpectedError'
1309         default:
1310           $ref: '#/components/responses/UnexpectedError'
1311 # END VNF Packages
1312
1313 # BEGIN NS Instances
1314   '/nslcm/v1/ns_instances':
1315     get:
1316       tags:
1317         - "NS instances"
1318       summary: Query information about multiple NS instances
1319       description: Query information about multiple NS isntances
1320       operationId: getNSinstances
1321       responses:
1322         '200':
1323           description: OK
1324           content:
1325             application/json:
1326               schema:
1327                 $ref: '#/components/schemas/ArrayOfNsInstance'
1328             application/yaml:
1329               schema:
1330                 $ref: '#/components/schemas/ArrayOfNsInstance'
1331         '400':
1332           $ref: '#/components/responses/BadRequest'
1333         '401':
1334           $ref: '#/components/responses/Unauthorized'
1335         '403':
1336           $ref: '#/components/responses/Forbidden'
1337         '404':
1338           $ref: '#/components/responses/NotFound'
1339         '405':
1340           $ref: '#/components/responses/MethodNotAllowed'
1341         '406':
1342           $ref: '#/components/responses/NotAcceptable'
1343         '409':
1344           $ref: '#/components/responses/Conflict'
1345         '422':
1346           $ref: '#/components/responses/UnprocessableEntity'
1347         '500':
1348           $ref: '#/components/responses/InternalServerError'
1349         '503':
1350           $ref: '#/components/responses/ServiceUnavailable'
1351         '5XX':
1352           $ref: '#/components/responses/UnexpectedError'
1353         default:
1354           $ref: '#/components/responses/UnexpectedError'
1355     post:
1356       tags:
1357         - "NS instances"
1358       summary: Create a new NS instance resource
1359       description: Create a new NS instance resource
1360       operationId: addNSinstance
1361       requestBody:
1362         $ref: '#/components/requestBodies/InstantiateNsRequest'
1363       responses:
1364         '201':
1365           description: Created
1366           headers:
1367             Location:
1368               schema:
1369                 type: string
1370                 format: uri
1371           content:
1372             application/json:
1373               schema:
1374                 $ref: '#/components/schemas/ObjectId'
1375             application/yaml:
1376               schema:
1377                 $ref: '#/components/schemas/ObjectId'
1378         '400':
1379           $ref: '#/components/responses/BadRequest'
1380         '401':
1381           $ref: '#/components/responses/Unauthorized'
1382         '403':
1383           $ref: '#/components/responses/Forbidden'
1384         '404':
1385           $ref: '#/components/responses/NotFound'
1386         '405':
1387           $ref: '#/components/responses/MethodNotAllowed'
1388         '406':
1389           $ref: '#/components/responses/NotAcceptable'
1390         '409':
1391           $ref: '#/components/responses/Conflict'
1392         '422':
1393           $ref: '#/components/responses/UnprocessableEntity'
1394         '500':
1395           $ref: '#/components/responses/InternalServerError'
1396         '503':
1397           $ref: '#/components/responses/ServiceUnavailable'
1398         '5XX':
1399           $ref: '#/components/responses/UnexpectedError'
1400         default:
1401           $ref: '#/components/responses/UnexpectedError'
1402   '/nslcm/v1/ns_instances/{nsInstanceId}':
1403     parameters:
1404       - name: nsInstanceId
1405         in: path
1406         required: true
1407         description: NS Instance ID
1408         schema:
1409           type: string
1410       - name: vcaStatusRefresh
1411         in: query
1412         required: false
1413         description: Set to true if vca status needs to be refreshed.
1414         schema:
1415           type: boolean
1416     get:
1417       tags:
1418         - "NS instances"
1419       summary: Read an individual NS instance resource
1420       description: Read an individual NS instance resource
1421       operationId: getNSinstance
1422       responses:
1423         '200':
1424           description: OK
1425           content:
1426             application/json:
1427               schema:
1428                 $ref: '#/components/schemas/NsInstance'
1429             application/yaml:
1430               schema:
1431                 $ref: '#/components/schemas/NsInstance'
1432         '400':
1433           $ref: '#/components/responses/BadRequest'
1434         '401':
1435           $ref: '#/components/responses/Unauthorized'
1436         '403':
1437           $ref: '#/components/responses/Forbidden'
1438         '404':
1439           $ref: '#/components/responses/NotFound'
1440         '405':
1441           $ref: '#/components/responses/MethodNotAllowed'
1442         '406':
1443           $ref: '#/components/responses/NotAcceptable'
1444         '409':
1445           $ref: '#/components/responses/Conflict'
1446         '422':
1447           $ref: '#/components/responses/UnprocessableEntity'
1448         '500':
1449           $ref: '#/components/responses/InternalServerError'
1450         '503':
1451           $ref: '#/components/responses/ServiceUnavailable'
1452         '5XX':
1453           $ref: '#/components/responses/UnexpectedError'
1454         default:
1455           $ref: '#/components/responses/UnexpectedError'
1456     delete:
1457       tags:
1458         - "NS instances"
1459       summary: Delete an individual NS instance resource
1460       description: Delete an individual NS instance resource
1461       operationId: deleteNSinstance
1462       responses:
1463         '204':
1464           description: No Content
1465         '400':
1466           $ref: '#/components/responses/BadRequest'
1467         '401':
1468           $ref: '#/components/responses/Unauthorized'
1469         '403':
1470           $ref: '#/components/responses/Forbidden'
1471         '404':
1472           $ref: '#/components/responses/NotFound'
1473         '405':
1474           $ref: '#/components/responses/MethodNotAllowed'
1475         '406':
1476           $ref: '#/components/responses/NotAcceptable'
1477         '409':
1478           $ref: '#/components/responses/Conflict'
1479         '422':
1480           $ref: '#/components/responses/UnprocessableEntity'
1481         '500':
1482           $ref: '#/components/responses/InternalServerError'
1483         '503':
1484           $ref: '#/components/responses/ServiceUnavailable'
1485         '5XX':
1486           $ref: '#/components/responses/UnexpectedError'
1487         default:
1488           $ref: '#/components/responses/UnexpectedError'
1489   '/nslcm/v1/ns_instances/{nsInstanceId}/instantiate':
1490     parameters:
1491       - name: nsInstanceId
1492         in: path
1493         required: true
1494         description: NS Instance ID
1495         schema:
1496           type: string
1497     post:
1498       tags:
1499         - "NS instances"
1500       summary: Instantiate a NS
1501       description: |
1502         Instantiate a NS. The precondition is that the NS instance must have
1503         been created and must be in NOT_INSTANTIATED state. As a result of the
1504         success of this operation, the NFVO creates a "NS Lifecycle Operation
1505         Occurrence" resource for the request, and the NS instance state becomes
1506         INSTANTIATED.
1507       operationId: instantiateNSinstance
1508       requestBody:
1509         $ref: '#/components/requestBodies/InstantiateNsRequest'
1510       responses:
1511         '202':
1512           description: Accepted
1513           headers:
1514             Location:
1515               description: |
1516                 It must point to the new "NS Lifecycle Operation Occurrence"
1517                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1518               schema:
1519                 type: string
1520                 format: uri
1521           content:
1522             application/json:
1523               schema:
1524                 $ref: '#/components/schemas/ObjectId'
1525             application/yaml:
1526               schema:
1527                 $ref: '#/components/schemas/ObjectId'
1528         '400':
1529           $ref: '#/components/responses/BadRequest'
1530         '401':
1531           $ref: '#/components/responses/Unauthorized'
1532         '403':
1533           $ref: '#/components/responses/Forbidden'
1534         '404':
1535           $ref: '#/components/responses/NotFound'
1536         '405':
1537           $ref: '#/components/responses/MethodNotAllowed'
1538         '406':
1539           $ref: '#/components/responses/NotAcceptable'
1540         '409':
1541           $ref: '#/components/responses/Conflict'
1542         '422':
1543           $ref: '#/components/responses/UnprocessableEntity'
1544         '500':
1545           $ref: '#/components/responses/InternalServerError'
1546         '503':
1547           $ref: '#/components/responses/ServiceUnavailable'
1548         '5XX':
1549           $ref: '#/components/responses/UnexpectedError'
1550         default:
1551           $ref: '#/components/responses/UnexpectedError'
1552   '/nslcm/v1/ns_instances/{nsInstanceId}/scale':
1553     parameters:
1554       - name: nsInstanceId
1555         in: path
1556         required: true
1557         description: NS Instance ID
1558         schema:
1559           type: string
1560     post:
1561       tags:
1562         - "NS instances"
1563       summary: Scale a NS instance
1564       description: |
1565         Scale a NS instance. The precondition is that the NS instance must have
1566         been created and must be in INSTANTIATED state. As a result of the
1567         success of this operation, the NFVO creates a "NS Lifecycle Operation
1568         Occurrence" resource for the request, and the NS instance state remains
1569         INSTANTIATED.
1570       operationId: scaleNSinstance
1571       requestBody:
1572         $ref: '#/components/requestBodies/ScaleNsRequest'
1573       responses:
1574         '202':
1575           description: Accepted
1576           headers:
1577             Location:
1578               description: |
1579                 It must point to the new "NS Lifecycle Operation Occurrence"
1580                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1581               schema:
1582                 type: string
1583                 format: uri
1584         '400':
1585           $ref: '#/components/responses/BadRequest'
1586         '401':
1587           $ref: '#/components/responses/Unauthorized'
1588         '403':
1589           $ref: '#/components/responses/Forbidden'
1590         '404':
1591           $ref: '#/components/responses/NotFound'
1592         '405':
1593           $ref: '#/components/responses/MethodNotAllowed'
1594         '406':
1595           $ref: '#/components/responses/NotAcceptable'
1596         '409':
1597           $ref: '#/components/responses/Conflict'
1598         '422':
1599           $ref: '#/components/responses/UnprocessableEntity'
1600         '500':
1601           $ref: '#/components/responses/InternalServerError'
1602         '503':
1603           $ref: '#/components/responses/ServiceUnavailable'
1604         '5XX':
1605           $ref: '#/components/responses/UnexpectedError'
1606         default:
1607           $ref: '#/components/responses/UnexpectedError'
1608   '/nslcm/v1/ns_instances/{nsInstanceId}/heal':
1609     parameters:
1610       - name: nsInstanceId
1611         in: path
1612         required: true
1613         description: NS Instance ID
1614         schema:
1615           type: string
1616     post:
1617       tags:
1618         - "NS instances"
1619       summary: Heal a NS instance
1620       description: |
1621         Heal a NS instance. The precondition is that the NS instance must have
1622         been created and must be in INSTANTIATED state. As a result of the
1623         success of this operation, the NFVO creates a "NS Lifecycle Operation
1624         Occurrence" resource for the request, and the NS instance state remains
1625         INSTANTIATED.
1626       operationId: healNSinstance
1627       requestBody:
1628         $ref: '#/components/requestBodies/HealNsRequest'
1629       responses:
1630         '202':
1631           description: Accepted
1632           headers:
1633             Location:
1634               description: |
1635                 It must point to the new "NS Lifecycle Operation Occurrence"
1636                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1637               schema:
1638                 type: string
1639                 format: uri
1640         '400':
1641           $ref: '#/components/responses/BadRequest'
1642         '401':
1643           $ref: '#/components/responses/Unauthorized'
1644         '403':
1645           $ref: '#/components/responses/Forbidden'
1646         '404':
1647           $ref: '#/components/responses/NotFound'
1648         '405':
1649           $ref: '#/components/responses/MethodNotAllowed'
1650         '406':
1651           $ref: '#/components/responses/NotAcceptable'
1652         '409':
1653           $ref: '#/components/responses/Conflict'
1654         '422':
1655           $ref: '#/components/responses/UnprocessableEntity'
1656         '500':
1657           $ref: '#/components/responses/InternalServerError'
1658         '503':
1659           $ref: '#/components/responses/ServiceUnavailable'
1660         '5XX':
1661           $ref: '#/components/responses/UnexpectedError'
1662         default:
1663           $ref: '#/components/responses/UnexpectedError'
1664   '/nslcm/v1/ns_instances/{nsInstanceId}/migrate':
1665     parameters:
1666       - name: nsInstanceId
1667         in: path
1668         required: true
1669         description: NS Instance ID
1670         schema:
1671           type: string
1672     post:
1673       tags:
1674         - "NS instances"
1675       summary: Migrate VNFs in a NS instance
1676       description: |
1677         Migrate the VNFs and VDUs in a NS instance. The precondition is
1678         that the NS instance must have been created and must be in
1679         INSTANTIATED state. As a result of the success of this operation,
1680         the NFVO creates a "NS Lifecycle Operation Occurrence" resource
1681         for the request, and the NS instance state remains INSTANTIATED.
1682       operationId: migrateNSinstance
1683       requestBody:
1684         $ref: '#/components/requestBodies/NSinstanceMigrateRequest'
1685       responses:
1686         '202':
1687           description: Accepted
1688           headers:
1689             Location:
1690               description: |
1691                 It must point to the new "NS Lifecycle Operation Occurrence"
1692                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1693               schema:
1694                 type: string
1695                 format: uri
1696         '400':
1697           $ref: '#/components/responses/BadRequest'
1698         '401':
1699           $ref: '#/components/responses/Unauthorized'
1700         '403':
1701           $ref: '#/components/responses/Forbidden'
1702         '404':
1703           $ref: '#/components/responses/NotFound'
1704         '405':
1705           $ref: '#/components/responses/MethodNotAllowed'
1706         '406':
1707           $ref: '#/components/responses/NotAcceptable'
1708         '409':
1709           $ref: '#/components/responses/Conflict'
1710         '422':
1711           $ref: '#/components/responses/UnprocessableEntity'
1712         '500':
1713           $ref: '#/components/responses/InternalServerError'
1714         '503':
1715           $ref: '#/components/responses/ServiceUnavailable'
1716         '5XX':
1717           $ref: '#/components/responses/UnexpectedError'
1718         default:
1719           $ref: '#/components/responses/UnexpectedError'
1720   '/nslcm/v1/ns_instances/{nsInstanceId}/terminate':
1721     parameters:
1722       - name: nsInstanceId
1723         in: path
1724         required: true
1725         description: NS Instance ID
1726         schema:
1727           type: string
1728     post:
1729       tags:
1730         - "NS instances"
1731       summary: Terminate a NS instance
1732       description: |
1733         Terminate a NS instance. The precondition is that the NS instance must have
1734         been created and must be in INSTANTIATED state. As a result of the
1735         success of this operation, the NFVO creates a "NS Lifecycle Operation
1736         Occurrence" resource for the request, and the NS instance state becomes
1737         NOT_INSTANTIATED.
1738       operationId: terminateNSinstance
1739       requestBody:
1740         # Request data is not required
1741         $ref: '#/components/requestBodies/TerminateNsRequest'
1742       responses:
1743         '202':
1744           description: Accepted
1745           headers:
1746             Location:
1747               description: |
1748                 It must point to the new "NS Lifecycle Operation Occurrence"
1749                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1750               schema:
1751                 type: string
1752                 format: uri
1753           content:
1754             application/json:
1755               schema:
1756                 $ref: '#/components/schemas/ObjectId'
1757             application/yaml:
1758               schema:
1759                 $ref: '#/components/schemas/ObjectId'
1760         '400':
1761           $ref: '#/components/responses/BadRequest'
1762         '401':
1763           $ref: '#/components/responses/Unauthorized'
1764         '403':
1765           $ref: '#/components/responses/Forbidden'
1766         '404':
1767           $ref: '#/components/responses/NotFound'
1768         '405':
1769           $ref: '#/components/responses/MethodNotAllowed'
1770         '406':
1771           $ref: '#/components/responses/NotAcceptable'
1772         '409':
1773           $ref: '#/components/responses/Conflict'
1774         '422':
1775           $ref: '#/components/responses/UnprocessableEntity'
1776         '500':
1777           $ref: '#/components/responses/InternalServerError'
1778         '503':
1779           $ref: '#/components/responses/ServiceUnavailable'
1780         '5XX':
1781           $ref: '#/components/responses/UnexpectedError'
1782         default:
1783           $ref: '#/components/responses/UnexpectedError'
1784   '/nslcm/v1/ns_instances/{nsInstanceId}/action':
1785     parameters:
1786       - name: nsInstanceId
1787         in: path
1788         required: true
1789         description: NS Instance ID
1790         schema:
1791           type: string
1792     post:
1793       tags:
1794         - "NS instances"
1795       summary: Execute an action on a NS instance
1796       description: |
1797         Execute an action on a NS instance.
1798         The NS instance must have been created and must be in INSTANTIATED state.
1799       operationId: actionOnNSinstance
1800       requestBody:
1801         content:
1802           application/json:
1803             schema:
1804               $ref: '#/components/schemas/NSinstanceActionRequest'
1805           application/yaml:
1806             schema:
1807               $ref: '#/components/schemas/NSinstanceActionRequest'
1808       responses:
1809         '202':
1810           description: Accepted
1811           headers:
1812             Location:
1813               description: |
1814                 It must point to the new "NS Lifecycle Operation Occurrence"
1815                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1816               schema:
1817                 type: string
1818                 format: uri
1819           content:
1820             application/json:
1821               schema:
1822                 $ref: '#/components/schemas/ObjectId'
1823             application/yaml:
1824               schema:
1825                 $ref: '#/components/schemas/ObjectId'
1826         '400':
1827           $ref: '#/components/responses/BadRequest'
1828         '401':
1829           $ref: '#/components/responses/Unauthorized'
1830         '403':
1831           $ref: '#/components/responses/Forbidden'
1832         '404':
1833           $ref: '#/components/responses/NotFound'
1834         '405':
1835           $ref: '#/components/responses/MethodNotAllowed'
1836         '406':
1837           $ref: '#/components/responses/NotAcceptable'
1838         '409':
1839           $ref: '#/components/responses/Conflict'
1840         '422':
1841           $ref: '#/components/responses/UnprocessableEntity'
1842         '500':
1843           $ref: '#/components/responses/InternalServerError'
1844         '503':
1845           $ref: '#/components/responses/ServiceUnavailable'
1846         '5XX':
1847           $ref: '#/components/responses/UnexpectedError'
1848         default:
1849           $ref: '#/components/responses/UnexpectedError'
1850   '/nslcm/v1/ns_instances/{nsInstanceId}/update':
1851     parameters:
1852       - name: nsInstanceId
1853         in: path
1854         required: true
1855         description: NS Instance ID
1856         schema:
1857           type: string
1858     post:
1859       tags:
1860         - "NS instances"
1861       summary: Update a NS instance
1862       description: |
1863         Update a NS instance. The precondition is that the NS instance must have
1864         been created and must be in INSTANTIATED state. As a result of the
1865         success of this operation, the NFVO creates a "NS Lifecycle Operation
1866         Occurrence" resource for the request, and the NS instance state remains
1867         INSTANTIATED.
1868       operationId: updateNSinstance
1869       requestBody:
1870         $ref: '#/components/requestBodies/UpdateNsRequest'
1871       responses:
1872         '202':
1873           description: Accepted
1874           headers:
1875             Location:
1876               description: |
1877                 It must point to the new "NS Lifecycle Operation Occurrence"
1878                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1879               schema:
1880                 type: string
1881                 format: uri
1882         '400':
1883           $ref: '#/components/responses/BadRequest'
1884         '401':
1885           $ref: '#/components/responses/Unauthorized'
1886         '403':
1887           $ref: '#/components/responses/Forbidden'
1888         '404':
1889           $ref: '#/components/responses/NotFound'
1890         '405':
1891           $ref: '#/components/responses/MethodNotAllowed'
1892         '406':
1893           $ref: '#/components/responses/NotAcceptable'
1894         '409':
1895           $ref: '#/components/responses/Conflict'
1896         '422':
1897           $ref: '#/components/responses/UnprocessableEntity'
1898         '500':
1899           $ref: '#/components/responses/InternalServerError'
1900         '503':
1901           $ref: '#/components/responses/ServiceUnavailable'
1902         '5XX':
1903           $ref: '#/components/responses/UnexpectedError'
1904         default:
1905           $ref: '#/components/responses/UnexpectedError'
1906   '/nslcm/v1/ns_instances_content':
1907     get:
1908       tags:
1909         - "NS instances"
1910       summary: Query information about multiple NS instances
1911       description: Query information about multiple NS isntances
1912       operationId: getNSinstancesContent
1913       responses:
1914         '200':
1915           description: OK
1916           content:
1917             application/json:
1918               schema:
1919                 $ref: '#/components/schemas/ArrayOfNsInstance'
1920             application/yaml:
1921               schema:
1922                 $ref: '#/components/schemas/ArrayOfNsInstance'
1923         '400':
1924           $ref: '#/components/responses/BadRequest'
1925         '401':
1926           $ref: '#/components/responses/Unauthorized'
1927         '403':
1928           $ref: '#/components/responses/Forbidden'
1929         '404':
1930           $ref: '#/components/responses/NotFound'
1931         '405':
1932           $ref: '#/components/responses/MethodNotAllowed'
1933         '406':
1934           $ref: '#/components/responses/NotAcceptable'
1935         '409':
1936           $ref: '#/components/responses/Conflict'
1937         '422':
1938           $ref: '#/components/responses/UnprocessableEntity'
1939         '500':
1940           $ref: '#/components/responses/InternalServerError'
1941         '503':
1942           $ref: '#/components/responses/ServiceUnavailable'
1943         '5XX':
1944           $ref: '#/components/responses/UnexpectedError'
1945         default:
1946           $ref: '#/components/responses/UnexpectedError'
1947     post:
1948       tags:
1949         - "NS instances"
1950       summary: Create a new NS instance
1951       description: Create a new NS instance
1952       operationId: createNSinstanceContent
1953       requestBody:
1954         $ref: '#/components/requestBodies/InstantiateNsRequest'
1955       responses:
1956         '201':
1957           description: Created
1958           headers:
1959             Location:
1960               schema:
1961                 type: string
1962                 format: uri
1963           content:
1964             application/json:
1965               schema:
1966                 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1967             application/yaml:
1968               schema:
1969                 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1970         '400':
1971           $ref: '#/components/responses/BadRequest'
1972         '401':
1973           $ref: '#/components/responses/Unauthorized'
1974         '403':
1975           $ref: '#/components/responses/Forbidden'
1976         '404':
1977           $ref: '#/components/responses/NotFound'
1978         '405':
1979           $ref: '#/components/responses/MethodNotAllowed'
1980         '406':
1981           $ref: '#/components/responses/NotAcceptable'
1982         '409':
1983           $ref: '#/components/responses/Conflict'
1984         '422':
1985           $ref: '#/components/responses/UnprocessableEntity'
1986         '500':
1987           $ref: '#/components/responses/InternalServerError'
1988         '503':
1989           $ref: '#/components/responses/ServiceUnavailable'
1990         '5XX':
1991           $ref: '#/components/responses/UnexpectedError'
1992         default:
1993           $ref: '#/components/responses/UnexpectedError'
1994   '/nslcm/v1/ns_instances_content/{nsInstanceContentId}':
1995     parameters:
1996       - name: nsInstanceContentId
1997         in: path
1998         required: true
1999         description: NS Instance Content ID
2000         schema:
2001           type: string
2002     get:
2003       tags:
2004         - "NS instances"
2005       summary: Read an individual NS instance resource
2006       description: Read an individual NS instance resource
2007       operationId: getNSinstanceContent
2008       responses:
2009         '200':
2010           description: OK
2011           content:
2012             application/json:
2013               schema:
2014                 $ref: '#/components/schemas/NsInstance'
2015             application/yaml:
2016               schema:
2017                 $ref: '#/components/schemas/NsInstance'
2018         '400':
2019           $ref: '#/components/responses/BadRequest'
2020         '401':
2021           $ref: '#/components/responses/Unauthorized'
2022         '403':
2023           $ref: '#/components/responses/Forbidden'
2024         '404':
2025           $ref: '#/components/responses/NotFound'
2026         '405':
2027           $ref: '#/components/responses/MethodNotAllowed'
2028         '406':
2029           $ref: '#/components/responses/NotAcceptable'
2030         '409':
2031           $ref: '#/components/responses/Conflict'
2032         '422':
2033           $ref: '#/components/responses/UnprocessableEntity'
2034         '500':
2035           $ref: '#/components/responses/InternalServerError'
2036         '503':
2037           $ref: '#/components/responses/ServiceUnavailable'
2038         '5XX':
2039           $ref: '#/components/responses/UnexpectedError'
2040         default:
2041           $ref: '#/components/responses/UnexpectedError'
2042     delete:
2043       tags:
2044         - "NS instances"
2045       summary: Delete an individual NS instance resource
2046       description: Delete an individual NS instance resource
2047       operationId: deleteNSinstanceContent
2048       responses:
2049         '202':
2050           description: Accepted
2051           content:
2052             application/json:
2053               schema:
2054                 $ref: '#/components/schemas/ObjectId'
2055             application/yaml:
2056               schema:
2057                 $ref: '#/components/schemas/ObjectId'
2058         '204':
2059           description: No Content
2060         '400':
2061           $ref: '#/components/responses/BadRequest'
2062         '401':
2063           $ref: '#/components/responses/Unauthorized'
2064         '403':
2065           $ref: '#/components/responses/Forbidden'
2066         '404':
2067           $ref: '#/components/responses/NotFound'
2068         '405':
2069           $ref: '#/components/responses/MethodNotAllowed'
2070         '406':
2071           $ref: '#/components/responses/NotAcceptable'
2072         '409':
2073           $ref: '#/components/responses/Conflict'
2074         '422':
2075           $ref: '#/components/responses/UnprocessableEntity'
2076         '500':
2077           $ref: '#/components/responses/InternalServerError'
2078         '503':
2079           $ref: '#/components/responses/ServiceUnavailable'
2080         '5XX':
2081           $ref: '#/components/responses/UnexpectedError'
2082         default:
2083           $ref: '#/components/responses/UnexpectedError'
2084   '/nslcm/v1/ns_lcm_op_occs':
2085     get:
2086       tags:
2087         - "NS instances"
2088       summary: Query information about multiple NS LCM Operation Occurrences
2089       description: Query information about multiple NS LCM Operation Occurrences
2090       operationId: getNSLCMOpOccs
2091       responses:
2092         '200':
2093           description: OK
2094           content:
2095             application/json:
2096               schema:
2097                 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
2098             application/yaml:
2099               schema:
2100                 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
2101         '400':
2102           $ref: '#/components/responses/BadRequest'
2103         '401':
2104           $ref: '#/components/responses/Unauthorized'
2105         '403':
2106           $ref: '#/components/responses/Forbidden'
2107         '404':
2108           $ref: '#/components/responses/NotFound'
2109         '405':
2110           $ref: '#/components/responses/MethodNotAllowed'
2111         '406':
2112           $ref: '#/components/responses/NotAcceptable'
2113         '409':
2114           $ref: '#/components/responses/Conflict'
2115         '422':
2116           $ref: '#/components/responses/UnprocessableEntity'
2117         '500':
2118           $ref: '#/components/responses/InternalServerError'
2119         '503':
2120           $ref: '#/components/responses/ServiceUnavailable'
2121         '5XX':
2122           $ref: '#/components/responses/UnexpectedError'
2123         default:
2124           $ref: '#/components/responses/UnexpectedError'
2125   '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}':
2126     parameters:
2127       - name: nsLcmOpOccId
2128         in: path
2129         required: true
2130         description: NS LCM Operation Occurrence ID
2131         schema:
2132           type: string
2133     get:
2134       tags:
2135         - "NS instances"
2136       summary: Query information about an individual NS LCM Operation Occurrence
2137       description: Query information about an individual NS LCM Operation Occurrence
2138       operationId: getNSLCMOpOcc
2139       responses:
2140         '200':
2141           description: OK
2142           content:
2143             application/json:
2144               schema:
2145                 $ref: '#/components/schemas/NsLcmOpOcc'
2146             application/yaml:
2147               schema:
2148                 $ref: '#/components/schemas/NsLcmOpOcc'
2149         '400':
2150           $ref: '#/components/responses/BadRequest'
2151         '401':
2152           $ref: '#/components/responses/Unauthorized'
2153         '403':
2154           $ref: '#/components/responses/Forbidden'
2155         '404':
2156           $ref: '#/components/responses/NotFound'
2157         '405':
2158           $ref: '#/components/responses/MethodNotAllowed'
2159         '406':
2160           $ref: '#/components/responses/NotAcceptable'
2161         '409':
2162           $ref: '#/components/responses/Conflict'
2163         '422':
2164           $ref: '#/components/responses/UnprocessableEntity'
2165         '500':
2166           $ref: '#/components/responses/InternalServerError'
2167         '503':
2168           $ref: '#/components/responses/ServiceUnavailable'
2169         '5XX':
2170           $ref: '#/components/responses/UnexpectedError'
2171         default:
2172           $ref: '#/components/responses/UnexpectedError'
2173   '/nslcm/v1/vnf_instances':
2174     get:
2175       tags:
2176         - "NS instances"
2177       summary: Query information about multiple VNF Instances
2178       description: Query information about multiple VNF Instances
2179       operationId: getVnfInstances
2180       responses:
2181         '200':
2182           description: OK
2183           content:
2184             application/json:
2185               schema:
2186                 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2187             application/yaml:
2188               schema:
2189                 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2190         '400':
2191           $ref: '#/components/responses/BadRequest'
2192         '401':
2193           $ref: '#/components/responses/Unauthorized'
2194         '403':
2195           $ref: '#/components/responses/Forbidden'
2196         '404':
2197           $ref: '#/components/responses/NotFound'
2198         '405':
2199           $ref: '#/components/responses/MethodNotAllowed'
2200         '406':
2201           $ref: '#/components/responses/NotAcceptable'
2202         '409':
2203           $ref: '#/components/responses/Conflict'
2204         '422':
2205           $ref: '#/components/responses/UnprocessableEntity'
2206         '500':
2207           $ref: '#/components/responses/InternalServerError'
2208         '503':
2209           $ref: '#/components/responses/ServiceUnavailable'
2210         '5XX':
2211           $ref: '#/components/responses/UnexpectedError'
2212         default:
2213           $ref: '#/components/responses/UnexpectedError'
2214   '/nslcm/v1/vnf_instances/{vnfInstanceId}':
2215     parameters:
2216       - name: vnfInstanceId
2217         in: path
2218         required: true
2219         description: VNF Instance ID
2220         schema:
2221           type: string
2222     get:
2223       tags:
2224         - "NS instances"
2225       summary: Query information about an individual VNF Instance
2226       description: Query information about an individual VNF Instance
2227       operationId: getVnfInstance
2228       responses:
2229         '200':
2230           description: OK
2231           content:
2232             application/json:
2233               schema:
2234                 $ref: '#/components/schemas/VnfInstanceInfo'
2235             application/yaml:
2236               schema:
2237                 $ref: '#/components/schemas/VnfInstanceInfo'
2238         '400':
2239           $ref: '#/components/responses/BadRequest'
2240         '401':
2241           $ref: '#/components/responses/Unauthorized'
2242         '403':
2243           $ref: '#/components/responses/Forbidden'
2244         '404':
2245           $ref: '#/components/responses/NotFound'
2246         '405':
2247           $ref: '#/components/responses/MethodNotAllowed'
2248         '406':
2249           $ref: '#/components/responses/NotAcceptable'
2250         '409':
2251           $ref: '#/components/responses/Conflict'
2252         '422':
2253           $ref: '#/components/responses/UnprocessableEntity'
2254         '500':
2255           $ref: '#/components/responses/InternalServerError'
2256         '503':
2257           $ref: '#/components/responses/ServiceUnavailable'
2258         '5XX':
2259           $ref: '#/components/responses/UnexpectedError'
2260         default:
2261           $ref: '#/components/responses/UnexpectedError'
2262   '/nslcm/v1/subscriptions':
2263     get:
2264       tags:
2265         - NS instances
2266       summary: Query information about multiple NS instance subscription
2267       description: Query information about multiple NS instance subscription
2268       operationId: getNsSubcriptions
2269       responses:
2270         '200':
2271           description: OK
2272           content:
2273             application/json:
2274               schema:
2275                 $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
2276             application/yaml:
2277               schema:
2278                 $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
2279         '400':
2280           $ref: '#/components/responses/BadRequest'
2281         '401':
2282           $ref: '#/components/responses/Unauthorized'
2283         '403':
2284           $ref: '#/components/responses/Forbidden'
2285         '404':
2286           $ref: '#/components/responses/NotFound'
2287         '405':
2288           $ref: '#/components/responses/MethodNotAllowed'
2289         '406':
2290           $ref: '#/components/responses/NotAcceptable'
2291         '409':
2292           $ref: '#/components/responses/Conflict'
2293         '422':
2294           $ref: '#/components/responses/UnprocessableEntity'
2295         '500':
2296           $ref: '#/components/responses/InternalServerError'
2297         '503':
2298           $ref: '#/components/responses/ServiceUnavailable'
2299         5XX:
2300           $ref: '#/components/responses/UnexpectedError'
2301         default:
2302           $ref: '#/components/responses/UnexpectedError'
2303     post:
2304       tags:
2305         - NS instances
2306       summary: Create a new subscription for the Network service
2307       description: Create a new subscription for the Network service
2308       operationId: addNsSubcriptions
2309       requestBody:
2310         $ref: '#/components/requestBodies/NslcmSubscriptionRequest'
2311       responses:
2312         '201':
2313           description: Created
2314           headers:
2315             Location:
2316               schema:
2317                 type: object
2318           content:
2319             application/json:
2320               schema:
2321                 $ref: '#/components/schemas/NslcmSubscriptionResponse'
2322             application/yaml:
2323               schema:
2324                 $ref: '#/components/schemas/NslcmSubscriptionResponse'
2325         '400':
2326           $ref: '#/components/responses/BadRequest'
2327         '401':
2328           $ref: '#/components/responses/Unauthorized'
2329         '403':
2330           $ref: '#/components/responses/Forbidden'
2331         '404':
2332           $ref: '#/components/responses/NotFound'
2333         '405':
2334           $ref: '#/components/responses/MethodNotAllowed'
2335         '406':
2336           $ref: '#/components/responses/NotAcceptable'
2337         '409':
2338           $ref: '#/components/responses/Conflict'
2339         '422':
2340           $ref: '#/components/responses/UnprocessableEntity'
2341         '500':
2342           $ref: '#/components/responses/InternalServerError'
2343         '503':
2344           $ref: '#/components/responses/ServiceUnavailable'
2345         5XX:
2346           $ref: '#/components/responses/UnexpectedError'
2347         default:
2348           $ref: '#/components/responses/UnexpectedError'
2349   '/nslcm/v1/subscriptions/{nsSubscriptionsId}':
2350     parameters:
2351       - name: nsSubscriptionsId
2352         in: path
2353         required: true
2354         description: Network Service Subscription ID
2355         schema:
2356           type: string
2357     get:
2358       tags:
2359         - NS instances
2360       summary: Read information about an individual Network Service Subscription
2361       description: Read information about an individual Network Service Subscription
2362       operationId: getNsSubcriptionId
2363       responses:
2364         '200':
2365           description: OK
2366           content:
2367             application/json:
2368               schema:
2369                 $ref: '#/components/schemas/NslcmSubscriptionInfo'
2370             application/yaml:
2371               schema:
2372                 $ref: '#/components/schemas/NslcmSubscriptionInfo'
2373         '400':
2374           $ref: '#/components/responses/BadRequest'
2375         '401':
2376           $ref: '#/components/responses/Unauthorized'
2377         '403':
2378           $ref: '#/components/responses/Forbidden'
2379         '404':
2380           $ref: '#/components/responses/NotFound'
2381         '405':
2382           $ref: '#/components/responses/MethodNotAllowed'
2383         '406':
2384           $ref: '#/components/responses/NotAcceptable'
2385         '409':
2386           $ref: '#/components/responses/Conflict'
2387         '422':
2388           $ref: '#/components/responses/UnprocessableEntity'
2389         '500':
2390           $ref: '#/components/responses/InternalServerError'
2391         '503':
2392           $ref: '#/components/responses/ServiceUnavailable'
2393         5XX:
2394           $ref: '#/components/responses/UnexpectedError'
2395         default:
2396           $ref: '#/components/responses/UnexpectedError'
2397     delete:
2398       tags:
2399         - NS instances
2400       summary: Delete an individual Network Service Subscription
2401       description: Delete an individual Network Service Subscription
2402       operationId: deleteNsSubcriptionId
2403       responses:
2404         '204':
2405           description: No Content
2406         '400':
2407           $ref: '#/components/responses/BadRequest'
2408         '401':
2409           $ref: '#/components/responses/Unauthorized'
2410         '403':
2411           $ref: '#/components/responses/Forbidden'
2412         '404':
2413           $ref: '#/components/responses/NotFound'
2414         '405':
2415           $ref: '#/components/responses/MethodNotAllowed'
2416         '406':
2417           $ref: '#/components/responses/NotAcceptable'
2418         '409':
2419           $ref: '#/components/responses/Conflict'
2420         '422':
2421           $ref: '#/components/responses/UnprocessableEntity'
2422         '500':
2423           $ref: '#/components/responses/InternalServerError'
2424         '503':
2425           $ref: '#/components/responses/ServiceUnavailable'
2426         5XX:
2427           $ref: '#/components/responses/UnexpectedError'
2428         default:
2429           $ref: '#/components/responses/UnexpectedError'
2430 # END NS Instances
2431
2432 # BEGIN Alarms
2433   '/nsfm/v1/alarms':
2434     get:
2435       tags:
2436         - "Alarms"
2437       summary: Query information about multiple alarms
2438       description: Query information about multiple alarms
2439       operationId: getAlarms
2440       responses:
2441         '200':
2442           description: OK
2443           content:
2444             application/json:
2445               schema:
2446                 $ref: '#/components/schemas/ArrayOfAlarm'
2447             application/yaml:
2448               schema:
2449                 $ref: '#/components/schemas/ArrayOfAlarm'
2450         '400':
2451           $ref: '#/components/responses/BadRequest'
2452         '401':
2453           $ref: '#/components/responses/Unauthorized'
2454         '403':
2455           $ref: '#/components/responses/Forbidden'
2456         '404':
2457           $ref: '#/components/responses/NotFound'
2458         '405':
2459           $ref: '#/components/responses/MethodNotAllowed'
2460         '406':
2461           $ref: '#/components/responses/NotAcceptable'
2462         '409':
2463           $ref: '#/components/responses/Conflict'
2464         '422':
2465           $ref: '#/components/responses/UnprocessableEntity'
2466         '500':
2467           $ref: '#/components/responses/InternalServerError'
2468         '503':
2469           $ref: '#/components/responses/ServiceUnavailable'
2470         '5XX':
2471           $ref: '#/components/responses/UnexpectedError'
2472         default:
2473           $ref: '#/components/responses/UnexpectedError'
2474   '/nsfm/v1/alarms/{uuid}':
2475     parameters:
2476       - name: uuid
2477         in: path
2478         required: true
2479         description: Alarm UUID
2480         schema:
2481           type: string
2482     get:
2483       tags:
2484         - "Alarms"
2485       summary: Read an individual Alarm
2486       description: Read an individual Alarm
2487       operationId: getAlarm
2488       responses:
2489         '200':
2490           description: OK
2491           content:
2492             application/json:
2493               schema:
2494                 $ref: '#/components/schemas/Alarm'
2495             application/yaml:
2496               schema:
2497                 $ref: '#/components/schemas/Alarm'
2498         '400':
2499           $ref: '#/components/responses/BadRequest'
2500         '401':
2501           $ref: '#/components/responses/Unauthorized'
2502         '403':
2503           $ref: '#/components/responses/Forbidden'
2504         '404':
2505           $ref: '#/components/responses/NotFound'
2506         '405':
2507           $ref: '#/components/responses/MethodNotAllowed'
2508         '406':
2509           $ref: '#/components/responses/NotAcceptable'
2510         '409':
2511           $ref: '#/components/responses/Conflict'
2512         '422':
2513           $ref: '#/components/responses/UnprocessableEntity'
2514         '500':
2515           $ref: '#/components/responses/InternalServerError'
2516         '503':
2517           $ref: '#/components/responses/ServiceUnavailable'
2518         '5XX':
2519           $ref: '#/components/responses/UnexpectedError'
2520         default:
2521           $ref: '#/components/responses/UnexpectedError'
2522     patch:
2523       tags:
2524         - "Alarms"
2525       summary: Modify the data of an  individual Alarm
2526       description: Modify the data of an  individual Alarm
2527       operationId: updateAlarm
2528       requestBody:
2529         $ref: '#/components/requestBodies/AlarmInfoModifications'
2530       responses:
2531         '204':
2532           description: No Content
2533         '400':
2534           $ref: '#/components/responses/BadRequest'
2535         '401':
2536           $ref: '#/components/responses/Unauthorized'
2537         '403':
2538           $ref: '#/components/responses/Forbidden'
2539         '404':
2540           $ref: '#/components/responses/NotFound'
2541         '405':
2542           $ref: '#/components/responses/MethodNotAllowed'
2543         '406':
2544           $ref: '#/components/responses/NotAcceptable'
2545         '409':
2546           $ref: '#/components/responses/Conflict'
2547         '422':
2548           $ref: '#/components/responses/UnprocessableEntity'
2549         '500':
2550           $ref: '#/components/responses/InternalServerError'
2551         '503':
2552           $ref: '#/components/responses/ServiceUnavailable'
2553         '5XX':
2554           $ref: '#/components/responses/UnexpectedError'
2555         default:
2556           $ref: '#/components/responses/UnexpectedError'
2557 # END Alarms
2558
2559 # BEGIN NetSlice Templates
2560   '/nst/v1/netslice_templates':
2561     get:
2562       tags:
2563         - "NetSlice templates"
2564       summary: Query information about multiple NetSlice template resources
2565       description: Query information about multiple NetSlice template resources
2566       operationId: getNSTs
2567       responses:
2568         '200':
2569           description: OK
2570           content:
2571             application/json:
2572               schema:
2573                 $ref: '#/components/schemas/ArrayOfNstInfo'
2574             application/yaml:
2575               schema:
2576                 $ref: '#/components/schemas/ArrayOfNstInfo'
2577         '400':
2578           $ref: '#/components/responses/BadRequest'
2579         '401':
2580           $ref: '#/components/responses/Unauthorized'
2581         '403':
2582           $ref: '#/components/responses/Forbidden'
2583         '404':
2584           $ref: '#/components/responses/NotFound'
2585         '405':
2586           $ref: '#/components/responses/MethodNotAllowed'
2587         '406':
2588           $ref: '#/components/responses/NotAcceptable'
2589         '409':
2590           $ref: '#/components/responses/Conflict'
2591         '422':
2592           $ref: '#/components/responses/UnprocessableEntity'
2593         '500':
2594           $ref: '#/components/responses/InternalServerError'
2595         '503':
2596           $ref: '#/components/responses/ServiceUnavailable'
2597         '5XX':
2598           $ref: '#/components/responses/UnexpectedError'
2599         default:
2600           $ref: '#/components/responses/UnexpectedError'
2601     post:
2602       tags:
2603         - "NetSlice templates"
2604       summary: Create a new NetSlice template resource
2605       description: Create a new NetSlice template resource
2606       operationId: addNST
2607       requestBody:
2608         $ref: '#/components/requestBodies/CreateNstInfoRequest'
2609       responses:
2610         '201':
2611           description: Created
2612           headers:
2613             Location:
2614               schema:
2615                 type: string
2616                 format: uri
2617           content:
2618             application/json:
2619               schema:
2620                 $ref: '#/components/schemas/ObjectId'
2621             application/yaml:
2622               schema:
2623                 $ref: '#/components/schemas/ObjectId'
2624         '400':
2625           $ref: '#/components/responses/BadRequest'
2626         '401':
2627           $ref: '#/components/responses/Unauthorized'
2628         '403':
2629           $ref: '#/components/responses/Forbidden'
2630         '404':
2631           $ref: '#/components/responses/NotFound'
2632         '405':
2633           $ref: '#/components/responses/MethodNotAllowed'
2634         '406':
2635           $ref: '#/components/responses/NotAcceptable'
2636         '409':
2637           $ref: '#/components/responses/Conflict'
2638         '422':
2639           $ref: '#/components/responses/UnprocessableEntity'
2640         '500':
2641           $ref: '#/components/responses/InternalServerError'
2642         '503':
2643           $ref: '#/components/responses/ServiceUnavailable'
2644         '5XX':
2645           $ref: '#/components/responses/UnexpectedError'
2646         default:
2647           $ref: '#/components/responses/UnexpectedError'
2648   '/nst/v1/netslice_templates/{netsliceTemplateId}':
2649     parameters:
2650       - name: netsliceTemplateId
2651         in: path
2652         required: true
2653         description: NetSlice Template ID
2654         schema:
2655           type: string
2656     get:
2657       tags:
2658         - "NetSlice templates"
2659       summary: Read information about an individual NetSlice template resource
2660       description: Read information about an individual NetSlice template resource
2661       operationId: getNST
2662       responses:
2663         '200':
2664           description: OK
2665           content:
2666             application/json:
2667               schema:
2668                 $ref: '#/components/schemas/NstInfo'
2669             application/yaml:
2670               schema:
2671                 $ref: '#/components/schemas/NstInfo'
2672         '400':
2673           $ref: '#/components/responses/BadRequest'
2674         '401':
2675           $ref: '#/components/responses/Unauthorized'
2676         '403':
2677           $ref: '#/components/responses/Forbidden'
2678         '404':
2679           $ref: '#/components/responses/NotFound'
2680         '405':
2681           $ref: '#/components/responses/MethodNotAllowed'
2682         '406':
2683           $ref: '#/components/responses/NotAcceptable'
2684         '409':
2685           $ref: '#/components/responses/Conflict'
2686         '422':
2687           $ref: '#/components/responses/UnprocessableEntity'
2688         '500':
2689           $ref: '#/components/responses/InternalServerError'
2690         '503':
2691           $ref: '#/components/responses/ServiceUnavailable'
2692         '5XX':
2693           $ref: '#/components/responses/UnexpectedError'
2694         default:
2695           $ref: '#/components/responses/UnexpectedError'
2696     delete:
2697       tags:
2698         - "NetSlice templates"
2699       summary: Delete an individual NetSlice template resource
2700       description: Delete an individual NetSlice template resource
2701       operationId: deleteNST
2702       responses:
2703         '204':
2704           description: No Content
2705         '400':
2706           $ref: '#/components/responses/BadRequest'
2707         '401':
2708           $ref: '#/components/responses/Unauthorized'
2709         '403':
2710           $ref: '#/components/responses/Forbidden'
2711         '404':
2712           $ref: '#/components/responses/NotFound'
2713         '405':
2714           $ref: '#/components/responses/MethodNotAllowed'
2715         '406':
2716           $ref: '#/components/responses/NotAcceptable'
2717         '409':
2718           $ref: '#/components/responses/Conflict'
2719         '422':
2720           $ref: '#/components/responses/UnprocessableEntity'
2721         '500':
2722           $ref: '#/components/responses/InternalServerError'
2723         '503':
2724           $ref: '#/components/responses/ServiceUnavailable'
2725         '5XX':
2726           $ref: '#/components/responses/UnexpectedError'
2727         default:
2728           $ref: '#/components/responses/UnexpectedError'
2729   '/nst/v1/netslice_templates/{netsliceTemplateId}/artifacts/{artifactPath}':
2730     parameters:
2731       - name: netsliceTemplateId
2732         in: path
2733         required: true
2734         description: NetSlice Template ID
2735         schema:
2736           type: string
2737       - name: artifactPath
2738         in: path
2739         required: true
2740         description: Artifact Path
2741         schema:
2742           type: string
2743     get:
2744       tags:
2745         - "NetSlice templates"
2746       summary: Fetch individual NetSlice Template artifact
2747       description: Fetch individual NetSlice Template artifact
2748       operationId: getNstArtifact
2749       responses:
2750         '200':
2751           description: OK
2752           content:
2753             application/octet-stream:
2754               schema:
2755                 type: string
2756                 format: binary
2757         '206':
2758           description: Partial Content
2759           headers:
2760             Content-Range:
2761               schema:
2762                 type: string
2763           content:
2764             application/octet-stream:
2765               schema:
2766                 type: string
2767                 format: binary
2768         '400':
2769           $ref: '#/components/responses/BadRequest'
2770         '401':
2771           $ref: '#/components/responses/Unauthorized'
2772         '403':
2773           $ref: '#/components/responses/Forbidden'
2774         '404':
2775           $ref: '#/components/responses/NotFound'
2776         '405':
2777           $ref: '#/components/responses/MethodNotAllowed'
2778         '406':
2779           $ref: '#/components/responses/NotAcceptable'
2780         '409':
2781           $ref: '#/components/responses/Conflict'
2782         '422':
2783           $ref: '#/components/responses/UnprocessableEntity'
2784         '500':
2785           $ref: '#/components/responses/InternalServerError'
2786         '503':
2787           $ref: '#/components/responses/ServiceUnavailable'
2788         '5XX':
2789           $ref: '#/components/responses/UnexpectedError'
2790         default:
2791           $ref: '#/components/responses/UnexpectedError'
2792   '/nst/v1/netslice_templates/{netsliceTemplateId}/nst':
2793     parameters:
2794       - name: netsliceTemplateId
2795         in: path
2796         required: true
2797         description: NetSlice Template ID
2798         schema:
2799           type: string
2800     get:
2801       tags:
2802         - "NetSlice templates"
2803       summary: Read NST of an on-boarded NetSlice Template
2804       description: Read NST of an on-boarded NetSlice Template
2805       operationId: getNstNst
2806       responses:
2807         '200':
2808           description: OK
2809           content:
2810             text/plain:
2811               schema:
2812                 $ref: '#/components/schemas/NetSliceTemplate'
2813         '400':
2814           $ref: '#/components/responses/BadRequest'
2815         '401':
2816           $ref: '#/components/responses/Unauthorized'
2817         '403':
2818           $ref: '#/components/responses/Forbidden'
2819         '404':
2820           $ref: '#/components/responses/NotFound'
2821         '405':
2822           $ref: '#/components/responses/MethodNotAllowed'
2823         '406':
2824           $ref: '#/components/responses/NotAcceptable'
2825         '409':
2826           $ref: '#/components/responses/Conflict'
2827         '422':
2828           $ref: '#/components/responses/UnprocessableEntity'
2829         '500':
2830           $ref: '#/components/responses/InternalServerError'
2831         '503':
2832           $ref: '#/components/responses/ServiceUnavailable'
2833         '5XX':
2834           $ref: '#/components/responses/UnexpectedError'
2835         default:
2836           $ref: '#/components/responses/UnexpectedError'
2837   '/nst/v1/netslice_templates/{netsliceTemplateId}/nst_content':
2838     parameters:
2839       - name: netsliceTemplateId
2840         in: path
2841         required: true
2842         description: NetSlice Template ID
2843         schema:
2844           type: string
2845     get:
2846       tags:
2847         - "NetSlice templates"
2848       summary: Fetch the content of a NST
2849       description: Fetch the content of a NST
2850       operationId: getNSTcontent
2851       responses:
2852         '200':
2853           description: OK
2854           content:
2855             application/zip:
2856               schema:
2857                 $ref: '#/components/schemas/NetSlicePackage'
2858         '206':
2859           description: Partial Content
2860           headers:
2861             Content-Range:
2862               schema:
2863                 type: string
2864           content:
2865             application/zip:
2866               schema:
2867                 $ref: '#/components/schemas/NetSlicePackage'
2868         '400':
2869           $ref: '#/components/responses/BadRequest'
2870         '401':
2871           $ref: '#/components/responses/Unauthorized'
2872         '403':
2873           $ref: '#/components/responses/Forbidden'
2874         '404':
2875           $ref: '#/components/responses/NotFound'
2876         '405':
2877           $ref: '#/components/responses/MethodNotAllowed'
2878         '406':
2879           $ref: '#/components/responses/NotAcceptable'
2880         '409':
2881           $ref: '#/components/responses/Conflict'
2882         '422':
2883           $ref: '#/components/responses/UnprocessableEntity'
2884         '500':
2885           $ref: '#/components/responses/InternalServerError'
2886         '503':
2887           $ref: '#/components/responses/ServiceUnavailable'
2888         '5XX':
2889           $ref: '#/components/responses/UnexpectedError'
2890         default:
2891           $ref: '#/components/responses/UnexpectedError'
2892     put:
2893       tags:
2894         - "NetSlice templates"
2895       summary: Upload the content of a NST
2896       description: Upload the content of a NST
2897       operationId: updateNSTcontent
2898       requestBody:
2899         $ref: '#/components/requestBodies/NetSlicePackage'
2900       responses:
2901         '202':
2902           description: Accepted
2903         '204':
2904           description: No Content
2905         '400':
2906           $ref: '#/components/responses/BadRequest'
2907         '401':
2908           $ref: '#/components/responses/Unauthorized'
2909         '403':
2910           $ref: '#/components/responses/Forbidden'
2911         '404':
2912           $ref: '#/components/responses/NotFound'
2913         '405':
2914           $ref: '#/components/responses/MethodNotAllowed'
2915         '406':
2916           $ref: '#/components/responses/NotAcceptable'
2917         '409':
2918           $ref: '#/components/responses/Conflict'
2919         '422':
2920           $ref: '#/components/responses/UnprocessableEntity'
2921         '500':
2922           $ref: '#/components/responses/InternalServerError'
2923         '503':
2924           $ref: '#/components/responses/ServiceUnavailable'
2925         '5XX':
2926           $ref: '#/components/responses/UnexpectedError'
2927         default:
2928           $ref: '#/components/responses/UnexpectedError'
2929   '/nst/v1/netslice_templates_content':
2930     post:
2931       tags:
2932         - "NetSlice templates"
2933       summary: Upload a NetSlice package by providing the content of the NetSlice package
2934       description: Upload a NetSlice package by providing the content of the NetSlice package
2935       operationId: uploadNstContent
2936       requestBody:
2937         content:
2938           application/zip:
2939             schema:
2940               $ref: '#/components/schemas/NetSlicePackage'
2941       responses:
2942         '201':
2943           description: Created
2944           headers:
2945             Location:
2946               schema:
2947                 type: string
2948                 format: uri
2949           content:
2950             application/json:
2951               schema:
2952                 $ref: '#/components/schemas/ObjectId'
2953             application/yaml:
2954               schema:
2955                 $ref: '#/components/schemas/ObjectId'
2956         '202':
2957           description: Accepted
2958         '204':
2959           description: No Content
2960         '400':
2961           $ref: '#/components/responses/BadRequest'
2962         '401':
2963           $ref: '#/components/responses/Unauthorized'
2964         '403':
2965           $ref: '#/components/responses/Forbidden'
2966         '404':
2967           $ref: '#/components/responses/NotFound'
2968         '405':
2969           $ref: '#/components/responses/MethodNotAllowed'
2970         '406':
2971           $ref: '#/components/responses/NotAcceptable'
2972         '409':
2973           $ref: '#/components/responses/Conflict'
2974         '422':
2975           $ref: '#/components/responses/UnprocessableEntity'
2976         '500':
2977           $ref: '#/components/responses/InternalServerError'
2978         '503':
2979           $ref: '#/components/responses/ServiceUnavailable'
2980         '5XX':
2981           $ref: '#/components/responses/UnexpectedError'
2982         default:
2983           $ref: '#/components/responses/UnexpectedError'
2984     get:
2985       tags:
2986         - "NetSlice templates"
2987       summary: Query information about multiple NetSlice Template resources
2988       description: Query information about multiple NetSlice Template resources
2989       operationId: getNstContent
2990       responses:
2991         '200':
2992           description: OK
2993           content:
2994             application/json:
2995               schema:
2996                 $ref: '#/components/schemas/ArrayOfNstInfo'
2997             application/yaml:
2998               schema:
2999                 $ref: '#/components/schemas/ArrayOfNstInfo'
3000         '206':
3001           description: Partial Content
3002           headers:
3003             Content-Range:
3004               schema:
3005                 type: string
3006           content:
3007             application/octet-stream:
3008               schema:
3009                 type: string
3010                 format: binary
3011         '400':
3012           $ref: '#/components/responses/BadRequest'
3013         '401':
3014           $ref: '#/components/responses/Unauthorized'
3015         '403':
3016           $ref: '#/components/responses/Forbidden'
3017         '404':
3018           $ref: '#/components/responses/NotFound'
3019         '405':
3020           $ref: '#/components/responses/MethodNotAllowed'
3021         '406':
3022           $ref: '#/components/responses/NotAcceptable'
3023         '409':
3024           $ref: '#/components/responses/Conflict'
3025         '422':
3026           $ref: '#/components/responses/UnprocessableEntity'
3027         '500':
3028           $ref: '#/components/responses/InternalServerError'
3029         '503':
3030           $ref: '#/components/responses/ServiceUnavailable'
3031         '5XX':
3032           $ref: '#/components/responses/UnexpectedError'
3033         default:
3034           $ref: '#/components/responses/UnexpectedError'
3035   '/nst/v1/netslice_templates_content/{netsliceTemplateContentId}':
3036     parameters:
3037       - name: netsliceTemplateContentId
3038         in: path
3039         required: true
3040         description: NetSlice Template ID
3041         schema:
3042           type: string
3043     get:
3044       tags:
3045         - "NetSlice templates"
3046       summary: Read information about an individual NetSlice Template resource
3047       description: Read information about an individual NetSlice Template resource
3048       operationId: getNstIdContent
3049       responses:
3050         '200':
3051           description: OK
3052           content:
3053             application/json:
3054               schema:
3055                 $ref: '#/components/schemas/NstInfo'
3056             application/yaml:
3057               schema:
3058                 $ref: '#/components/schemas/NstInfo'
3059         '400':
3060           $ref: '#/components/responses/BadRequest'
3061         '401':
3062           $ref: '#/components/responses/Unauthorized'
3063         '403':
3064           $ref: '#/components/responses/Forbidden'
3065         '404':
3066           $ref: '#/components/responses/NotFound'
3067         '405':
3068           $ref: '#/components/responses/MethodNotAllowed'
3069         '406':
3070           $ref: '#/components/responses/NotAcceptable'
3071         '409':
3072           $ref: '#/components/responses/Conflict'
3073         '422':
3074           $ref: '#/components/responses/UnprocessableEntity'
3075         '500':
3076           $ref: '#/components/responses/InternalServerError'
3077         '503':
3078           $ref: '#/components/responses/ServiceUnavailable'
3079         '5XX':
3080           $ref: '#/components/responses/UnexpectedError'
3081         default:
3082           $ref: '#/components/responses/UnexpectedError'
3083     put:
3084       tags:
3085         - "NetSlice templates"
3086       summary: Modify an individual NetSlice Template resource
3087       description: Modify an individual NetSlice Template resource
3088       operationId: updateNstIdContent
3089       requestBody:
3090         $ref: '#/components/requestBodies/NstInfoModifications'
3091       responses:
3092         '204':
3093           description: No Content
3094         '400':
3095           $ref: '#/components/responses/BadRequest'
3096         '401':
3097           $ref: '#/components/responses/Unauthorized'
3098         '403':
3099           $ref: '#/components/responses/Forbidden'
3100         '404':
3101           $ref: '#/components/responses/NotFound'
3102         '405':
3103           $ref: '#/components/responses/MethodNotAllowed'
3104         '406':
3105           $ref: '#/components/responses/NotAcceptable'
3106         '409':
3107           $ref: '#/components/responses/Conflict'
3108         '422':
3109           $ref: '#/components/responses/UnprocessableEntity'
3110         '500':
3111           $ref: '#/components/responses/InternalServerError'
3112         '503':
3113           $ref: '#/components/responses/ServiceUnavailable'
3114         '5XX':
3115           $ref: '#/components/responses/UnexpectedError'
3116         default:
3117           $ref: '#/components/responses/UnexpectedError'
3118     delete:
3119       tags:
3120         - "NetSlice templates"
3121       summary: Delete an individual NetSlice Template resource
3122       description: Delete an individual NetSlice Template resource
3123       operationId: deleteNstIdContent
3124       responses:
3125         '204':
3126           description: No Content
3127         '400':
3128           $ref: '#/components/responses/BadRequest'
3129         '401':
3130           $ref: '#/components/responses/Unauthorized'
3131         '403':
3132           $ref: '#/components/responses/Forbidden'
3133         '404':
3134           $ref: '#/components/responses/NotFound'
3135         '405':
3136           $ref: '#/components/responses/MethodNotAllowed'
3137         '406':
3138           $ref: '#/components/responses/NotAcceptable'
3139         '409':
3140           $ref: '#/components/responses/Conflict'
3141         '422':
3142           $ref: '#/components/responses/UnprocessableEntity'
3143         '500':
3144           $ref: '#/components/responses/InternalServerError'
3145         '503':
3146           $ref: '#/components/responses/ServiceUnavailable'
3147         '5XX':
3148           $ref: '#/components/responses/UnexpectedError'
3149         default:
3150           $ref: '#/components/responses/UnexpectedError'
3151 # END NetSlice Templates
3152
3153 # BEGIN NetSlice Instances
3154   '/nsilcm/v1/netslice_instances':
3155     get:
3156       tags:
3157         - "NetSlice instances"
3158       summary: Query information about multiple NetSlice instances
3159       description: Query information about multiple NetSlice isntances
3160       operationId: getNSIs
3161       responses:
3162         '200':
3163           description: OK
3164           content:
3165             application/json:
3166               schema:
3167                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3168             application/yaml:
3169               schema:
3170                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3171         '400':
3172           $ref: '#/components/responses/BadRequest'
3173         '401':
3174           $ref: '#/components/responses/Unauthorized'
3175         '403':
3176           $ref: '#/components/responses/Forbidden'
3177         '404':
3178           $ref: '#/components/responses/NotFound'
3179         '405':
3180           $ref: '#/components/responses/MethodNotAllowed'
3181         '406':
3182           $ref: '#/components/responses/NotAcceptable'
3183         '409':
3184           $ref: '#/components/responses/Conflict'
3185         '422':
3186           $ref: '#/components/responses/UnprocessableEntity'
3187         '500':
3188           $ref: '#/components/responses/InternalServerError'
3189         '503':
3190           $ref: '#/components/responses/ServiceUnavailable'
3191         '5XX':
3192           $ref: '#/components/responses/UnexpectedError'
3193         default:
3194           $ref: '#/components/responses/UnexpectedError'
3195     post:
3196       tags:
3197         - "NetSlice instances"
3198       summary: Create a new NetSlice instance resource
3199       description: Create a new NetSlice instance resource
3200       operationId: addNSI
3201       requestBody:
3202         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3203       responses:
3204         '201':
3205           description: Created
3206           headers:
3207             Location:
3208               schema:
3209                 type: string
3210                 format: uri
3211           content:
3212             application/json:
3213               schema:
3214                 $ref: '#/components/schemas/ObjectId'
3215             application/yaml:
3216               schema:
3217                 $ref: '#/components/schemas/ObjectId'
3218         '400':
3219           $ref: '#/components/responses/BadRequest'
3220         '401':
3221           $ref: '#/components/responses/Unauthorized'
3222         '403':
3223           $ref: '#/components/responses/Forbidden'
3224         '404':
3225           $ref: '#/components/responses/NotFound'
3226         '405':
3227           $ref: '#/components/responses/MethodNotAllowed'
3228         '406':
3229           $ref: '#/components/responses/NotAcceptable'
3230         '409':
3231           $ref: '#/components/responses/Conflict'
3232         '422':
3233           $ref: '#/components/responses/UnprocessableEntity'
3234         '500':
3235           $ref: '#/components/responses/InternalServerError'
3236         '503':
3237           $ref: '#/components/responses/ServiceUnavailable'
3238         '5XX':
3239           $ref: '#/components/responses/UnexpectedError'
3240         default:
3241           $ref: '#/components/responses/UnexpectedError'
3242   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}':
3243     parameters:
3244       - name: netsliceInstanceId
3245         in: path
3246         required: true
3247         description: NetSlice Instance ID
3248         schema:
3249           type: string
3250     get:
3251       tags:
3252         - "NetSlice instances"
3253       summary: Read an individual NetSlice instance resource
3254       description: Read an individual NetSlice instance resource
3255       operationId: getNSI
3256       responses:
3257         '200':
3258           description: OK
3259           content:
3260             application/json:
3261               schema:
3262                 $ref: '#/components/schemas/NetSliceInstance'
3263             application/yaml:
3264               schema:
3265                 $ref: '#/components/schemas/NetSliceInstance'
3266         '400':
3267           $ref: '#/components/responses/BadRequest'
3268         '401':
3269           $ref: '#/components/responses/Unauthorized'
3270         '403':
3271           $ref: '#/components/responses/Forbidden'
3272         '404':
3273           $ref: '#/components/responses/NotFound'
3274         '405':
3275           $ref: '#/components/responses/MethodNotAllowed'
3276         '406':
3277           $ref: '#/components/responses/NotAcceptable'
3278         '409':
3279           $ref: '#/components/responses/Conflict'
3280         '422':
3281           $ref: '#/components/responses/UnprocessableEntity'
3282         '500':
3283           $ref: '#/components/responses/InternalServerError'
3284         '503':
3285           $ref: '#/components/responses/ServiceUnavailable'
3286         '5XX':
3287           $ref: '#/components/responses/UnexpectedError'
3288         default:
3289           $ref: '#/components/responses/UnexpectedError'
3290     delete:
3291       tags:
3292         - "NetSlice instances"
3293       summary: Delete an individual NetSlice instance resource
3294       description: Delete an individual NetSlice instance resource
3295       operationId: deleteNSI
3296       responses:
3297         '204':
3298           description: No Content
3299         '400':
3300           $ref: '#/components/responses/BadRequest'
3301         '401':
3302           $ref: '#/components/responses/Unauthorized'
3303         '403':
3304           $ref: '#/components/responses/Forbidden'
3305         '404':
3306           $ref: '#/components/responses/NotFound'
3307         '405':
3308           $ref: '#/components/responses/MethodNotAllowed'
3309         '406':
3310           $ref: '#/components/responses/NotAcceptable'
3311         '409':
3312           $ref: '#/components/responses/Conflict'
3313         '422':
3314           $ref: '#/components/responses/UnprocessableEntity'
3315         '500':
3316           $ref: '#/components/responses/InternalServerError'
3317         '503':
3318           $ref: '#/components/responses/ServiceUnavailable'
3319         '5XX':
3320           $ref: '#/components/responses/UnexpectedError'
3321         default:
3322           $ref: '#/components/responses/UnexpectedError'
3323   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/instantiate':
3324     parameters:
3325       - name: netsliceInstanceId
3326         in: path
3327         required: true
3328         description: NetSlice Instance ID
3329         schema:
3330           type: string
3331     post:
3332       tags:
3333         - "NetSlice instances"
3334       summary: Instantiate a NetSlice
3335       description: |
3336         Instantiate a NetSlice. The precondition is that the NetSlice instance
3337         must have been created and must be in NOT_INSTANTIATED state. As a result
3338         of the success of this operation, the NFVO creates a "NetSlice Lifecycle
3339         Operation Occurrence" resource for the request, and the NS instance state
3340         becomes INSTANTIATED.
3341       operationId: instantiateNSI
3342       requestBody:
3343         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3344       responses:
3345         '202':
3346           description: Accepted
3347           headers:
3348             Location:
3349               description: |
3350                 It must point to the new "NetSlice Lifecycle Operation Occurrence"
3351                 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
3352               schema:
3353                 type: string
3354                 format: uri
3355           content:
3356             application/json:
3357               schema:
3358                 $ref: '#/components/schemas/ObjectId'
3359             application/yaml:
3360               schema:
3361                 $ref: '#/components/schemas/ObjectId'
3362         '400':
3363           $ref: '#/components/responses/BadRequest'
3364         '401':
3365           $ref: '#/components/responses/Unauthorized'
3366         '403':
3367           $ref: '#/components/responses/Forbidden'
3368         '404':
3369           $ref: '#/components/responses/NotFound'
3370         '405':
3371           $ref: '#/components/responses/MethodNotAllowed'
3372         '406':
3373           $ref: '#/components/responses/NotAcceptable'
3374         '409':
3375           $ref: '#/components/responses/Conflict'
3376         '422':
3377           $ref: '#/components/responses/UnprocessableEntity'
3378         '500':
3379           $ref: '#/components/responses/InternalServerError'
3380         '503':
3381           $ref: '#/components/responses/ServiceUnavailable'
3382         '5XX':
3383           $ref: '#/components/responses/UnexpectedError'
3384         default:
3385           $ref: '#/components/responses/UnexpectedError'
3386   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/terminate':
3387     parameters:
3388       - name: netsliceInstanceId
3389         in: path
3390         required: true
3391         description: NetSlice Instance ID
3392         schema:
3393           type: string
3394     post:
3395       tags:
3396         - "NetSlice instances"
3397       summary: Terminate a NetSlice instance
3398       description: |
3399         Terminate a NetSlice instance. The precondition is that the NetSlice instance
3400         must have been created and must be in INSTANTIATED state. As a result of the
3401         success of this operation, the NFVO creates a "NetSlice Lifecycle Operation
3402         Occurrence" resource for the request, and the NetSlice instance state becomes
3403         NOT_INSTANTIATED.
3404       operationId: terminateNSI
3405       requestBody:
3406         # Request data is not required
3407         $ref: '#/components/requestBodies/TerminateNsiRequest'
3408       responses:
3409         '202':
3410           description: Accepted
3411           headers:
3412             Location:
3413               description: |
3414                 It must point to the new "NetSlice Lifecycle Operation Occurrence"
3415                 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
3416               schema:
3417                 type: string
3418                 format: uri
3419           content:
3420             application/json:
3421               schema:
3422                 $ref: '#/components/schemas/ObjectId'
3423             application/yaml:
3424               schema:
3425                 $ref: '#/components/schemas/ObjectId'
3426         '400':
3427           $ref: '#/components/responses/BadRequest'
3428         '401':
3429           $ref: '#/components/responses/Unauthorized'
3430         '403':
3431           $ref: '#/components/responses/Forbidden'
3432         '404':
3433           $ref: '#/components/responses/NotFound'
3434         '405':
3435           $ref: '#/components/responses/MethodNotAllowed'
3436         '406':
3437           $ref: '#/components/responses/NotAcceptable'
3438         '409':
3439           $ref: '#/components/responses/Conflict'
3440         '422':
3441           $ref: '#/components/responses/UnprocessableEntity'
3442         '500':
3443           $ref: '#/components/responses/InternalServerError'
3444         '503':
3445           $ref: '#/components/responses/ServiceUnavailable'
3446         '5XX':
3447           $ref: '#/components/responses/UnexpectedError'
3448         default:
3449           $ref: '#/components/responses/UnexpectedError'
3450   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/action':
3451     parameters:
3452       - name: netsliceInstanceId
3453         in: path
3454         required: true
3455         description: NetSlice Instance ID
3456         schema:
3457           type: string
3458     post:
3459       tags:
3460         - "NetSlice instances"
3461       summary: Execute an action on a NetSlice instance
3462       description: |
3463         Execute an action on a NetSlice instance.
3464         The NetSlice instance must have been created and must be in INSTANTIATED state.
3465       operationId: actionOnNSI
3466       requestBody:
3467         content:
3468           application/json:
3469             schema:
3470               $ref: '#/components/schemas/NsiActionRequest'
3471           application/yaml:
3472             schema:
3473               $ref: '#/components/schemas/NsiActionRequest'
3474       responses:
3475         '202':
3476           description: Accepted
3477           headers:
3478             Location:
3479               description: |
3480                 It must point to the new "NS Lifecycle Operation Occurrence"
3481                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
3482               schema:
3483                 type: string
3484                 format: uri
3485           content:
3486             application/json:
3487               schema:
3488                 $ref: '#/components/schemas/ObjectId'
3489             application/yaml:
3490               schema:
3491                 $ref: '#/components/schemas/ObjectId'
3492         '400':
3493           $ref: '#/components/responses/BadRequest'
3494         '401':
3495           $ref: '#/components/responses/Unauthorized'
3496         '403':
3497           $ref: '#/components/responses/Forbidden'
3498         '404':
3499           $ref: '#/components/responses/NotFound'
3500         '405':
3501           $ref: '#/components/responses/MethodNotAllowed'
3502         '406':
3503           $ref: '#/components/responses/NotAcceptable'
3504         '409':
3505           $ref: '#/components/responses/Conflict'
3506         '422':
3507           $ref: '#/components/responses/UnprocessableEntity'
3508         '500':
3509           $ref: '#/components/responses/InternalServerError'
3510         '503':
3511           $ref: '#/components/responses/ServiceUnavailable'
3512         '5XX':
3513           $ref: '#/components/responses/UnexpectedError'
3514         default:
3515           $ref: '#/components/responses/UnexpectedError'
3516   '/nsilcm/v1/netslice_instances_content':
3517     get:
3518       tags:
3519         - "NetSlice instances"
3520       summary: Query information about multiple NetSlice instances
3521       description: Query information about multiple NetSlice isntances
3522       operationId: getNSIsContent
3523       responses:
3524         '200':
3525           description: OK
3526           content:
3527             application/json:
3528               schema:
3529                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3530             application/yaml:
3531               schema:
3532                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3533         '400':
3534           $ref: '#/components/responses/BadRequest'
3535         '401':
3536           $ref: '#/components/responses/Unauthorized'
3537         '403':
3538           $ref: '#/components/responses/Forbidden'
3539         '404':
3540           $ref: '#/components/responses/NotFound'
3541         '405':
3542           $ref: '#/components/responses/MethodNotAllowed'
3543         '406':
3544           $ref: '#/components/responses/NotAcceptable'
3545         '409':
3546           $ref: '#/components/responses/Conflict'
3547         '422':
3548           $ref: '#/components/responses/UnprocessableEntity'
3549         '500':
3550           $ref: '#/components/responses/InternalServerError'
3551         '503':
3552           $ref: '#/components/responses/ServiceUnavailable'
3553         '5XX':
3554           $ref: '#/components/responses/UnexpectedError'
3555         default:
3556           $ref: '#/components/responses/UnexpectedError'
3557     post:
3558       tags:
3559         - "NetSlice instances"
3560       summary: Create a new NetSlice instance
3561       description: Create a new NetSlice instance
3562       operationId: createNSIContent
3563       requestBody:
3564         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3565       responses:
3566         '201':
3567           description: Created
3568           headers:
3569             Location:
3570               schema:
3571                 type: string
3572                 format: uri
3573           content:
3574             application/json:
3575               schema:
3576                 $ref: '#/components/schemas/CreateNsiContentResponse'
3577             application/yaml:
3578               schema:
3579                 $ref: '#/components/schemas/CreateNsiContentResponse'
3580         '400':
3581           $ref: '#/components/responses/BadRequest'
3582         '401':
3583           $ref: '#/components/responses/Unauthorized'
3584         '403':
3585           $ref: '#/components/responses/Forbidden'
3586         '404':
3587           $ref: '#/components/responses/NotFound'
3588         '405':
3589           $ref: '#/components/responses/MethodNotAllowed'
3590         '406':
3591           $ref: '#/components/responses/NotAcceptable'
3592         '409':
3593           $ref: '#/components/responses/Conflict'
3594         '422':
3595           $ref: '#/components/responses/UnprocessableEntity'
3596         '500':
3597           $ref: '#/components/responses/InternalServerError'
3598         '503':
3599           $ref: '#/components/responses/ServiceUnavailable'
3600         '5XX':
3601           $ref: '#/components/responses/UnexpectedError'
3602         default:
3603           $ref: '#/components/responses/UnexpectedError'
3604   '/nsilcm/v1/netslice_instances_content/{netsliceInstanceContentId}':
3605     parameters:
3606       - name: netsliceInstanceContentId
3607         in: path
3608         required: true
3609         description: NetSlice Instance Content ID
3610         schema:
3611           type: string
3612     get:
3613       tags:
3614         - "NetSlice instances"
3615       summary: Read an individual NetSlice instance resource
3616       description: Read an individual NetSlice instance resource
3617       operationId: getNSIContent
3618       responses:
3619         '200':
3620           description: OK
3621           content:
3622             application/json:
3623               schema:
3624                 $ref: '#/components/schemas/NetSliceInstance'
3625             application/yaml:
3626               schema:
3627                 $ref: '#/components/schemas/NetSliceInstance'
3628         '400':
3629           $ref: '#/components/responses/BadRequest'
3630         '401':
3631           $ref: '#/components/responses/Unauthorized'
3632         '403':
3633           $ref: '#/components/responses/Forbidden'
3634         '404':
3635           $ref: '#/components/responses/NotFound'
3636         '405':
3637           $ref: '#/components/responses/MethodNotAllowed'
3638         '406':
3639           $ref: '#/components/responses/NotAcceptable'
3640         '409':
3641           $ref: '#/components/responses/Conflict'
3642         '422':
3643           $ref: '#/components/responses/UnprocessableEntity'
3644         '500':
3645           $ref: '#/components/responses/InternalServerError'
3646         '503':
3647           $ref: '#/components/responses/ServiceUnavailable'
3648         '5XX':
3649           $ref: '#/components/responses/UnexpectedError'
3650         default:
3651           $ref: '#/components/responses/UnexpectedError'
3652     delete:
3653       tags:
3654         - "NetSlice instances"
3655       summary: Delete an individual NS instance resource
3656       description: Delete an individual NS instance resource
3657       operationId: deleteNSIContent
3658       responses:
3659         '202':
3660           description: Accepted
3661           content:
3662             application/json:
3663               schema:
3664                 $ref: '#/components/schemas/ObjectId'
3665             application/yaml:
3666               schema:
3667                 $ref: '#/components/schemas/ObjectId'
3668         '204':
3669           description: No Content
3670         '400':
3671           $ref: '#/components/responses/BadRequest'
3672         '401':
3673           $ref: '#/components/responses/Unauthorized'
3674         '403':
3675           $ref: '#/components/responses/Forbidden'
3676         '404':
3677           $ref: '#/components/responses/NotFound'
3678         '405':
3679           $ref: '#/components/responses/MethodNotAllowed'
3680         '406':
3681           $ref: '#/components/responses/NotAcceptable'
3682         '409':
3683           $ref: '#/components/responses/Conflict'
3684         '422':
3685           $ref: '#/components/responses/UnprocessableEntity'
3686         '500':
3687           $ref: '#/components/responses/InternalServerError'
3688         '503':
3689           $ref: '#/components/responses/ServiceUnavailable'
3690         '5XX':
3691           $ref: '#/components/responses/UnexpectedError'
3692         default:
3693           $ref: '#/components/responses/UnexpectedError'
3694   '/nsilcm/v1/nsi_lcm_op_occs':
3695     get:
3696       tags:
3697         - "NetSlice instances"
3698       summary: Query information about multiple NetSlice LCM Operation Occurrences
3699       description: Query information about multiple NetSlice LCM Operation Occurrences
3700       operationId: getNsiLcmOpOccs
3701       responses:
3702         '200':
3703           description: OK
3704           content:
3705             application/json:
3706               schema:
3707                 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3708             application/yaml:
3709               schema:
3710                 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3711         '400':
3712           $ref: '#/components/responses/BadRequest'
3713         '401':
3714           $ref: '#/components/responses/Unauthorized'
3715         '403':
3716           $ref: '#/components/responses/Forbidden'
3717         '404':
3718           $ref: '#/components/responses/NotFound'
3719         '405':
3720           $ref: '#/components/responses/MethodNotAllowed'
3721         '406':
3722           $ref: '#/components/responses/NotAcceptable'
3723         '409':
3724           $ref: '#/components/responses/Conflict'
3725         '422':
3726           $ref: '#/components/responses/UnprocessableEntity'
3727         '500':
3728           $ref: '#/components/responses/InternalServerError'
3729         '503':
3730           $ref: '#/components/responses/ServiceUnavailable'
3731         '5XX':
3732           $ref: '#/components/responses/UnexpectedError'
3733         default:
3734           $ref: '#/components/responses/UnexpectedError'
3735   '/nsilcm/v1/nsi_lcm_op_occs/{nsiLcmOpOccId}':
3736     parameters:
3737       - name: nsiLcmOpOccId
3738         in: path
3739         required: true
3740         description: NetSlice LCM Operation Occurrence ID
3741         schema:
3742           type: string
3743     get:
3744       tags:
3745         - "NetSlice instances"
3746       summary: Query information about an individual NetSlice LCM Operation Occurrence
3747       description: Query information about an individual NetSlice LCM Operation Occurrence
3748       operationId: getNsiLcmOpOcc
3749       responses:
3750         '200':
3751           description: OK
3752           content:
3753             application/json:
3754               schema:
3755                 $ref: '#/components/schemas/NsiLcmOpOcc'
3756             application/yaml:
3757               schema:
3758                 $ref: '#/components/schemas/NsiLcmOpOcc'
3759         '400':
3760           $ref: '#/components/responses/BadRequest'
3761         '401':
3762           $ref: '#/components/responses/Unauthorized'
3763         '403':
3764           $ref: '#/components/responses/Forbidden'
3765         '404':
3766           $ref: '#/components/responses/NotFound'
3767         '405':
3768           $ref: '#/components/responses/MethodNotAllowed'
3769         '406':
3770           $ref: '#/components/responses/NotAcceptable'
3771         '409':
3772           $ref: '#/components/responses/Conflict'
3773         '422':
3774           $ref: '#/components/responses/UnprocessableEntity'
3775         '500':
3776           $ref: '#/components/responses/InternalServerError'
3777         '503':
3778           $ref: '#/components/responses/ServiceUnavailable'
3779         '5XX':
3780           $ref: '#/components/responses/UnexpectedError'
3781         default:
3782           $ref: '#/components/responses/UnexpectedError'
3783 # END NetSlice Instances
3784
3785 # BEGIN NSPM
3786   '/nspm/v1/pm_jobs/{pmJobId}/reports/{nsId}':
3787     parameters:
3788       - name: pmJobId
3789         in: path
3790         required: true
3791         description: NS PM Job ID
3792         schema:
3793           type: string
3794       - name: nsId
3795         in: path
3796         required: true
3797         description: NS ID
3798         schema:
3799           type: string
3800     get:
3801       tags:
3802         - "NS Performance Management"
3803       summary: Query information about an individual NS PM Job Report
3804       description: Query information about an individual NS PM Job Report
3805       operationId: getNsPmJobReport
3806       responses:
3807         '200':
3808           description: OK
3809           content:
3810             application/json:
3811               schema:
3812                 $ref: '#/components/schemas/NsPmJobReportInfo'
3813             application/yaml:
3814               schema:
3815                 $ref: '#/components/schemas/NsPmJobReportInfo'
3816         '400':
3817           $ref: '#/components/responses/BadRequest'
3818         '401':
3819           $ref: '#/components/responses/Unauthorized'
3820         '403':
3821           $ref: '#/components/responses/Forbidden'
3822         '404':
3823           $ref: '#/components/responses/NotFound'
3824         '405':
3825           $ref: '#/components/responses/MethodNotAllowed'
3826         '406':
3827           $ref: '#/components/responses/NotAcceptable'
3828         '409':
3829           $ref: '#/components/responses/Conflict'
3830         '422':
3831           $ref: '#/components/responses/UnprocessableEntity'
3832         '500':
3833           $ref: '#/components/responses/InternalServerError'
3834         '503':
3835           $ref: '#/components/responses/ServiceUnavailable'
3836         '5XX':
3837           $ref: '#/components/responses/UnexpectedError'
3838         default:
3839           $ref: '#/components/responses/UnexpectedError'
3840 # END NSPM
3841
3842 # BEGIN PDU
3843   '/pdu/v1/pdu_descriptors':
3844     get:
3845       tags:
3846         - "Physical Data Units (PDU)"
3847       summary: Query information about multiple PDU Descriptors
3848       description: Query information about multiple PDU Descriptors
3849       operationId: getPDUs
3850       responses:
3851         '200':
3852           description: OK
3853           content:
3854             application/json:
3855               schema:
3856                 $ref: '#/components/schemas/ArrayOfPduInfo'
3857             application/yaml:
3858               schema:
3859                 $ref: '#/components/schemas/ArrayOfPduInfo'
3860         '400':
3861           $ref: '#/components/responses/BadRequest'
3862         '401':
3863           $ref: '#/components/responses/Unauthorized'
3864         '403':
3865           $ref: '#/components/responses/Forbidden'
3866         '404':
3867           $ref: '#/components/responses/NotFound'
3868         '405':
3869           $ref: '#/components/responses/MethodNotAllowed'
3870         '406':
3871           $ref: '#/components/responses/NotAcceptable'
3872         '409':
3873           $ref: '#/components/responses/Conflict'
3874         '422':
3875           $ref: '#/components/responses/UnprocessableEntity'
3876         '500':
3877           $ref: '#/components/responses/InternalServerError'
3878         '503':
3879           $ref: '#/components/responses/ServiceUnavailable'
3880         '5XX':
3881           $ref: '#/components/responses/UnexpectedError'
3882         default:
3883           $ref: '#/components/responses/UnexpectedError'
3884     post:
3885       tags:
3886         - "Physical Data Units (PDU)"
3887       summary: Create a new PDU
3888       description: Create a new PDU Descriptor
3889       operationId: createPDU
3890       requestBody:
3891         $ref: '#/components/requestBodies/CreatePduRequest'
3892       responses:
3893         '200':
3894           description: OK
3895           headers:
3896             Location:
3897               schema:
3898                 type: string
3899                 format: uri
3900           content:
3901             application/json:
3902               schema:
3903                 $ref: '#/components/schemas/ObjectId'
3904             application/yaml:
3905               schema:
3906                 $ref: '#/components/schemas/ObjectId'
3907         '400':
3908           $ref: '#/components/responses/BadRequest'
3909         '401':
3910           $ref: '#/components/responses/Unauthorized'
3911         '403':
3912           $ref: '#/components/responses/Forbidden'
3913         '404':
3914           $ref: '#/components/responses/NotFound'
3915         '405':
3916           $ref: '#/components/responses/MethodNotAllowed'
3917         '406':
3918           $ref: '#/components/responses/NotAcceptable'
3919         '409':
3920           $ref: '#/components/responses/Conflict'
3921         '422':
3922           $ref: '#/components/responses/UnprocessableEntity'
3923         '500':
3924           $ref: '#/components/responses/InternalServerError'
3925         '503':
3926           $ref: '#/components/responses/ServiceUnavailable'
3927         '5XX':
3928           $ref: '#/components/responses/UnexpectedError'
3929         default:
3930           $ref: '#/components/responses/UnexpectedError'
3931   '/pdu/v1/pdu_descriptors/{pduDescriptorId}':
3932     parameters:
3933       - name: pduDescriptorId
3934         in: path
3935         required: true
3936         description: PDU Descriptor ID
3937         schema:
3938           type: string
3939     get:
3940       tags:
3941         - "Physical Data Units (PDU)"
3942       summary: Query information about an individual PDU Descriptor
3943       description: Query information about an individual PDU Descriptor
3944       operationId: getPDU
3945       responses:
3946         '200':
3947           description: OK
3948           content:
3949             application/json:
3950               schema:
3951                 $ref: '#/components/schemas/PduInfo'
3952             application/yaml:
3953               schema:
3954                 $ref: '#/components/schemas/PduInfo'
3955         '400':
3956           $ref: '#/components/responses/BadRequest'
3957         '401':
3958           $ref: '#/components/responses/Unauthorized'
3959         '403':
3960           $ref: '#/components/responses/Forbidden'
3961         '404':
3962           $ref: '#/components/responses/NotFound'
3963         '405':
3964           $ref: '#/components/responses/MethodNotAllowed'
3965         '406':
3966           $ref: '#/components/responses/NotAcceptable'
3967         '409':
3968           $ref: '#/components/responses/Conflict'
3969         '422':
3970           $ref: '#/components/responses/UnprocessableEntity'
3971         '500':
3972           $ref: '#/components/responses/InternalServerError'
3973         '503':
3974           $ref: '#/components/responses/ServiceUnavailable'
3975         '5XX':
3976           $ref: '#/components/responses/UnexpectedError'
3977         default:
3978           $ref: '#/components/responses/UnexpectedError'
3979     patch:
3980       tags:
3981         - "Physical Data Units (PDU)"
3982       summary: Modify an individual PDU Descriptor
3983       description: Modify an individual PDU Descriptor
3984       operationId: editPDU
3985       requestBody:
3986         $ref: '#/components/requestBodies/EditPduRequest'
3987       responses:
3988         '204':
3989           description: No Content
3990         '400':
3991           $ref: '#/components/responses/BadRequest'
3992         '401':
3993           $ref: '#/components/responses/Unauthorized'
3994         '403':
3995           $ref: '#/components/responses/Forbidden'
3996         '404':
3997           $ref: '#/components/responses/NotFound'
3998         '405':
3999           $ref: '#/components/responses/MethodNotAllowed'
4000         '406':
4001           $ref: '#/components/responses/NotAcceptable'
4002         '409':
4003           $ref: '#/components/responses/Conflict'
4004         '422':
4005           $ref: '#/components/responses/UnprocessableEntity'
4006         '500':
4007           $ref: '#/components/responses/InternalServerError'
4008         '503':
4009           $ref: '#/components/responses/ServiceUnavailable'
4010         '5XX':
4011           $ref: '#/components/responses/UnexpectedError'
4012         default:
4013           $ref: '#/components/responses/UnexpectedError'
4014     delete:
4015       tags:
4016         - "Physical Data Units (PDU)"
4017       summary: Delete an individual PDU Descriptor
4018       description: Delete an individual PDU Descriptor
4019       operationId: deletePDU
4020       responses:
4021         '204':
4022           description: No Content
4023         '400':
4024           $ref: '#/components/responses/BadRequest'
4025         '401':
4026           $ref: '#/components/responses/Unauthorized'
4027         '403':
4028           $ref: '#/components/responses/Forbidden'
4029         '404':
4030           $ref: '#/components/responses/NotFound'
4031         '405':
4032           $ref: '#/components/responses/MethodNotAllowed'
4033         '406':
4034           $ref: '#/components/responses/NotAcceptable'
4035         '409':
4036           $ref: '#/components/responses/Conflict'
4037         '422':
4038           $ref: '#/components/responses/UnprocessableEntity'
4039         '500':
4040           $ref: '#/components/responses/InternalServerError'
4041         '503':
4042           $ref: '#/components/responses/ServiceUnavailable'
4043         '5XX':
4044           $ref: '#/components/responses/UnexpectedError'
4045         default:
4046           $ref: '#/components/responses/UnexpectedError'
4047 # END PDU
4048
4049 # BEGIN Admin
4050   '/admin/v1/tokens':
4051     get:
4052       tags:
4053         - "Authentication"
4054         - "Admin"
4055       summary: Query information about multiple Tokens
4056       description: Query information about multiple Tokens
4057       operationId: getTokens
4058       responses:
4059         '200':
4060           description: OK
4061           content:
4062             application/json:
4063               schema:
4064                 $ref: '#/components/schemas/ArrayOfTokenInfo'
4065             application/yaml:
4066               schema:
4067                 $ref: '#/components/schemas/ArrayOfTokenInfo'
4068         '400':
4069           $ref: '#/components/responses/BadRequest'
4070         '401':
4071           $ref: '#/components/responses/Unauthorized'
4072         '403':
4073           $ref: '#/components/responses/Forbidden'
4074         '404':
4075           $ref: '#/components/responses/NotFound'
4076         '405':
4077           $ref: '#/components/responses/MethodNotAllowed'
4078         '406':
4079           $ref: '#/components/responses/NotAcceptable'
4080         '409':
4081           $ref: '#/components/responses/Conflict'
4082         '422':
4083           $ref: '#/components/responses/UnprocessableEntity'
4084         '500':
4085           $ref: '#/components/responses/InternalServerError'
4086         '503':
4087           $ref: '#/components/responses/ServiceUnavailable'
4088         '5XX':
4089           $ref: '#/components/responses/UnexpectedError'
4090         default:
4091           $ref: '#/components/responses/UnexpectedError'
4092     post:
4093       tags:
4094         - "Authentication"
4095         - "Admin"
4096       summary: Request a new Token
4097       description: Request a new Token
4098       operationId: createToken
4099       requestBody:
4100         $ref: '#/components/requestBodies/CreateTokenRequest'
4101       responses:
4102         '200':
4103           description: OK
4104           headers:
4105             Location:
4106               schema:
4107                 type: string
4108                 format: uri
4109           content:
4110             application/json:
4111               schema:
4112                 oneOf:
4113                   - $ref: '#/components/schemas/TokenInfo'
4114                   - $ref: '#/components/schemas/PasswordExpiryInfo'
4115             application/yaml:
4116               schema:
4117                 oneOf:
4118                   - $ref: '#/components/schemas/TokenInfo'
4119                   - $ref: '#/components/schemas/PasswordExpiryInfo'
4120         '400':
4121           $ref: '#/components/responses/BadRequest'
4122         '401':
4123           $ref: '#/components/responses/Unauthorized'
4124         '403':
4125           $ref: '#/components/responses/Forbidden'
4126         '404':
4127           $ref: '#/components/responses/NotFound'
4128         '405':
4129           $ref: '#/components/responses/MethodNotAllowed'
4130         '406':
4131           $ref: '#/components/responses/NotAcceptable'
4132         '409':
4133           $ref: '#/components/responses/Conflict'
4134         '422':
4135           $ref: '#/components/responses/UnprocessableEntity'
4136         '500':
4137           $ref: '#/components/responses/InternalServerError'
4138         '503':
4139           $ref: '#/components/responses/ServiceUnavailable'
4140         '5XX':
4141           $ref: '#/components/responses/UnexpectedError'
4142         default:
4143           $ref: '#/components/responses/UnexpectedError'
4144     delete:
4145       tags:
4146         - "Authentication"
4147         - "Admin"
4148       summary: Delete the Token indicated in the Authorization Header
4149       description: Delete the Token indicated in the Authorization Header
4150       operationId: deleteAuthToken
4151       responses:
4152         '200':
4153           description: OK
4154           content:
4155             application/json:
4156               schema:
4157                 type: string
4158             application/yaml:
4159               schema:
4160                 type: string
4161         '400':
4162           $ref: '#/components/responses/BadRequest'
4163         '401':
4164           $ref: '#/components/responses/Unauthorized'
4165         '403':
4166           $ref: '#/components/responses/Forbidden'
4167         '404':
4168           $ref: '#/components/responses/NotFound'
4169         '405':
4170           $ref: '#/components/responses/MethodNotAllowed'
4171         '406':
4172           $ref: '#/components/responses/NotAcceptable'
4173         '409':
4174           $ref: '#/components/responses/Conflict'
4175         '422':
4176           $ref: '#/components/responses/UnprocessableEntity'
4177         '500':
4178           $ref: '#/components/responses/InternalServerError'
4179         '503':
4180           $ref: '#/components/responses/ServiceUnavailable'
4181         '5XX':
4182           $ref: '#/components/responses/UnexpectedError'
4183         default:
4184           $ref: '#/components/responses/UnexpectedError'
4185   '/admin/v1/tokens/{tokenId}':
4186     parameters:
4187       - name: tokenId
4188         in: path
4189         required: true
4190         description: Token ID
4191         schema:
4192           type: string
4193     get:
4194       tags:
4195         - "Authentication"
4196         - "Admin"
4197       summary: Query information about an individual Token
4198       description: Query information about an individual Token
4199       operationId: getToken
4200       responses:
4201         '200':
4202           description: OK
4203           content:
4204             application/json:
4205               schema:
4206                 $ref: '#/components/schemas/TokenInfo'
4207             application/yaml:
4208               schema:
4209                 $ref: '#/components/schemas/TokenInfo'
4210         '400':
4211           $ref: '#/components/responses/BadRequest'
4212         '401':
4213           $ref: '#/components/responses/Unauthorized'
4214         '403':
4215           $ref: '#/components/responses/Forbidden'
4216         '404':
4217           $ref: '#/components/responses/NotFound'
4218         '405':
4219           $ref: '#/components/responses/MethodNotAllowed'
4220         '406':
4221           $ref: '#/components/responses/NotAcceptable'
4222         '409':
4223           $ref: '#/components/responses/Conflict'
4224         '422':
4225           $ref: '#/components/responses/UnprocessableEntity'
4226         '500':
4227           $ref: '#/components/responses/InternalServerError'
4228         '503':
4229           $ref: '#/components/responses/ServiceUnavailable'
4230         '5XX':
4231           $ref: '#/components/responses/UnexpectedError'
4232         default:
4233           $ref: '#/components/responses/UnexpectedError'
4234     delete:
4235       tags:
4236         - "Authentication"
4237         - "Admin"
4238       summary: Delete the Token indicated as parameter
4239       description: Delete the Token indicated as parameter
4240       operationId: deleteToken
4241       responses:
4242         '200':
4243           description: OK
4244           content:
4245             application/json:
4246               schema:
4247                 type: string
4248             application/yaml:
4249               schema:
4250                 type: string
4251         '400':
4252           $ref: '#/components/responses/BadRequest'
4253         '401':
4254           $ref: '#/components/responses/Unauthorized'
4255         '403':
4256           $ref: '#/components/responses/Forbidden'
4257         '404':
4258           $ref: '#/components/responses/NotFound'
4259         '405':
4260           $ref: '#/components/responses/MethodNotAllowed'
4261         '406':
4262           $ref: '#/components/responses/NotAcceptable'
4263         '409':
4264           $ref: '#/components/responses/Conflict'
4265         '422':
4266           $ref: '#/components/responses/UnprocessableEntity'
4267         '500':
4268           $ref: '#/components/responses/InternalServerError'
4269         '503':
4270           $ref: '#/components/responses/ServiceUnavailable'
4271         '5XX':
4272           $ref: '#/components/responses/UnexpectedError'
4273         default:
4274           $ref: '#/components/responses/UnexpectedError'
4275   '/admin/v1/users':
4276     get:
4277       tags:
4278         - "Identity"
4279         - "Admin"
4280       summary: Query information about multiple Users
4281       description: Query information about multiple Users
4282       operationId: getUsers
4283       responses:
4284         '200':
4285           description: OK
4286           content:
4287             application/json:
4288               schema:
4289                 $ref: '#/components/schemas/ArrayOfUserInfo'
4290             application/yaml:
4291               schema:
4292                 $ref: '#/components/schemas/ArrayOfUserInfo'
4293         '400':
4294           $ref: '#/components/responses/BadRequest'
4295         '401':
4296           $ref: '#/components/responses/Unauthorized'
4297         '403':
4298           $ref: '#/components/responses/Forbidden'
4299         '404':
4300           $ref: '#/components/responses/NotFound'
4301         '405':
4302           $ref: '#/components/responses/MethodNotAllowed'
4303         '406':
4304           $ref: '#/components/responses/NotAcceptable'
4305         '409':
4306           $ref: '#/components/responses/Conflict'
4307         '422':
4308           $ref: '#/components/responses/UnprocessableEntity'
4309         '500':
4310           $ref: '#/components/responses/InternalServerError'
4311         '503':
4312           $ref: '#/components/responses/ServiceUnavailable'
4313         '5XX':
4314           $ref: '#/components/responses/UnexpectedError'
4315         default:
4316           $ref: '#/components/responses/UnexpectedError'
4317     post:
4318       tags:
4319         - "Identity"
4320         - "Admin"
4321       summary: Create a new User
4322       description: Create a new User
4323       operationId: createUser
4324       requestBody:
4325         $ref: '#/components/requestBodies/CreateUserRequest'
4326       responses:
4327         '201':
4328           description: Created
4329           headers:
4330             Location:
4331               schema:
4332                 type: string
4333                 format: uri
4334           content:
4335             application/json:
4336               schema:
4337                 $ref: '#/components/schemas/ObjectId'
4338             application/yaml:
4339               schema:
4340                 $ref: '#/components/schemas/ObjectId'
4341         '400':
4342           $ref: '#/components/responses/BadRequest'
4343         '401':
4344           $ref: '#/components/responses/Unauthorized'
4345         '403':
4346           $ref: '#/components/responses/Forbidden'
4347         '404':
4348           $ref: '#/components/responses/NotFound'
4349         '405':
4350           $ref: '#/components/responses/MethodNotAllowed'
4351         '406':
4352           $ref: '#/components/responses/NotAcceptable'
4353         '409':
4354           $ref: '#/components/responses/Conflict'
4355         '422':
4356           $ref: '#/components/responses/UnprocessableEntity'
4357         '500':
4358           $ref: '#/components/responses/InternalServerError'
4359         '503':
4360           $ref: '#/components/responses/ServiceUnavailable'
4361         '5XX':
4362           $ref: '#/components/responses/UnexpectedError'
4363         default:
4364           $ref: '#/components/responses/UnexpectedError'
4365   '/admin/v1/users/{userId}':
4366     parameters:
4367       - name: userId
4368         in: path
4369         required: true
4370         description: User ID/Name
4371         schema:
4372           type: string
4373     get:
4374       tags:
4375         - "Identity"
4376         - "Admin"
4377       summary: Query information about an individual User
4378       description: Query information about an individual User
4379       operationId: getUser
4380       responses:
4381         '200':
4382           description: OK
4383           content:
4384             application/json:
4385               schema:
4386                 $ref: '#/components/schemas/UserInfo'
4387             application/yaml:
4388               schema:
4389                 $ref: '#/components/schemas/UserInfo'
4390         '400':
4391           $ref: '#/components/responses/BadRequest'
4392         '401':
4393           $ref: '#/components/responses/Unauthorized'
4394         '403':
4395           $ref: '#/components/responses/Forbidden'
4396         '404':
4397           $ref: '#/components/responses/NotFound'
4398         '405':
4399           $ref: '#/components/responses/MethodNotAllowed'
4400         '406':
4401           $ref: '#/components/responses/NotAcceptable'
4402         '409':
4403           $ref: '#/components/responses/Conflict'
4404         '422':
4405           $ref: '#/components/responses/UnprocessableEntity'
4406         '500':
4407           $ref: '#/components/responses/InternalServerError'
4408         '503':
4409           $ref: '#/components/responses/ServiceUnavailable'
4410         '5XX':
4411           $ref: '#/components/responses/UnexpectedError'
4412         default:
4413           $ref: '#/components/responses/UnexpectedError'
4414     patch:
4415       tags:
4416         - "Identity"
4417         - "Admin"
4418       summary: Modify a User
4419       description: Modify a User
4420       operationId: editUser
4421       requestBody:
4422         $ref: '#/components/requestBodies/EditUserRequest'
4423       responses:
4424         '204':
4425           description: No Content
4426         '400':
4427           $ref: '#/components/responses/BadRequest'
4428         '401':
4429           $ref: '#/components/responses/Unauthorized'
4430         '403':
4431           $ref: '#/components/responses/Forbidden'
4432         '404':
4433           $ref: '#/components/responses/NotFound'
4434         '405':
4435           $ref: '#/components/responses/MethodNotAllowed'
4436         '406':
4437           $ref: '#/components/responses/NotAcceptable'
4438         '409':
4439           $ref: '#/components/responses/Conflict'
4440         '422':
4441           $ref: '#/components/responses/UnprocessableEntity'
4442         '500':
4443           $ref: '#/components/responses/InternalServerError'
4444         '503':
4445           $ref: '#/components/responses/ServiceUnavailable'
4446         '5XX':
4447           $ref: '#/components/responses/UnexpectedError'
4448         default:
4449           $ref: '#/components/responses/UnexpectedError'
4450     delete:
4451       tags:
4452         - "Identity"
4453         - "Admin"
4454       summary: Delete a User
4455       description: Delete a User
4456       operationId: deleteUser
4457       responses:
4458         '204':
4459           description: No Content
4460         '400':
4461           $ref: '#/components/responses/BadRequest'
4462         '401':
4463           $ref: '#/components/responses/Unauthorized'
4464         '403':
4465           $ref: '#/components/responses/Forbidden'
4466         '404':
4467           $ref: '#/components/responses/NotFound'
4468         '405':
4469           $ref: '#/components/responses/MethodNotAllowed'
4470         '406':
4471           $ref: '#/components/responses/NotAcceptable'
4472         '409':
4473           $ref: '#/components/responses/Conflict'
4474         '422':
4475           $ref: '#/components/responses/UnprocessableEntity'
4476         '500':
4477           $ref: '#/components/responses/InternalServerError'
4478         '503':
4479           $ref: '#/components/responses/ServiceUnavailable'
4480         '5XX':
4481           $ref: '#/components/responses/UnexpectedError'
4482         default:
4483           $ref: '#/components/responses/UnexpectedError'
4484   '/admin/v1/projects':
4485     get:
4486       tags:
4487         - "Identity"
4488         - "Admin"
4489       summary: Query information about multiple Projects
4490       description: Query information about multiple Projects
4491       operationId: getProjects
4492       responses:
4493         '200':
4494           description: OK
4495           content:
4496             application/json:
4497               schema:
4498                 $ref: '#/components/schemas/ArrayOfProjectInfo'
4499             application/yaml:
4500               schema:
4501                 $ref: '#/components/schemas/ArrayOfProjectInfo'
4502         '400':
4503           $ref: '#/components/responses/BadRequest'
4504         '401':
4505           $ref: '#/components/responses/Unauthorized'
4506         '403':
4507           $ref: '#/components/responses/Forbidden'
4508         '404':
4509           $ref: '#/components/responses/NotFound'
4510         '405':
4511           $ref: '#/components/responses/MethodNotAllowed'
4512         '406':
4513           $ref: '#/components/responses/NotAcceptable'
4514         '409':
4515           $ref: '#/components/responses/Conflict'
4516         '422':
4517           $ref: '#/components/responses/UnprocessableEntity'
4518         '500':
4519           $ref: '#/components/responses/InternalServerError'
4520         '503':
4521           $ref: '#/components/responses/ServiceUnavailable'
4522         '5XX':
4523           $ref: '#/components/responses/UnexpectedError'
4524         default:
4525           $ref: '#/components/responses/UnexpectedError'
4526     post:
4527       tags:
4528         - "Identity"
4529         - "Admin"
4530       summary: Create a new Project
4531       description: Create a new Project
4532       operationId: createProject
4533       requestBody:
4534         $ref: '#/components/requestBodies/CreateProjectRequest'
4535       responses:
4536         '201':
4537           description: Created
4538           headers:
4539             Location:
4540               schema:
4541                 type: string
4542                 format: uri
4543           content:
4544             application/json:
4545               schema:
4546                 $ref: '#/components/schemas/ObjectId'
4547             application/yaml:
4548               schema:
4549                 $ref: '#/components/schemas/ObjectId'
4550         '400':
4551           $ref: '#/components/responses/BadRequest'
4552         '401':
4553           $ref: '#/components/responses/Unauthorized'
4554         '403':
4555           $ref: '#/components/responses/Forbidden'
4556         '404':
4557           $ref: '#/components/responses/NotFound'
4558         '405':
4559           $ref: '#/components/responses/MethodNotAllowed'
4560         '406':
4561           $ref: '#/components/responses/NotAcceptable'
4562         '409':
4563           $ref: '#/components/responses/Conflict'
4564         '422':
4565           $ref: '#/components/responses/UnprocessableEntity'
4566         '500':
4567           $ref: '#/components/responses/InternalServerError'
4568         '503':
4569           $ref: '#/components/responses/ServiceUnavailable'
4570         '5XX':
4571           $ref: '#/components/responses/UnexpectedError'
4572         default:
4573           $ref: '#/components/responses/UnexpectedError'
4574   '/admin/v1/projects/{projectId}':
4575     parameters:
4576       - name: projectId
4577         in: path
4578         required: true
4579         description: Project ID/Name
4580         schema:
4581           type: string
4582     get:
4583       tags:
4584         - "Identity"
4585         - "Admin"
4586       summary: Query information about an individual Project
4587       description: Query information about an individual Project
4588       operationId: getProject
4589       responses:
4590         '200':
4591           description: OK
4592           content:
4593             application/json:
4594               schema:
4595                 $ref: '#/components/schemas/ProjectInfo'
4596             application/yaml:
4597               schema:
4598                 $ref: '#/components/schemas/ProjectInfo'
4599         '400':
4600           $ref: '#/components/responses/BadRequest'
4601         '401':
4602           $ref: '#/components/responses/Unauthorized'
4603         '403':
4604           $ref: '#/components/responses/Forbidden'
4605         '404':
4606           $ref: '#/components/responses/NotFound'
4607         '405':
4608           $ref: '#/components/responses/MethodNotAllowed'
4609         '406':
4610           $ref: '#/components/responses/NotAcceptable'
4611         '409':
4612           $ref: '#/components/responses/Conflict'
4613         '422':
4614           $ref: '#/components/responses/UnprocessableEntity'
4615         '500':
4616           $ref: '#/components/responses/InternalServerError'
4617         '503':
4618           $ref: '#/components/responses/ServiceUnavailable'
4619         '5XX':
4620           $ref: '#/components/responses/UnexpectedError'
4621         default:
4622           $ref: '#/components/responses/UnexpectedError'
4623     patch:
4624       tags:
4625         - "Identity"
4626         - "Admin"
4627       summary: Modify a Project
4628       description: Modify a Project
4629       operationId: editProject
4630       requestBody:
4631         $ref: '#/components/requestBodies/EditProjectRequest'
4632       responses:
4633         '204':
4634           description: No Content
4635         '400':
4636           $ref: '#/components/responses/BadRequest'
4637         '401':
4638           $ref: '#/components/responses/Unauthorized'
4639         '403':
4640           $ref: '#/components/responses/Forbidden'
4641         '404':
4642           $ref: '#/components/responses/NotFound'
4643         '405':
4644           $ref: '#/components/responses/MethodNotAllowed'
4645         '406':
4646           $ref: '#/components/responses/NotAcceptable'
4647         '409':
4648           $ref: '#/components/responses/Conflict'
4649         '422':
4650           $ref: '#/components/responses/UnprocessableEntity'
4651         '500':
4652           $ref: '#/components/responses/InternalServerError'
4653         '503':
4654           $ref: '#/components/responses/ServiceUnavailable'
4655         '5XX':
4656           $ref: '#/components/responses/UnexpectedError'
4657         default:
4658           $ref: '#/components/responses/UnexpectedError'
4659     delete:
4660       tags:
4661         - "Identity"
4662         - "Admin"
4663       summary: Delete a Project
4664       description: Delete a Project
4665       operationId: deleteProject
4666       responses:
4667         '204':
4668           description: No Content
4669         '400':
4670           $ref: '#/components/responses/BadRequest'
4671         '401':
4672           $ref: '#/components/responses/Unauthorized'
4673         '403':
4674           $ref: '#/components/responses/Forbidden'
4675         '404':
4676           $ref: '#/components/responses/NotFound'
4677         '405':
4678           $ref: '#/components/responses/MethodNotAllowed'
4679         '406':
4680           $ref: '#/components/responses/NotAcceptable'
4681         '409':
4682           $ref: '#/components/responses/Conflict'
4683         '422':
4684           $ref: '#/components/responses/UnprocessableEntity'
4685         '500':
4686           $ref: '#/components/responses/InternalServerError'
4687         '503':
4688           $ref: '#/components/responses/ServiceUnavailable'
4689         '5XX':
4690           $ref: '#/components/responses/UnexpectedError'
4691         default:
4692           $ref: '#/components/responses/UnexpectedError'
4693   '/admin/v1/roles':
4694     get:
4695       tags:
4696         - "Identity"
4697         - "Admin"
4698       summary: Query information about multiple Roles
4699       description: Query information about multiple Roles
4700       operationId: getRoles
4701       responses:
4702         '200':
4703           description: OK
4704           content:
4705             application/json:
4706               schema:
4707                 $ref: '#/components/schemas/ArrayOfRoleInfo'
4708             application/yaml:
4709               schema:
4710                 $ref: '#/components/schemas/ArrayOfRoleInfo'
4711         '400':
4712           $ref: '#/components/responses/BadRequest'
4713         '401':
4714           $ref: '#/components/responses/Unauthorized'
4715         '403':
4716           $ref: '#/components/responses/Forbidden'
4717         '404':
4718           $ref: '#/components/responses/NotFound'
4719         '405':
4720           $ref: '#/components/responses/MethodNotAllowed'
4721         '406':
4722           $ref: '#/components/responses/NotAcceptable'
4723         '409':
4724           $ref: '#/components/responses/Conflict'
4725         '422':
4726           $ref: '#/components/responses/UnprocessableEntity'
4727         '500':
4728           $ref: '#/components/responses/InternalServerError'
4729         '503':
4730           $ref: '#/components/responses/ServiceUnavailable'
4731         '5XX':
4732           $ref: '#/components/responses/UnexpectedError'
4733         default:
4734           $ref: '#/components/responses/UnexpectedError'
4735     post:
4736       tags:
4737         - "Identity"
4738         - "Admin"
4739       summary: Create a new Role
4740       description: Create a new Role
4741       operationId: createRole
4742       requestBody:
4743         $ref: '#/components/requestBodies/CreateRoleRequest'
4744       responses:
4745         '201':
4746           description: Created
4747           headers:
4748             Location:
4749               schema:
4750                 type: string
4751                 format: uri
4752           content:
4753             application/json:
4754               schema:
4755                 $ref: '#/components/schemas/ObjectId'
4756             application/yaml:
4757               schema:
4758                 $ref: '#/components/schemas/ObjectId'
4759         '400':
4760           $ref: '#/components/responses/BadRequest'
4761         '401':
4762           $ref: '#/components/responses/Unauthorized'
4763         '403':
4764           $ref: '#/components/responses/Forbidden'
4765         '404':
4766           $ref: '#/components/responses/NotFound'
4767         '405':
4768           $ref: '#/components/responses/MethodNotAllowed'
4769         '406':
4770           $ref: '#/components/responses/NotAcceptable'
4771         '409':
4772           $ref: '#/components/responses/Conflict'
4773         '422':
4774           $ref: '#/components/responses/UnprocessableEntity'
4775         '500':
4776           $ref: '#/components/responses/InternalServerError'
4777         '503':
4778           $ref: '#/components/responses/ServiceUnavailable'
4779         '5XX':
4780           $ref: '#/components/responses/UnexpectedError'
4781         default:
4782           $ref: '#/components/responses/UnexpectedError'
4783   '/admin/v1/roles/{roleId}':
4784     parameters:
4785       - name: roleId
4786         in: path
4787         required: true
4788         description: Role ID/Name
4789         schema:
4790           type: string
4791     get:
4792       tags:
4793         - "Identity"
4794         - "Admin"
4795       summary: Query information about an individual Role
4796       description: Query information about an individual Role
4797       operationId: getRole
4798       responses:
4799         '200':
4800           description: OK
4801           content:
4802             application/json:
4803               schema:
4804                 $ref: '#/components/schemas/RoleInfo'
4805             application/yaml:
4806               schema:
4807                 $ref: '#/components/schemas/RoleInfo'
4808         '400':
4809           $ref: '#/components/responses/BadRequest'
4810         '401':
4811           $ref: '#/components/responses/Unauthorized'
4812         '403':
4813           $ref: '#/components/responses/Forbidden'
4814         '404':
4815           $ref: '#/components/responses/NotFound'
4816         '405':
4817           $ref: '#/components/responses/MethodNotAllowed'
4818         '406':
4819           $ref: '#/components/responses/NotAcceptable'
4820         '409':
4821           $ref: '#/components/responses/Conflict'
4822         '422':
4823           $ref: '#/components/responses/UnprocessableEntity'
4824         '500':
4825           $ref: '#/components/responses/InternalServerError'
4826         '503':
4827           $ref: '#/components/responses/ServiceUnavailable'
4828         '5XX':
4829           $ref: '#/components/responses/UnexpectedError'
4830         default:
4831           $ref: '#/components/responses/UnexpectedError'
4832     patch:
4833       tags:
4834         - "Identity"
4835         - "Admin"
4836       summary: Modify a Role
4837       description: Modify a Role
4838       operationId: editRole
4839       requestBody:
4840         $ref: '#/components/requestBodies/EditRoleRequest'
4841       responses:
4842         '204':
4843           description: No Content
4844         '400':
4845           $ref: '#/components/responses/BadRequest'
4846         '401':
4847           $ref: '#/components/responses/Unauthorized'
4848         '403':
4849           $ref: '#/components/responses/Forbidden'
4850         '404':
4851           $ref: '#/components/responses/NotFound'
4852         '405':
4853           $ref: '#/components/responses/MethodNotAllowed'
4854         '406':
4855           $ref: '#/components/responses/NotAcceptable'
4856         '409':
4857           $ref: '#/components/responses/Conflict'
4858         '422':
4859           $ref: '#/components/responses/UnprocessableEntity'
4860         '500':
4861           $ref: '#/components/responses/InternalServerError'
4862         '503':
4863           $ref: '#/components/responses/ServiceUnavailable'
4864         '5XX':
4865           $ref: '#/components/responses/UnexpectedError'
4866         default:
4867           $ref: '#/components/responses/UnexpectedError'
4868     delete:
4869       tags:
4870         - "Identity"
4871         - "Admin"
4872       summary: Delete a Role
4873       description: Delete a Role
4874       operationId: deleteRole
4875       responses:
4876         '204':
4877           description: No Content
4878         '400':
4879           $ref: '#/components/responses/BadRequest'
4880         '401':
4881           $ref: '#/components/responses/Unauthorized'
4882         '403':
4883           $ref: '#/components/responses/Forbidden'
4884         '404':
4885           $ref: '#/components/responses/NotFound'
4886         '405':
4887           $ref: '#/components/responses/MethodNotAllowed'
4888         '406':
4889           $ref: '#/components/responses/NotAcceptable'
4890         '409':
4891           $ref: '#/components/responses/Conflict'
4892         '422':
4893           $ref: '#/components/responses/UnprocessableEntity'
4894         '500':
4895           $ref: '#/components/responses/InternalServerError'
4896         '503':
4897           $ref: '#/components/responses/ServiceUnavailable'
4898         '5XX':
4899           $ref: '#/components/responses/UnexpectedError'
4900         default:
4901           $ref: '#/components/responses/UnexpectedError'
4902   '/admin/v1/vims':
4903     get:
4904       tags:
4905         - "Infrastructure"
4906         - "Admin"
4907       summary: Query information about multiple VIMs
4908       description: Query information about multiple VIMs
4909       operationId: getVIMs
4910       responses:
4911         '200':
4912           description: OK
4913           content:
4914             application/json:
4915               schema:
4916                 $ref: '#/components/schemas/ArrayOfVimInfo'
4917             application/yaml:
4918               schema:
4919                 $ref: '#/components/schemas/ArrayOfVimInfo'
4920         '400':
4921           $ref: '#/components/responses/BadRequest'
4922         '401':
4923           $ref: '#/components/responses/Unauthorized'
4924         '403':
4925           $ref: '#/components/responses/Forbidden'
4926         '404':
4927           $ref: '#/components/responses/NotFound'
4928         '405':
4929           $ref: '#/components/responses/MethodNotAllowed'
4930         '406':
4931           $ref: '#/components/responses/NotAcceptable'
4932         '409':
4933           $ref: '#/components/responses/Conflict'
4934         '422':
4935           $ref: '#/components/responses/UnprocessableEntity'
4936         '500':
4937           $ref: '#/components/responses/InternalServerError'
4938         '503':
4939           $ref: '#/components/responses/ServiceUnavailable'
4940         '5XX':
4941           $ref: '#/components/responses/UnexpectedError'
4942         default:
4943           $ref: '#/components/responses/UnexpectedError'
4944     post:
4945       tags:
4946         - "Infrastructure"
4947         - "Admin"
4948       summary: Create a new VIM
4949       description: Create a new VIM
4950       operationId: createVIM
4951       requestBody:
4952         $ref: '#/components/requestBodies/CreateVimRequest'
4953       responses:
4954         '202':
4955           description: Accepted
4956           content:
4957             application/json:
4958               schema:
4959                 $ref: '#/components/schemas/ObjectId_plus_OpId'
4960             application/yaml:
4961               schema:
4962                 $ref: '#/components/schemas/ObjectId_plus_OpId'
4963         '400':
4964           $ref: '#/components/responses/BadRequest'
4965         '401':
4966           $ref: '#/components/responses/Unauthorized'
4967         '403':
4968           $ref: '#/components/responses/Forbidden'
4969         '404':
4970           $ref: '#/components/responses/NotFound'
4971         '405':
4972           $ref: '#/components/responses/MethodNotAllowed'
4973         '406':
4974           $ref: '#/components/responses/NotAcceptable'
4975         '409':
4976           $ref: '#/components/responses/Conflict'
4977         '422':
4978           $ref: '#/components/responses/UnprocessableEntity'
4979         '500':
4980           $ref: '#/components/responses/InternalServerError'
4981         '503':
4982           $ref: '#/components/responses/ServiceUnavailable'
4983         '5XX':
4984           $ref: '#/components/responses/UnexpectedError'
4985         default:
4986           $ref: '#/components/responses/UnexpectedError'
4987   '/admin/v1/vims/{vimId}':
4988     parameters:
4989       - name: vimId
4990         in: path
4991         required: true
4992         description: VIM ID
4993         schema:
4994           type: string
4995           format: uuid
4996     get:
4997       tags:
4998         - "Infrastructure"
4999         - "Admin"
5000       summary: Query information about an individual VIM
5001       description: Query information about an individual VIM
5002       operationId: getVIM
5003       responses:
5004         '200':
5005           description: OK
5006           content:
5007             application/json:
5008               schema:
5009                 $ref: '#/components/schemas/VimInfo'
5010             application/yaml:
5011               schema:
5012                 $ref: '#/components/schemas/VimInfo'
5013         '400':
5014           $ref: '#/components/responses/BadRequest'
5015         '401':
5016           $ref: '#/components/responses/Unauthorized'
5017         '403':
5018           $ref: '#/components/responses/Forbidden'
5019         '404':
5020           $ref: '#/components/responses/NotFound'
5021         '405':
5022           $ref: '#/components/responses/MethodNotAllowed'
5023         '406':
5024           $ref: '#/components/responses/NotAcceptable'
5025         '409':
5026           $ref: '#/components/responses/Conflict'
5027         '422':
5028           $ref: '#/components/responses/UnprocessableEntity'
5029         '500':
5030           $ref: '#/components/responses/InternalServerError'
5031         '503':
5032           $ref: '#/components/responses/ServiceUnavailable'
5033         '5XX':
5034           $ref: '#/components/responses/UnexpectedError'
5035         default:
5036           $ref: '#/components/responses/UnexpectedError'
5037     patch:
5038       tags:
5039         - "Infrastructure"
5040         - "Admin"
5041       summary: Modify a VIM
5042       description: Modify a VIM
5043       operationId: editVIM
5044       requestBody:
5045         $ref: '#/components/requestBodies/EditVimRequest'
5046       responses:
5047         '202':
5048           description: Accepted
5049           content:
5050             application/json:
5051               schema:
5052                 $ref: '#/components/schemas/OpId'
5053             application/yaml:
5054               schema:
5055                 $ref: '#/components/schemas/OpId'
5056         '400':
5057           $ref: '#/components/responses/BadRequest'
5058         '401':
5059           $ref: '#/components/responses/Unauthorized'
5060         '403':
5061           $ref: '#/components/responses/Forbidden'
5062         '404':
5063           $ref: '#/components/responses/NotFound'
5064         '405':
5065           $ref: '#/components/responses/MethodNotAllowed'
5066         '406':
5067           $ref: '#/components/responses/NotAcceptable'
5068         '409':
5069           $ref: '#/components/responses/Conflict'
5070         '422':
5071           $ref: '#/components/responses/UnprocessableEntity'
5072         '500':
5073           $ref: '#/components/responses/InternalServerError'
5074         '503':
5075           $ref: '#/components/responses/ServiceUnavailable'
5076         '5XX':
5077           $ref: '#/components/responses/UnexpectedError'
5078         default:
5079           $ref: '#/components/responses/UnexpectedError'
5080     delete:
5081       tags:
5082         - "Infrastructure"
5083         - "Admin"
5084       summary: Delete a VIM
5085       description: Delete a VIM
5086       operationId: deleteVIM
5087       responses:
5088         '202':
5089           description: Accepted
5090         '400':
5091           $ref: '#/components/responses/BadRequest'
5092         '401':
5093           $ref: '#/components/responses/Unauthorized'
5094         '403':
5095           $ref: '#/components/responses/Forbidden'
5096         '404':
5097           $ref: '#/components/responses/NotFound'
5098         '405':
5099           $ref: '#/components/responses/MethodNotAllowed'
5100         '406':
5101           $ref: '#/components/responses/NotAcceptable'
5102         '409':
5103           $ref: '#/components/responses/Conflict'
5104         '422':
5105           $ref: '#/components/responses/UnprocessableEntity'
5106         '500':
5107           $ref: '#/components/responses/InternalServerError'
5108         '503':
5109           $ref: '#/components/responses/ServiceUnavailable'
5110         '5XX':
5111           $ref: '#/components/responses/UnexpectedError'
5112         default:
5113           $ref: '#/components/responses/UnexpectedError'
5114   '/admin/v1/vim_accounts':
5115     get:
5116       tags:
5117         - "Infrastructure"
5118         - "Admin"
5119       summary: Query information about multiple VIM Accounts
5120       description: Query information about multiple VIM Accounts
5121       operationId: getVimAccounts
5122       responses:
5123         '200':
5124           description: OK
5125           content:
5126             application/json:
5127               schema:
5128                 $ref: '#/components/schemas/ArrayOfVimInfo'
5129             application/yaml:
5130               schema:
5131                 $ref: '#/components/schemas/ArrayOfVimInfo'
5132         '400':
5133           $ref: '#/components/responses/BadRequest'
5134         '401':
5135           $ref: '#/components/responses/Unauthorized'
5136         '403':
5137           $ref: '#/components/responses/Forbidden'
5138         '404':
5139           $ref: '#/components/responses/NotFound'
5140         '405':
5141           $ref: '#/components/responses/MethodNotAllowed'
5142         '406':
5143           $ref: '#/components/responses/NotAcceptable'
5144         '409':
5145           $ref: '#/components/responses/Conflict'
5146         '422':
5147           $ref: '#/components/responses/UnprocessableEntity'
5148         '500':
5149           $ref: '#/components/responses/InternalServerError'
5150         '503':
5151           $ref: '#/components/responses/ServiceUnavailable'
5152         '5XX':
5153           $ref: '#/components/responses/UnexpectedError'
5154         default:
5155           $ref: '#/components/responses/UnexpectedError'
5156     post:
5157       tags:
5158         - "Infrastructure"
5159         - "Admin"
5160       summary: Create a new VIM Account
5161       description: Create a new VIM Account
5162       operationId: createVimAccount
5163       requestBody:
5164         $ref: '#/components/requestBodies/CreateVimRequest'
5165       responses:
5166         '202':
5167           description: Accepted
5168           content:
5169             application/json:
5170               schema:
5171                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5172             application/yaml:
5173               schema:
5174                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5175         '400':
5176           $ref: '#/components/responses/BadRequest'
5177         '401':
5178           $ref: '#/components/responses/Unauthorized'
5179         '403':
5180           $ref: '#/components/responses/Forbidden'
5181         '404':
5182           $ref: '#/components/responses/NotFound'
5183         '405':
5184           $ref: '#/components/responses/MethodNotAllowed'
5185         '406':
5186           $ref: '#/components/responses/NotAcceptable'
5187         '409':
5188           $ref: '#/components/responses/Conflict'
5189         '422':
5190           $ref: '#/components/responses/UnprocessableEntity'
5191         '500':
5192           $ref: '#/components/responses/InternalServerError'
5193         '503':
5194           $ref: '#/components/responses/ServiceUnavailable'
5195         '5XX':
5196           $ref: '#/components/responses/UnexpectedError'
5197         default:
5198           $ref: '#/components/responses/UnexpectedError'
5199   '/admin/v1/vim_accounts/{vimAccountId}':
5200     parameters:
5201       - name: vimAccountId
5202         in: path
5203         required: true
5204         description: VIM Account ID
5205         schema:
5206           type: string
5207           format: uuid
5208     get:
5209       tags:
5210         - "Infrastructure"
5211         - "Admin"
5212       summary: Query information about an individual VIM Account
5213       description: Query information about an individual VIM Account
5214       operationId: getVimAccount
5215       responses:
5216         '200':
5217           description: OK
5218           content:
5219             application/json:
5220               schema:
5221                 $ref: '#/components/schemas/VimInfo'
5222             application/yaml:
5223               schema:
5224                 $ref: '#/components/schemas/VimInfo'
5225         '400':
5226           $ref: '#/components/responses/BadRequest'
5227         '401':
5228           $ref: '#/components/responses/Unauthorized'
5229         '403':
5230           $ref: '#/components/responses/Forbidden'
5231         '404':
5232           $ref: '#/components/responses/NotFound'
5233         '405':
5234           $ref: '#/components/responses/MethodNotAllowed'
5235         '406':
5236           $ref: '#/components/responses/NotAcceptable'
5237         '409':
5238           $ref: '#/components/responses/Conflict'
5239         '422':
5240           $ref: '#/components/responses/UnprocessableEntity'
5241         '500':
5242           $ref: '#/components/responses/InternalServerError'
5243         '503':
5244           $ref: '#/components/responses/ServiceUnavailable'
5245         '5XX':
5246           $ref: '#/components/responses/UnexpectedError'
5247         default:
5248           $ref: '#/components/responses/UnexpectedError'
5249     patch:
5250       tags:
5251         - "Infrastructure"
5252         - "Admin"
5253       summary: Modify a VIM Account
5254       description: Modify a VIM Account
5255       operationId: editVimAccount
5256       requestBody:
5257         $ref: '#/components/requestBodies/EditVimRequest'
5258       responses:
5259         '202':
5260           description: Accepted
5261           content:
5262             application/json:
5263               schema:
5264                 $ref: '#/components/schemas/OpId'
5265             application/yaml:
5266               schema:
5267                 $ref: '#/components/schemas/OpId'
5268         '400':
5269           $ref: '#/components/responses/BadRequest'
5270         '401':
5271           $ref: '#/components/responses/Unauthorized'
5272         '403':
5273           $ref: '#/components/responses/Forbidden'
5274         '404':
5275           $ref: '#/components/responses/NotFound'
5276         '405':
5277           $ref: '#/components/responses/MethodNotAllowed'
5278         '406':
5279           $ref: '#/components/responses/NotAcceptable'
5280         '409':
5281           $ref: '#/components/responses/Conflict'
5282         '422':
5283           $ref: '#/components/responses/UnprocessableEntity'
5284         '500':
5285           $ref: '#/components/responses/InternalServerError'
5286         '503':
5287           $ref: '#/components/responses/ServiceUnavailable'
5288         '5XX':
5289           $ref: '#/components/responses/UnexpectedError'
5290         default:
5291           $ref: '#/components/responses/UnexpectedError'
5292     delete:
5293       tags:
5294         - "Infrastructure"
5295         - "Admin"
5296       summary: Delete a VIM Account
5297       description: Delete a VIM Account
5298       operationId: deleteVimAccount
5299       responses:
5300         '202':
5301           description: Accepted
5302         '400':
5303           $ref: '#/components/responses/BadRequest'
5304         '401':
5305           $ref: '#/components/responses/Unauthorized'
5306         '403':
5307           $ref: '#/components/responses/Forbidden'
5308         '404':
5309           $ref: '#/components/responses/NotFound'
5310         '405':
5311           $ref: '#/components/responses/MethodNotAllowed'
5312         '406':
5313           $ref: '#/components/responses/NotAcceptable'
5314         '409':
5315           $ref: '#/components/responses/Conflict'
5316         '422':
5317           $ref: '#/components/responses/UnprocessableEntity'
5318         '500':
5319           $ref: '#/components/responses/InternalServerError'
5320         '503':
5321           $ref: '#/components/responses/ServiceUnavailable'
5322         '5XX':
5323           $ref: '#/components/responses/UnexpectedError'
5324         default:
5325           $ref: '#/components/responses/UnexpectedError'
5326   '/admin/v1/wim_accounts':
5327     get:
5328       tags:
5329         - "Infrastructure"
5330         - "Admin"
5331       summary: Query information about multiple WIM Accounts
5332       description: Query information about multiple WIM Accounts
5333       operationId: getWimAccounts
5334       responses:
5335         '200':
5336           description: OK
5337           content:
5338             application/json:
5339               schema:
5340                 $ref: '#/components/schemas/ArrayOfWimInfo'
5341             application/yaml:
5342               schema:
5343                 $ref: '#/components/schemas/ArrayOfWimInfo'
5344         '400':
5345           $ref: '#/components/responses/BadRequest'
5346         '401':
5347           $ref: '#/components/responses/Unauthorized'
5348         '403':
5349           $ref: '#/components/responses/Forbidden'
5350         '404':
5351           $ref: '#/components/responses/NotFound'
5352         '405':
5353           $ref: '#/components/responses/MethodNotAllowed'
5354         '406':
5355           $ref: '#/components/responses/NotAcceptable'
5356         '409':
5357           $ref: '#/components/responses/Conflict'
5358         '422':
5359           $ref: '#/components/responses/UnprocessableEntity'
5360         '500':
5361           $ref: '#/components/responses/InternalServerError'
5362         '503':
5363           $ref: '#/components/responses/ServiceUnavailable'
5364         '5XX':
5365           $ref: '#/components/responses/UnexpectedError'
5366         default:
5367           $ref: '#/components/responses/UnexpectedError'
5368     post:
5369       tags:
5370         - "Infrastructure"
5371         - "Admin"
5372       summary: Create a new WIM Account
5373       description: Create a new WIM Account
5374       operationId: createWimAccount
5375       requestBody:
5376         $ref: '#/components/requestBodies/CreateWimRequest'
5377       responses:
5378         '202':
5379           description: Accepted
5380           content:
5381             application/json:
5382               schema:
5383                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5384             application/yaml:
5385               schema:
5386                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5387         '400':
5388           $ref: '#/components/responses/BadRequest'
5389         '401':
5390           $ref: '#/components/responses/Unauthorized'
5391         '403':
5392           $ref: '#/components/responses/Forbidden'
5393         '404':
5394           $ref: '#/components/responses/NotFound'
5395         '405':
5396           $ref: '#/components/responses/MethodNotAllowed'
5397         '406':
5398           $ref: '#/components/responses/NotAcceptable'
5399         '409':
5400           $ref: '#/components/responses/Conflict'
5401         '422':
5402           $ref: '#/components/responses/UnprocessableEntity'
5403         '500':
5404           $ref: '#/components/responses/InternalServerError'
5405         '503':
5406           $ref: '#/components/responses/ServiceUnavailable'
5407         '5XX':
5408           $ref: '#/components/responses/UnexpectedError'
5409         default:
5410           $ref: '#/components/responses/UnexpectedError'
5411   '/admin/v1/wim_accounts/{wimAccountId}':
5412     parameters:
5413       - name: wimAccountId
5414         in: path
5415         required: true
5416         description: WIM Account ID
5417         schema:
5418           type: string
5419           format: uuid
5420     get:
5421       tags:
5422         - "Infrastructure"
5423         - "Admin"
5424       summary: Query information about an individual WIM Account
5425       description: Query information about an individual WIM Account
5426       operationId: getWimAccount
5427       responses:
5428         '200':
5429           description: OK
5430           content:
5431             application/json:
5432               schema:
5433                 $ref: '#/components/schemas/WimInfo'
5434             application/yaml:
5435               schema:
5436                 $ref: '#/components/schemas/WimInfo'
5437         '400':
5438           $ref: '#/components/responses/BadRequest'
5439         '401':
5440           $ref: '#/components/responses/Unauthorized'
5441         '403':
5442           $ref: '#/components/responses/Forbidden'
5443         '404':
5444           $ref: '#/components/responses/NotFound'
5445         '405':
5446           $ref: '#/components/responses/MethodNotAllowed'
5447         '406':
5448           $ref: '#/components/responses/NotAcceptable'
5449         '409':
5450           $ref: '#/components/responses/Conflict'
5451         '422':
5452           $ref: '#/components/responses/UnprocessableEntity'
5453         '500':
5454           $ref: '#/components/responses/InternalServerError'
5455         '503':
5456           $ref: '#/components/responses/ServiceUnavailable'
5457         '5XX':
5458           $ref: '#/components/responses/UnexpectedError'
5459         default:
5460           $ref: '#/components/responses/UnexpectedError'
5461     patch:
5462       tags:
5463         - "Infrastructure"
5464         - "Admin"
5465       summary: Modify a WIM Account
5466       description: Modify a WIM Account
5467       operationId: editWimAccount
5468       requestBody:
5469         $ref: '#/components/requestBodies/EditWimRequest'
5470       responses:
5471         '202':
5472           description: Accepted
5473           content:
5474             application/json:
5475               schema:
5476                 $ref: '#/components/schemas/OpId'
5477             application/yaml:
5478               schema:
5479                 $ref: '#/components/schemas/OpId'
5480         '400':
5481           $ref: '#/components/responses/BadRequest'
5482         '401':
5483           $ref: '#/components/responses/Unauthorized'
5484         '403':
5485           $ref: '#/components/responses/Forbidden'
5486         '404':
5487           $ref: '#/components/responses/NotFound'
5488         '405':
5489           $ref: '#/components/responses/MethodNotAllowed'
5490         '406':
5491           $ref: '#/components/responses/NotAcceptable'
5492         '409':
5493           $ref: '#/components/responses/Conflict'
5494         '422':
5495           $ref: '#/components/responses/UnprocessableEntity'
5496         '500':
5497           $ref: '#/components/responses/InternalServerError'
5498         '503':
5499           $ref: '#/components/responses/ServiceUnavailable'
5500         '5XX':
5501           $ref: '#/components/responses/UnexpectedError'
5502         default:
5503           $ref: '#/components/responses/UnexpectedError'
5504     delete:
5505       tags:
5506         - "Infrastructure"
5507         - "Admin"
5508       summary: Delete a WIM Account
5509       description: Delete a WIM Account
5510       operationId: deleteWimAccount
5511       responses:
5512         '202':
5513           description: Accepted
5514         '400':
5515           $ref: '#/components/responses/BadRequest'
5516         '401':
5517           $ref: '#/components/responses/Unauthorized'
5518         '403':
5519           $ref: '#/components/responses/Forbidden'
5520         '404':
5521           $ref: '#/components/responses/NotFound'
5522         '405':
5523           $ref: '#/components/responses/MethodNotAllowed'
5524         '406':
5525           $ref: '#/components/responses/NotAcceptable'
5526         '409':
5527           $ref: '#/components/responses/Conflict'
5528         '422':
5529           $ref: '#/components/responses/UnprocessableEntity'
5530         '500':
5531           $ref: '#/components/responses/InternalServerError'
5532         '503':
5533           $ref: '#/components/responses/ServiceUnavailable'
5534         '5XX':
5535           $ref: '#/components/responses/UnexpectedError'
5536         default:
5537           $ref: '#/components/responses/UnexpectedError'
5538   '/admin/v1/sdns':
5539     get:
5540       tags:
5541         - "Infrastructure"
5542         - "Admin"
5543       summary: Query information about multiple SDNs
5544       description: Query information about multiple SDNs
5545       operationId: getSDNs
5546       responses:
5547         '200':
5548           description: OK
5549           content:
5550             application/json:
5551               schema:
5552                 $ref: '#/components/schemas/ArrayOfSdnInfo'
5553             application/yaml:
5554               schema:
5555                 $ref: '#/components/schemas/ArrayOfSdnInfo'
5556         '400':
5557           $ref: '#/components/responses/BadRequest'
5558         '401':
5559           $ref: '#/components/responses/Unauthorized'
5560         '403':
5561           $ref: '#/components/responses/Forbidden'
5562         '404':
5563           $ref: '#/components/responses/NotFound'
5564         '405':
5565           $ref: '#/components/responses/MethodNotAllowed'
5566         '406':
5567           $ref: '#/components/responses/NotAcceptable'
5568         '409':
5569           $ref: '#/components/responses/Conflict'
5570         '422':
5571           $ref: '#/components/responses/UnprocessableEntity'
5572         '500':
5573           $ref: '#/components/responses/InternalServerError'
5574         '503':
5575           $ref: '#/components/responses/ServiceUnavailable'
5576         '5XX':
5577           $ref: '#/components/responses/UnexpectedError'
5578         default:
5579           $ref: '#/components/responses/UnexpectedError'
5580     post:
5581       tags:
5582         - "Infrastructure"
5583         - "Admin"
5584       summary: Create a new SDN
5585       description: Create a new SDN
5586       operationId: createSDN
5587       requestBody:
5588         $ref: '#/components/requestBodies/CreateSdnRequest'
5589       responses:
5590         '202':
5591           description: Accepted
5592           content:
5593             application/json:
5594               schema:
5595                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5596             application/yaml:
5597               schema:
5598                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5599         '400':
5600           $ref: '#/components/responses/BadRequest'
5601         '401':
5602           $ref: '#/components/responses/Unauthorized'
5603         '403':
5604           $ref: '#/components/responses/Forbidden'
5605         '404':
5606           $ref: '#/components/responses/NotFound'
5607         '405':
5608           $ref: '#/components/responses/MethodNotAllowed'
5609         '406':
5610           $ref: '#/components/responses/NotAcceptable'
5611         '409':
5612           $ref: '#/components/responses/Conflict'
5613         '422':
5614           $ref: '#/components/responses/UnprocessableEntity'
5615         '500':
5616           $ref: '#/components/responses/InternalServerError'
5617         '503':
5618           $ref: '#/components/responses/ServiceUnavailable'
5619         '5XX':
5620           $ref: '#/components/responses/UnexpectedError'
5621         default:
5622           $ref: '#/components/responses/UnexpectedError'
5623   '/admin/v1/sdns/{sdnId}':
5624     parameters:
5625       - name: sdnId
5626         in: path
5627         required: true
5628         description: SDN ID
5629         schema:
5630           type: string
5631           format: uuid
5632     get:
5633       tags:
5634         - "Infrastructure"
5635         - "Admin"
5636       summary: Query information about an individual SDN
5637       description: Query information about an individual SDN
5638       operationId: getSDN
5639       responses:
5640         '200':
5641           description: OK
5642           content:
5643             application/json:
5644               schema:
5645                 $ref: '#/components/schemas/SdnInfo'
5646             application/yaml:
5647               schema:
5648                 $ref: '#/components/schemas/SdnInfo'
5649         '400':
5650           $ref: '#/components/responses/BadRequest'
5651         '401':
5652           $ref: '#/components/responses/Unauthorized'
5653         '403':
5654           $ref: '#/components/responses/Forbidden'
5655         '404':
5656           $ref: '#/components/responses/NotFound'
5657         '405':
5658           $ref: '#/components/responses/MethodNotAllowed'
5659         '406':
5660           $ref: '#/components/responses/NotAcceptable'
5661         '409':
5662           $ref: '#/components/responses/Conflict'
5663         '422':
5664           $ref: '#/components/responses/UnprocessableEntity'
5665         '500':
5666           $ref: '#/components/responses/InternalServerError'
5667         '503':
5668           $ref: '#/components/responses/ServiceUnavailable'
5669         '5XX':
5670           $ref: '#/components/responses/UnexpectedError'
5671         default:
5672           $ref: '#/components/responses/UnexpectedError'
5673     patch:
5674       tags:
5675         - "Infrastructure"
5676         - "Admin"
5677       summary: Modify a SDN
5678       description: Modify a SDN
5679       operationId: editSDN
5680       requestBody:
5681         $ref: '#/components/requestBodies/EditSdnRequest'
5682       responses:
5683         '202':
5684           description: Accepted
5685           content:
5686             application/json:
5687               schema:
5688                 $ref: '#/components/schemas/OpId'
5689             application/yaml:
5690               schema:
5691                 $ref: '#/components/schemas/OpId'
5692         '400':
5693           $ref: '#/components/responses/BadRequest'
5694         '401':
5695           $ref: '#/components/responses/Unauthorized'
5696         '403':
5697           $ref: '#/components/responses/Forbidden'
5698         '404':
5699           $ref: '#/components/responses/NotFound'
5700         '405':
5701           $ref: '#/components/responses/MethodNotAllowed'
5702         '406':
5703           $ref: '#/components/responses/NotAcceptable'
5704         '409':
5705           $ref: '#/components/responses/Conflict'
5706         '422':
5707           $ref: '#/components/responses/UnprocessableEntity'
5708         '500':
5709           $ref: '#/components/responses/InternalServerError'
5710         '503':
5711           $ref: '#/components/responses/ServiceUnavailable'
5712         '5XX':
5713           $ref: '#/components/responses/UnexpectedError'
5714         default:
5715           $ref: '#/components/responses/UnexpectedError'
5716     delete:
5717       tags:
5718         - "Infrastructure"
5719         - "Admin"
5720       summary: Delete a SDN
5721       description: Delete a SDN
5722       operationId: deleteSDN
5723       responses:
5724         '202':
5725           description: Accepted
5726         '400':
5727           $ref: '#/components/responses/BadRequest'
5728         '401':
5729           $ref: '#/components/responses/Unauthorized'
5730         '403':
5731           $ref: '#/components/responses/Forbidden'
5732         '404':
5733           $ref: '#/components/responses/NotFound'
5734         '405':
5735           $ref: '#/components/responses/MethodNotAllowed'
5736         '406':
5737           $ref: '#/components/responses/NotAcceptable'
5738         '409':
5739           $ref: '#/components/responses/Conflict'
5740         '422':
5741           $ref: '#/components/responses/UnprocessableEntity'
5742         '500':
5743           $ref: '#/components/responses/InternalServerError'
5744         '503':
5745           $ref: '#/components/responses/ServiceUnavailable'
5746         '5XX':
5747           $ref: '#/components/responses/UnexpectedError'
5748         default:
5749           $ref: '#/components/responses/UnexpectedError'
5750   '/admin/v1/k8sclusters':
5751     get:
5752       tags:
5753         - "Infrastructure"
5754         - "Admin"
5755       summary: Query information about multiple K8s Clusters
5756       description: Query information about multiple K8s Clusters
5757       operationId: getK8sClusters
5758       responses:
5759         '200':
5760           description: OK
5761           content:
5762             application/json:
5763               schema:
5764                 $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
5765             application/yaml:
5766               schema:
5767                 $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
5768         '400':
5769           $ref: '#/components/responses/BadRequest'
5770         '401':
5771           $ref: '#/components/responses/Unauthorized'
5772         '403':
5773           $ref: '#/components/responses/Forbidden'
5774         '404':
5775           $ref: '#/components/responses/NotFound'
5776         '405':
5777           $ref: '#/components/responses/MethodNotAllowed'
5778         '406':
5779           $ref: '#/components/responses/NotAcceptable'
5780         '409':
5781           $ref: '#/components/responses/Conflict'
5782         '422':
5783           $ref: '#/components/responses/UnprocessableEntity'
5784         '500':
5785           $ref: '#/components/responses/InternalServerError'
5786         '503':
5787           $ref: '#/components/responses/ServiceUnavailable'
5788         '5XX':
5789           $ref: '#/components/responses/UnexpectedError'
5790         default:
5791           $ref: '#/components/responses/UnexpectedError'
5792     post:
5793       tags:
5794         - "Infrastructure"
5795         - "Admin"
5796       summary: Create a new K8s Cluster
5797       description: Create a new K8s Cluster
5798       operationId: createK8sCluster
5799       requestBody:
5800         $ref: '#/components/requestBodies/CreateK8sClusterRequest'
5801       responses:
5802         '202':
5803           description: Accepted
5804           content:
5805             application/json:
5806               schema:
5807                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5808             application/yaml:
5809               schema:
5810                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5811         '400':
5812           $ref: '#/components/responses/BadRequest'
5813         '401':
5814           $ref: '#/components/responses/Unauthorized'
5815         '403':
5816           $ref: '#/components/responses/Forbidden'
5817         '404':
5818           $ref: '#/components/responses/NotFound'
5819         '405':
5820           $ref: '#/components/responses/MethodNotAllowed'
5821         '406':
5822           $ref: '#/components/responses/NotAcceptable'
5823         '409':
5824           $ref: '#/components/responses/Conflict'
5825         '422':
5826           $ref: '#/components/responses/UnprocessableEntity'
5827         '500':
5828           $ref: '#/components/responses/InternalServerError'
5829         '503':
5830           $ref: '#/components/responses/ServiceUnavailable'
5831         '5XX':
5832           $ref: '#/components/responses/UnexpectedError'
5833         default:
5834           $ref: '#/components/responses/UnexpectedError'
5835   '/admin/v1/k8sclusters/{k8sClusterId}':
5836     parameters:
5837       - name: k8sClusterId
5838         in: path
5839         required: true
5840         description: K8s Cluster ID
5841         schema:
5842           type: string
5843           format: uuid
5844     get:
5845       tags:
5846         - "Infrastructure"
5847         - "Admin"
5848       summary: Query information about an individual K8s Cluster
5849       description: Query information about an individual K8s Cluster
5850       operationId: getK8sCluster
5851       responses:
5852         '200':
5853           description: OK
5854           content:
5855             application/json:
5856               schema:
5857                 $ref: '#/components/schemas/K8sClusterInfo'
5858             application/yaml:
5859               schema:
5860                 $ref: '#/components/schemas/K8sClusterInfo'
5861         '400':
5862           $ref: '#/components/responses/BadRequest'
5863         '401':
5864           $ref: '#/components/responses/Unauthorized'
5865         '403':
5866           $ref: '#/components/responses/Forbidden'
5867         '404':
5868           $ref: '#/components/responses/NotFound'
5869         '405':
5870           $ref: '#/components/responses/MethodNotAllowed'
5871         '406':
5872           $ref: '#/components/responses/NotAcceptable'
5873         '409':
5874           $ref: '#/components/responses/Conflict'
5875         '422':
5876           $ref: '#/components/responses/UnprocessableEntity'
5877         '500':
5878           $ref: '#/components/responses/InternalServerError'
5879         '503':
5880           $ref: '#/components/responses/ServiceUnavailable'
5881         '5XX':
5882           $ref: '#/components/responses/UnexpectedError'
5883         default:
5884           $ref: '#/components/responses/UnexpectedError'
5885     patch:
5886       tags:
5887         - "Infrastructure"
5888         - "Admin"
5889       summary: Modify a K8s Cluster
5890       description: Modify a K8s Cluster
5891       operationId: editK8sCluster
5892       requestBody:
5893         $ref: '#/components/requestBodies/EditK8sClusterRequest'
5894       responses:
5895         '202':
5896           description: Accepted
5897           content:
5898             application/json:
5899               schema:
5900                 $ref: '#/components/schemas/OpId'
5901             application/yaml:
5902               schema:
5903                 $ref: '#/components/schemas/OpId'
5904         '400':
5905           $ref: '#/components/responses/BadRequest'
5906         '401':
5907           $ref: '#/components/responses/Unauthorized'
5908         '403':
5909           $ref: '#/components/responses/Forbidden'
5910         '404':
5911           $ref: '#/components/responses/NotFound'
5912         '405':
5913           $ref: '#/components/responses/MethodNotAllowed'
5914         '406':
5915           $ref: '#/components/responses/NotAcceptable'
5916         '409':
5917           $ref: '#/components/responses/Conflict'
5918         '422':
5919           $ref: '#/components/responses/UnprocessableEntity'
5920         '500':
5921           $ref: '#/components/responses/InternalServerError'
5922         '503':
5923           $ref: '#/components/responses/ServiceUnavailable'
5924         '5XX':
5925           $ref: '#/components/responses/UnexpectedError'
5926         default:
5927           $ref: '#/components/responses/UnexpectedError'
5928     delete:
5929       tags:
5930         - "Infrastructure"
5931         - "Admin"
5932       summary: Delete a K8s Cluster
5933       description: Delete a K8s Cluster
5934       operationId: deleteK8sCluster
5935       responses:
5936         '202':
5937           description: Accepted
5938         '400':
5939           $ref: '#/components/responses/BadRequest'
5940         '401':
5941           $ref: '#/components/responses/Unauthorized'
5942         '403':
5943           $ref: '#/components/responses/Forbidden'
5944         '404':
5945           $ref: '#/components/responses/NotFound'
5946         '405':
5947           $ref: '#/components/responses/MethodNotAllowed'
5948         '406':
5949           $ref: '#/components/responses/NotAcceptable'
5950         '409':
5951           $ref: '#/components/responses/Conflict'
5952         '422':
5953           $ref: '#/components/responses/UnprocessableEntity'
5954         '500':
5955           $ref: '#/components/responses/InternalServerError'
5956         '503':
5957           $ref: '#/components/responses/ServiceUnavailable'
5958         '5XX':
5959           $ref: '#/components/responses/UnexpectedError'
5960         default:
5961           $ref: '#/components/responses/UnexpectedError'
5962   '/admin/v1/vca':
5963     get:
5964       tags:
5965         - "Infrastructure"
5966         - "Admin"
5967       summary: Query information about multiple VCAs
5968       description: Query information about multiple VCAs
5969       operationId: getVcas
5970       responses:
5971         '200':
5972           description: OK
5973           content:
5974             application/json:
5975               schema:
5976                 $ref: '#/components/schemas/ArrayOfVcaInfo'
5977             application/yaml:
5978               schema:
5979                 $ref: '#/components/schemas/ArrayOfVcaInfo'
5980         '400':
5981           $ref: '#/components/responses/BadRequest'
5982         '401':
5983           $ref: '#/components/responses/Unauthorized'
5984         '403':
5985           $ref: '#/components/responses/Forbidden'
5986         '404':
5987           $ref: '#/components/responses/NotFound'
5988         '405':
5989           $ref: '#/components/responses/MethodNotAllowed'
5990         '406':
5991           $ref: '#/components/responses/NotAcceptable'
5992         '409':
5993           $ref: '#/components/responses/Conflict'
5994         '422':
5995           $ref: '#/components/responses/UnprocessableEntity'
5996         '500':
5997           $ref: '#/components/responses/InternalServerError'
5998         '503':
5999           $ref: '#/components/responses/ServiceUnavailable'
6000         '5XX':
6001           $ref: '#/components/responses/UnexpectedError'
6002         default:
6003           $ref: '#/components/responses/UnexpectedError'
6004     post:
6005       tags:
6006         - "Infrastructure"
6007         - "Admin"
6008       summary: Create a new VCA
6009       description: Create a new VCA
6010       operationId: createVca
6011       requestBody:
6012         $ref: '#/components/requestBodies/CreateVcaRequest'
6013       responses:
6014         '202':
6015           description: Accepted
6016           content:
6017             application/json:
6018               schema:
6019                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6020             application/yaml:
6021               schema:
6022                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6023         '400':
6024           $ref: '#/components/responses/BadRequest'
6025         '401':
6026           $ref: '#/components/responses/Unauthorized'
6027         '403':
6028           $ref: '#/components/responses/Forbidden'
6029         '404':
6030           $ref: '#/components/responses/NotFound'
6031         '405':
6032           $ref: '#/components/responses/MethodNotAllowed'
6033         '406':
6034           $ref: '#/components/responses/NotAcceptable'
6035         '409':
6036           $ref: '#/components/responses/Conflict'
6037         '422':
6038           $ref: '#/components/responses/UnprocessableEntity'
6039         '500':
6040           $ref: '#/components/responses/InternalServerError'
6041         '503':
6042           $ref: '#/components/responses/ServiceUnavailable'
6043         '5XX':
6044           $ref: '#/components/responses/UnexpectedError'
6045         default:
6046           $ref: '#/components/responses/UnexpectedError'
6047   '/admin/v1/vca/{vcaId}':
6048     parameters:
6049       - name: vcaId
6050         in: path
6051         required: true
6052         description: VCA ID
6053         schema:
6054           type: string
6055           format: uuid
6056     get:
6057       tags:
6058         - "Infrastructure"
6059         - "Admin"
6060       summary: Query information about an individual VCA
6061       description: Query information about an individual VCA
6062       operationId: getVca
6063       responses:
6064         '200':
6065           description: OK
6066           content:
6067             application/json:
6068               schema:
6069                 $ref: '#/components/schemas/VcaInfo'
6070             application/yaml:
6071               schema:
6072                 $ref: '#/components/schemas/VcaInfo'
6073         '400':
6074           $ref: '#/components/responses/BadRequest'
6075         '401':
6076           $ref: '#/components/responses/Unauthorized'
6077         '403':
6078           $ref: '#/components/responses/Forbidden'
6079         '404':
6080           $ref: '#/components/responses/NotFound'
6081         '405':
6082           $ref: '#/components/responses/MethodNotAllowed'
6083         '406':
6084           $ref: '#/components/responses/NotAcceptable'
6085         '409':
6086           $ref: '#/components/responses/Conflict'
6087         '422':
6088           $ref: '#/components/responses/UnprocessableEntity'
6089         '500':
6090           $ref: '#/components/responses/InternalServerError'
6091         '503':
6092           $ref: '#/components/responses/ServiceUnavailable'
6093         '5XX':
6094           $ref: '#/components/responses/UnexpectedError'
6095         default:
6096           $ref: '#/components/responses/UnexpectedError'
6097     patch:
6098       tags:
6099         - "Infrastructure"
6100         - "Admin"
6101       summary: Modify a VCA
6102       description: Modify a VCA
6103       operationId: editVca
6104       requestBody:
6105         $ref: '#/components/requestBodies/EditVcaRequest'
6106       responses:
6107         '202':
6108           description: Accepted
6109           content:
6110             application/json:
6111               schema:
6112                 $ref: '#/components/schemas/OpId'
6113             application/yaml:
6114               schema:
6115                 $ref: '#/components/schemas/OpId'
6116         '400':
6117           $ref: '#/components/responses/BadRequest'
6118         '401':
6119           $ref: '#/components/responses/Unauthorized'
6120         '403':
6121           $ref: '#/components/responses/Forbidden'
6122         '404':
6123           $ref: '#/components/responses/NotFound'
6124         '405':
6125           $ref: '#/components/responses/MethodNotAllowed'
6126         '406':
6127           $ref: '#/components/responses/NotAcceptable'
6128         '409':
6129           $ref: '#/components/responses/Conflict'
6130         '422':
6131           $ref: '#/components/responses/UnprocessableEntity'
6132         '500':
6133           $ref: '#/components/responses/InternalServerError'
6134         '503':
6135           $ref: '#/components/responses/ServiceUnavailable'
6136         '5XX':
6137           $ref: '#/components/responses/UnexpectedError'
6138         default:
6139           $ref: '#/components/responses/UnexpectedError'
6140     delete:
6141       tags:
6142         - "Infrastructure"
6143         - "Admin"
6144       summary: Delete a VCA
6145       description: Delete a VCA
6146       operationId: deleteVca
6147       responses:
6148         '202':
6149           description: Accepted
6150         '400':
6151           $ref: '#/components/responses/BadRequest'
6152         '401':
6153           $ref: '#/components/responses/Unauthorized'
6154         '403':
6155           $ref: '#/components/responses/Forbidden'
6156         '404':
6157           $ref: '#/components/responses/NotFound'
6158         '405':
6159           $ref: '#/components/responses/MethodNotAllowed'
6160         '406':
6161           $ref: '#/components/responses/NotAcceptable'
6162         '409':
6163           $ref: '#/components/responses/Conflict'
6164         '422':
6165           $ref: '#/components/responses/UnprocessableEntity'
6166         '500':
6167           $ref: '#/components/responses/InternalServerError'
6168         '503':
6169           $ref: '#/components/responses/ServiceUnavailable'
6170         '5XX':
6171           $ref: '#/components/responses/UnexpectedError'
6172         default:
6173           $ref: '#/components/responses/UnexpectedError'
6174   '/admin/v1/k8srepos':
6175     get:
6176       tags:
6177         - "Repositories"
6178         - "Admin"
6179       summary: Query information about multiple K8s Repos
6180       description: Query information about multiple K8s Repos
6181       operationId: getK8sRepos
6182       responses:
6183         '200':
6184           description: OK
6185           content:
6186             application/json:
6187               schema:
6188                 $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
6189             application/yaml:
6190               schema:
6191                 $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
6192         '400':
6193           $ref: '#/components/responses/BadRequest'
6194         '401':
6195           $ref: '#/components/responses/Unauthorized'
6196         '403':
6197           $ref: '#/components/responses/Forbidden'
6198         '404':
6199           $ref: '#/components/responses/NotFound'
6200         '405':
6201           $ref: '#/components/responses/MethodNotAllowed'
6202         '406':
6203           $ref: '#/components/responses/NotAcceptable'
6204         '409':
6205           $ref: '#/components/responses/Conflict'
6206         '422':
6207           $ref: '#/components/responses/UnprocessableEntity'
6208         '500':
6209           $ref: '#/components/responses/InternalServerError'
6210         '503':
6211           $ref: '#/components/responses/ServiceUnavailable'
6212         '5XX':
6213           $ref: '#/components/responses/UnexpectedError'
6214         default:
6215           $ref: '#/components/responses/UnexpectedError'
6216     post:
6217       tags:
6218         - "Repositories"
6219         - "Admin"
6220       summary: Create a new K8s Repo
6221       description: Create a new K8s Repo
6222       operationId: createK8sRepo
6223       requestBody:
6224         $ref: '#/components/requestBodies/CreateK8sRepoRequest'
6225       responses:
6226         '202':
6227           description: Accepted
6228           content:
6229             application/json:
6230               schema:
6231                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6232             application/yaml:
6233               schema:
6234                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6235         '400':
6236           $ref: '#/components/responses/BadRequest'
6237         '401':
6238           $ref: '#/components/responses/Unauthorized'
6239         '403':
6240           $ref: '#/components/responses/Forbidden'
6241         '404':
6242           $ref: '#/components/responses/NotFound'
6243         '405':
6244           $ref: '#/components/responses/MethodNotAllowed'
6245         '406':
6246           $ref: '#/components/responses/NotAcceptable'
6247         '409':
6248           $ref: '#/components/responses/Conflict'
6249         '422':
6250           $ref: '#/components/responses/UnprocessableEntity'
6251         '500':
6252           $ref: '#/components/responses/InternalServerError'
6253         '503':
6254           $ref: '#/components/responses/ServiceUnavailable'
6255         '5XX':
6256           $ref: '#/components/responses/UnexpectedError'
6257         default:
6258           $ref: '#/components/responses/UnexpectedError'
6259   '/admin/v1/k8srepos/{k8sRepoId}':
6260     parameters:
6261       - name: k8sRepoId
6262         in: path
6263         required: true
6264         description: K8s Repo ID
6265         schema:
6266           type: string
6267           format: uuid
6268     get:
6269       tags:
6270         - "Repositories"
6271         - "Admin"
6272       summary: Query information about an individual K8s Repo
6273       description: Query information about an individual K8s Repo
6274       operationId: getK8sRepo
6275       responses:
6276         '200':
6277           description: OK
6278           content:
6279             application/json:
6280               schema:
6281                 $ref: '#/components/schemas/K8sRepoInfo'
6282             application/yaml:
6283               schema:
6284                 $ref: '#/components/schemas/K8sRepoInfo'
6285         '400':
6286           $ref: '#/components/responses/BadRequest'
6287         '401':
6288           $ref: '#/components/responses/Unauthorized'
6289         '403':
6290           $ref: '#/components/responses/Forbidden'
6291         '404':
6292           $ref: '#/components/responses/NotFound'
6293         '405':
6294           $ref: '#/components/responses/MethodNotAllowed'
6295         '406':
6296           $ref: '#/components/responses/NotAcceptable'
6297         '409':
6298           $ref: '#/components/responses/Conflict'
6299         '422':
6300           $ref: '#/components/responses/UnprocessableEntity'
6301         '500':
6302           $ref: '#/components/responses/InternalServerError'
6303         '503':
6304           $ref: '#/components/responses/ServiceUnavailable'
6305         '5XX':
6306           $ref: '#/components/responses/UnexpectedError'
6307         default:
6308           $ref: '#/components/responses/UnexpectedError'
6309     delete:
6310       tags:
6311         - "Repositories"
6312         - "Admin"
6313       summary: Delete a K8s Repo
6314       description: Delete a K8s Repo
6315       operationId: deleteK8sRepo
6316       responses:
6317         '202':
6318           description: Accepted
6319         '400':
6320           $ref: '#/components/responses/BadRequest'
6321         '401':
6322           $ref: '#/components/responses/Unauthorized'
6323         '403':
6324           $ref: '#/components/responses/Forbidden'
6325         '404':
6326           $ref: '#/components/responses/NotFound'
6327         '405':
6328           $ref: '#/components/responses/MethodNotAllowed'
6329         '406':
6330           $ref: '#/components/responses/NotAcceptable'
6331         '409':
6332           $ref: '#/components/responses/Conflict'
6333         '422':
6334           $ref: '#/components/responses/UnprocessableEntity'
6335         '500':
6336           $ref: '#/components/responses/InternalServerError'
6337         '503':
6338           $ref: '#/components/responses/ServiceUnavailable'
6339         '5XX':
6340           $ref: '#/components/responses/UnexpectedError'
6341         default:
6342           $ref: '#/components/responses/UnexpectedError'
6343 # END Admin
6344
6345 externalDocs:
6346   description: Find out more about OSM
6347   url: 'https://osm.etsi.org/docs/user-guide/'
6348
6349 components:
6350   responses:
6351     BadRequest:
6352       description: Bad request. The server cannot process the request due to a client error.
6353       content:
6354         application/json:
6355           schema:
6356             $ref: '#/components/schemas/ProblemDetails'
6357     Unauthorized:
6358       description: Authorization information is missing or invalid.
6359       content:
6360         application/json:
6361           schema:
6362             $ref: '#/components/schemas/ProblemDetails'
6363     Forbidden:
6364       description: Not enough permissions to do this operation.
6365       content:
6366         application/json:
6367           schema:
6368             $ref: '#/components/schemas/ProblemDetails'
6369     NotFound:
6370       description: The specified resource was not found.
6371       content:
6372         application/json:
6373           schema:
6374             $ref: '#/components/schemas/ProblemDetails'
6375     MethodNotAllowed:
6376       description: This method is not supported for the requested resource.
6377       content:
6378         application/json:
6379           schema:
6380             $ref: '#/components/schemas/ProblemDetails'
6381     NotAcceptable:
6382       description: The requested resource content cannot match the Accept headers sent in the request.
6383       content:
6384         application/json:
6385           schema:
6386             $ref: '#/components/schemas/ProblemDetails'
6387     Conflict:
6388       description: The operation cannot be executed currently, due to a conflict with the state of the resource.
6389       content:
6390         application/json:
6391           schema:
6392             $ref: '#/components/schemas/ProblemDetails'
6393     UnprocessableEntity:
6394       description: The request was well-formed but was unable to be followed due to semantic errors.
6395       content:
6396         application/json:
6397           schema:
6398             $ref: '#/components/schemas/ProblemDetails'
6399     InternalServerError:
6400       description: Internal server error.
6401       content:
6402         application/json:
6403           schema:
6404             $ref: '#/components/schemas/ProblemDetails'
6405     ServiceUnavailable:
6406       description: Service temporarily unavailable.
6407       content:
6408         application/json:
6409           schema:
6410             $ref: '#/components/schemas/ProblemDetails'
6411     UnexpectedError:
6412       description: Unexpected error.
6413       content:
6414         application/json:
6415           schema:
6416             $ref: '#/components/schemas/ProblemDetails'
6417     VnfDescriptor:
6418       description: VNF Descriptor (plaintext)
6419       content:
6420         text/plain:
6421           schema:
6422             $ref: '#/components/schemas/VnfDescriptor'
6423     VnfPackage:
6424       description: VNF Package (compressed)
6425       content:
6426         application/zip:
6427           schema:
6428             $ref: '#/components/schemas/VnfPackage'
6429     NsDescriptor:
6430       description: NS Descriptor (plaintext)
6431       content:
6432         text/plain:
6433           schema:
6434             $ref: '#/components/schemas/NsDescriptor'
6435     NsPackage:
6436       description: NS Package (compressed)
6437       content:
6438         application/zip:
6439           schema:
6440             $ref: '#/components/schemas/NsPackage'
6441     NetSliceTemplate:
6442       description: NetSlice Template (plaintext)
6443       content:
6444         text/plain:
6445           schema:
6446             $ref: '#/components/schemas/NetSliceTemplate'
6447     NetSlicePackage:
6448       description: NetSlice Package (compressed)
6449       content:
6450         application/zip:
6451           schema:
6452             $ref: '#/components/schemas/NetSlicePackage'
6453     NslcmSubscriptionResponse:
6454       description: NslcmSubscriptionResponse
6455       content:
6456         application/json:
6457           schema:
6458             $ref: '#/components/schemas/NslcmSubscriptionResponse'
6459         application/yaml:
6460           schema:
6461             $ref: '#/components/schemas/NslcmSubscriptionResponse'
6462   # END RESPONSES
6463
6464   schemas:
6465     ObjectId:
6466       type: object
6467       properties:
6468         id:
6469           type: string
6470           format: uuid
6471     KeyValuePairs:
6472       # A free list of key:value pairs
6473       type: object
6474       additionalProperties: true
6475     NsDescriptor:
6476       type: string
6477       format: yaml|json
6478     NsPackage:
6479       type: string
6480       format: binary
6481     CreateNsdInfoRequest:
6482       # A free list of key:value pairs
6483       type: object
6484       additionalProperties: true
6485     NsdInfoModifications:
6486       description: |
6487         NS Descriptor Information
6488         Only generic fields (id, name, description) are described
6489         For a full specification of the NS Descriptor see:
6490         http://osm-download.etsi.org/ftp/osm-doc/nsd.html
6491       type: object
6492       properties:
6493         id:
6494           description: NSD Identifier
6495           type: string
6496         name:
6497           description: NSD Name
6498           type: string
6499         description:
6500           description: NSD Description
6501           type: string
6502     AlarmInfoModifications:
6503       description: |
6504         Alarm Information
6505       type: object
6506       properties:
6507         id:
6508           description: UUID
6509           type: string
6510         is_enable:
6511           description: To enable/disable the alarm.
6512           type: string
6513         threshold:
6514           description: Threshold value of the Alarm
6515           type: string
6516     NsdInfo:
6517       description: |
6518         NS Descriptor Information
6519         Only generic fields (_id, id, name, description) are described
6520         For a full specification of the NS Descriptor see:
6521         http://osm-download.etsi.org/ftp/osm-doc/nsd.html
6522       type: object
6523       properties:
6524         _id:
6525           description: |
6526             Identifier of the onboarded individual NS descriptor
6527             resource. This identifier is allocated by the NFVO.
6528           type: string
6529           format: uuid
6530         id:
6531           description: |
6532             This identifier, which is allocated by the NSD
6533             designer, identifies the NSD in a globally unique
6534             way. It is copied from the NSD content and shall be
6535             present after the NSD content is on-boarded.
6536           type: string
6537         name:
6538           description: |
6539             Name of the onboarded NSD. This information is
6540             copied from the NSD content and shall be present
6541             after the NSD content is on-boarded.
6542           type: string
6543         description:
6544           description: |
6545             Description of the onboarded NSD.
6546             This information is copied from the NSD content.
6547           type: string
6548       required:
6549         - _id
6550         - id
6551     ArrayOfNsdInfo:
6552       type: array
6553       items:
6554         $ref: '#/components/schemas/NsdInfo'
6555     ProblemDetails:
6556       type: object
6557       properties:
6558         type:
6559           type: string
6560           format: uri
6561         title:
6562           type: string
6563         status:
6564           type: integer
6565         detail:
6566           type: string
6567         instance:
6568           type: string
6569           format: uri
6570       additionalProperties: true
6571       required:
6572         - status
6573         - detail
6574     VnfDescriptor:
6575       type: string
6576       format: yaml|json
6577     VnfPackage:
6578       type: string
6579       format: binary
6580     CreateVnfPkgInfoRequest:
6581       # A free list of key:value pairs
6582       type: object
6583       additionalProperties: true
6584     VnfPkgInfoModifications:
6585       description: |
6586         VNF Package Information
6587         Only generic fields (id, name, description) are described
6588         For a full specification of the VNF Descriptor see:
6589         http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
6590       type: object
6591       properties:
6592         id:
6593           description: VNF Package Identifier
6594           type: string
6595         name:
6596           description: VNF Package Name
6597           type: string
6598         description:
6599           description: VNF Package description
6600           type: string
6601     VnfPkgInfo:
6602       description: |
6603         VNF Package Information
6604         Only generic fields (_id, id, name, description) are described
6605         For a full specification of the VNF Descriptor see:
6606         http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
6607       type: object
6608       properties:
6609         _id:
6610           description: |
6611             Identifier of the VNF package. This identifier is allocated by the NFVO.
6612           type: string
6613           format: uuid
6614         id:
6615           description: VNF Package Identifier
6616           type: string
6617         name:
6618           description: VNF Package Name
6619           type: string
6620         description:
6621           description: VNF Package description
6622           type: string
6623       required:
6624         - _id
6625         - id
6626     ArrayOfVnfPkgInfo:
6627       type: array
6628       items:
6629         $ref: '#/components/schemas/VnfPkgInfo'
6630     # CreateNsRequest:
6631       # Substituted by InstantiateNsRequest
6632     NsInstance:
6633       description: |
6634         NS Instance Information
6635         Only generic fields (_id, id, name, description) are described
6636         For a full specification of the NS Instance see:
6637         http://osm-download.etsi.org/ftp/osm-doc/nsr.html
6638       type: object
6639       properties:
6640         _id:
6641           description: Identifier of the NS instance.
6642           type: string
6643           format: uuid
6644         id:
6645           description: Identifier of the NS instance.
6646           type: string
6647           format: uuid
6648         name:
6649           description: Human readable name of the NS instance.
6650           type: string
6651         description:
6652           description: Human readable description of the NS instance.
6653           type: string
6654       required:
6655         - _id
6656         - id
6657         - name
6658     InstantiateNsRequest:
6659       type: object
6660       properties:
6661         nsName:
6662           description: |
6663             Human-readable name of the NS instance to be created.
6664           type: string
6665         nsdId:
6666           description: |
6667             Identifier of the NSD that defines the NS instance to be created.
6668           type: string
6669           format: uuid
6670         vimAccountId:
6671           description: |
6672             Identifier of the VIM Account where the NS instance shall be created.
6673           type: string
6674           format: uuid
6675         lcmOperationType:
6676           type: string
6677         nsInstanceId:
6678           type: string
6679           format: uuid
6680         netsliceInstanceId:
6681           type: string
6682           format: uuid
6683         nsDescription:
6684           type: string
6685           nullable: true
6686         wimAccountId:
6687           oneOf:
6688             - type: string
6689             - type: boolean
6690           nullable: true
6691         additionalParamsForNs:
6692           type: object
6693           additionalProperties: true
6694         additionalParamsForVnf: &additionalparamsforvnf
6695           type: array
6696           items:
6697             type: object
6698             properties:
6699               member-vnf-index:
6700                 type: string
6701               additionalParams:
6702                 type: object
6703                 additionalProperties: true
6704               k8s-namespace:
6705                 type: string
6706                 description: |
6707                   use this namespace for all the KDU deployed in this VNF
6708                   (if any). By default it is used the id of the project
6709               additionalParamsForVdu:
6710                 type: array
6711                 items:
6712                   type: object
6713                   properties:
6714                     vdu_id:
6715                       type: string
6716                     additionalParams:
6717                       type: object
6718                       additionalProperties: true
6719                   required:
6720                     - vdu_id
6721                     - additionalParams
6722                   additionalProperties: false
6723               additionalParamsForKdu:
6724                 type: array
6725                 items:
6726                   type: object
6727                   properties:
6728                     kdu_name:
6729                       type: string
6730                     k8s-namespace:
6731                       type: string
6732                       description: use this namespace for this KDU
6733                     kdu_model:
6734                       type: string
6735                     additionalParams:
6736                       type: object
6737                       additionalProperties: true
6738                   required:
6739                     - kdu_name
6740                   minProperties: 2
6741                   additionalProperties: false
6742             required:
6743               - member-vnf-index
6744             minProperties: 2
6745             additionalProperties: false
6746         ssh_keys:
6747           type: array
6748           items:
6749             type: string
6750         nsr_id:
6751           type: string
6752           format: uuid
6753         vduImage:
6754           type: string
6755         placement-engine:
6756           type: string
6757           description: |
6758            To compute automatically the target VIM for each VNF based on 
6759            constrains, e.g. latency. Currently only 'PLA' is supported
6760         placement-constraints:
6761           type: object
6762           additionalProperties: true
6763         k8s-namespace:
6764           type: string
6765         timeout_ns_deploy:
6766           type: integer
6767         vnf:
6768           type: array
6769           items:
6770             type: object
6771             properties:
6772               member-vnf-index:
6773                 type: string
6774               vimAccountId:
6775                 type: string
6776                 format: uuid
6777               vdu:
6778                 type: array
6779                 items:
6780                   type: object
6781                   properties:
6782                     id:
6783                       type: string
6784                     volume:
6785                       type: array
6786                       items:
6787                         type: object
6788                         properties:
6789                           name:
6790                             type: string
6791                           vim-volume-id:
6792                             type: string
6793                         required:
6794                           - name
6795                           - vim-volume-id
6796                         additionalProperties: false
6797                       minItems: 1
6798                     interface:
6799                       type: array
6800                       items:
6801                         type: object
6802                         properties:
6803                           name:
6804                             type: string
6805                           ip-address:
6806                             type: string
6807                             format: ipv4
6808                           mac-address:
6809                             type: string
6810                             format: mac_address
6811                           floating-ip-required:
6812                             type: boolean
6813                         required:
6814                           - name
6815                         additionalProperties: false
6816                       minItems: 1
6817                   required:
6818                     - id
6819                   additionalProperties: false
6820                 minItems: 1
6821               internal-vld:
6822                 type: array
6823                 items:
6824                   type: object
6825                   properties:
6826                     name:
6827                       type: string
6828                     vim-network-name:
6829                       type: string
6830                     vim-network-id:
6831                       type: string
6832                     ip-profile:
6833                       type: object
6834                       properties:
6835                         ip-version:
6836                           type: string
6837                           enum:
6838                             - ipv4
6839                             - ipv6
6840                         subnet-address:
6841                           type: string
6842                           format: ip_prefix
6843                           nullable: true
6844                         gateway-address:
6845                           type: string
6846                           format: ipv4
6847                           nullable: true
6848                         dns-server:
6849                           type: array
6850                           items:
6851                             type: object
6852                             properties:
6853                               address:
6854                                 type: string
6855                                 format: ipv4
6856                             required:
6857                               - address
6858                             additionalProperties: false
6859                           minItems: 1
6860                           nullable: true
6861                         dhcp-params:
6862                           type: object
6863                           properties:
6864                             enabled:
6865                               type: boolean
6866                             count:
6867                               type: integer
6868                               minimum: 1
6869                             start-address:
6870                               type: string
6871                               format: ipv4
6872                           additionalProperties: false
6873                           nullable: true
6874                       additionalProperties: false
6875                     provider-network:
6876                       type: object
6877                       properties:
6878                         physical-network:
6879                           type: string
6880                         segmentation-id:
6881                           type: string
6882                         network-type:
6883                           type: string
6884                         sdn-ports:
6885                           description: |
6886                             connect additional ports to the created underlay SDN connectivity.
6887                             Normally for external connectivy.
6888                           type: array
6889                           items:
6890                             type: object
6891                             properties:
6892                               switch_id:
6893                                 type: string
6894                               switch_port:
6895                                 type: string
6896                               mac_address:
6897                                 type: string
6898                                 format: mac_address
6899                               vlan:
6900                                 type: integer
6901                             additionalProperties: true
6902                             required:
6903                               - switch_id
6904                               - switch_port
6905                           minItems: 1
6906                       additionalProperties: false
6907                     internal-connection-point:
6908                       type: array
6909                       items:
6910                         type: object
6911                         properties:
6912                           id-ref:
6913                             type: string
6914                           ip-address:
6915                             type: string
6916                             format: ipv4
6917                         required:
6918                           - id-ref
6919                         minProperties: 2
6920                         additionalProperties: False
6921                       minItems: 1
6922                   required:
6923                     - name
6924                   minProperties: 2
6925                   additionalProperties: false
6926                 minItems: 1
6927             required:
6928               - member-vnf-index
6929             minProperties: 2
6930             additionalProperties: false
6931           minItems: 1
6932         vld:
6933           type: array
6934           items:
6935             type: object
6936             properties:
6937               name:
6938                 type: string
6939               vim-network-name:
6940                 oneOf:
6941                   - type: string
6942                   - type: object
6943               vim-network-id:
6944                 oneOf:
6945                   - type: string
6946                   - type: object
6947               ns-net:
6948                 type: object
6949                 additionalProperties: true
6950               wimAccountId:
6951                 oneOf:
6952                   - type: string
6953                   - type: boolean
6954                 nullable: true
6955               ip-profile:
6956                 type: object
6957                 additionalProperties: true
6958               provider-network:
6959                 type: object
6960                 properties:
6961                   physical-network:
6962                     type: string
6963                   segmentation-id:
6964                     type: string
6965                 additionalProperties: false
6966               vnfd-connection-point-ref:
6967                 type: array
6968                 items:
6969                   type: object
6970                   properties:
6971                     member-vnf-index-ref:
6972                       type: string
6973                     vnfd-connection-point-ref:
6974                       type: string
6975                     ip-address:
6976                       type: string
6977                       format: ipv4
6978                   required:
6979                     - member-vnf-index-ref
6980                     - vnfd-connection-point-ref
6981                   minProperties: 3
6982                   additionalProperties: false
6983                 minItems: 1
6984             required:
6985               - name
6986             additionalProperties: false
6987           minItems: 1
6988       required:
6989         - nsName
6990         - nsdId
6991         - vimAccountId
6992       additionalProperties: false
6993     ScaleNsRequest:
6994       type: object
6995       properties:
6996         scaleType:
6997           type: string
6998           enum:
6999             - SCALE_VNF
7000         timeout_ns_scale:
7001           description: timeout for the scale operation
7002           type: integer
7003         scaleVnfData:
7004           type: object
7005           properties:
7006             scaleVnfType:
7007               type: string
7008               enum:
7009                 - SCALE_IN
7010                 - SCALE_OUT
7011             scaleByStepData:
7012               type: object
7013               properties:
7014                 scaling-group-descriptor:
7015                   type: string
7016                 scaling-policy:
7017                   type: string
7018                 member-vnf-index:
7019                   type: string
7020               required:
7021                 - scaling-group-descriptor
7022                 - member-vnf-index
7023               additionalProperties: false
7024           required:
7025             - scaleVnfType
7026             - scaleByStepData
7027           additionalProperties: false
7028       required:
7029         - scaleType
7030         - scaleVnfData
7031       additionalProperties: false
7032     HealNsRequest:
7033       description: >
7034         This type represents request parameters for the "Heal NS" operation. This operation supports the healing of an NS
7035         instance by healing one or more of the VNF that are part of this NS.
7036       type: object
7037       properties:
7038         timeout_ns_heal:
7039           description: timeout for the heal operation in seconds
7040           type: integer
7041         healVnfData:
7042           description: >
7043             List of VNF to be healed, together with the information needed to heal each.
7044           type: array
7045           items:
7046             $ref: "#/components/schemas/HealVnfData"
7047       required:
7048         - healVnfData
7049     HealVnfData:
7050       description: >
7051         This type represents the information to heal a VNF that is part of an NS.
7052       type: object
7053       required:
7054         - vnfInstanceId
7055       properties:
7056         vnfInstanceId:
7057           description: >
7058             Identifies the VNF instance, part of the NS, requiring a
7059             healing action.
7060           type: string
7061           format: uuid
7062         cause:
7063           description: >
7064             Indicates the reason why a healing procedure is required.
7065           type: string
7066         additionalParams:
7067           description: >
7068             Additional parameters passed by the NFVO as input to
7069             the healing process, specific to the VNF being healed.
7070           type: object
7071           properties:
7072             run-day1:
7073               description: >
7074                 Flag to indicate whether or not to run day1 primitives for the VNF (default: false).
7075               type: boolean
7076               default: false
7077             vdu:
7078               description: >
7079                 List of VDU to be healed, together with the information needed to heal each.
7080               type: array
7081               items:
7082                 $ref: "#/components/schemas/HealVduData"
7083     HealVduData:
7084       description: >
7085         This type represents the information to heal a VDU that is part of a VNF.
7086       type: object
7087       required:
7088         - vdu-id
7089       properties:
7090         vdu-id:
7091           description: >
7092             Identifies the VDU id, part of the VNF, requiring a healing action.
7093           type: string
7094           format: uuid
7095         count-index:
7096           description: >
7097             Indicates the VDU number when the VDU is part of a scale-group.
7098           type: integer
7099           minimum: 0
7100         run-day1:
7101           description: >
7102             Flag to indicate whether or not to run day1 primitives for the VDU (default: false).
7103           type: boolean
7104           default: false
7105     NSinstanceMigrateRequest:
7106       description: >
7107         This type represents request parameters for the "Migrate" operation. This operation supports the migration of an NS
7108         instance by migrating one or more of the VDUs that are part of this NS.
7109       type: object
7110       properties:
7111         vnfInstanceId:
7112           type: string
7113         migrateToHost:
7114           type: string
7115         vdu:
7116           type: object
7117           properties:
7118             vduId:
7119               type: string
7120             vduCountIndex:
7121               type: integer
7122           required:
7123             - vduId
7124       required:
7125         - vnfInstanceId
7126       additionalProperties: false
7127     TerminateNsRequest:
7128       type: object
7129       properties:
7130         timeout_ns_terminate:
7131           description: timeout for terminate operation
7132           type: integer
7133         autoremove:
7134           description: remove network service if termination end without error
7135           type: boolean
7136         skip_terminate_primitives:
7137           description: Do not execute network service termination primitives
7138           type: boolean
7139       additionalProperties: false
7140     ArrayOfNsInstance:
7141       type: array
7142       items:
7143         $ref: '#/components/schemas/NsInstance'
7144     NSinstanceActionRequest:
7145       type: object
7146       properties:
7147         primitive:
7148           type: string
7149           description: |
7150             name of the primitive in the 'config-descriptor'. If the target is
7151             a kdu it can be also 'status', 'rollback' or 'upgrade'
7152         primitive_params:
7153           description: parameters of this primitive
7154           $ref: '#/components/schemas/KeyValuePairs'
7155         member_vnf_index:
7156           type: string
7157           description: provide if the target action is for a vnf, vdu or kdu
7158         vdu_id:
7159           type: string
7160           description: provide if the target action is for a vdu
7161         kdu_name:
7162           type: string
7163           description: provide if the target action is for a kdu
7164         vdu_count_index:
7165           type: integer
7166         timeout_ns_action:
7167           description: timeout for the day 1/2 operation
7168           type: integer
7169       required:
7170         - primitive
7171         - primitive_params
7172       additionalProperties: false
7173     UpdateNsRequest:
7174       description: >
7175         This type represents request parameters for the "Update NS" operation. This operation supports the update of an NS
7176         instance by updating one or more of the VNFs that are part of this NS.
7177       type: object
7178       properties:
7179         updateType:
7180           type: string
7181           enum:
7182             - CHANGE_VNFPKG
7183             - REMOVE_VNF
7184             - MODIFY_VNF_INFORMATION
7185             - OPERATE_VNF
7186         changeVnfPackageData:
7187           type: object
7188           properties:
7189             vnfInstanceId:
7190               type: string
7191             vnfdId:
7192               type: string
7193           required:
7194             - vnfInstanceId
7195             - vnfdId
7196         removeVnfInstanceId:
7197           type: string
7198         modifyVnfInfoData:
7199           type: object
7200           properties:
7201             vnfInstanceId:
7202               type: string
7203             vnfdId:
7204               type: string
7205           required:
7206             - vnfInstanceId
7207             - vnfdId
7208         operateVnfData:
7209           type: object
7210           properties:
7211             vnfInstanceId:
7212               type: string
7213             changeStateTo:
7214               type: string
7215             additionalParam:
7216               type: object
7217               properties:
7218                 run-day1:
7219                   type: boolean
7220                 vdu_id:
7221                   type: string
7222                 count-index:
7223                   type: number
7224               required:
7225                 - vdu_id
7226                 - count-index
7227           required:
7228             - vnfInstanceId
7229             - changeStateTo
7230           additionalProperties: false
7231       required:
7232         - updateType
7233       additionalProperties: false
7234     # CreateNSinstanceContentRequest:
7235       # Substituted by InstantiateNsRequest
7236     CreateNSinstanceContentResponse:
7237       type: object
7238       properties:
7239         id:
7240           type: string
7241           format: uuid
7242         nslcmop_id:
7243           type: string
7244           format: uuid
7245     NsLcmOpOcc:
7246       type: object
7247       properties:
7248         _id:
7249           type: string
7250           format: uuid
7251         id:
7252           type: string
7253           format: uuid
7254         lcmOperationType:
7255           type: string
7256         nsInstanceId:
7257           type: string
7258           format: uuid
7259         isAutomaticInvocation:
7260           type: boolean
7261         isCancelPending:
7262           type: boolean
7263         startTime:
7264           type: number
7265           format: float
7266         statusEnteredTime:
7267           type: number
7268           format: float
7269         operationParams:
7270           type: object
7271           properties:
7272             nsName:
7273               type: string
7274             nsdId:
7275               type: string
7276               format: uuid
7277             vimAccountId:
7278               type: string
7279               format: uuid
7280             nsInstanceId:
7281               type: string
7282               format: uuid
7283             lcmOperationType:
7284               type: string
7285         operationState:
7286           type: string
7287         detailed-status:
7288           type: string
7289         links:
7290           type: object
7291           properties:
7292             self:
7293               type: string
7294               format: path   # uri?
7295             nsInstance:
7296               type: string
7297               format: path   # uri?
7298     ArrayOfNsLcmOpOcc:
7299       type: array
7300       items:
7301         $ref: '#/components/schemas/NsLcmOpOcc'
7302     VnfInstanceInfo:
7303       description: |
7304         VNF Instance Information
7305         Only generic fields (_id, id) are described
7306         For a full specification of the VNF Instance see:
7307         http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
7308       type: object
7309       properties:
7310         _id:
7311           type: string
7312           format: uuid
7313         id:
7314           type: string
7315           format: uuid
7316     ArrayOfVnfInstanceInfo:
7317       type: array
7318       items:
7319         $ref: '#/components/schemas/VnfInstanceInfo'
7320     NstInfo:
7321       description: |
7322         NetSlice Template Information
7323         Only generic fields (_id, id, name) are described
7324         For a full specification of the NetSlice Template see:
7325         http://osm-download.etsi.org/ftp/osm-doc/nst.html
7326       type: object
7327       properties:
7328         _id:
7329           description: NetSlice Template Identifier
7330           type: string
7331           format: uuid
7332         id:
7333           description: Human readable NetSlice Template Identifier
7334           type: string
7335         name:
7336           description: Human readable name of the NetSlice Template
7337           type: string
7338     ArrayOfNstInfo:
7339       type: array
7340       items:
7341         $ref: '#/components/schemas/NstInfo'
7342     CreateNstInfoRequest:
7343       # A free list of key:value pairs
7344       type: object
7345       additionalProperties: true
7346     NetSliceTemplate:
7347       type: string
7348       format: yaml|json
7349     NetSlicePackage:
7350       type: string
7351       format: binary
7352     NstInfoModifications:
7353       description: |
7354         NetSlice Template Information
7355         Only generic fields (id, name) are described
7356         For a full specification of the NetSlice Template see:
7357         http://osm-download.etsi.org/ftp/osm-doc/nst.html
7358       type: object
7359       properties:
7360         id:
7361           description: NST Identifier
7362           type: string
7363         name:
7364           description: NST Name
7365           type: string
7366     NetSliceInstance:
7367       description: |
7368         NetSlice Instance Information
7369         Only generic fields (_id, id, name, description) are described
7370         For a full specification of the NetSlice Instance see:
7371         http://osm-download.etsi.org/ftp/osm-doc/nsi.html
7372       type: object
7373       properties:
7374         _id:
7375           description: Identifier of the NetSlice instance.
7376           type: string
7377           format: uuid
7378         id:
7379           description: Identifier of the NetSlice instance.
7380           type: string
7381           format: uuid
7382         name:
7383           description: Human readable name of the NetSlice instance.
7384           type: string
7385         description:
7386           description: Human readable description of the NetSlice instance.
7387           type: string
7388       required:
7389         - _id
7390         - id
7391         - name
7392     ArrayOfNetSliceInstance:
7393       type: array
7394       items:
7395         $ref: '#/components/schemas/NetSliceInstance'
7396     Alarm:
7397       description: |
7398         Alarm Information
7399       type: object
7400       properties:
7401         _id:
7402           description: Identifier of the Alarm.
7403           type: string
7404           format: uuid
7405         id:
7406           description: Identifier of the Alarm.
7407           type: string
7408           format: uuid
7409         metric:
7410           description: Alarm metric.
7411           type: string
7412         threshold:
7413           description: Threshold value of the Alarm.
7414           type: number
7415           format: float
7416         operation:
7417           description: Operation to be applied.
7418           type: string
7419         action:
7420           description: Action to be taken.
7421           type: string
7422         status:
7423           description: Current status of the alarm.
7424           type: string
7425       required:
7426         - _id
7427         - id
7428         - metric
7429         - threshold
7430         - operation
7431     ArrayOfAlarm:
7432       type: array
7433       items:
7434         $ref: '#/components/schemas/Alarm'
7435     # CreateNsiRequest:
7436       # Substituted by InstantiateNsiRequest
7437     InstantiateNsiRequest:
7438       type: object
7439       properties:
7440         nsiName:
7441           description: |
7442             Human-readable name of the NetSlice instance to be created.
7443           type: string
7444         nstId:
7445           description: |
7446             Identifier of the NST that defines the NetSlice instance to be created.
7447           type: string
7448           format: uuid
7449         vimAccountId:
7450           description: |
7451             Identifier of the VIM Account where the NetSlice instance shall be created.
7452           type: string
7453           format: uuid
7454         lcmOperationType:
7455           type: string
7456         netsliceInstanceId:
7457           type: string
7458           format: uuid
7459         nsiDescription:
7460           type: string
7461           nullable: true
7462         ssh_keys:
7463           type: string
7464         nsi_id:
7465           type: string
7466           format: uuid
7467         additionalParamsForNsi:
7468           type: object
7469           additionalProperties: true
7470         netslice-subnet:
7471           type: array
7472           items:
7473             type: object
7474             properties:
7475               id:
7476                 type: string
7477               nsName:
7478                 type: string
7479               nsdId:
7480                 type: string
7481                 format: uuid
7482               vimAccountId:
7483                 type: string
7484                 format: uuid
7485               lcmOperationType:
7486                 type: string
7487               nsInstanceId:
7488                 type: string
7489                 format: uuid
7490               netsliceInstanceId:
7491                 type: string
7492                 format: uuid
7493               nsDescription:
7494                 type: string
7495                 nullable: true
7496               wimAccountId:
7497                 oneOf:
7498                   - type: string
7499                   - type: boolean
7500                 nullable: true
7501               additionalParamsForNs:
7502                 type: object
7503                 additionalProperties: true
7504               additionalParamsForVnf: *additionalparamsforvnf
7505               ssh_keys:
7506                 type: array
7507                 items:
7508                   type: string
7509               nsr_id:
7510                 type: string
7511                 format: uuid
7512               vduImage:
7513                 type: string
7514               vnf:
7515                 type: array
7516                 items:
7517                   type: object
7518                   properties:
7519                     member-vnf-index:
7520                       type: string
7521                     vimAccountId:
7522                       type: string
7523                       format: uuid
7524                     vdu:
7525                       type: array
7526                       items:
7527                         type: object
7528                         properties:
7529                           id:
7530                             type: string
7531                           volume:
7532                             type: array
7533                             items:
7534                               type: object
7535                               properties:
7536                                 name:
7537                                   type: string
7538                                 vim-volume-id:
7539                                   type: string
7540                               required:
7541                                 - name
7542                                 - vim-volume-id
7543                               additionalProperties: false
7544                             minItems: 1
7545                           interface:
7546                             type: array
7547                             items:
7548                               type: object
7549                               properties:
7550                                 name:
7551                                   type: string
7552                                 ip-address:
7553                                   type: string
7554                                   format: ipv4
7555                                 mac-address:
7556                                   type: string
7557                                   format: mac_address
7558                                 floating-ip-required:
7559                                   type: boolean
7560                               required:
7561                                 - name
7562                               additionalProperties: false
7563                             minItems: 1
7564                         required:
7565                           - id
7566                         additionalProperties: false
7567                       minItems: 1
7568                     internal-vld:
7569                       type: array
7570                       items:
7571                         type: object
7572                         properties:
7573                           name:
7574                             type: string
7575                           vim-network-name:
7576                             type: string
7577                           vim-network-id:
7578                             type: string
7579                           ip-profile:
7580                             type: object
7581                             properties:
7582                               ip-version:
7583                                 type: string
7584                                 enum:
7585                                   - ipv4
7586                                   - ipv6
7587                               subnet-address:
7588                                 type: string
7589                                 format: ip_prefix
7590                                 nullable: true
7591                               gateway-address:
7592                                 type: string
7593                                 format: ipv4
7594                                 nullable: true
7595                               dns-server:
7596                                 type: array
7597                                 items:
7598                                   type: object
7599                                   properties:
7600                                     address:
7601                                       type: string
7602                                       format: ipv4
7603                                   required:
7604                                     - address
7605                                   additionalProperties: false
7606                                 minItems: 1
7607                                 nullable: true
7608                               dhcp-params:
7609                                 type: object
7610                                 properties:
7611                                   enabled:
7612                                     type: boolean
7613                                   count:
7614                                     type: integer
7615                                     minimum: 1
7616                                   start-address:
7617                                     type: string
7618                                     format: ipv4
7619                                 additionalProperties: false
7620                                 nullable: true
7621                             additionalProperties: false
7622                           provider-network:
7623                             type: object
7624                             properties:
7625                               physical-network:
7626                                 type: string
7627                               segmentation-id:
7628                                 type: string
7629                             additionalProperties: false
7630                           internal-connection-point:
7631                             type: array
7632                             items:
7633                               type: object
7634                               properties:
7635                                 id-ref:
7636                                   type: string
7637                                 ip-address:
7638                                   type: string
7639                                   format: ipv4
7640                               required:
7641                                 - id-ref
7642                               minProperties: 2
7643                               additionalProperties: False
7644                             minItems: 1
7645                         required:
7646                           - name
7647                         minProperties: 2
7648                         additionalProperties: false
7649                       minItems: 1
7650                   required:
7651                     - member-vnf-index
7652                   minProperties: 2
7653                   additionalProperties: false
7654                 minItems: 1
7655               vld:
7656                 type: array
7657                 items:
7658                   type: object
7659                   properties:
7660                     name:
7661                       type: string
7662                     vim-network-name:
7663                       oneOf:
7664                         - type: string
7665                         - type: object
7666                     vim-network-id:
7667                       oneOf:
7668                         - type: string
7669                         - type: object
7670                     ns-net:
7671                       type: object
7672                       additionalProperties: true
7673                     wimAccountId:
7674                       oneOf:
7675                         - type: string
7676                         - type: boolean
7677                       nullable: true
7678                     ip-profile:
7679                       type: object
7680                       additionalProperties: true
7681                     provider-network:
7682                       type: object
7683                       properties:
7684                         physical-network:
7685                           type: string
7686                         segmentation-id:
7687                           type: string
7688                       additionalProperties: false
7689                     vnfd-connection-point-ref:
7690                       type: array
7691                       items:
7692                         type: object
7693                         properties:
7694                           member-vnf-index-ref:
7695                             type: string
7696                           vnfd-connection-point-ref:
7697                             type: string
7698                           ip-address:
7699                             type: string
7700                             format: ipv4
7701                         required:
7702                           - member-vnf-index-ref
7703                           - vnfd-connection-point-ref
7704                         minProperties: 3
7705                         additionalProperties: false
7706                       minItems: 1
7707                   required:
7708                     - name
7709                   additionalProperties: false
7710                 minItems: 1
7711             additionalProperties: false
7712           minItems: 1
7713         netslice-vld:
7714           type: array
7715           items:
7716             type: object
7717             properties:
7718               name:
7719                 type: string
7720               vim-network-name:
7721                 oneOf:
7722                   - type: string
7723                   - type: object
7724               vim-network-id:
7725                 oneOf:
7726                   - type: string
7727                   - type: object
7728               ip-profile:
7729                 type: object
7730                 additionalProperties: true
7731             required:
7732               - name
7733             additionalProperties: false
7734           minItems: 1
7735       required:
7736         - nsiName
7737         - nstId
7738         - vimAccountId
7739       additionalProperties: false
7740     TerminateNsiRequest:
7741       type: object
7742       properties:
7743         terminationTime:
7744           description: |
7745             Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
7746             automatically at this timestamp. Cardinality "0" indicates the NSI termination
7747             takes place immediately.
7748           type: string
7749           format: date-time
7750     NsiActionRequest:
7751       type: object
7752       properties:
7753         primitive:
7754           type: string
7755         primitive_params:
7756           $ref: '#/components/schemas/KeyValuePairs'
7757         lcmOperationType:
7758           type: string
7759         netsliceInstanceId:
7760           type: string
7761           format: uuid
7762       required:
7763         - primitive
7764         - primitive_params
7765     # CreateNsiContentRequest:
7766       # Substituted by InstantiateNsiRequest
7767     CreateNsiContentResponse:
7768       type: object
7769       properties:
7770         id:
7771           type: string
7772           format: uuid
7773         nsilcmop_id:
7774           type: string
7775           format: uuid
7776     NsiLcmOpOcc:
7777       type: object
7778       properties:
7779         _id:
7780           type: string
7781           format: uuid
7782         id:
7783           type: string
7784           format: uuid
7785         lcmOperationType:
7786           type: string
7787         netsliceInstanceId:
7788           type: string
7789           format: uuid
7790         isAutomaticInvocation:
7791           type: boolean
7792         isCancelPending:
7793           type: boolean
7794         startTime:
7795           type: number
7796           format: float
7797         statusEnteredTime:
7798           type: number
7799           format: float
7800         operationParams:
7801           type: object
7802           properties:
7803             nsiName:
7804               type: string
7805             nstId:
7806               type: string
7807               format: uuid
7808             vimAccountId:
7809               type: string
7810               format: uuid
7811             netsliceInstanceId:
7812               type: string
7813               format: uuid
7814             lcmOperationType:
7815               type: string
7816             nslcmops_ids:
7817               type: array
7818               items:
7819                 type: string
7820                 format: uuid
7821         operationState:
7822           type: string
7823         detailed-status:
7824           type: string
7825         links:
7826           type: object
7827           properties:
7828             self:
7829               type: string
7830               format: path   # uri?
7831             netsliceInstanceId:
7832               type: string
7833               format: path   # uri?
7834     ArrayOfNsiLcmOpOcc:
7835       type: array
7836       items:
7837         $ref: '#/components/schemas/NsiLcmOpOcc'
7838     TokenInfo:
7839       type: object
7840       properties:
7841         _id:
7842           type: string
7843         id:
7844           type: string
7845         admin:
7846           type: boolean
7847         project_id:
7848           type: string
7849           format: uuid
7850         user_id:
7851           type: string
7852           format: uuid
7853         project_name:
7854           type: string
7855         username:
7856           type: string
7857         issued_at:
7858           type: number
7859           format: float
7860         expires:
7861           type: number
7862           format: float
7863         remote_host:
7864           type: string
7865           format: ipv4
7866         remote_port:
7867           type: integer
7868         roles:
7869           type: array
7870           items:
7871             type: object
7872             properties:
7873               id:
7874                 type: string
7875                 format: uuid
7876               name:
7877                 type: string
7878     PasswordExpiryInfo:
7879       type: object
7880       properties:
7881         id:
7882           type: string
7883         message:
7884           type: string
7885         user_id:
7886           type: string
7887           format: uuid
7888     ArrayOfTokenInfo:
7889       type: array
7890       items:
7891         $ref: '#/components/schemas/TokenInfo'
7892     CreateTokenRequest:
7893       type: object
7894       properties:
7895         username:
7896           type: string
7897         password:
7898           type: string
7899         project_id:
7900           type: string
7901       required:
7902         - username
7903         - password
7904     UserInfo:
7905       type: object
7906       properties:
7907         _id:
7908           type: string
7909           format: uuid
7910         username:
7911           type: string
7912         password:
7913           type: string
7914         project_role_mappings:
7915           type: array
7916           items:
7917             type: object
7918             properties:
7919               project:
7920                 type: string
7921                 format: uuid
7922               role:
7923                 type: string
7924                 format: uuid
7925               project_name:
7926                 type: string
7927               role_name:
7928                 type: string
7929         projects:
7930           type: array
7931           items:
7932             type: string
7933     ArrayOfUserInfo:
7934       type: array
7935       items:
7936         $ref: '#/components/schemas/UserInfo'
7937     ProjectRoleMappings:
7938       type: array
7939       items:
7940         type: object
7941         properties:
7942           project:
7943             type: string
7944           role:
7945             type: string
7946       required:
7947         - project
7948         - role
7949       additionalProperties: false
7950     ProjectRoleMappingsOpt:
7951       type: array
7952       items:
7953         type: object
7954         properties:
7955           project:
7956             type: string
7957           role:
7958             type: string
7959       required:
7960         - project
7961       additionalProperties: false
7962     CreateUserRequest:
7963       type: object
7964       properties:
7965         username:
7966           type: string
7967         password:
7968           type: string
7969         projects:
7970           type: array
7971           items:
7972             type: string
7973         project_role_mappings:
7974           $ref: '#/components/schemas/ProjectRoleMappings'
7975       required:
7976         - username
7977         - password
7978       additionalProperties: false
7979     ShortNameList:
7980       type: array
7981       items:
7982         type: string
7983     ArrayEditionSchema:
7984       type: object
7985       additionalProperties: true
7986       minProperties: 1
7987       description: |
7988         Array edition keys must start with '$'
7989         and follow the syntax defined in: https://osm.etsi.org/wikipub/index.php/NBI_API_Description
7990     EditUserRequest:
7991       type: object
7992       properties:
7993         username:
7994           type: string
7995         password:
7996           type: string
7997         projects:
7998           oneOf:
7999             - $ref: '#/components/schemas/ShortNameList'
8000             - $ref: '#/components/schemas/ArrayEditionSchema'
8001         project_role_mappings:
8002           $ref: '#/components/schemas/ProjectRoleMappings'
8003         add_project_role_mappings:
8004           $ref: '#/components/schemas/ProjectRoleMappings'
8005         remove_project_role_mappings:
8006           $ref: '#/components/schemas/ProjectRoleMappingsOpt'
8007     QuotasInfo:
8008       type: object
8009       properties:
8010         vnfds:
8011           type: integer
8012           minimum: 0
8013           nullable: false
8014         nsds:
8015           type: integer
8016           minimum: 0
8017           nullable: false
8018         slice_templates:
8019           type: integer
8020           minimum: 0
8021           nullable: false
8022         pduds:
8023           type: integer
8024           minimum: 0
8025           nullable: false
8026         ns_instances:
8027           type: integer
8028           minimum: 0
8029           nullable: false
8030         slice_instances:
8031           type: integer
8032           minimum: 0
8033           nullable: false
8034         vim_accounts:
8035           type: integer
8036           minimum: 0
8037           nullable: false
8038         wim_accounts:
8039           type: integer
8040           minimum: 0
8041           nullable: false
8042         sdn_controllers:
8043           type: integer
8044           minimum: 0
8045           nullable: false
8046         k8sclusters:
8047           type: integer
8048           minimum: 0
8049           nullable: false
8050         vca:
8051           type: integer
8052           minimum: 0
8053           nullable: false
8054         k8srepos:
8055           type: integer
8056           minimum: 0
8057           nullable: false
8058         osmrepos:
8059           type: integer
8060           minimum: 0
8061           nullable: false
8062       additionalProperties: false
8063     EditQuotasInfo:
8064       type: object
8065       properties:
8066         vnfds:
8067           type: integer
8068           minimum: 0
8069           nullable: true
8070         nsds:
8071           type: integer
8072           minimum: 0
8073           nullable: true
8074         slice_templates:
8075           type: integer
8076           minimum: 0
8077           nullable: true
8078         pduds:
8079           type: integer
8080           minimum: 0
8081           nullable: true
8082         ns_instances:
8083           type: integer
8084           minimum: 0
8085           nullable: true
8086         slice_instances:
8087           type: integer
8088           minimum: 0
8089           nullable: true
8090         vim_accounts:
8091           type: integer
8092           minimum: 0
8093           nullable: true
8094         wim_accounts:
8095           type: integer
8096           minimum: 0
8097           nullable: true
8098         sdn_controllers:
8099           type: integer
8100           minimum: 0
8101           nullable: true
8102         k8sclusters:
8103           type: integer
8104           minimum: 0
8105           nullable: true
8106         vca:
8107           type: integer
8108           minimum: 0
8109           nullable: true
8110         k8srepos:
8111           type: integer
8112           minimum: 0
8113           nullable: true
8114         osmrepos:
8115           type: integer
8116           minimum: 0
8117           nullable: true
8118       additionalProperties: false
8119     ProjectInfo:
8120       type: object
8121       properties:
8122         _id:
8123           type: string
8124           format: uuid
8125         name:
8126           type: string
8127         quotas:
8128           $ref: '#/components/schemas/QuotasInfo'
8129     ArrayOfProjectInfo:
8130       type: array
8131       items:
8132         $ref: '#/components/schemas/ProjectInfo'
8133     CreateProjectRequest:
8134       type: object
8135       properties:
8136         name:
8137           type: string
8138         admin:
8139           type: boolean
8140         quotas:
8141           $ref: '#/components/schemas/QuotasInfo'
8142       required:
8143         - name
8144       additionalProperties: false
8145     EditProjectRequest:
8146       type: object
8147       properties:
8148         name:
8149           type: string
8150         admin:
8151           type: boolean
8152         quotas:
8153           $ref: '#/components/schemas/EditQuotasInfo'
8154       additionalProperties: false
8155     PermissionsInfo:
8156       type: object
8157       additionalProperties:
8158         type: boolean
8159         nullable: false
8160       description: |
8161         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
8162         Permission values are either true or false
8163     EditPermissionsInfo:
8164       type: object
8165       additionalProperties:
8166         type: boolean
8167         nullable: true
8168       description: |
8169         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
8170         Permission values are either true, false, or null
8171     RoleInfo:
8172       type: object
8173       properties:
8174         _id:
8175           type: string
8176           format: uuid
8177         name:
8178           type: string
8179         permissions:
8180           $ref: '#/components/schemas/PermissionsInfo'
8181     ArrayOfRoleInfo:
8182       type: array
8183       items:
8184         $ref: '#/components/schemas/RoleInfo'
8185     CreateRoleRequest:
8186       type: object
8187       properties:
8188         name:
8189           type: string
8190         permissions:
8191           $ref: '#/components/schemas/PermissionsInfo'
8192       required:
8193         - name
8194       additionalProperties: false
8195     EditRoleRequest:
8196       type: object
8197       properties:
8198         name:
8199           type: string
8200         permissions:
8201           $ref: '#/components/schemas/EditPermissionsInfo'
8202       additionalProperties: false
8203     VimType:
8204       type: string
8205       enum:
8206         - openvim
8207         - openstack
8208         - vmware
8209         - opennebula
8210         - aws
8211         - azure
8212         - fos
8213     VimInfo:
8214       type: object
8215       properties:
8216         _id:
8217           type: string
8218           format: uuid
8219         schema_version:
8220           type: string
8221           format: X.Y[.Z]
8222         schema_type:
8223           type: string
8224         name:
8225           type: string
8226         description:
8227           type: string
8228         vim:
8229           type: string
8230         datacenter:
8231           type: string
8232         vim_type:
8233           $ref: '#/components/schemas/VimType'
8234         vim_url:
8235           type: string
8236           format: uri
8237         vim_tenant_name:
8238           type: string
8239         vim_user:
8240           type: string
8241         vim_password:
8242           type: string
8243         vca:
8244           type: string
8245           format: uuid
8246         config:
8247           type: object
8248           additionalProperties: true
8249         resources:
8250           type: object
8251     ArrayOfVimInfo:
8252       type: array
8253       items:
8254         $ref: '#/components/schemas/VimInfo'
8255     CreateVimRequest:
8256       type: object
8257       properties:
8258         schema_version:
8259           type: string
8260           format: X.Y[.Z]
8261         schema_type:
8262           type: string
8263         name:
8264           type: string
8265         description:
8266           type: string
8267         vim:
8268           type: string
8269         datacenter:
8270           type: string
8271         vim_type:
8272           $ref: '#/components/schemas/VimType'
8273         vim_url:
8274           type: string
8275           format: uri
8276         vim_tenant_name:
8277           type: string
8278         vim_user:
8279           type: string
8280         vim_password:
8281           type: string
8282         vca:
8283           type: string
8284           format: uuid
8285         config:
8286           type: object
8287           additionalProperties: true
8288         resources:
8289           type: object
8290       required:
8291         - name
8292         - vim_url
8293         - vim_type
8294         - vim_user
8295         - vim_password
8296         - vim_tenant_name
8297       additionalProperties: false
8298     EditVimRequest:
8299       type: object
8300       properties:
8301         name:
8302           type: string
8303         description:
8304           type: string
8305         vim:
8306           type: string
8307         datacenter:
8308           type: string
8309         vim_type:
8310           $ref: '#/components/schemas/VimType'
8311         vim_url:
8312           type: string
8313           format: uri
8314         vim_tenant_name:
8315           type: string
8316         vim_user:
8317           type: string
8318         vim_password:
8319           type: string
8320         vca:
8321           type: string
8322           format: uuid
8323         config:
8324           type: object
8325           additionalProperties: true
8326       additionalProperties: false
8327     ObjectId_plus_OpId:
8328       type: object
8329       properties:
8330         id:
8331           type: string
8332           format: uuid
8333         op_id:
8334           type: string
8335           format: uuid
8336     OpId:
8337       type: object
8338       properties:
8339         op_id:
8340           type: string
8341           format: uuid
8342     WimType:
8343       type: string
8344       enum:
8345         - onos
8346         - odl
8347         - tapi
8348         - dynpac
8349         - fake
8350     WimInfo:
8351       type: object
8352       properties:
8353         _id:
8354           type: string
8355           format: uuid
8356         schema_version:
8357           type: string
8358           format: X.Y[.Z]
8359         schema_type:
8360           type: string
8361         name:
8362           type: string
8363         description:
8364           type: string
8365         wim:
8366           type: string
8367         wim_type:
8368           $ref: '#/components/schemas/WimType'
8369         wim_url:
8370           type: string
8371           format: uri
8372         user:
8373           type: string
8374         password:
8375           type: string
8376         config:
8377           type: object
8378           additionalProperties: true
8379     ArrayOfWimInfo:
8380       type: array
8381       items:
8382         $ref: '#/components/schemas/WimInfo'
8383     CreateWimRequest:
8384       type: object
8385       properties:
8386         schema_version:
8387           type: string
8388           format: X.Y[.Z]
8389         schema_type:
8390           type: string
8391         name:
8392           type: string
8393         description:
8394           type: string
8395         wim:
8396           type: string
8397         wim_type:
8398           $ref: '#/components/schemas/WimType'
8399         wim_url:
8400           type: string
8401           format: uri
8402         user:
8403           type: string
8404         password:
8405           type: string
8406         config:
8407           type: object
8408           additionalProperties: true
8409       required:
8410         - name
8411         - wim_url
8412         - wim_type
8413       additionalProperties: false
8414     EditWimRequest:
8415       type: object
8416       properties:
8417         name:
8418           type: string
8419         description:
8420           type: string
8421         wim:
8422           type: string
8423         wim_type:
8424           type: string
8425         wim_url:
8426           type: string
8427           format: uri
8428         user:
8429           type: string
8430         password:
8431           type: string
8432         config:
8433           type: object
8434           additionalProperties: true
8435       additionalProperties: false
8436     SdnBasicProperties:
8437       type: object
8438       properties:
8439         name:
8440           type: string
8441         description:
8442           type: string
8443         dpid:
8444           type: string
8445           format: mac_address
8446         ip:
8447           type: string
8448           format: ipv4
8449         port:
8450           type: integer
8451         type:
8452           type: string
8453           enum:
8454             - floodlight
8455             - opendaylight
8456             - onos
8457         version:
8458           type: string
8459         user:
8460           type: string
8461         password:
8462           type: string
8463     SdnExtraProperties:
8464       type: object
8465       properties:
8466         _id:
8467           type: string
8468           format: uuid
8469         schema_version:
8470           type: string
8471           format: X.Y[.Z]
8472     SdnInfo:
8473       allOf:
8474         - $ref: '#/components/schemas/SdnExtraProperties'
8475         - $ref: '#/components/schemas/SdnBasicProperties'
8476     ArrayOfSdnInfo:
8477       type: array
8478       items:
8479         $ref: '#/components/schemas/SdnInfo'
8480     CreateSdnRequest:
8481       allOf:
8482         - $ref: '#/components/schemas/SdnBasicProperties'
8483       required:
8484         - name
8485         - type
8486         - ip
8487         - port
8488         - dpid
8489       additionalProperties: false
8490     EditSdnRequest:
8491       allOf:
8492         - $ref: '#/components/schemas/SdnBasicProperties'
8493       additionalProperties: false
8494     NsPmJobReportInfo:
8495       type: object
8496       properties:
8497         entries:
8498           type: array
8499           items:
8500             type: object
8501             properties:
8502               objectInstanceId:
8503                 type: string
8504                 format: uuid
8505               performanceMetric:
8506                 type: string
8507               performanceValue:
8508                 type: object
8509                 properties:
8510                   performanceValue:
8511                     type: object
8512                     properties:
8513                       performanceValue:
8514                         type: number
8515                       vnfMemberIndex:
8516                         type: string
8517                       vduName:
8518                         type: string
8519                   timestamp:
8520                     type: number
8521     PduInterfaces:
8522       type: array
8523       items:
8524         type: object
8525         properties:
8526           name:
8527             type: string
8528           mgmt:
8529             type: boolean
8530           type:
8531             type: string
8532             enum:
8533               - overlay
8534               - underlay
8535           ip-address:
8536             type: string
8537             format: ipv4
8538           mac-address:
8539             type: string
8540             format: mac_address
8541           vim-network-name:
8542             type: string
8543           vim-network-id:
8544             type: string
8545         required:
8546           - name
8547           - mgmt
8548           - ip-address
8549         additionalProperties: false
8550     PduInfo:
8551       type: object
8552       properties:
8553         _id:
8554           type: string
8555           format: uuid
8556         name:
8557           type: string
8558         type:
8559           type: string
8560         description:
8561           type: string
8562         shared:
8563           type: boolean
8564         vims:
8565           type: array
8566           items:
8567             type: string
8568         vim_accounts:
8569           type: array
8570           items:
8571             type: string
8572         interfaces:
8573           $ref: '#/components/schemas/PduInterfaces'
8574     ArrayOfPduInfo:
8575       type: array
8576       items:
8577         $ref: '#/components/schemas/PduInfo'
8578     CreatePduRequest:
8579       type: object
8580       properties:
8581         name:
8582           type: string
8583         type:
8584           type: string
8585         description:
8586           type: string
8587         shared:
8588           type: boolean
8589         vims:
8590           type: array
8591           items:
8592             type: string
8593         vim_accounts:
8594           type: array
8595           items:
8596             type: string
8597         interfaces:
8598           $ref: '#/components/schemas/PduInterfaces'
8599       required:
8600         - name
8601         - type
8602         - interfaces
8603       additionalProperties: false
8604     EditPduRequest:
8605       type: object
8606       properties:
8607         name:
8608           type: string
8609         type:
8610           type: string
8611         description:
8612           type: string
8613         shared:
8614           type: boolean
8615         vims:
8616           type: array
8617           items:
8618             type: string
8619         vim_accounts:
8620           type: array
8621           items:
8622             type: string
8623         interfaces:
8624           $ref: '#/components/schemas/PduInterfaces'
8625       additionalProperties: false
8626     K8sClusterNetList:
8627       type: array
8628       items:
8629         type: object
8630         additionalProperties: false
8631     K8sClusterDeploymentMethods:
8632       type: object
8633       properties:
8634         helm-chart:
8635           type: boolean
8636         juju-bundle:
8637           type: boolean
8638         helm-chart-v3:
8639           type: boolean
8640       additionalProperties: false
8641       minProperties: 3
8642     K8sClusterInfo:
8643       type: object
8644       properties:
8645         _id:
8646           type: string
8647           format: uuid
8648         schema_version:
8649           type: string
8650           format: X.Y[.Z]
8651         schema_type:
8652           type: string
8653         name:
8654           type: string
8655         description:
8656           type: string
8657         credentials:
8658           type: object
8659           additionalProperties: true
8660         vim_account:
8661           type: string
8662           format: uuid
8663         k8s_version:
8664           type: string
8665         nets:
8666           $ref: '#/components/schemas/K8sClusterNetList'
8667         deployment_methods:
8668           $ref: '#/components/schemas/K8sClusterDeploymentMethods'
8669         namespace:
8670           type: string
8671         cni:
8672           type: array
8673           items:
8674             type: string
8675     ArrayOfK8sClusterInfo:
8676       type: array
8677       items:
8678         $ref: '#/components/schemas/K8sClusterInfo'
8679     CreateK8sClusterRequest:
8680       type: object
8681       properties:
8682         schema_version:
8683           type: string
8684           format: X.Y[.Z]
8685         schema_type:
8686           type: string
8687         name:
8688           type: string
8689         description:
8690           type: string
8691         credentials:
8692           type: object
8693           additionalProperties: true
8694         vim_account:
8695           type: string
8696           format: uuid
8697         k8s_version:
8698           type: string
8699         nets:
8700           $ref: '#/components/schemas/K8sClusterNetList'
8701         namespace:
8702           type: string
8703         cni:
8704           type: array
8705           items:
8706             type: string
8707       required:
8708         - name
8709         - credentials
8710         - vim_account
8711         - k8s_version
8712         - nets
8713       additionalProperties: false
8714     EditK8sClusterRequest:
8715       type: object
8716       properties:
8717         name:
8718           type: string
8719         description:
8720           type: string
8721         credentials:
8722           type: object
8723           additionalProperties: true
8724         vim_account:
8725           type: string
8726           format: uuid
8727         k8s_version:
8728           type: string
8729         nets:
8730           $ref: '#/components/schemas/K8sClusterNetList'
8731         namespace:
8732           type: string
8733         cni:
8734           type: array
8735           items:
8736             type: string
8737       additionalProperties: false
8738     VcaInfo:
8739       type: object
8740       properties:
8741         _id:
8742           type: string
8743           format: uuid
8744         schema_version:
8745           type: string
8746           format: X.Y[.Z]
8747         schema_type:
8748           type: string
8749         name:
8750           type: string
8751         description:
8752           type: string
8753         endpoints:
8754           type: string
8755         user:
8756           type: string
8757         secret:
8758           type: string
8759         cacert:
8760           type: string
8761         lxd-cloud:
8762           type: string
8763         lxd-credentials:
8764           type: string
8765         k8s-cloud:
8766           type: string
8767         k8s-credentials:
8768           type: string
8769         model-config:
8770           type: object
8771           additionalProperties: true
8772     ArrayOfVcaInfo:
8773       type: array
8774       items:
8775         $ref: '#/components/schemas/VcaInfo'
8776     CreateVcaRequest:
8777       type: object
8778       properties:
8779         schema_version:
8780           type: string
8781           format: X.Y[.Z]
8782         schema_type:
8783           type: string
8784         name:
8785           type: string
8786         description:
8787           type: string
8788         endpoints:
8789           type: string
8790         user:
8791           type: string
8792         secret:
8793           type: string
8794         cacert:
8795           type: string
8796         lxd-cloud:
8797           type: string
8798         lxd-credentials:
8799           type: string
8800         k8s-cloud:
8801           type: string
8802         k8s-credentials:
8803           type: string
8804         model-config:
8805           type: object
8806           additionalProperties: true
8807       required:
8808         - name
8809         - endpoints
8810         - user
8811         - secret
8812         - cacert
8813         - lxd-cloud
8814         - lxd-credentials
8815         - k8s-cloud
8816         - k8s-credentials
8817       additionalProperties: false
8818     EditVcaRequest:
8819       type: object
8820       properties:
8821         name:
8822           type: string
8823         description:
8824           type: string
8825         endpoints:
8826           type: string
8827         user:
8828           type: string
8829         secret:
8830           type: string
8831         cacert:
8832           type: string
8833         lxd-cloud:
8834           type: string
8835         lxd-credentials:
8836           type: string
8837         k8s-cloud:
8838           type: string
8839         k8s-credentials:
8840           type: string
8841         model-config:
8842           type: object
8843           additionalProperties: true
8844       additionalProperties: false
8845     K8sRepoType:
8846       type: string
8847       enum:
8848         - chart
8849         - bundle
8850     K8sRepoInfo:
8851       type: object
8852       properties:
8853         _id:
8854           type: string
8855           format: uuid
8856         name:
8857           type: string
8858         description:
8859           type: string
8860         type:
8861           $ref: '#/components/schemas/K8sRepoType'
8862         url:
8863           type: string
8864           format: uri
8865         username:
8866           type: string
8867           description: repository username
8868         password:
8869           type: string
8870           description: repository password
8871         ca-file:
8872           type: string
8873           description: verify certificates of HTTPS-enabled servers using this CA bundle
8874         cert-file:
8875           type: string
8876           description: identify HTTPS client using this SSL certificate file
8877         skip-tls-verify:
8878           type: boolean
8879           description: skip tls certificate checks for the repository
8880         key-file:
8881           type: string
8882           description: identify HTTPS client using this SSL key file
8883     ArrayOfK8sRepoInfo:
8884       type: array
8885       items:
8886         $ref: '#/components/schemas/K8sRepoInfo'
8887     CreateK8sRepoRequest:
8888       type: object
8889       properties:
8890         name:
8891           type: string
8892         description:
8893           type: string
8894         type:
8895           $ref: '#/components/schemas/K8sRepoType'
8896         url:
8897           type: string
8898           format: uri
8899       required:
8900         - name
8901         - type
8902         - url
8903       additionalProperties: false
8904     NslcmSubscriptionResponse:
8905       type: object
8906       properties:
8907         id:
8908           type: string
8909           format: uuid
8910         filter:
8911           type: object
8912         CallbackUri:
8913           type: string
8914           format: uri
8915         _links:
8916           type: object
8917     NslcmSubscriptionInfo:
8918       type: object
8919       properties:
8920         _id:
8921           type: string
8922           format: uuid
8923         _admin:
8924           type: object
8925         schema_version:
8926           type: string
8927           format: 'X.Y[.Z]'
8928         CallbackUri:
8929           type: string
8930           format: uri
8931         filter:
8932           type: object
8933         authentication:
8934           $ref: '#/components/schemas/Authenticationschema'
8935     ArrayOfNslcmSubscriptionInfo:
8936       type: array
8937       items:
8938         $ref: '#/components/schemas/NslcmSubscriptionInfo'
8939     NsInstanceSubscriptionFilter:
8940       description: |
8941         used to identify the network service
8942       type: object
8943       oneOf:
8944         - $ref: '#/components/schemas/nsdIds'
8945         - $ref: '#/components/schemas/vnfdIds'
8946         - $ref: '#/components/schemas/pnfdIds'
8947         - $ref: '#/components/schemas/nsInstanceIds'
8948         - $ref: '#/components/schemas/nsInstanceNames'
8949     nsdIds:
8950       type: array
8951       items:
8952         type: string
8953     vnfdIds:
8954       type: array
8955       items:
8956         type: string
8957     pnfdIds:
8958       type: array
8959       items:
8960         type: string
8961     nsInstanceIds:
8962       type: array
8963       items:
8964         type: string
8965     nsInstanceNames:
8966       type: array
8967       items:
8968         type: string
8969     Nslcmsubschema:
8970       type: object
8971       properties:
8972         nsInstanceSubscriptionFilter:
8973            $ref: '#/components/schemas/NsInstanceSubscriptionFilter'
8974         notificationTypes:
8975           description: |
8976             If NsLcmOperationOccurrenceNotification is selected then at least operationTypes or states is required. If NsLcmOperationOccurrenceNotification is selected then at least nsComponentTypes, lcmOpName and lcmOpOccStatus is required
8977           type: array
8978           items:
8979             type: string
8980             enum:
8981               - NsIdentifierCreationNotification
8982               - NsIdentifierDeletionNotification
8983               - NsLcmOperationOccurrenceNotification
8984               - NsChangeNotification
8985         operationTypes:
8986           type: array
8987           items:
8988             type: string
8989             enum:
8990               - INSTANTIATE
8991               - SCALE
8992               - TERMINATE
8993               - UPDATE
8994               - HEAL
8995         operationStates:
8996           type: array
8997           items:
8998             type: string
8999             enum:
9000               - PROCESSING
9001               - COMPLETED
9002               - PARTIALLY_COMPLETED
9003               - FAILED
9004               - FAILED_TEMP
9005               - ROLLING_BACK
9006               - ROLLED_BACK
9007         nsComponentTypes:
9008           type: array
9009           items:
9010             type: string
9011             enum:
9012               - VNF
9013               - NS
9014               - PNF
9015         lcmOpNameImpactingNsComponent:
9016           type: array
9017           items:
9018             type: string
9019             enum:
9020               - VNF_INSTANTIATE
9021               - VNF_SCALE
9022               - VNF_SCALE_TO_LEVEL
9023               - VNF_CHANGE_FLAVOUR
9024               - VNF_TERMINATE
9025               - VNF_HEAL
9026               - VNF_OPERATE
9027               - VNF_CHANGE_EXT_CONN
9028               - VNF_MODIFY_INFO
9029               - NS_INSTANTIATE
9030               - NS_SCALE
9031               - NS_UPDATE
9032               - NS_TERMINATE
9033               - NS_HEAL
9034         lcmOpOccStatusImpactingNsComponent:
9035           type: array
9036           items:
9037             type: string
9038             enum:
9039               - START
9040               - COMPLETED
9041               - PARTIALLY_COMPLETED
9042               - FAILED
9043               - ROLLED_BACK
9044     Authenticationschema:
9045       type: object
9046       properties:
9047         authType:
9048           type: string
9049           enum:
9050             - basic
9051         paramsBasic:
9052           type: object
9053           properties:
9054             userName:
9055               type: string
9056             password:
9057               type: string
9058     NslcmSubscriptionRequest:
9059       type: object
9060       properties:
9061         filter:
9062           $ref: '#/components/schemas/Nslcmsubschema'
9063         CallbackUri:
9064           type: string
9065           format: uri
9066         authentication:
9067           $ref: '#/components/schemas/Authenticationschema'
9068       required:
9069         - CallbackUri
9070   # END SCHEMAS
9071
9072   requestBodies:
9073     CreateNsdInfoRequest:
9074       content:
9075         application/json:
9076           schema:
9077             $ref: '#/components/schemas/CreateNsdInfoRequest'
9078         application/yaml:
9079           schema:
9080             $ref: '#/components/schemas/CreateNsdInfoRequest'
9081     NsdInfoModifications:
9082       content:
9083         application/json:
9084           schema:
9085             $ref: '#/components/schemas/NsdInfoModifications'
9086         application/yaml:
9087           schema:
9088             $ref: '#/components/schemas/NsdInfoModifications'
9089     AlarmInfoModifications:
9090       content:
9091         application/json:
9092           schema:
9093             $ref: '#/components/schemas/AlarmInfoModifications'
9094         application/yaml:
9095           schema:
9096             $ref: '#/components/schemas/AlarmInfoModifications'
9097     NsDescriptor:
9098       content:
9099         text/plain:
9100           schema:
9101             $ref: '#/components/schemas/NsDescriptor'
9102     NsPackage:
9103       content:
9104         application/zip:
9105           schema:
9106             $ref: '#/components/schemas/NsPackage'
9107     CreateVnfPkgInfoRequest:
9108       content:
9109         application/json:
9110           schema:
9111             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
9112         application/yaml:
9113           schema:
9114             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
9115     VnfPkgInfoModifications:
9116       content:
9117         application/json:
9118           schema:
9119             $ref: '#/components/schemas/VnfPkgInfoModifications'
9120         application/yaml:
9121           schema:
9122             $ref: '#/components/schemas/VnfPkgInfoModifications'
9123     VnfPackage:
9124       content:
9125         application/zip:
9126           schema:
9127             $ref: '#/components/schemas/VnfPackage'
9128     VnfDescriptor:
9129       content:
9130         text/plain:
9131           schema:
9132             $ref: '#/components/schemas/VnfDescriptor'
9133     # CreateNsRequest:
9134       # Substituted by InstantiateNsRequest
9135     InstantiateNsRequest:
9136       content:
9137         application/json:
9138           schema:
9139             $ref: '#/components/schemas/InstantiateNsRequest'
9140         application/yaml:
9141           schema:
9142             $ref: '#/components/schemas/InstantiateNsRequest'
9143     HealNsRequest:
9144       content:
9145         application/json:
9146           schema:
9147             $ref: '#/components/schemas/HealNsRequest'
9148         application/yaml:
9149           schema:
9150             $ref: '#/components/schemas/HealNsRequest'
9151     NSinstanceMigrateRequest:
9152       content:
9153         application/json:
9154           schema:
9155             $ref: '#/components/schemas/NSinstanceMigrateRequest'
9156         application/yaml:
9157           schema:
9158             $ref: '#/components/schemas/NSinstanceMigrateRequest'
9159     ScaleNsRequest:
9160       content:
9161         application/json:
9162           schema:
9163             $ref: '#/components/schemas/ScaleNsRequest'
9164         application/yaml:
9165           schema:
9166             $ref: '#/components/schemas/ScaleNsRequest'
9167     TerminateNsRequest:
9168       content:
9169         application/json:
9170           schema:
9171             $ref: '#/components/schemas/TerminateNsRequest'
9172         application/yaml:
9173           schema:
9174             $ref: '#/components/schemas/TerminateNsRequest'
9175     UpdateNsRequest:
9176       content:
9177         application/json:
9178           schema:
9179             $ref: '#/components/schemas/UpdateNsRequest'
9180         application/yaml:
9181           schema:
9182             $ref: '#/components/schemas/UpdateNsRequest'
9183     # CreateNSinstanceContentRequest:
9184       # Substituted by InstantiateNsRequest
9185     CreateNstInfoRequest:
9186       content:
9187         application/json:
9188           schema:
9189             $ref: '#/components/schemas/CreateNstInfoRequest'
9190         application/yaml:
9191           schema:
9192             $ref: '#/components/schemas/CreateNstInfoRequest'
9193     NetSliceTemplate:
9194       content:
9195         text/plain:
9196           schema:
9197             $ref: '#/components/schemas/NetSliceTemplate'
9198     NetSlicePackage:
9199       content:
9200         application/zip:
9201           schema:
9202             $ref: '#/components/schemas/NetSlicePackage'
9203     NstInfoModifications:
9204       content:
9205         application/json:
9206           schema:
9207             $ref: '#/components/schemas/NstInfoModifications'
9208         application/yaml:
9209           schema:
9210             $ref: '#/components/schemas/NstInfoModifications'
9211     # CreateNsiRequest:
9212       # Substituted by InstantiateNsiRequest
9213     InstantiateNsiRequest:
9214       content:
9215         application/json:
9216           schema:
9217             $ref: '#/components/schemas/InstantiateNsiRequest'
9218         application/yaml:
9219           schema:
9220             $ref: '#/components/schemas/InstantiateNsiRequest'
9221     TerminateNsiRequest:
9222       content:
9223         application/json:
9224           schema:
9225             $ref: '#/components/schemas/TerminateNsiRequest'
9226         application/yaml:
9227           schema:
9228             $ref: '#/components/schemas/TerminateNsiRequest'
9229     NsiActionRequest:
9230       content:
9231         application/json:
9232           schema:
9233             $ref: '#/components/schemas/NsiActionRequest'
9234         application/yaml:
9235           schema:
9236             $ref: '#/components/schemas/NsiActionRequest'
9237     # CreateNsiContentRequest:
9238       # Substituted by InstantiateNsiRequest
9239     CreateTokenRequest:
9240       content:
9241         application/json:
9242           schema:
9243             $ref: '#/components/schemas/CreateTokenRequest'
9244         application/yaml:
9245           schema:
9246             $ref: '#/components/schemas/CreateTokenRequest'
9247     CreateUserRequest:
9248       content:
9249         application/json:
9250           schema:
9251             $ref: '#/components/schemas/CreateUserRequest'
9252         application/yaml:
9253           schema:
9254             $ref: '#/components/schemas/CreateUserRequest'
9255     EditUserRequest:
9256       content:
9257         application/json:
9258           schema:
9259             $ref: '#/components/schemas/EditUserRequest'
9260         application/yaml:
9261           schema:
9262             $ref: '#/components/schemas/EditUserRequest'
9263     CreateProjectRequest:
9264       content:
9265         application/json:
9266           schema:
9267             $ref: '#/components/schemas/CreateProjectRequest'
9268         application/yaml:
9269           schema:
9270             $ref: '#/components/schemas/CreateProjectRequest'
9271     EditProjectRequest:
9272       content:
9273         application/json:
9274           schema:
9275             $ref: '#/components/schemas/EditProjectRequest'
9276         application/yaml:
9277           schema:
9278             $ref: '#/components/schemas/EditProjectRequest'
9279     CreateRoleRequest:
9280       content:
9281         application/json:
9282           schema:
9283             $ref: '#/components/schemas/CreateRoleRequest'
9284         application/yaml:
9285           schema:
9286             $ref: '#/components/schemas/CreateRoleRequest'
9287     EditRoleRequest:
9288       content:
9289         application/json:
9290           schema:
9291             $ref: '#/components/schemas/EditRoleRequest'
9292         application/yaml:
9293           schema:
9294             $ref: '#/components/schemas/EditRoleRequest'
9295     CreateVimRequest:
9296       content:
9297         application/json:
9298           schema:
9299             $ref: '#/components/schemas/CreateVimRequest'
9300         application/yaml:
9301           schema:
9302             $ref: '#/components/schemas/CreateVimRequest'
9303     EditVimRequest:
9304       content:
9305         application/json:
9306           schema:
9307             $ref: '#/components/schemas/EditVimRequest'
9308         application/yaml:
9309           schema:
9310             $ref: '#/components/schemas/EditVimRequest'
9311     CreateWimRequest:
9312       content:
9313         application/json:
9314           schema:
9315             $ref: '#/components/schemas/CreateWimRequest'
9316         application/yaml:
9317           schema:
9318             $ref: '#/components/schemas/CreateWimRequest'
9319     EditWimRequest:
9320       content:
9321         application/json:
9322           schema:
9323             $ref: '#/components/schemas/EditWimRequest'
9324         application/yaml:
9325           schema:
9326             $ref: '#/components/schemas/EditWimRequest'
9327     CreateSdnRequest:
9328       content:
9329         application/json:
9330           schema:
9331             $ref: '#/components/schemas/CreateSdnRequest'
9332         application/yaml:
9333           schema:
9334             $ref: '#/components/schemas/CreateSdnRequest'
9335     EditSdnRequest:
9336       content:
9337         application/json:
9338           schema:
9339             $ref: '#/components/schemas/EditSdnRequest'
9340         application/yaml:
9341           schema:
9342             $ref: '#/components/schemas/EditSdnRequest'
9343     CreatePduRequest:
9344       content:
9345         application/json:
9346           schema:
9347             $ref: '#/components/schemas/CreatePduRequest'
9348         application/yaml:
9349           schema:
9350             $ref: '#/components/schemas/CreatePduRequest'
9351     EditPduRequest:
9352       content:
9353         application/json:
9354           schema:
9355             $ref: '#/components/schemas/EditPduRequest'
9356         application/yaml:
9357           schema:
9358             $ref: '#/components/schemas/EditPduRequest'
9359     CreateK8sClusterRequest:
9360       content:
9361         application/json:
9362           schema:
9363             $ref: '#/components/schemas/CreateK8sClusterRequest'
9364         application/yaml:
9365           schema:
9366             $ref: '#/components/schemas/CreateK8sClusterRequest'
9367     EditK8sClusterRequest:
9368       content:
9369         application/json:
9370           schema:
9371             $ref: '#/components/schemas/EditK8sClusterRequest'
9372         application/yaml:
9373           schema:
9374             $ref: '#/components/schemas/EditK8sClusterRequest'
9375     CreateVcaRequest:
9376       content:
9377         application/json:
9378           schema:
9379             $ref: '#/components/schemas/CreateVcaRequest'
9380         application/yaml:
9381           schema:
9382             $ref: '#/components/schemas/CreateVcaRequest'
9383     EditVcaRequest:
9384       content:
9385         application/json:
9386           schema:
9387             $ref: '#/components/schemas/EditVcaRequest'
9388         application/yaml:
9389           schema:
9390             $ref: '#/components/schemas/EditVcaRequest'
9391     CreateK8sRepoRequest:
9392       content:
9393         application/json:
9394           schema:
9395             $ref: '#/components/schemas/CreateK8sRepoRequest'
9396         application/yaml:
9397           schema:
9398             $ref: '#/components/schemas/CreateK8sRepoRequest'
9399     NslcmSubscriptionRequest:
9400       content:
9401         application/json:
9402           schema:
9403             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9404         application/yaml:
9405           schema:
9406             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9407   # END REQUEST BODIES
9408
9409   securitySchemes:
9410     bearerAuth:
9411       type: http
9412       scheme: bearer