Feature 10904: Make all deployment methods optional for K8s cluster
[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         changeVnfPackageData:
7186           type: object
7187           properties:
7188             vnfInstanceId:
7189               type: string
7190             vnfdId:
7191               type: string
7192           required:
7193             - vnfInstanceId
7194             - vnfdId
7195         removeVnfInstanceId:
7196           type: string
7197         modifyVnfInfoData:
7198           type: object
7199           properties:
7200             vnfInstanceId:
7201               type: string
7202             vnfdId:
7203               type: string
7204           required:
7205             - vnfInstanceId
7206             - vnfdId
7207       required:
7208         - updateType
7209       additionalProperties: false
7210     # CreateNSinstanceContentRequest:
7211       # Substituted by InstantiateNsRequest
7212     CreateNSinstanceContentResponse:
7213       type: object
7214       properties:
7215         id:
7216           type: string
7217           format: uuid
7218         nslcmop_id:
7219           type: string
7220           format: uuid
7221     NsLcmOpOcc:
7222       type: object
7223       properties:
7224         _id:
7225           type: string
7226           format: uuid
7227         id:
7228           type: string
7229           format: uuid
7230         lcmOperationType:
7231           type: string
7232         nsInstanceId:
7233           type: string
7234           format: uuid
7235         isAutomaticInvocation:
7236           type: boolean
7237         isCancelPending:
7238           type: boolean
7239         startTime:
7240           type: number
7241           format: float
7242         statusEnteredTime:
7243           type: number
7244           format: float
7245         operationParams:
7246           type: object
7247           properties:
7248             nsName:
7249               type: string
7250             nsdId:
7251               type: string
7252               format: uuid
7253             vimAccountId:
7254               type: string
7255               format: uuid
7256             nsInstanceId:
7257               type: string
7258               format: uuid
7259             lcmOperationType:
7260               type: string
7261         operationState:
7262           type: string
7263         detailed-status:
7264           type: string
7265         links:
7266           type: object
7267           properties:
7268             self:
7269               type: string
7270               format: path   # uri?
7271             nsInstance:
7272               type: string
7273               format: path   # uri?
7274     ArrayOfNsLcmOpOcc:
7275       type: array
7276       items:
7277         $ref: '#/components/schemas/NsLcmOpOcc'
7278     VnfInstanceInfo:
7279       description: |
7280         VNF Instance Information
7281         Only generic fields (_id, id) are described
7282         For a full specification of the VNF Instance see:
7283         http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
7284       type: object
7285       properties:
7286         _id:
7287           type: string
7288           format: uuid
7289         id:
7290           type: string
7291           format: uuid
7292     ArrayOfVnfInstanceInfo:
7293       type: array
7294       items:
7295         $ref: '#/components/schemas/VnfInstanceInfo'
7296     NstInfo:
7297       description: |
7298         NetSlice Template Information
7299         Only generic fields (_id, id, name) are described
7300         For a full specification of the NetSlice Template see:
7301         http://osm-download.etsi.org/ftp/osm-doc/nst.html
7302       type: object
7303       properties:
7304         _id:
7305           description: NetSlice Template Identifier
7306           type: string
7307           format: uuid
7308         id:
7309           description: Human readable NetSlice Template Identifier
7310           type: string
7311         name:
7312           description: Human readable name of the NetSlice Template
7313           type: string
7314     ArrayOfNstInfo:
7315       type: array
7316       items:
7317         $ref: '#/components/schemas/NstInfo'
7318     CreateNstInfoRequest:
7319       # A free list of key:value pairs
7320       type: object
7321       additionalProperties: true
7322     NetSliceTemplate:
7323       type: string
7324       format: yaml|json
7325     NetSlicePackage:
7326       type: string
7327       format: binary
7328     NstInfoModifications:
7329       description: |
7330         NetSlice Template Information
7331         Only generic fields (id, name) are described
7332         For a full specification of the NetSlice Template see:
7333         http://osm-download.etsi.org/ftp/osm-doc/nst.html
7334       type: object
7335       properties:
7336         id:
7337           description: NST Identifier
7338           type: string
7339         name:
7340           description: NST Name
7341           type: string
7342     NetSliceInstance:
7343       description: |
7344         NetSlice Instance Information
7345         Only generic fields (_id, id, name, description) are described
7346         For a full specification of the NetSlice Instance see:
7347         http://osm-download.etsi.org/ftp/osm-doc/nsi.html
7348       type: object
7349       properties:
7350         _id:
7351           description: Identifier of the NetSlice instance.
7352           type: string
7353           format: uuid
7354         id:
7355           description: Identifier of the NetSlice instance.
7356           type: string
7357           format: uuid
7358         name:
7359           description: Human readable name of the NetSlice instance.
7360           type: string
7361         description:
7362           description: Human readable description of the NetSlice instance.
7363           type: string
7364       required:
7365         - _id
7366         - id
7367         - name
7368     ArrayOfNetSliceInstance:
7369       type: array
7370       items:
7371         $ref: '#/components/schemas/NetSliceInstance'
7372     Alarm:
7373       description: |
7374         Alarm Information
7375       type: object
7376       properties:
7377         _id:
7378           description: Identifier of the Alarm.
7379           type: string
7380           format: uuid
7381         id:
7382           description: Identifier of the Alarm.
7383           type: string
7384           format: uuid
7385         metric:
7386           description: Alarm metric.
7387           type: string
7388         threshold:
7389           description: Threshold value of the Alarm.
7390           type: number
7391           format: float
7392         operation:
7393           description: Operation to be applied.
7394           type: string
7395         action:
7396           description: Action to be taken.
7397           type: string
7398         status:
7399           description: Current status of the alarm.
7400           type: string
7401       required:
7402         - _id
7403         - id
7404         - metric
7405         - threshold
7406         - operation
7407     ArrayOfAlarm:
7408       type: array
7409       items:
7410         $ref: '#/components/schemas/Alarm'
7411     # CreateNsiRequest:
7412       # Substituted by InstantiateNsiRequest
7413     InstantiateNsiRequest:
7414       type: object
7415       properties:
7416         nsiName:
7417           description: |
7418             Human-readable name of the NetSlice instance to be created.
7419           type: string
7420         nstId:
7421           description: |
7422             Identifier of the NST that defines the NetSlice instance to be created.
7423           type: string
7424           format: uuid
7425         vimAccountId:
7426           description: |
7427             Identifier of the VIM Account where the NetSlice instance shall be created.
7428           type: string
7429           format: uuid
7430         lcmOperationType:
7431           type: string
7432         netsliceInstanceId:
7433           type: string
7434           format: uuid
7435         nsiDescription:
7436           type: string
7437           nullable: true
7438         ssh_keys:
7439           type: string
7440         nsi_id:
7441           type: string
7442           format: uuid
7443         additionalParamsForNsi:
7444           type: object
7445           additionalProperties: true
7446         netslice-subnet:
7447           type: array
7448           items:
7449             type: object
7450             properties:
7451               id:
7452                 type: string
7453               nsName:
7454                 type: string
7455               nsdId:
7456                 type: string
7457                 format: uuid
7458               vimAccountId:
7459                 type: string
7460                 format: uuid
7461               lcmOperationType:
7462                 type: string
7463               nsInstanceId:
7464                 type: string
7465                 format: uuid
7466               netsliceInstanceId:
7467                 type: string
7468                 format: uuid
7469               nsDescription:
7470                 type: string
7471                 nullable: true
7472               wimAccountId:
7473                 oneOf:
7474                   - type: string
7475                   - type: boolean
7476                 nullable: true
7477               additionalParamsForNs:
7478                 type: object
7479                 additionalProperties: true
7480               additionalParamsForVnf: *additionalparamsforvnf
7481               ssh_keys:
7482                 type: array
7483                 items:
7484                   type: string
7485               nsr_id:
7486                 type: string
7487                 format: uuid
7488               vduImage:
7489                 type: string
7490               vnf:
7491                 type: array
7492                 items:
7493                   type: object
7494                   properties:
7495                     member-vnf-index:
7496                       type: string
7497                     vimAccountId:
7498                       type: string
7499                       format: uuid
7500                     vdu:
7501                       type: array
7502                       items:
7503                         type: object
7504                         properties:
7505                           id:
7506                             type: string
7507                           volume:
7508                             type: array
7509                             items:
7510                               type: object
7511                               properties:
7512                                 name:
7513                                   type: string
7514                                 vim-volume-id:
7515                                   type: string
7516                               required:
7517                                 - name
7518                                 - vim-volume-id
7519                               additionalProperties: false
7520                             minItems: 1
7521                           interface:
7522                             type: array
7523                             items:
7524                               type: object
7525                               properties:
7526                                 name:
7527                                   type: string
7528                                 ip-address:
7529                                   type: string
7530                                   format: ipv4
7531                                 mac-address:
7532                                   type: string
7533                                   format: mac_address
7534                                 floating-ip-required:
7535                                   type: boolean
7536                               required:
7537                                 - name
7538                               additionalProperties: false
7539                             minItems: 1
7540                         required:
7541                           - id
7542                         additionalProperties: false
7543                       minItems: 1
7544                     internal-vld:
7545                       type: array
7546                       items:
7547                         type: object
7548                         properties:
7549                           name:
7550                             type: string
7551                           vim-network-name:
7552                             type: string
7553                           vim-network-id:
7554                             type: string
7555                           ip-profile:
7556                             type: object
7557                             properties:
7558                               ip-version:
7559                                 type: string
7560                                 enum:
7561                                   - ipv4
7562                                   - ipv6
7563                               subnet-address:
7564                                 type: string
7565                                 format: ip_prefix
7566                                 nullable: true
7567                               gateway-address:
7568                                 type: string
7569                                 format: ipv4
7570                                 nullable: true
7571                               dns-server:
7572                                 type: array
7573                                 items:
7574                                   type: object
7575                                   properties:
7576                                     address:
7577                                       type: string
7578                                       format: ipv4
7579                                   required:
7580                                     - address
7581                                   additionalProperties: false
7582                                 minItems: 1
7583                                 nullable: true
7584                               dhcp-params:
7585                                 type: object
7586                                 properties:
7587                                   enabled:
7588                                     type: boolean
7589                                   count:
7590                                     type: integer
7591                                     minimum: 1
7592                                   start-address:
7593                                     type: string
7594                                     format: ipv4
7595                                 additionalProperties: false
7596                                 nullable: true
7597                             additionalProperties: false
7598                           provider-network:
7599                             type: object
7600                             properties:
7601                               physical-network:
7602                                 type: string
7603                               segmentation-id:
7604                                 type: string
7605                             additionalProperties: false
7606                           internal-connection-point:
7607                             type: array
7608                             items:
7609                               type: object
7610                               properties:
7611                                 id-ref:
7612                                   type: string
7613                                 ip-address:
7614                                   type: string
7615                                   format: ipv4
7616                               required:
7617                                 - id-ref
7618                               minProperties: 2
7619                               additionalProperties: False
7620                             minItems: 1
7621                         required:
7622                           - name
7623                         minProperties: 2
7624                         additionalProperties: false
7625                       minItems: 1
7626                   required:
7627                     - member-vnf-index
7628                   minProperties: 2
7629                   additionalProperties: false
7630                 minItems: 1
7631               vld:
7632                 type: array
7633                 items:
7634                   type: object
7635                   properties:
7636                     name:
7637                       type: string
7638                     vim-network-name:
7639                       oneOf:
7640                         - type: string
7641                         - type: object
7642                     vim-network-id:
7643                       oneOf:
7644                         - type: string
7645                         - type: object
7646                     ns-net:
7647                       type: object
7648                       additionalProperties: true
7649                     wimAccountId:
7650                       oneOf:
7651                         - type: string
7652                         - type: boolean
7653                       nullable: true
7654                     ip-profile:
7655                       type: object
7656                       additionalProperties: true
7657                     provider-network:
7658                       type: object
7659                       properties:
7660                         physical-network:
7661                           type: string
7662                         segmentation-id:
7663                           type: string
7664                       additionalProperties: false
7665                     vnfd-connection-point-ref:
7666                       type: array
7667                       items:
7668                         type: object
7669                         properties:
7670                           member-vnf-index-ref:
7671                             type: string
7672                           vnfd-connection-point-ref:
7673                             type: string
7674                           ip-address:
7675                             type: string
7676                             format: ipv4
7677                         required:
7678                           - member-vnf-index-ref
7679                           - vnfd-connection-point-ref
7680                         minProperties: 3
7681                         additionalProperties: false
7682                       minItems: 1
7683                   required:
7684                     - name
7685                   additionalProperties: false
7686                 minItems: 1
7687             additionalProperties: false
7688           minItems: 1
7689         netslice-vld:
7690           type: array
7691           items:
7692             type: object
7693             properties:
7694               name:
7695                 type: string
7696               vim-network-name:
7697                 oneOf:
7698                   - type: string
7699                   - type: object
7700               vim-network-id:
7701                 oneOf:
7702                   - type: string
7703                   - type: object
7704               ip-profile:
7705                 type: object
7706                 additionalProperties: true
7707             required:
7708               - name
7709             additionalProperties: false
7710           minItems: 1
7711       required:
7712         - nsiName
7713         - nstId
7714         - vimAccountId
7715       additionalProperties: false
7716     TerminateNsiRequest:
7717       type: object
7718       properties:
7719         terminationTime:
7720           description: |
7721             Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
7722             automatically at this timestamp. Cardinality "0" indicates the NSI termination
7723             takes place immediately.
7724           type: string
7725           format: date-time
7726     NsiActionRequest:
7727       type: object
7728       properties:
7729         primitive:
7730           type: string
7731         primitive_params:
7732           $ref: '#/components/schemas/KeyValuePairs'
7733         lcmOperationType:
7734           type: string
7735         netsliceInstanceId:
7736           type: string
7737           format: uuid
7738       required:
7739         - primitive
7740         - primitive_params
7741     # CreateNsiContentRequest:
7742       # Substituted by InstantiateNsiRequest
7743     CreateNsiContentResponse:
7744       type: object
7745       properties:
7746         id:
7747           type: string
7748           format: uuid
7749         nsilcmop_id:
7750           type: string
7751           format: uuid
7752     NsiLcmOpOcc:
7753       type: object
7754       properties:
7755         _id:
7756           type: string
7757           format: uuid
7758         id:
7759           type: string
7760           format: uuid
7761         lcmOperationType:
7762           type: string
7763         netsliceInstanceId:
7764           type: string
7765           format: uuid
7766         isAutomaticInvocation:
7767           type: boolean
7768         isCancelPending:
7769           type: boolean
7770         startTime:
7771           type: number
7772           format: float
7773         statusEnteredTime:
7774           type: number
7775           format: float
7776         operationParams:
7777           type: object
7778           properties:
7779             nsiName:
7780               type: string
7781             nstId:
7782               type: string
7783               format: uuid
7784             vimAccountId:
7785               type: string
7786               format: uuid
7787             netsliceInstanceId:
7788               type: string
7789               format: uuid
7790             lcmOperationType:
7791               type: string
7792             nslcmops_ids:
7793               type: array
7794               items:
7795                 type: string
7796                 format: uuid
7797         operationState:
7798           type: string
7799         detailed-status:
7800           type: string
7801         links:
7802           type: object
7803           properties:
7804             self:
7805               type: string
7806               format: path   # uri?
7807             netsliceInstanceId:
7808               type: string
7809               format: path   # uri?
7810     ArrayOfNsiLcmOpOcc:
7811       type: array
7812       items:
7813         $ref: '#/components/schemas/NsiLcmOpOcc'
7814     TokenInfo:
7815       type: object
7816       properties:
7817         _id:
7818           type: string
7819         id:
7820           type: string
7821         admin:
7822           type: boolean
7823         project_id:
7824           type: string
7825           format: uuid
7826         user_id:
7827           type: string
7828           format: uuid
7829         project_name:
7830           type: string
7831         username:
7832           type: string
7833         issued_at:
7834           type: number
7835           format: float
7836         expires:
7837           type: number
7838           format: float
7839         remote_host:
7840           type: string
7841           format: ipv4
7842         remote_port:
7843           type: integer
7844         roles:
7845           type: array
7846           items:
7847             type: object
7848             properties:
7849               id:
7850                 type: string
7851                 format: uuid
7852               name:
7853                 type: string
7854     PasswordExpiryInfo:
7855       type: object
7856       properties:
7857         id:
7858           type: string
7859         message:
7860           type: string
7861         user_id:
7862           type: string
7863           format: uuid
7864     ArrayOfTokenInfo:
7865       type: array
7866       items:
7867         $ref: '#/components/schemas/TokenInfo'
7868     CreateTokenRequest:
7869       type: object
7870       properties:
7871         username:
7872           type: string
7873         password:
7874           type: string
7875         project_id:
7876           type: string
7877       required:
7878         - username
7879         - password
7880     UserInfo:
7881       type: object
7882       properties:
7883         _id:
7884           type: string
7885           format: uuid
7886         username:
7887           type: string
7888         password:
7889           type: string
7890         project_role_mappings:
7891           type: array
7892           items:
7893             type: object
7894             properties:
7895               project:
7896                 type: string
7897                 format: uuid
7898               role:
7899                 type: string
7900                 format: uuid
7901               project_name:
7902                 type: string
7903               role_name:
7904                 type: string
7905         projects:
7906           type: array
7907           items:
7908             type: string
7909     ArrayOfUserInfo:
7910       type: array
7911       items:
7912         $ref: '#/components/schemas/UserInfo'
7913     ProjectRoleMappings:
7914       type: array
7915       items:
7916         type: object
7917         properties:
7918           project:
7919             type: string
7920           role:
7921             type: string
7922       required:
7923         - project
7924         - role
7925       additionalProperties: false
7926     ProjectRoleMappingsOpt:
7927       type: array
7928       items:
7929         type: object
7930         properties:
7931           project:
7932             type: string
7933           role:
7934             type: string
7935       required:
7936         - project
7937       additionalProperties: false
7938     CreateUserRequest:
7939       type: object
7940       properties:
7941         username:
7942           type: string
7943         password:
7944           type: string
7945         projects:
7946           type: array
7947           items:
7948             type: string
7949         project_role_mappings:
7950           $ref: '#/components/schemas/ProjectRoleMappings'
7951       required:
7952         - username
7953         - password
7954       additionalProperties: false
7955     ShortNameList:
7956       type: array
7957       items:
7958         type: string
7959     ArrayEditionSchema:
7960       type: object
7961       additionalProperties: true
7962       minProperties: 1
7963       description: |
7964         Array edition keys must start with '$'
7965         and follow the syntax defined in: https://osm.etsi.org/wikipub/index.php/NBI_API_Description
7966     EditUserRequest:
7967       type: object
7968       properties:
7969         username:
7970           type: string
7971         password:
7972           type: string
7973         projects:
7974           oneOf:
7975             - $ref: '#/components/schemas/ShortNameList'
7976             - $ref: '#/components/schemas/ArrayEditionSchema'
7977         project_role_mappings:
7978           $ref: '#/components/schemas/ProjectRoleMappings'
7979         add_project_role_mappings:
7980           $ref: '#/components/schemas/ProjectRoleMappings'
7981         remove_project_role_mappings:
7982           $ref: '#/components/schemas/ProjectRoleMappingsOpt'
7983     QuotasInfo:
7984       type: object
7985       properties:
7986         vnfds:
7987           type: integer
7988           minimum: 0
7989           nullable: false
7990         nsds:
7991           type: integer
7992           minimum: 0
7993           nullable: false
7994         slice_templates:
7995           type: integer
7996           minimum: 0
7997           nullable: false
7998         pduds:
7999           type: integer
8000           minimum: 0
8001           nullable: false
8002         ns_instances:
8003           type: integer
8004           minimum: 0
8005           nullable: false
8006         slice_instances:
8007           type: integer
8008           minimum: 0
8009           nullable: false
8010         vim_accounts:
8011           type: integer
8012           minimum: 0
8013           nullable: false
8014         wim_accounts:
8015           type: integer
8016           minimum: 0
8017           nullable: false
8018         sdn_controllers:
8019           type: integer
8020           minimum: 0
8021           nullable: false
8022         k8sclusters:
8023           type: integer
8024           minimum: 0
8025           nullable: false
8026         vca:
8027           type: integer
8028           minimum: 0
8029           nullable: false
8030         k8srepos:
8031           type: integer
8032           minimum: 0
8033           nullable: false
8034         osmrepos:
8035           type: integer
8036           minimum: 0
8037           nullable: false
8038       additionalProperties: false
8039     EditQuotasInfo:
8040       type: object
8041       properties:
8042         vnfds:
8043           type: integer
8044           minimum: 0
8045           nullable: true
8046         nsds:
8047           type: integer
8048           minimum: 0
8049           nullable: true
8050         slice_templates:
8051           type: integer
8052           minimum: 0
8053           nullable: true
8054         pduds:
8055           type: integer
8056           minimum: 0
8057           nullable: true
8058         ns_instances:
8059           type: integer
8060           minimum: 0
8061           nullable: true
8062         slice_instances:
8063           type: integer
8064           minimum: 0
8065           nullable: true
8066         vim_accounts:
8067           type: integer
8068           minimum: 0
8069           nullable: true
8070         wim_accounts:
8071           type: integer
8072           minimum: 0
8073           nullable: true
8074         sdn_controllers:
8075           type: integer
8076           minimum: 0
8077           nullable: true
8078         k8sclusters:
8079           type: integer
8080           minimum: 0
8081           nullable: true
8082         vca:
8083           type: integer
8084           minimum: 0
8085           nullable: true
8086         k8srepos:
8087           type: integer
8088           minimum: 0
8089           nullable: true
8090         osmrepos:
8091           type: integer
8092           minimum: 0
8093           nullable: true
8094       additionalProperties: false
8095     ProjectInfo:
8096       type: object
8097       properties:
8098         _id:
8099           type: string
8100           format: uuid
8101         name:
8102           type: string
8103         quotas:
8104           $ref: '#/components/schemas/QuotasInfo'
8105     ArrayOfProjectInfo:
8106       type: array
8107       items:
8108         $ref: '#/components/schemas/ProjectInfo'
8109     CreateProjectRequest:
8110       type: object
8111       properties:
8112         name:
8113           type: string
8114         admin:
8115           type: boolean
8116         quotas:
8117           $ref: '#/components/schemas/QuotasInfo'
8118       required:
8119         - name
8120       additionalProperties: false
8121     EditProjectRequest:
8122       type: object
8123       properties:
8124         name:
8125           type: string
8126         admin:
8127           type: boolean
8128         quotas:
8129           $ref: '#/components/schemas/EditQuotasInfo'
8130       additionalProperties: false
8131     PermissionsInfo:
8132       type: object
8133       additionalProperties:
8134         type: boolean
8135         nullable: false
8136       description: |
8137         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
8138         Permission values are either true or false
8139     EditPermissionsInfo:
8140       type: object
8141       additionalProperties:
8142         type: boolean
8143         nullable: true
8144       description: |
8145         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
8146         Permission values are either true, false, or null
8147     RoleInfo:
8148       type: object
8149       properties:
8150         _id:
8151           type: string
8152           format: uuid
8153         name:
8154           type: string
8155         permissions:
8156           $ref: '#/components/schemas/PermissionsInfo'
8157     ArrayOfRoleInfo:
8158       type: array
8159       items:
8160         $ref: '#/components/schemas/RoleInfo'
8161     CreateRoleRequest:
8162       type: object
8163       properties:
8164         name:
8165           type: string
8166         permissions:
8167           $ref: '#/components/schemas/PermissionsInfo'
8168       required:
8169         - name
8170       additionalProperties: false
8171     EditRoleRequest:
8172       type: object
8173       properties:
8174         name:
8175           type: string
8176         permissions:
8177           $ref: '#/components/schemas/EditPermissionsInfo'
8178       additionalProperties: false
8179     VimType:
8180       type: string
8181       enum:
8182         - openvim
8183         - openstack
8184         - vmware
8185         - opennebula
8186         - aws
8187         - azure
8188         - fos
8189     VimInfo:
8190       type: object
8191       properties:
8192         _id:
8193           type: string
8194           format: uuid
8195         schema_version:
8196           type: string
8197           format: X.Y[.Z]
8198         schema_type:
8199           type: string
8200         name:
8201           type: string
8202         description:
8203           type: string
8204         vim:
8205           type: string
8206         datacenter:
8207           type: string
8208         vim_type:
8209           $ref: '#/components/schemas/VimType'
8210         vim_url:
8211           type: string
8212           format: uri
8213         vim_tenant_name:
8214           type: string
8215         vim_user:
8216           type: string
8217         vim_password:
8218           type: string
8219         vca:
8220           type: string
8221           format: uuid
8222         config:
8223           type: object
8224           additionalProperties: true
8225         resources:
8226           type: object
8227     ArrayOfVimInfo:
8228       type: array
8229       items:
8230         $ref: '#/components/schemas/VimInfo'
8231     CreateVimRequest:
8232       type: object
8233       properties:
8234         schema_version:
8235           type: string
8236           format: X.Y[.Z]
8237         schema_type:
8238           type: string
8239         name:
8240           type: string
8241         description:
8242           type: string
8243         vim:
8244           type: string
8245         datacenter:
8246           type: string
8247         vim_type:
8248           $ref: '#/components/schemas/VimType'
8249         vim_url:
8250           type: string
8251           format: uri
8252         vim_tenant_name:
8253           type: string
8254         vim_user:
8255           type: string
8256         vim_password:
8257           type: string
8258         vca:
8259           type: string
8260           format: uuid
8261         config:
8262           type: object
8263           additionalProperties: true
8264         resources:
8265           type: object
8266       required:
8267         - name
8268         - vim_url
8269         - vim_type
8270         - vim_user
8271         - vim_password
8272         - vim_tenant_name
8273       additionalProperties: false
8274     EditVimRequest:
8275       type: object
8276       properties:
8277         name:
8278           type: string
8279         description:
8280           type: string
8281         vim:
8282           type: string
8283         datacenter:
8284           type: string
8285         vim_type:
8286           $ref: '#/components/schemas/VimType'
8287         vim_url:
8288           type: string
8289           format: uri
8290         vim_tenant_name:
8291           type: string
8292         vim_user:
8293           type: string
8294         vim_password:
8295           type: string
8296         vca:
8297           type: string
8298           format: uuid
8299         config:
8300           type: object
8301           additionalProperties: true
8302       additionalProperties: false
8303     ObjectId_plus_OpId:
8304       type: object
8305       properties:
8306         id:
8307           type: string
8308           format: uuid
8309         op_id:
8310           type: string
8311           format: uuid
8312     OpId:
8313       type: object
8314       properties:
8315         op_id:
8316           type: string
8317           format: uuid
8318     WimType:
8319       type: string
8320       enum:
8321         - onos
8322         - odl
8323         - tapi
8324         - dynpac
8325         - fake
8326     WimInfo:
8327       type: object
8328       properties:
8329         _id:
8330           type: string
8331           format: uuid
8332         schema_version:
8333           type: string
8334           format: X.Y[.Z]
8335         schema_type:
8336           type: string
8337         name:
8338           type: string
8339         description:
8340           type: string
8341         wim:
8342           type: string
8343         wim_type:
8344           $ref: '#/components/schemas/WimType'
8345         wim_url:
8346           type: string
8347           format: uri
8348         user:
8349           type: string
8350         password:
8351           type: string
8352         config:
8353           type: object
8354           additionalProperties: true
8355     ArrayOfWimInfo:
8356       type: array
8357       items:
8358         $ref: '#/components/schemas/WimInfo'
8359     CreateWimRequest:
8360       type: object
8361       properties:
8362         schema_version:
8363           type: string
8364           format: X.Y[.Z]
8365         schema_type:
8366           type: string
8367         name:
8368           type: string
8369         description:
8370           type: string
8371         wim:
8372           type: string
8373         wim_type:
8374           $ref: '#/components/schemas/WimType'
8375         wim_url:
8376           type: string
8377           format: uri
8378         user:
8379           type: string
8380         password:
8381           type: string
8382         config:
8383           type: object
8384           additionalProperties: true
8385       required:
8386         - name
8387         - wim_url
8388         - wim_type
8389       additionalProperties: false
8390     EditWimRequest:
8391       type: object
8392       properties:
8393         name:
8394           type: string
8395         description:
8396           type: string
8397         wim:
8398           type: string
8399         wim_type:
8400           type: string
8401         wim_url:
8402           type: string
8403           format: uri
8404         user:
8405           type: string
8406         password:
8407           type: string
8408         config:
8409           type: object
8410           additionalProperties: true
8411       additionalProperties: false
8412     SdnBasicProperties:
8413       type: object
8414       properties:
8415         name:
8416           type: string
8417         description:
8418           type: string
8419         dpid:
8420           type: string
8421           format: mac_address
8422         ip:
8423           type: string
8424           format: ipv4
8425         port:
8426           type: integer
8427         type:
8428           type: string
8429           enum:
8430             - floodlight
8431             - opendaylight
8432             - onos
8433         version:
8434           type: string
8435         user:
8436           type: string
8437         password:
8438           type: string
8439     SdnExtraProperties:
8440       type: object
8441       properties:
8442         _id:
8443           type: string
8444           format: uuid
8445         schema_version:
8446           type: string
8447           format: X.Y[.Z]
8448     SdnInfo:
8449       allOf:
8450         - $ref: '#/components/schemas/SdnExtraProperties'
8451         - $ref: '#/components/schemas/SdnBasicProperties'
8452     ArrayOfSdnInfo:
8453       type: array
8454       items:
8455         $ref: '#/components/schemas/SdnInfo'
8456     CreateSdnRequest:
8457       allOf:
8458         - $ref: '#/components/schemas/SdnBasicProperties'
8459       required:
8460         - name
8461         - type
8462         - ip
8463         - port
8464         - dpid
8465       additionalProperties: false
8466     EditSdnRequest:
8467       allOf:
8468         - $ref: '#/components/schemas/SdnBasicProperties'
8469       additionalProperties: false
8470     NsPmJobReportInfo:
8471       type: object
8472       properties:
8473         entries:
8474           type: array
8475           items:
8476             type: object
8477             properties:
8478               objectInstanceId:
8479                 type: string
8480                 format: uuid
8481               performanceMetric:
8482                 type: string
8483               performanceValue:
8484                 type: object
8485                 properties:
8486                   performanceValue:
8487                     type: object
8488                     properties:
8489                       performanceValue:
8490                         type: number
8491                       vnfMemberIndex:
8492                         type: string
8493                       vduName:
8494                         type: string
8495                   timestamp:
8496                     type: number
8497     PduInterfaces:
8498       type: array
8499       items:
8500         type: object
8501         properties:
8502           name:
8503             type: string
8504           mgmt:
8505             type: boolean
8506           type:
8507             type: string
8508             enum:
8509               - overlay
8510               - underlay
8511           ip-address:
8512             type: string
8513             format: ipv4
8514           mac-address:
8515             type: string
8516             format: mac_address
8517           vim-network-name:
8518             type: string
8519           vim-network-id:
8520             type: string
8521         required:
8522           - name
8523           - mgmt
8524           - ip-address
8525         additionalProperties: false
8526     PduInfo:
8527       type: object
8528       properties:
8529         _id:
8530           type: string
8531           format: uuid
8532         name:
8533           type: string
8534         type:
8535           type: string
8536         description:
8537           type: string
8538         shared:
8539           type: boolean
8540         vims:
8541           type: array
8542           items:
8543             type: string
8544         vim_accounts:
8545           type: array
8546           items:
8547             type: string
8548         interfaces:
8549           $ref: '#/components/schemas/PduInterfaces'
8550     ArrayOfPduInfo:
8551       type: array
8552       items:
8553         $ref: '#/components/schemas/PduInfo'
8554     CreatePduRequest:
8555       type: object
8556       properties:
8557         name:
8558           type: string
8559         type:
8560           type: string
8561         description:
8562           type: string
8563         shared:
8564           type: boolean
8565         vims:
8566           type: array
8567           items:
8568             type: string
8569         vim_accounts:
8570           type: array
8571           items:
8572             type: string
8573         interfaces:
8574           $ref: '#/components/schemas/PduInterfaces'
8575       required:
8576         - name
8577         - type
8578         - interfaces
8579       additionalProperties: false
8580     EditPduRequest:
8581       type: object
8582       properties:
8583         name:
8584           type: string
8585         type:
8586           type: string
8587         description:
8588           type: string
8589         shared:
8590           type: boolean
8591         vims:
8592           type: array
8593           items:
8594             type: string
8595         vim_accounts:
8596           type: array
8597           items:
8598             type: string
8599         interfaces:
8600           $ref: '#/components/schemas/PduInterfaces'
8601       additionalProperties: false
8602     K8sClusterNetList:
8603       type: array
8604       items:
8605         type: object
8606         additionalProperties: false
8607     K8sClusterDeploymentMethods:
8608       type: object
8609       properties:
8610         helm-chart:
8611           type: boolean
8612         juju-bundle:
8613           type: boolean
8614         helm-chart-v3:
8615           type: boolean
8616       additionalProperties: false
8617       minProperties: 3
8618     K8sClusterInfo:
8619       type: object
8620       properties:
8621         _id:
8622           type: string
8623           format: uuid
8624         schema_version:
8625           type: string
8626           format: X.Y[.Z]
8627         schema_type:
8628           type: string
8629         name:
8630           type: string
8631         description:
8632           type: string
8633         credentials:
8634           type: object
8635           additionalProperties: true
8636         vim_account:
8637           type: string
8638           format: uuid
8639         k8s_version:
8640           type: string
8641         nets:
8642           $ref: '#/components/schemas/K8sClusterNetList'
8643         deployment_methods:
8644           $ref: '#/components/schemas/K8sClusterDeploymentMethods'
8645         namespace:
8646           type: string
8647         cni:
8648           type: array
8649           items:
8650             type: string
8651     ArrayOfK8sClusterInfo:
8652       type: array
8653       items:
8654         $ref: '#/components/schemas/K8sClusterInfo'
8655     CreateK8sClusterRequest:
8656       type: object
8657       properties:
8658         schema_version:
8659           type: string
8660           format: X.Y[.Z]
8661         schema_type:
8662           type: string
8663         name:
8664           type: string
8665         description:
8666           type: string
8667         credentials:
8668           type: object
8669           additionalProperties: true
8670         vim_account:
8671           type: string
8672           format: uuid
8673         k8s_version:
8674           type: string
8675         nets:
8676           $ref: '#/components/schemas/K8sClusterNetList'
8677         namespace:
8678           type: string
8679         cni:
8680           type: array
8681           items:
8682             type: string
8683       required:
8684         - name
8685         - credentials
8686         - vim_account
8687         - k8s_version
8688         - nets
8689       additionalProperties: false
8690     EditK8sClusterRequest:
8691       type: object
8692       properties:
8693         name:
8694           type: string
8695         description:
8696           type: string
8697         credentials:
8698           type: object
8699           additionalProperties: true
8700         vim_account:
8701           type: string
8702           format: uuid
8703         k8s_version:
8704           type: string
8705         nets:
8706           $ref: '#/components/schemas/K8sClusterNetList'
8707         namespace:
8708           type: string
8709         cni:
8710           type: array
8711           items:
8712             type: string
8713       additionalProperties: false
8714     VcaInfo:
8715       type: object
8716       properties:
8717         _id:
8718           type: string
8719           format: uuid
8720         schema_version:
8721           type: string
8722           format: X.Y[.Z]
8723         schema_type:
8724           type: string
8725         name:
8726           type: string
8727         description:
8728           type: string
8729         endpoints:
8730           type: string
8731         user:
8732           type: string
8733         secret:
8734           type: string
8735         cacert:
8736           type: string
8737         lxd-cloud:
8738           type: string
8739         lxd-credentials:
8740           type: string
8741         k8s-cloud:
8742           type: string
8743         k8s-credentials:
8744           type: string
8745         model-config:
8746           type: object
8747           additionalProperties: true
8748     ArrayOfVcaInfo:
8749       type: array
8750       items:
8751         $ref: '#/components/schemas/VcaInfo'
8752     CreateVcaRequest:
8753       type: object
8754       properties:
8755         schema_version:
8756           type: string
8757           format: X.Y[.Z]
8758         schema_type:
8759           type: string
8760         name:
8761           type: string
8762         description:
8763           type: string
8764         endpoints:
8765           type: string
8766         user:
8767           type: string
8768         secret:
8769           type: string
8770         cacert:
8771           type: string
8772         lxd-cloud:
8773           type: string
8774         lxd-credentials:
8775           type: string
8776         k8s-cloud:
8777           type: string
8778         k8s-credentials:
8779           type: string
8780         model-config:
8781           type: object
8782           additionalProperties: true
8783       required:
8784         - name
8785         - endpoints
8786         - user
8787         - secret
8788         - cacert
8789         - lxd-cloud
8790         - lxd-credentials
8791         - k8s-cloud
8792         - k8s-credentials
8793       additionalProperties: false
8794     EditVcaRequest:
8795       type: object
8796       properties:
8797         name:
8798           type: string
8799         description:
8800           type: string
8801         endpoints:
8802           type: string
8803         user:
8804           type: string
8805         secret:
8806           type: string
8807         cacert:
8808           type: string
8809         lxd-cloud:
8810           type: string
8811         lxd-credentials:
8812           type: string
8813         k8s-cloud:
8814           type: string
8815         k8s-credentials:
8816           type: string
8817         model-config:
8818           type: object
8819           additionalProperties: true
8820       additionalProperties: false
8821     K8sRepoType:
8822       type: string
8823       enum:
8824         - chart
8825         - bundle
8826     K8sRepoInfo:
8827       type: object
8828       properties:
8829         _id:
8830           type: string
8831           format: uuid
8832         name:
8833           type: string
8834         description:
8835           type: string
8836         type:
8837           $ref: '#/components/schemas/K8sRepoType'
8838         url:
8839           type: string
8840           format: uri
8841         username:
8842           type: string
8843           description: repository username
8844         password:
8845           type: string
8846           description: repository password
8847         ca-file:
8848           type: string
8849           description: verify certificates of HTTPS-enabled servers using this CA bundle
8850         cert-file:
8851           type: string
8852           description: identify HTTPS client using this SSL certificate file
8853         skip-tls-verify:
8854           type: boolean
8855           description: skip tls certificate checks for the repository
8856         key-file:
8857           type: string
8858           description: identify HTTPS client using this SSL key file
8859     ArrayOfK8sRepoInfo:
8860       type: array
8861       items:
8862         $ref: '#/components/schemas/K8sRepoInfo'
8863     CreateK8sRepoRequest:
8864       type: object
8865       properties:
8866         name:
8867           type: string
8868         description:
8869           type: string
8870         type:
8871           $ref: '#/components/schemas/K8sRepoType'
8872         url:
8873           type: string
8874           format: uri
8875       required:
8876         - name
8877         - type
8878         - url
8879       additionalProperties: false
8880     NslcmSubscriptionResponse:
8881       type: object
8882       properties:
8883         id:
8884           type: string
8885           format: uuid
8886         filter:
8887           type: object
8888         CallbackUri:
8889           type: string
8890           format: uri
8891         _links:
8892           type: object
8893     NslcmSubscriptionInfo:
8894       type: object
8895       properties:
8896         _id:
8897           type: string
8898           format: uuid
8899         _admin:
8900           type: object
8901         schema_version:
8902           type: string
8903           format: 'X.Y[.Z]'
8904         CallbackUri:
8905           type: string
8906           format: uri
8907         filter:
8908           type: object
8909         authentication:
8910           $ref: '#/components/schemas/Authenticationschema'
8911     ArrayOfNslcmSubscriptionInfo:
8912       type: array
8913       items:
8914         $ref: '#/components/schemas/NslcmSubscriptionInfo'
8915     NsInstanceSubscriptionFilter:
8916       description: |
8917         used to identify the network service
8918       type: object
8919       oneOf:
8920         - $ref: '#/components/schemas/nsdIds'
8921         - $ref: '#/components/schemas/vnfdIds'
8922         - $ref: '#/components/schemas/pnfdIds'
8923         - $ref: '#/components/schemas/nsInstanceIds'
8924         - $ref: '#/components/schemas/nsInstanceNames'
8925     nsdIds:
8926       type: array
8927       items:
8928         type: string
8929     vnfdIds:
8930       type: array
8931       items:
8932         type: string
8933     pnfdIds:
8934       type: array
8935       items:
8936         type: string
8937     nsInstanceIds:
8938       type: array
8939       items:
8940         type: string
8941     nsInstanceNames:
8942       type: array
8943       items:
8944         type: string
8945     Nslcmsubschema:
8946       type: object
8947       properties:
8948         nsInstanceSubscriptionFilter:
8949            $ref: '#/components/schemas/NsInstanceSubscriptionFilter'
8950         notificationTypes:
8951           description: |
8952             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
8953           type: array
8954           items:
8955             type: string
8956             enum:
8957               - NsIdentifierCreationNotification
8958               - NsIdentifierDeletionNotification
8959               - NsLcmOperationOccurrenceNotification
8960               - NsChangeNotification
8961         operationTypes:
8962           type: array
8963           items:
8964             type: string
8965             enum:
8966               - INSTANTIATE
8967               - SCALE
8968               - TERMINATE
8969               - UPDATE
8970               - HEAL
8971         operationStates:
8972           type: array
8973           items:
8974             type: string
8975             enum:
8976               - PROCESSING
8977               - COMPLETED
8978               - PARTIALLY_COMPLETED
8979               - FAILED
8980               - FAILED_TEMP
8981               - ROLLING_BACK
8982               - ROLLED_BACK
8983         nsComponentTypes:
8984           type: array
8985           items:
8986             type: string
8987             enum:
8988               - VNF
8989               - NS
8990               - PNF
8991         lcmOpNameImpactingNsComponent:
8992           type: array
8993           items:
8994             type: string
8995             enum:
8996               - VNF_INSTANTIATE
8997               - VNF_SCALE
8998               - VNF_SCALE_TO_LEVEL
8999               - VNF_CHANGE_FLAVOUR
9000               - VNF_TERMINATE
9001               - VNF_HEAL
9002               - VNF_OPERATE
9003               - VNF_CHANGE_EXT_CONN
9004               - VNF_MODIFY_INFO
9005               - NS_INSTANTIATE
9006               - NS_SCALE
9007               - NS_UPDATE
9008               - NS_TERMINATE
9009               - NS_HEAL
9010         lcmOpOccStatusImpactingNsComponent:
9011           type: array
9012           items:
9013             type: string
9014             enum:
9015               - START
9016               - COMPLETED
9017               - PARTIALLY_COMPLETED
9018               - FAILED
9019               - ROLLED_BACK
9020     Authenticationschema:
9021       type: object
9022       properties:
9023         authType:
9024           type: string
9025           enum:
9026             - basic
9027         paramsBasic:
9028           type: object
9029           properties:
9030             userName:
9031               type: string
9032             password:
9033               type: string
9034     NslcmSubscriptionRequest:
9035       type: object
9036       properties:
9037         filter:
9038           $ref: '#/components/schemas/Nslcmsubschema'
9039         CallbackUri:
9040           type: string
9041           format: uri
9042         authentication:
9043           $ref: '#/components/schemas/Authenticationschema'
9044       required:
9045         - CallbackUri
9046   # END SCHEMAS
9047
9048   requestBodies:
9049     CreateNsdInfoRequest:
9050       content:
9051         application/json:
9052           schema:
9053             $ref: '#/components/schemas/CreateNsdInfoRequest'
9054         application/yaml:
9055           schema:
9056             $ref: '#/components/schemas/CreateNsdInfoRequest'
9057     NsdInfoModifications:
9058       content:
9059         application/json:
9060           schema:
9061             $ref: '#/components/schemas/NsdInfoModifications'
9062         application/yaml:
9063           schema:
9064             $ref: '#/components/schemas/NsdInfoModifications'
9065     AlarmInfoModifications:
9066       content:
9067         application/json:
9068           schema:
9069             $ref: '#/components/schemas/AlarmInfoModifications'
9070         application/yaml:
9071           schema:
9072             $ref: '#/components/schemas/AlarmInfoModifications'
9073     NsDescriptor:
9074       content:
9075         text/plain:
9076           schema:
9077             $ref: '#/components/schemas/NsDescriptor'
9078     NsPackage:
9079       content:
9080         application/zip:
9081           schema:
9082             $ref: '#/components/schemas/NsPackage'
9083     CreateVnfPkgInfoRequest:
9084       content:
9085         application/json:
9086           schema:
9087             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
9088         application/yaml:
9089           schema:
9090             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
9091     VnfPkgInfoModifications:
9092       content:
9093         application/json:
9094           schema:
9095             $ref: '#/components/schemas/VnfPkgInfoModifications'
9096         application/yaml:
9097           schema:
9098             $ref: '#/components/schemas/VnfPkgInfoModifications'
9099     VnfPackage:
9100       content:
9101         application/zip:
9102           schema:
9103             $ref: '#/components/schemas/VnfPackage'
9104     VnfDescriptor:
9105       content:
9106         text/plain:
9107           schema:
9108             $ref: '#/components/schemas/VnfDescriptor'
9109     # CreateNsRequest:
9110       # Substituted by InstantiateNsRequest
9111     InstantiateNsRequest:
9112       content:
9113         application/json:
9114           schema:
9115             $ref: '#/components/schemas/InstantiateNsRequest'
9116         application/yaml:
9117           schema:
9118             $ref: '#/components/schemas/InstantiateNsRequest'
9119     HealNsRequest:
9120       content:
9121         application/json:
9122           schema:
9123             $ref: '#/components/schemas/HealNsRequest'
9124         application/yaml:
9125           schema:
9126             $ref: '#/components/schemas/HealNsRequest'
9127     NSinstanceMigrateRequest:
9128       content:
9129         application/json:
9130           schema:
9131             $ref: '#/components/schemas/NSinstanceMigrateRequest'
9132         application/yaml:
9133           schema:
9134             $ref: '#/components/schemas/NSinstanceMigrateRequest'
9135     ScaleNsRequest:
9136       content:
9137         application/json:
9138           schema:
9139             $ref: '#/components/schemas/ScaleNsRequest'
9140         application/yaml:
9141           schema:
9142             $ref: '#/components/schemas/ScaleNsRequest'
9143     TerminateNsRequest:
9144       content:
9145         application/json:
9146           schema:
9147             $ref: '#/components/schemas/TerminateNsRequest'
9148         application/yaml:
9149           schema:
9150             $ref: '#/components/schemas/TerminateNsRequest'
9151     UpdateNsRequest:
9152       content:
9153         application/json:
9154           schema:
9155             $ref: '#/components/schemas/UpdateNsRequest'
9156         application/yaml:
9157           schema:
9158             $ref: '#/components/schemas/UpdateNsRequest'
9159     # CreateNSinstanceContentRequest:
9160       # Substituted by InstantiateNsRequest
9161     CreateNstInfoRequest:
9162       content:
9163         application/json:
9164           schema:
9165             $ref: '#/components/schemas/CreateNstInfoRequest'
9166         application/yaml:
9167           schema:
9168             $ref: '#/components/schemas/CreateNstInfoRequest'
9169     NetSliceTemplate:
9170       content:
9171         text/plain:
9172           schema:
9173             $ref: '#/components/schemas/NetSliceTemplate'
9174     NetSlicePackage:
9175       content:
9176         application/zip:
9177           schema:
9178             $ref: '#/components/schemas/NetSlicePackage'
9179     NstInfoModifications:
9180       content:
9181         application/json:
9182           schema:
9183             $ref: '#/components/schemas/NstInfoModifications'
9184         application/yaml:
9185           schema:
9186             $ref: '#/components/schemas/NstInfoModifications'
9187     # CreateNsiRequest:
9188       # Substituted by InstantiateNsiRequest
9189     InstantiateNsiRequest:
9190       content:
9191         application/json:
9192           schema:
9193             $ref: '#/components/schemas/InstantiateNsiRequest'
9194         application/yaml:
9195           schema:
9196             $ref: '#/components/schemas/InstantiateNsiRequest'
9197     TerminateNsiRequest:
9198       content:
9199         application/json:
9200           schema:
9201             $ref: '#/components/schemas/TerminateNsiRequest'
9202         application/yaml:
9203           schema:
9204             $ref: '#/components/schemas/TerminateNsiRequest'
9205     NsiActionRequest:
9206       content:
9207         application/json:
9208           schema:
9209             $ref: '#/components/schemas/NsiActionRequest'
9210         application/yaml:
9211           schema:
9212             $ref: '#/components/schemas/NsiActionRequest'
9213     # CreateNsiContentRequest:
9214       # Substituted by InstantiateNsiRequest
9215     CreateTokenRequest:
9216       content:
9217         application/json:
9218           schema:
9219             $ref: '#/components/schemas/CreateTokenRequest'
9220         application/yaml:
9221           schema:
9222             $ref: '#/components/schemas/CreateTokenRequest'
9223     CreateUserRequest:
9224       content:
9225         application/json:
9226           schema:
9227             $ref: '#/components/schemas/CreateUserRequest'
9228         application/yaml:
9229           schema:
9230             $ref: '#/components/schemas/CreateUserRequest'
9231     EditUserRequest:
9232       content:
9233         application/json:
9234           schema:
9235             $ref: '#/components/schemas/EditUserRequest'
9236         application/yaml:
9237           schema:
9238             $ref: '#/components/schemas/EditUserRequest'
9239     CreateProjectRequest:
9240       content:
9241         application/json:
9242           schema:
9243             $ref: '#/components/schemas/CreateProjectRequest'
9244         application/yaml:
9245           schema:
9246             $ref: '#/components/schemas/CreateProjectRequest'
9247     EditProjectRequest:
9248       content:
9249         application/json:
9250           schema:
9251             $ref: '#/components/schemas/EditProjectRequest'
9252         application/yaml:
9253           schema:
9254             $ref: '#/components/schemas/EditProjectRequest'
9255     CreateRoleRequest:
9256       content:
9257         application/json:
9258           schema:
9259             $ref: '#/components/schemas/CreateRoleRequest'
9260         application/yaml:
9261           schema:
9262             $ref: '#/components/schemas/CreateRoleRequest'
9263     EditRoleRequest:
9264       content:
9265         application/json:
9266           schema:
9267             $ref: '#/components/schemas/EditRoleRequest'
9268         application/yaml:
9269           schema:
9270             $ref: '#/components/schemas/EditRoleRequest'
9271     CreateVimRequest:
9272       content:
9273         application/json:
9274           schema:
9275             $ref: '#/components/schemas/CreateVimRequest'
9276         application/yaml:
9277           schema:
9278             $ref: '#/components/schemas/CreateVimRequest'
9279     EditVimRequest:
9280       content:
9281         application/json:
9282           schema:
9283             $ref: '#/components/schemas/EditVimRequest'
9284         application/yaml:
9285           schema:
9286             $ref: '#/components/schemas/EditVimRequest'
9287     CreateWimRequest:
9288       content:
9289         application/json:
9290           schema:
9291             $ref: '#/components/schemas/CreateWimRequest'
9292         application/yaml:
9293           schema:
9294             $ref: '#/components/schemas/CreateWimRequest'
9295     EditWimRequest:
9296       content:
9297         application/json:
9298           schema:
9299             $ref: '#/components/schemas/EditWimRequest'
9300         application/yaml:
9301           schema:
9302             $ref: '#/components/schemas/EditWimRequest'
9303     CreateSdnRequest:
9304       content:
9305         application/json:
9306           schema:
9307             $ref: '#/components/schemas/CreateSdnRequest'
9308         application/yaml:
9309           schema:
9310             $ref: '#/components/schemas/CreateSdnRequest'
9311     EditSdnRequest:
9312       content:
9313         application/json:
9314           schema:
9315             $ref: '#/components/schemas/EditSdnRequest'
9316         application/yaml:
9317           schema:
9318             $ref: '#/components/schemas/EditSdnRequest'
9319     CreatePduRequest:
9320       content:
9321         application/json:
9322           schema:
9323             $ref: '#/components/schemas/CreatePduRequest'
9324         application/yaml:
9325           schema:
9326             $ref: '#/components/schemas/CreatePduRequest'
9327     EditPduRequest:
9328       content:
9329         application/json:
9330           schema:
9331             $ref: '#/components/schemas/EditPduRequest'
9332         application/yaml:
9333           schema:
9334             $ref: '#/components/schemas/EditPduRequest'
9335     CreateK8sClusterRequest:
9336       content:
9337         application/json:
9338           schema:
9339             $ref: '#/components/schemas/CreateK8sClusterRequest'
9340         application/yaml:
9341           schema:
9342             $ref: '#/components/schemas/CreateK8sClusterRequest'
9343     EditK8sClusterRequest:
9344       content:
9345         application/json:
9346           schema:
9347             $ref: '#/components/schemas/EditK8sClusterRequest'
9348         application/yaml:
9349           schema:
9350             $ref: '#/components/schemas/EditK8sClusterRequest'
9351     CreateVcaRequest:
9352       content:
9353         application/json:
9354           schema:
9355             $ref: '#/components/schemas/CreateVcaRequest'
9356         application/yaml:
9357           schema:
9358             $ref: '#/components/schemas/CreateVcaRequest'
9359     EditVcaRequest:
9360       content:
9361         application/json:
9362           schema:
9363             $ref: '#/components/schemas/EditVcaRequest'
9364         application/yaml:
9365           schema:
9366             $ref: '#/components/schemas/EditVcaRequest'
9367     CreateK8sRepoRequest:
9368       content:
9369         application/json:
9370           schema:
9371             $ref: '#/components/schemas/CreateK8sRepoRequest'
9372         application/yaml:
9373           schema:
9374             $ref: '#/components/schemas/CreateK8sRepoRequest'
9375     NslcmSubscriptionRequest:
9376       content:
9377         application/json:
9378           schema:
9379             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9380         application/yaml:
9381           schema:
9382             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9383   # END REQUEST BODIES
9384
9385   securitySchemes:
9386     bearerAuth:
9387       type: http
9388       scheme: bearer