Added apis for Feature 10339 - Enhanced Alarm Mgmt. (SOL005 FM Interface)
[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}/terminate':
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: Terminate a NS instance
1620       description: |
1621         Terminate 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 becomes
1625         NOT_INSTANTIATED.
1626       operationId: terminateNSinstance
1627       requestBody:
1628         # Request data is not required
1629         $ref: '#/components/requestBodies/TerminateNsRequest'
1630       responses:
1631         '202':
1632           description: Accepted
1633           headers:
1634             Location:
1635               description: |
1636                 It must point to the new "NS Lifecycle Operation Occurrence"
1637                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1638               schema:
1639                 type: string
1640                 format: uri
1641           content:
1642             application/json:
1643               schema:
1644                 $ref: '#/components/schemas/ObjectId'
1645             application/yaml:
1646               schema:
1647                 $ref: '#/components/schemas/ObjectId'
1648         '400':
1649           $ref: '#/components/responses/BadRequest'
1650         '401':
1651           $ref: '#/components/responses/Unauthorized'
1652         '403':
1653           $ref: '#/components/responses/Forbidden'
1654         '404':
1655           $ref: '#/components/responses/NotFound'
1656         '405':
1657           $ref: '#/components/responses/MethodNotAllowed'
1658         '406':
1659           $ref: '#/components/responses/NotAcceptable'
1660         '409':
1661           $ref: '#/components/responses/Conflict'
1662         '422':
1663           $ref: '#/components/responses/UnprocessableEntity'
1664         '500':
1665           $ref: '#/components/responses/InternalServerError'
1666         '503':
1667           $ref: '#/components/responses/ServiceUnavailable'
1668         '5XX':
1669           $ref: '#/components/responses/UnexpectedError'
1670         default:
1671           $ref: '#/components/responses/UnexpectedError'
1672   '/nslcm/v1/ns_instances/{nsInstanceId}/action':
1673     parameters:
1674       - name: nsInstanceId
1675         in: path
1676         required: true
1677         description: NS Instance ID
1678         schema:
1679           type: string
1680     post:
1681       tags:
1682         - "NS instances"
1683       summary: Execute an action on a NS instance
1684       description: |
1685         Execute an action on a NS instance.
1686         The NS instance must have been created and must be in INSTANTIATED state.
1687       operationId: actionOnNSinstance
1688       requestBody:
1689         content:
1690           application/json:
1691             schema:
1692               $ref: '#/components/schemas/NSinstanceActionRequest'
1693           application/yaml:
1694             schema:
1695               $ref: '#/components/schemas/NSinstanceActionRequest'
1696       responses:
1697         '202':
1698           description: Accepted
1699           headers:
1700             Location:
1701               description: |
1702                 It must point to the new "NS Lifecycle Operation Occurrence"
1703                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
1704               schema:
1705                 type: string
1706                 format: uri
1707           content:
1708             application/json:
1709               schema:
1710                 $ref: '#/components/schemas/ObjectId'
1711             application/yaml:
1712               schema:
1713                 $ref: '#/components/schemas/ObjectId'
1714         '400':
1715           $ref: '#/components/responses/BadRequest'
1716         '401':
1717           $ref: '#/components/responses/Unauthorized'
1718         '403':
1719           $ref: '#/components/responses/Forbidden'
1720         '404':
1721           $ref: '#/components/responses/NotFound'
1722         '405':
1723           $ref: '#/components/responses/MethodNotAllowed'
1724         '406':
1725           $ref: '#/components/responses/NotAcceptable'
1726         '409':
1727           $ref: '#/components/responses/Conflict'
1728         '422':
1729           $ref: '#/components/responses/UnprocessableEntity'
1730         '500':
1731           $ref: '#/components/responses/InternalServerError'
1732         '503':
1733           $ref: '#/components/responses/ServiceUnavailable'
1734         '5XX':
1735           $ref: '#/components/responses/UnexpectedError'
1736         default:
1737           $ref: '#/components/responses/UnexpectedError'
1738   '/nslcm/v1/ns_instances_content':
1739     get:
1740       tags:
1741         - "NS instances"
1742       summary: Query information about multiple NS instances
1743       description: Query information about multiple NS isntances
1744       operationId: getNSinstancesContent
1745       responses:
1746         '200':
1747           description: OK
1748           content:
1749             application/json:
1750               schema:
1751                 $ref: '#/components/schemas/ArrayOfNsInstance'
1752             application/yaml:
1753               schema:
1754                 $ref: '#/components/schemas/ArrayOfNsInstance'
1755         '400':
1756           $ref: '#/components/responses/BadRequest'
1757         '401':
1758           $ref: '#/components/responses/Unauthorized'
1759         '403':
1760           $ref: '#/components/responses/Forbidden'
1761         '404':
1762           $ref: '#/components/responses/NotFound'
1763         '405':
1764           $ref: '#/components/responses/MethodNotAllowed'
1765         '406':
1766           $ref: '#/components/responses/NotAcceptable'
1767         '409':
1768           $ref: '#/components/responses/Conflict'
1769         '422':
1770           $ref: '#/components/responses/UnprocessableEntity'
1771         '500':
1772           $ref: '#/components/responses/InternalServerError'
1773         '503':
1774           $ref: '#/components/responses/ServiceUnavailable'
1775         '5XX':
1776           $ref: '#/components/responses/UnexpectedError'
1777         default:
1778           $ref: '#/components/responses/UnexpectedError'
1779     post:
1780       tags:
1781         - "NS instances"
1782       summary: Create a new NS instance
1783       description: Create a new NS instance
1784       operationId: createNSinstanceContent
1785       requestBody:
1786         $ref: '#/components/requestBodies/InstantiateNsRequest'
1787       responses:
1788         '201':
1789           description: Created
1790           headers:
1791             Location:
1792               schema:
1793                 type: string
1794                 format: uri
1795           content:
1796             application/json:
1797               schema:
1798                 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1799             application/yaml:
1800               schema:
1801                 $ref: '#/components/schemas/CreateNSinstanceContentResponse'
1802         '400':
1803           $ref: '#/components/responses/BadRequest'
1804         '401':
1805           $ref: '#/components/responses/Unauthorized'
1806         '403':
1807           $ref: '#/components/responses/Forbidden'
1808         '404':
1809           $ref: '#/components/responses/NotFound'
1810         '405':
1811           $ref: '#/components/responses/MethodNotAllowed'
1812         '406':
1813           $ref: '#/components/responses/NotAcceptable'
1814         '409':
1815           $ref: '#/components/responses/Conflict'
1816         '422':
1817           $ref: '#/components/responses/UnprocessableEntity'
1818         '500':
1819           $ref: '#/components/responses/InternalServerError'
1820         '503':
1821           $ref: '#/components/responses/ServiceUnavailable'
1822         '5XX':
1823           $ref: '#/components/responses/UnexpectedError'
1824         default:
1825           $ref: '#/components/responses/UnexpectedError'
1826   '/nslcm/v1/ns_instances_content/{nsInstanceContentId}':
1827     parameters:
1828       - name: nsInstanceContentId
1829         in: path
1830         required: true
1831         description: NS Instance Content ID
1832         schema:
1833           type: string
1834     get:
1835       tags:
1836         - "NS instances"
1837       summary: Read an individual NS instance resource
1838       description: Read an individual NS instance resource
1839       operationId: getNSinstanceContent
1840       responses:
1841         '200':
1842           description: OK
1843           content:
1844             application/json:
1845               schema:
1846                 $ref: '#/components/schemas/NsInstance'
1847             application/yaml:
1848               schema:
1849                 $ref: '#/components/schemas/NsInstance'
1850         '400':
1851           $ref: '#/components/responses/BadRequest'
1852         '401':
1853           $ref: '#/components/responses/Unauthorized'
1854         '403':
1855           $ref: '#/components/responses/Forbidden'
1856         '404':
1857           $ref: '#/components/responses/NotFound'
1858         '405':
1859           $ref: '#/components/responses/MethodNotAllowed'
1860         '406':
1861           $ref: '#/components/responses/NotAcceptable'
1862         '409':
1863           $ref: '#/components/responses/Conflict'
1864         '422':
1865           $ref: '#/components/responses/UnprocessableEntity'
1866         '500':
1867           $ref: '#/components/responses/InternalServerError'
1868         '503':
1869           $ref: '#/components/responses/ServiceUnavailable'
1870         '5XX':
1871           $ref: '#/components/responses/UnexpectedError'
1872         default:
1873           $ref: '#/components/responses/UnexpectedError'
1874     delete:
1875       tags:
1876         - "NS instances"
1877       summary: Delete an individual NS instance resource
1878       description: Delete an individual NS instance resource
1879       operationId: deleteNSinstanceContent
1880       responses:
1881         '202':
1882           description: Accepted
1883           content:
1884             application/json:
1885               schema:
1886                 $ref: '#/components/schemas/ObjectId'
1887             application/yaml:
1888               schema:
1889                 $ref: '#/components/schemas/ObjectId'
1890         '204':
1891           description: No Content
1892         '400':
1893           $ref: '#/components/responses/BadRequest'
1894         '401':
1895           $ref: '#/components/responses/Unauthorized'
1896         '403':
1897           $ref: '#/components/responses/Forbidden'
1898         '404':
1899           $ref: '#/components/responses/NotFound'
1900         '405':
1901           $ref: '#/components/responses/MethodNotAllowed'
1902         '406':
1903           $ref: '#/components/responses/NotAcceptable'
1904         '409':
1905           $ref: '#/components/responses/Conflict'
1906         '422':
1907           $ref: '#/components/responses/UnprocessableEntity'
1908         '500':
1909           $ref: '#/components/responses/InternalServerError'
1910         '503':
1911           $ref: '#/components/responses/ServiceUnavailable'
1912         '5XX':
1913           $ref: '#/components/responses/UnexpectedError'
1914         default:
1915           $ref: '#/components/responses/UnexpectedError'
1916   '/nslcm/v1/ns_lcm_op_occs':
1917     get:
1918       tags:
1919         - "NS instances"
1920       summary: Query information about multiple NS LCM Operation Occurrences
1921       description: Query information about multiple NS LCM Operation Occurrences
1922       operationId: getNSLCMOpOccs
1923       responses:
1924         '200':
1925           description: OK
1926           content:
1927             application/json:
1928               schema:
1929                 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
1930             application/yaml:
1931               schema:
1932                 $ref: '#/components/schemas/ArrayOfNsLcmOpOcc'
1933         '400':
1934           $ref: '#/components/responses/BadRequest'
1935         '401':
1936           $ref: '#/components/responses/Unauthorized'
1937         '403':
1938           $ref: '#/components/responses/Forbidden'
1939         '404':
1940           $ref: '#/components/responses/NotFound'
1941         '405':
1942           $ref: '#/components/responses/MethodNotAllowed'
1943         '406':
1944           $ref: '#/components/responses/NotAcceptable'
1945         '409':
1946           $ref: '#/components/responses/Conflict'
1947         '422':
1948           $ref: '#/components/responses/UnprocessableEntity'
1949         '500':
1950           $ref: '#/components/responses/InternalServerError'
1951         '503':
1952           $ref: '#/components/responses/ServiceUnavailable'
1953         '5XX':
1954           $ref: '#/components/responses/UnexpectedError'
1955         default:
1956           $ref: '#/components/responses/UnexpectedError'
1957   '/nslcm/v1/ns_lcm_op_occs/{nsLcmOpOccId}':
1958     parameters:
1959       - name: nsLcmOpOccId
1960         in: path
1961         required: true
1962         description: NS LCM Operation Occurrence ID
1963         schema:
1964           type: string
1965     get:
1966       tags:
1967         - "NS instances"
1968       summary: Query information about an individual NS LCM Operation Occurrence
1969       description: Query information about an individual NS LCM Operation Occurrence
1970       operationId: getNSLCMOpOcc
1971       responses:
1972         '200':
1973           description: OK
1974           content:
1975             application/json:
1976               schema:
1977                 $ref: '#/components/schemas/NsLcmOpOcc'
1978             application/yaml:
1979               schema:
1980                 $ref: '#/components/schemas/NsLcmOpOcc'
1981         '400':
1982           $ref: '#/components/responses/BadRequest'
1983         '401':
1984           $ref: '#/components/responses/Unauthorized'
1985         '403':
1986           $ref: '#/components/responses/Forbidden'
1987         '404':
1988           $ref: '#/components/responses/NotFound'
1989         '405':
1990           $ref: '#/components/responses/MethodNotAllowed'
1991         '406':
1992           $ref: '#/components/responses/NotAcceptable'
1993         '409':
1994           $ref: '#/components/responses/Conflict'
1995         '422':
1996           $ref: '#/components/responses/UnprocessableEntity'
1997         '500':
1998           $ref: '#/components/responses/InternalServerError'
1999         '503':
2000           $ref: '#/components/responses/ServiceUnavailable'
2001         '5XX':
2002           $ref: '#/components/responses/UnexpectedError'
2003         default:
2004           $ref: '#/components/responses/UnexpectedError'
2005   '/nslcm/v1/vnf_instances':
2006     get:
2007       tags:
2008         - "NS instances"
2009       summary: Query information about multiple VNF Instances
2010       description: Query information about multiple VNF Instances
2011       operationId: getVnfInstances
2012       responses:
2013         '200':
2014           description: OK
2015           content:
2016             application/json:
2017               schema:
2018                 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2019             application/yaml:
2020               schema:
2021                 $ref: '#/components/schemas/ArrayOfVnfInstanceInfo'
2022         '400':
2023           $ref: '#/components/responses/BadRequest'
2024         '401':
2025           $ref: '#/components/responses/Unauthorized'
2026         '403':
2027           $ref: '#/components/responses/Forbidden'
2028         '404':
2029           $ref: '#/components/responses/NotFound'
2030         '405':
2031           $ref: '#/components/responses/MethodNotAllowed'
2032         '406':
2033           $ref: '#/components/responses/NotAcceptable'
2034         '409':
2035           $ref: '#/components/responses/Conflict'
2036         '422':
2037           $ref: '#/components/responses/UnprocessableEntity'
2038         '500':
2039           $ref: '#/components/responses/InternalServerError'
2040         '503':
2041           $ref: '#/components/responses/ServiceUnavailable'
2042         '5XX':
2043           $ref: '#/components/responses/UnexpectedError'
2044         default:
2045           $ref: '#/components/responses/UnexpectedError'
2046   '/nslcm/v1/vnf_instances/{vnfInstanceId}':
2047     parameters:
2048       - name: vnfInstanceId
2049         in: path
2050         required: true
2051         description: VNF Instance ID
2052         schema:
2053           type: string
2054     get:
2055       tags:
2056         - "NS instances"
2057       summary: Query information about an individual VNF Instance
2058       description: Query information about an individual VNF Instance
2059       operationId: getVnfInstance
2060       responses:
2061         '200':
2062           description: OK
2063           content:
2064             application/json:
2065               schema:
2066                 $ref: '#/components/schemas/VnfInstanceInfo'
2067             application/yaml:
2068               schema:
2069                 $ref: '#/components/schemas/VnfInstanceInfo'
2070         '400':
2071           $ref: '#/components/responses/BadRequest'
2072         '401':
2073           $ref: '#/components/responses/Unauthorized'
2074         '403':
2075           $ref: '#/components/responses/Forbidden'
2076         '404':
2077           $ref: '#/components/responses/NotFound'
2078         '405':
2079           $ref: '#/components/responses/MethodNotAllowed'
2080         '406':
2081           $ref: '#/components/responses/NotAcceptable'
2082         '409':
2083           $ref: '#/components/responses/Conflict'
2084         '422':
2085           $ref: '#/components/responses/UnprocessableEntity'
2086         '500':
2087           $ref: '#/components/responses/InternalServerError'
2088         '503':
2089           $ref: '#/components/responses/ServiceUnavailable'
2090         '5XX':
2091           $ref: '#/components/responses/UnexpectedError'
2092         default:
2093           $ref: '#/components/responses/UnexpectedError'
2094   /nslcm/v1/subscriptions:
2095     get:
2096       tags:
2097         - NS instances
2098       summary: Query information about multiple NS instance subscription
2099       description: Query information about multiple NS instance subscription
2100       operationId: getNsSubcriptions
2101       responses:
2102         '200':
2103           description: OK
2104           content:
2105             application/json:
2106               schema:
2107                 $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
2108             application/yaml:
2109               schema:
2110                 $ref: '#/components/schemas/ArrayOfNslcmSubscriptionInfo'
2111         '400':
2112           $ref: '#/components/responses/BadRequest'
2113         '401':
2114           $ref: '#/components/responses/Unauthorized'
2115         '403':
2116           $ref: '#/components/responses/Forbidden'
2117         '404':
2118           $ref: '#/components/responses/NotFound'
2119         '405':
2120           $ref: '#/components/responses/MethodNotAllowed'
2121         '406':
2122           $ref: '#/components/responses/NotAcceptable'
2123         '409':
2124           $ref: '#/components/responses/Conflict'
2125         '422':
2126           $ref: '#/components/responses/UnprocessableEntity'
2127         '500':
2128           $ref: '#/components/responses/InternalServerError'
2129         '503':
2130           $ref: '#/components/responses/ServiceUnavailable'
2131         5XX:
2132           $ref: '#/components/responses/UnexpectedError'
2133         default:
2134           $ref: '#/components/responses/UnexpectedError'
2135     post:
2136       tags:
2137         - NS instances
2138       summary: Create a new subscription for the Network service
2139       description: Create a new subscription for the Network service
2140       operationId: addNsSubcriptions
2141       requestBody:
2142         $ref: '#/components/requestBodies/NslcmSubscriptionRequest'
2143       responses:
2144         '201':
2145           description: Created
2146           headers:
2147             Location:
2148               schema:
2149                 type: object
2150           content:
2151             application/json:
2152               schema:
2153                 $ref: '#/components/schemas/NslcmSubscriptionResponse'
2154             application/yaml:
2155               schema:
2156                 $ref: '#/components/schemas/NslcmSubscriptionResponse'
2157         '400':
2158           $ref: '#/components/responses/BadRequest'
2159         '401':
2160           $ref: '#/components/responses/Unauthorized'
2161         '403':
2162           $ref: '#/components/responses/Forbidden'
2163         '404':
2164           $ref: '#/components/responses/NotFound'
2165         '405':
2166           $ref: '#/components/responses/MethodNotAllowed'
2167         '406':
2168           $ref: '#/components/responses/NotAcceptable'
2169         '409':
2170           $ref: '#/components/responses/Conflict'
2171         '422':
2172           $ref: '#/components/responses/UnprocessableEntity'
2173         '500':
2174           $ref: '#/components/responses/InternalServerError'
2175         '503':
2176           $ref: '#/components/responses/ServiceUnavailable'
2177         5XX:
2178           $ref: '#/components/responses/UnexpectedError'
2179         default:
2180           $ref: '#/components/responses/UnexpectedError'
2181   '/nslcm/v1/subscriptions/{nsSubscriptionsId}':
2182     parameters:
2183       - name: nsSubscriptionsId
2184         in: path
2185         required: true
2186         description: Network Service Subscription ID
2187         schema:
2188           type: string
2189     get:
2190       tags:
2191         - NS instances
2192       summary: Read information about an individual Network Service Subscription
2193       description: Read information about an individual Network Service Subscription
2194       operationId: getNsSubcriptionId
2195       responses:
2196         '200':
2197           description: OK
2198           content:
2199             application/json:
2200               schema:
2201                 $ref: '#/components/schemas/NslcmSubscriptionInfo'
2202             application/yaml:
2203               schema:
2204                 $ref: '#/components/schemas/NslcmSubscriptionInfo'
2205         '400':
2206           $ref: '#/components/responses/BadRequest'
2207         '401':
2208           $ref: '#/components/responses/Unauthorized'
2209         '403':
2210           $ref: '#/components/responses/Forbidden'
2211         '404':
2212           $ref: '#/components/responses/NotFound'
2213         '405':
2214           $ref: '#/components/responses/MethodNotAllowed'
2215         '406':
2216           $ref: '#/components/responses/NotAcceptable'
2217         '409':
2218           $ref: '#/components/responses/Conflict'
2219         '422':
2220           $ref: '#/components/responses/UnprocessableEntity'
2221         '500':
2222           $ref: '#/components/responses/InternalServerError'
2223         '503':
2224           $ref: '#/components/responses/ServiceUnavailable'
2225         5XX:
2226           $ref: '#/components/responses/UnexpectedError'
2227         default:
2228           $ref: '#/components/responses/UnexpectedError'
2229     delete:
2230       tags:
2231         - NS instances
2232       summary: Delete an individual Network Service Subscription
2233       description: Delete an individual Network Service Subscription
2234       operationId: deleteNsSubcriptionId
2235       responses:
2236         '204':
2237           description: No Content
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 # END NS Instances
2263
2264 # BEGIN Alarms
2265   '/nsfm/v1/alarms':
2266     get:
2267       tags:
2268         - "Alarms"
2269       summary: Query information about multiple alarms
2270       description: Query information about multiple alarms
2271       operationId: getAlarms
2272       responses:
2273         '200':
2274           description: OK
2275           content:
2276             application/json:
2277               schema:
2278                 $ref: '#/components/schemas/ArrayOfAlarm'
2279             application/yaml:
2280               schema:
2281                 $ref: '#/components/schemas/ArrayOfAlarm'
2282         '400':
2283           $ref: '#/components/responses/BadRequest'
2284         '401':
2285           $ref: '#/components/responses/Unauthorized'
2286         '403':
2287           $ref: '#/components/responses/Forbidden'
2288         '404':
2289           $ref: '#/components/responses/NotFound'
2290         '405':
2291           $ref: '#/components/responses/MethodNotAllowed'
2292         '406':
2293           $ref: '#/components/responses/NotAcceptable'
2294         '409':
2295           $ref: '#/components/responses/Conflict'
2296         '422':
2297           $ref: '#/components/responses/UnprocessableEntity'
2298         '500':
2299           $ref: '#/components/responses/InternalServerError'
2300         '503':
2301           $ref: '#/components/responses/ServiceUnavailable'
2302         '5XX':
2303           $ref: '#/components/responses/UnexpectedError'
2304         default:
2305           $ref: '#/components/responses/UnexpectedError'
2306   '/nsfm/v1/alarms/{uuid}':
2307     parameters:
2308       - name: uuid
2309         in: path
2310         required: true
2311         description: Alarm UUID
2312         schema:
2313           type: string
2314     get:
2315       tags:
2316         - "Alarms"
2317       summary: Read an individual Alarm
2318       description: Read an individual Alarm
2319       operationId: getAlarm
2320       responses:
2321         '200':
2322           description: OK
2323           content:
2324             application/json:
2325               schema:
2326                 $ref: '#/components/schemas/Alarm'
2327             application/yaml:
2328               schema:
2329                 $ref: '#/components/schemas/Alarm'
2330         '400':
2331           $ref: '#/components/responses/BadRequest'
2332         '401':
2333           $ref: '#/components/responses/Unauthorized'
2334         '403':
2335           $ref: '#/components/responses/Forbidden'
2336         '404':
2337           $ref: '#/components/responses/NotFound'
2338         '405':
2339           $ref: '#/components/responses/MethodNotAllowed'
2340         '406':
2341           $ref: '#/components/responses/NotAcceptable'
2342         '409':
2343           $ref: '#/components/responses/Conflict'
2344         '422':
2345           $ref: '#/components/responses/UnprocessableEntity'
2346         '500':
2347           $ref: '#/components/responses/InternalServerError'
2348         '503':
2349           $ref: '#/components/responses/ServiceUnavailable'
2350         '5XX':
2351           $ref: '#/components/responses/UnexpectedError'
2352         default:
2353           $ref: '#/components/responses/UnexpectedError'
2354     patch:
2355       tags:
2356         - "Alarms"
2357       summary: Modify the data of an  individual Alarm
2358       description: Modify the data of an  individual Alarm
2359       operationId: updateAlarm
2360       requestBody:
2361         $ref: '#/components/requestBodies/AlarmInfoModifications'
2362       responses:
2363         '204':
2364           description: No Content
2365         '400':
2366           $ref: '#/components/responses/BadRequest'
2367         '401':
2368           $ref: '#/components/responses/Unauthorized'
2369         '403':
2370           $ref: '#/components/responses/Forbidden'
2371         '404':
2372           $ref: '#/components/responses/NotFound'
2373         '405':
2374           $ref: '#/components/responses/MethodNotAllowed'
2375         '406':
2376           $ref: '#/components/responses/NotAcceptable'
2377         '409':
2378           $ref: '#/components/responses/Conflict'
2379         '422':
2380           $ref: '#/components/responses/UnprocessableEntity'
2381         '500':
2382           $ref: '#/components/responses/InternalServerError'
2383         '503':
2384           $ref: '#/components/responses/ServiceUnavailable'
2385         '5XX':
2386           $ref: '#/components/responses/UnexpectedError'
2387         default:
2388           $ref: '#/components/responses/UnexpectedError'
2389 # END Alarms
2390
2391 # BEGIN NetSlice Templates
2392   '/nst/v1/netslice_templates':
2393     get:
2394       tags:
2395         - "NetSlice templates"
2396       summary: Query information about multiple NetSlice template resources
2397       description: Query information about multiple NetSlice template resources
2398       operationId: getNSTs
2399       responses:
2400         '200':
2401           description: OK
2402           content:
2403             application/json:
2404               schema:
2405                 $ref: '#/components/schemas/ArrayOfNstInfo'
2406             application/yaml:
2407               schema:
2408                 $ref: '#/components/schemas/ArrayOfNstInfo'
2409         '400':
2410           $ref: '#/components/responses/BadRequest'
2411         '401':
2412           $ref: '#/components/responses/Unauthorized'
2413         '403':
2414           $ref: '#/components/responses/Forbidden'
2415         '404':
2416           $ref: '#/components/responses/NotFound'
2417         '405':
2418           $ref: '#/components/responses/MethodNotAllowed'
2419         '406':
2420           $ref: '#/components/responses/NotAcceptable'
2421         '409':
2422           $ref: '#/components/responses/Conflict'
2423         '422':
2424           $ref: '#/components/responses/UnprocessableEntity'
2425         '500':
2426           $ref: '#/components/responses/InternalServerError'
2427         '503':
2428           $ref: '#/components/responses/ServiceUnavailable'
2429         '5XX':
2430           $ref: '#/components/responses/UnexpectedError'
2431         default:
2432           $ref: '#/components/responses/UnexpectedError'
2433     post:
2434       tags:
2435         - "NetSlice templates"
2436       summary: Create a new NetSlice template resource
2437       description: Create a new NetSlice template resource
2438       operationId: addNST
2439       requestBody:
2440         $ref: '#/components/requestBodies/CreateNstInfoRequest'
2441       responses:
2442         '201':
2443           description: Created
2444           headers:
2445             Location:
2446               schema:
2447                 type: string
2448                 format: uri
2449           content:
2450             application/json:
2451               schema:
2452                 $ref: '#/components/schemas/ObjectId'
2453             application/yaml:
2454               schema:
2455                 $ref: '#/components/schemas/ObjectId'
2456         '400':
2457           $ref: '#/components/responses/BadRequest'
2458         '401':
2459           $ref: '#/components/responses/Unauthorized'
2460         '403':
2461           $ref: '#/components/responses/Forbidden'
2462         '404':
2463           $ref: '#/components/responses/NotFound'
2464         '405':
2465           $ref: '#/components/responses/MethodNotAllowed'
2466         '406':
2467           $ref: '#/components/responses/NotAcceptable'
2468         '409':
2469           $ref: '#/components/responses/Conflict'
2470         '422':
2471           $ref: '#/components/responses/UnprocessableEntity'
2472         '500':
2473           $ref: '#/components/responses/InternalServerError'
2474         '503':
2475           $ref: '#/components/responses/ServiceUnavailable'
2476         '5XX':
2477           $ref: '#/components/responses/UnexpectedError'
2478         default:
2479           $ref: '#/components/responses/UnexpectedError'
2480   '/nst/v1/netslice_templates/{netsliceTemplateId}':
2481     parameters:
2482       - name: netsliceTemplateId
2483         in: path
2484         required: true
2485         description: NetSlice Template ID
2486         schema:
2487           type: string
2488     get:
2489       tags:
2490         - "NetSlice templates"
2491       summary: Read information about an individual NetSlice template resource
2492       description: Read information about an individual NetSlice template resource
2493       operationId: getNST
2494       responses:
2495         '200':
2496           description: OK
2497           content:
2498             application/json:
2499               schema:
2500                 $ref: '#/components/schemas/NstInfo'
2501             application/yaml:
2502               schema:
2503                 $ref: '#/components/schemas/NstInfo'
2504         '400':
2505           $ref: '#/components/responses/BadRequest'
2506         '401':
2507           $ref: '#/components/responses/Unauthorized'
2508         '403':
2509           $ref: '#/components/responses/Forbidden'
2510         '404':
2511           $ref: '#/components/responses/NotFound'
2512         '405':
2513           $ref: '#/components/responses/MethodNotAllowed'
2514         '406':
2515           $ref: '#/components/responses/NotAcceptable'
2516         '409':
2517           $ref: '#/components/responses/Conflict'
2518         '422':
2519           $ref: '#/components/responses/UnprocessableEntity'
2520         '500':
2521           $ref: '#/components/responses/InternalServerError'
2522         '503':
2523           $ref: '#/components/responses/ServiceUnavailable'
2524         '5XX':
2525           $ref: '#/components/responses/UnexpectedError'
2526         default:
2527           $ref: '#/components/responses/UnexpectedError'
2528     delete:
2529       tags:
2530         - "NetSlice templates"
2531       summary: Delete an individual NetSlice template resource
2532       description: Delete an individual NetSlice template resource
2533       operationId: deleteNST
2534       responses:
2535         '204':
2536           description: No Content
2537         '400':
2538           $ref: '#/components/responses/BadRequest'
2539         '401':
2540           $ref: '#/components/responses/Unauthorized'
2541         '403':
2542           $ref: '#/components/responses/Forbidden'
2543         '404':
2544           $ref: '#/components/responses/NotFound'
2545         '405':
2546           $ref: '#/components/responses/MethodNotAllowed'
2547         '406':
2548           $ref: '#/components/responses/NotAcceptable'
2549         '409':
2550           $ref: '#/components/responses/Conflict'
2551         '422':
2552           $ref: '#/components/responses/UnprocessableEntity'
2553         '500':
2554           $ref: '#/components/responses/InternalServerError'
2555         '503':
2556           $ref: '#/components/responses/ServiceUnavailable'
2557         '5XX':
2558           $ref: '#/components/responses/UnexpectedError'
2559         default:
2560           $ref: '#/components/responses/UnexpectedError'
2561   '/nst/v1/netslice_templates/{netsliceTemplateId}/artifacts/{artifactPath}':
2562     parameters:
2563       - name: netsliceTemplateId
2564         in: path
2565         required: true
2566         description: NetSlice Template ID
2567         schema:
2568           type: string
2569       - name: artifactPath
2570         in: path
2571         required: true
2572         description: Artifact Path
2573         schema:
2574           type: string
2575     get:
2576       tags:
2577         - "NetSlice templates"
2578       summary: Fetch individual NetSlice Template artifact
2579       description: Fetch individual NetSlice Template artifact
2580       operationId: getNstArtifact
2581       responses:
2582         '200':
2583           description: OK
2584           content:
2585             application/octet-stream:
2586               schema:
2587                 type: string
2588                 format: binary
2589         '206':
2590           description: Partial Content
2591           headers:
2592             Content-Range:
2593               schema:
2594                 type: string
2595           content:
2596             application/octet-stream:
2597               schema:
2598                 type: string
2599                 format: binary
2600         '400':
2601           $ref: '#/components/responses/BadRequest'
2602         '401':
2603           $ref: '#/components/responses/Unauthorized'
2604         '403':
2605           $ref: '#/components/responses/Forbidden'
2606         '404':
2607           $ref: '#/components/responses/NotFound'
2608         '405':
2609           $ref: '#/components/responses/MethodNotAllowed'
2610         '406':
2611           $ref: '#/components/responses/NotAcceptable'
2612         '409':
2613           $ref: '#/components/responses/Conflict'
2614         '422':
2615           $ref: '#/components/responses/UnprocessableEntity'
2616         '500':
2617           $ref: '#/components/responses/InternalServerError'
2618         '503':
2619           $ref: '#/components/responses/ServiceUnavailable'
2620         '5XX':
2621           $ref: '#/components/responses/UnexpectedError'
2622         default:
2623           $ref: '#/components/responses/UnexpectedError'
2624   '/nst/v1/netslice_templates/{netsliceTemplateId}/nst':
2625     parameters:
2626       - name: netsliceTemplateId
2627         in: path
2628         required: true
2629         description: NetSlice Template ID
2630         schema:
2631           type: string
2632     get:
2633       tags:
2634         - "NetSlice templates"
2635       summary: Read NST of an on-boarded NetSlice Template
2636       description: Read NST of an on-boarded NetSlice Template
2637       operationId: getNstNst
2638       responses:
2639         '200':
2640           description: OK
2641           content:
2642             text/plain:
2643               schema:
2644                 $ref: '#/components/schemas/NetSliceTemplate'
2645         '400':
2646           $ref: '#/components/responses/BadRequest'
2647         '401':
2648           $ref: '#/components/responses/Unauthorized'
2649         '403':
2650           $ref: '#/components/responses/Forbidden'
2651         '404':
2652           $ref: '#/components/responses/NotFound'
2653         '405':
2654           $ref: '#/components/responses/MethodNotAllowed'
2655         '406':
2656           $ref: '#/components/responses/NotAcceptable'
2657         '409':
2658           $ref: '#/components/responses/Conflict'
2659         '422':
2660           $ref: '#/components/responses/UnprocessableEntity'
2661         '500':
2662           $ref: '#/components/responses/InternalServerError'
2663         '503':
2664           $ref: '#/components/responses/ServiceUnavailable'
2665         '5XX':
2666           $ref: '#/components/responses/UnexpectedError'
2667         default:
2668           $ref: '#/components/responses/UnexpectedError'
2669   '/nst/v1/netslice_templates/{netsliceTemplateId}/nst_content':
2670     parameters:
2671       - name: netsliceTemplateId
2672         in: path
2673         required: true
2674         description: NetSlice Template ID
2675         schema:
2676           type: string
2677     get:
2678       tags:
2679         - "NetSlice templates"
2680       summary: Fetch the content of a NST
2681       description: Fetch the content of a NST
2682       operationId: getNSTcontent
2683       responses:
2684         '200':
2685           description: OK
2686           content:
2687             application/zip:
2688               schema:
2689                 $ref: '#/components/schemas/NetSlicePackage'
2690         '206':
2691           description: Partial Content
2692           headers:
2693             Content-Range:
2694               schema:
2695                 type: string
2696           content:
2697             application/zip:
2698               schema:
2699                 $ref: '#/components/schemas/NetSlicePackage'
2700         '400':
2701           $ref: '#/components/responses/BadRequest'
2702         '401':
2703           $ref: '#/components/responses/Unauthorized'
2704         '403':
2705           $ref: '#/components/responses/Forbidden'
2706         '404':
2707           $ref: '#/components/responses/NotFound'
2708         '405':
2709           $ref: '#/components/responses/MethodNotAllowed'
2710         '406':
2711           $ref: '#/components/responses/NotAcceptable'
2712         '409':
2713           $ref: '#/components/responses/Conflict'
2714         '422':
2715           $ref: '#/components/responses/UnprocessableEntity'
2716         '500':
2717           $ref: '#/components/responses/InternalServerError'
2718         '503':
2719           $ref: '#/components/responses/ServiceUnavailable'
2720         '5XX':
2721           $ref: '#/components/responses/UnexpectedError'
2722         default:
2723           $ref: '#/components/responses/UnexpectedError'
2724     put:
2725       tags:
2726         - "NetSlice templates"
2727       summary: Upload the content of a NST
2728       description: Upload the content of a NST
2729       operationId: updateNSTcontent
2730       requestBody:
2731         $ref: '#/components/requestBodies/NetSlicePackage'
2732       responses:
2733         '202':
2734           description: Accepted
2735         '204':
2736           description: No Content
2737         '400':
2738           $ref: '#/components/responses/BadRequest'
2739         '401':
2740           $ref: '#/components/responses/Unauthorized'
2741         '403':
2742           $ref: '#/components/responses/Forbidden'
2743         '404':
2744           $ref: '#/components/responses/NotFound'
2745         '405':
2746           $ref: '#/components/responses/MethodNotAllowed'
2747         '406':
2748           $ref: '#/components/responses/NotAcceptable'
2749         '409':
2750           $ref: '#/components/responses/Conflict'
2751         '422':
2752           $ref: '#/components/responses/UnprocessableEntity'
2753         '500':
2754           $ref: '#/components/responses/InternalServerError'
2755         '503':
2756           $ref: '#/components/responses/ServiceUnavailable'
2757         '5XX':
2758           $ref: '#/components/responses/UnexpectedError'
2759         default:
2760           $ref: '#/components/responses/UnexpectedError'
2761   '/nst/v1/netslice_templates_content':
2762     post:
2763       tags:
2764         - "NetSlice templates"
2765       summary: Upload a NetSlice package by providing the content of the NetSlice package
2766       description: Upload a NetSlice package by providing the content of the NetSlice package
2767       operationId: uploadNstContent
2768       requestBody:
2769         content:
2770           application/zip:
2771             schema:
2772               $ref: '#/components/schemas/NetSlicePackage'
2773       responses:
2774         '201':
2775           description: Created
2776           headers:
2777             Location:
2778               schema:
2779                 type: string
2780                 format: uri
2781           content:
2782             application/json:
2783               schema:
2784                 $ref: '#/components/schemas/ObjectId'
2785             application/yaml:
2786               schema:
2787                 $ref: '#/components/schemas/ObjectId'
2788         '202':
2789           description: Accepted
2790         '204':
2791           description: No Content
2792         '400':
2793           $ref: '#/components/responses/BadRequest'
2794         '401':
2795           $ref: '#/components/responses/Unauthorized'
2796         '403':
2797           $ref: '#/components/responses/Forbidden'
2798         '404':
2799           $ref: '#/components/responses/NotFound'
2800         '405':
2801           $ref: '#/components/responses/MethodNotAllowed'
2802         '406':
2803           $ref: '#/components/responses/NotAcceptable'
2804         '409':
2805           $ref: '#/components/responses/Conflict'
2806         '422':
2807           $ref: '#/components/responses/UnprocessableEntity'
2808         '500':
2809           $ref: '#/components/responses/InternalServerError'
2810         '503':
2811           $ref: '#/components/responses/ServiceUnavailable'
2812         '5XX':
2813           $ref: '#/components/responses/UnexpectedError'
2814         default:
2815           $ref: '#/components/responses/UnexpectedError'
2816     get:
2817       tags:
2818         - "NetSlice templates"
2819       summary: Query information about multiple NetSlice Template resources
2820       description: Query information about multiple NetSlice Template resources
2821       operationId: getNstContent
2822       responses:
2823         '200':
2824           description: OK
2825           content:
2826             application/json:
2827               schema:
2828                 $ref: '#/components/schemas/ArrayOfNstInfo'
2829             application/yaml:
2830               schema:
2831                 $ref: '#/components/schemas/ArrayOfNstInfo'
2832         '206':
2833           description: Partial Content
2834           headers:
2835             Content-Range:
2836               schema:
2837                 type: string
2838           content:
2839             application/octet-stream:
2840               schema:
2841                 type: string
2842                 format: binary
2843         '400':
2844           $ref: '#/components/responses/BadRequest'
2845         '401':
2846           $ref: '#/components/responses/Unauthorized'
2847         '403':
2848           $ref: '#/components/responses/Forbidden'
2849         '404':
2850           $ref: '#/components/responses/NotFound'
2851         '405':
2852           $ref: '#/components/responses/MethodNotAllowed'
2853         '406':
2854           $ref: '#/components/responses/NotAcceptable'
2855         '409':
2856           $ref: '#/components/responses/Conflict'
2857         '422':
2858           $ref: '#/components/responses/UnprocessableEntity'
2859         '500':
2860           $ref: '#/components/responses/InternalServerError'
2861         '503':
2862           $ref: '#/components/responses/ServiceUnavailable'
2863         '5XX':
2864           $ref: '#/components/responses/UnexpectedError'
2865         default:
2866           $ref: '#/components/responses/UnexpectedError'
2867   '/nst/v1/netslice_templates_content/{netsliceTemplateContentId}':
2868     parameters:
2869       - name: netsliceTemplateContentId
2870         in: path
2871         required: true
2872         description: NetSlice Template ID
2873         schema:
2874           type: string
2875     get:
2876       tags:
2877         - "NetSlice templates"
2878       summary: Read information about an individual NetSlice Template resource
2879       description: Read information about an individual NetSlice Template resource
2880       operationId: getNstIdContent
2881       responses:
2882         '200':
2883           description: OK
2884           content:
2885             application/json:
2886               schema:
2887                 $ref: '#/components/schemas/NstInfo'
2888             application/yaml:
2889               schema:
2890                 $ref: '#/components/schemas/NstInfo'
2891         '400':
2892           $ref: '#/components/responses/BadRequest'
2893         '401':
2894           $ref: '#/components/responses/Unauthorized'
2895         '403':
2896           $ref: '#/components/responses/Forbidden'
2897         '404':
2898           $ref: '#/components/responses/NotFound'
2899         '405':
2900           $ref: '#/components/responses/MethodNotAllowed'
2901         '406':
2902           $ref: '#/components/responses/NotAcceptable'
2903         '409':
2904           $ref: '#/components/responses/Conflict'
2905         '422':
2906           $ref: '#/components/responses/UnprocessableEntity'
2907         '500':
2908           $ref: '#/components/responses/InternalServerError'
2909         '503':
2910           $ref: '#/components/responses/ServiceUnavailable'
2911         '5XX':
2912           $ref: '#/components/responses/UnexpectedError'
2913         default:
2914           $ref: '#/components/responses/UnexpectedError'
2915     put:
2916       tags:
2917         - "NetSlice templates"
2918       summary: Modify an individual NetSlice Template resource
2919       description: Modify an individual NetSlice Template resource
2920       operationId: updateNstIdContent
2921       requestBody:
2922         $ref: '#/components/requestBodies/NstInfoModifications'
2923       responses:
2924         '204':
2925           description: No Content
2926         '400':
2927           $ref: '#/components/responses/BadRequest'
2928         '401':
2929           $ref: '#/components/responses/Unauthorized'
2930         '403':
2931           $ref: '#/components/responses/Forbidden'
2932         '404':
2933           $ref: '#/components/responses/NotFound'
2934         '405':
2935           $ref: '#/components/responses/MethodNotAllowed'
2936         '406':
2937           $ref: '#/components/responses/NotAcceptable'
2938         '409':
2939           $ref: '#/components/responses/Conflict'
2940         '422':
2941           $ref: '#/components/responses/UnprocessableEntity'
2942         '500':
2943           $ref: '#/components/responses/InternalServerError'
2944         '503':
2945           $ref: '#/components/responses/ServiceUnavailable'
2946         '5XX':
2947           $ref: '#/components/responses/UnexpectedError'
2948         default:
2949           $ref: '#/components/responses/UnexpectedError'
2950     delete:
2951       tags:
2952         - "NetSlice templates"
2953       summary: Delete an individual NetSlice Template resource
2954       description: Delete an individual NetSlice Template resource
2955       operationId: deleteNstIdContent
2956       responses:
2957         '204':
2958           description: No Content
2959         '400':
2960           $ref: '#/components/responses/BadRequest'
2961         '401':
2962           $ref: '#/components/responses/Unauthorized'
2963         '403':
2964           $ref: '#/components/responses/Forbidden'
2965         '404':
2966           $ref: '#/components/responses/NotFound'
2967         '405':
2968           $ref: '#/components/responses/MethodNotAllowed'
2969         '406':
2970           $ref: '#/components/responses/NotAcceptable'
2971         '409':
2972           $ref: '#/components/responses/Conflict'
2973         '422':
2974           $ref: '#/components/responses/UnprocessableEntity'
2975         '500':
2976           $ref: '#/components/responses/InternalServerError'
2977         '503':
2978           $ref: '#/components/responses/ServiceUnavailable'
2979         '5XX':
2980           $ref: '#/components/responses/UnexpectedError'
2981         default:
2982           $ref: '#/components/responses/UnexpectedError'
2983 # END NetSlice Templates
2984
2985 # BEGIN NetSlice Instances
2986   '/nsilcm/v1/netslice_instances':
2987     get:
2988       tags:
2989         - "NetSlice instances"
2990       summary: Query information about multiple NetSlice instances
2991       description: Query information about multiple NetSlice isntances
2992       operationId: getNSIs
2993       responses:
2994         '200':
2995           description: OK
2996           content:
2997             application/json:
2998               schema:
2999                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3000             application/yaml:
3001               schema:
3002                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3003         '400':
3004           $ref: '#/components/responses/BadRequest'
3005         '401':
3006           $ref: '#/components/responses/Unauthorized'
3007         '403':
3008           $ref: '#/components/responses/Forbidden'
3009         '404':
3010           $ref: '#/components/responses/NotFound'
3011         '405':
3012           $ref: '#/components/responses/MethodNotAllowed'
3013         '406':
3014           $ref: '#/components/responses/NotAcceptable'
3015         '409':
3016           $ref: '#/components/responses/Conflict'
3017         '422':
3018           $ref: '#/components/responses/UnprocessableEntity'
3019         '500':
3020           $ref: '#/components/responses/InternalServerError'
3021         '503':
3022           $ref: '#/components/responses/ServiceUnavailable'
3023         '5XX':
3024           $ref: '#/components/responses/UnexpectedError'
3025         default:
3026           $ref: '#/components/responses/UnexpectedError'
3027     post:
3028       tags:
3029         - "NetSlice instances"
3030       summary: Create a new NetSlice instance resource
3031       description: Create a new NetSlice instance resource
3032       operationId: addNSI
3033       requestBody:
3034         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3035       responses:
3036         '201':
3037           description: Created
3038           headers:
3039             Location:
3040               schema:
3041                 type: string
3042                 format: uri
3043           content:
3044             application/json:
3045               schema:
3046                 $ref: '#/components/schemas/ObjectId'
3047             application/yaml:
3048               schema:
3049                 $ref: '#/components/schemas/ObjectId'
3050         '400':
3051           $ref: '#/components/responses/BadRequest'
3052         '401':
3053           $ref: '#/components/responses/Unauthorized'
3054         '403':
3055           $ref: '#/components/responses/Forbidden'
3056         '404':
3057           $ref: '#/components/responses/NotFound'
3058         '405':
3059           $ref: '#/components/responses/MethodNotAllowed'
3060         '406':
3061           $ref: '#/components/responses/NotAcceptable'
3062         '409':
3063           $ref: '#/components/responses/Conflict'
3064         '422':
3065           $ref: '#/components/responses/UnprocessableEntity'
3066         '500':
3067           $ref: '#/components/responses/InternalServerError'
3068         '503':
3069           $ref: '#/components/responses/ServiceUnavailable'
3070         '5XX':
3071           $ref: '#/components/responses/UnexpectedError'
3072         default:
3073           $ref: '#/components/responses/UnexpectedError'
3074   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}':
3075     parameters:
3076       - name: netsliceInstanceId
3077         in: path
3078         required: true
3079         description: NetSlice Instance ID
3080         schema:
3081           type: string
3082     get:
3083       tags:
3084         - "NetSlice instances"
3085       summary: Read an individual NetSlice instance resource
3086       description: Read an individual NetSlice instance resource
3087       operationId: getNSI
3088       responses:
3089         '200':
3090           description: OK
3091           content:
3092             application/json:
3093               schema:
3094                 $ref: '#/components/schemas/NetSliceInstance'
3095             application/yaml:
3096               schema:
3097                 $ref: '#/components/schemas/NetSliceInstance'
3098         '400':
3099           $ref: '#/components/responses/BadRequest'
3100         '401':
3101           $ref: '#/components/responses/Unauthorized'
3102         '403':
3103           $ref: '#/components/responses/Forbidden'
3104         '404':
3105           $ref: '#/components/responses/NotFound'
3106         '405':
3107           $ref: '#/components/responses/MethodNotAllowed'
3108         '406':
3109           $ref: '#/components/responses/NotAcceptable'
3110         '409':
3111           $ref: '#/components/responses/Conflict'
3112         '422':
3113           $ref: '#/components/responses/UnprocessableEntity'
3114         '500':
3115           $ref: '#/components/responses/InternalServerError'
3116         '503':
3117           $ref: '#/components/responses/ServiceUnavailable'
3118         '5XX':
3119           $ref: '#/components/responses/UnexpectedError'
3120         default:
3121           $ref: '#/components/responses/UnexpectedError'
3122     delete:
3123       tags:
3124         - "NetSlice instances"
3125       summary: Delete an individual NetSlice instance resource
3126       description: Delete an individual NetSlice instance resource
3127       operationId: deleteNSI
3128       responses:
3129         '204':
3130           description: No Content
3131         '400':
3132           $ref: '#/components/responses/BadRequest'
3133         '401':
3134           $ref: '#/components/responses/Unauthorized'
3135         '403':
3136           $ref: '#/components/responses/Forbidden'
3137         '404':
3138           $ref: '#/components/responses/NotFound'
3139         '405':
3140           $ref: '#/components/responses/MethodNotAllowed'
3141         '406':
3142           $ref: '#/components/responses/NotAcceptable'
3143         '409':
3144           $ref: '#/components/responses/Conflict'
3145         '422':
3146           $ref: '#/components/responses/UnprocessableEntity'
3147         '500':
3148           $ref: '#/components/responses/InternalServerError'
3149         '503':
3150           $ref: '#/components/responses/ServiceUnavailable'
3151         '5XX':
3152           $ref: '#/components/responses/UnexpectedError'
3153         default:
3154           $ref: '#/components/responses/UnexpectedError'
3155   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/instantiate':
3156     parameters:
3157       - name: netsliceInstanceId
3158         in: path
3159         required: true
3160         description: NetSlice Instance ID
3161         schema:
3162           type: string
3163     post:
3164       tags:
3165         - "NetSlice instances"
3166       summary: Instantiate a NetSlice
3167       description: |
3168         Instantiate a NetSlice. The precondition is that the NetSlice instance
3169         must have been created and must be in NOT_INSTANTIATED state. As a result
3170         of the success of this operation, the NFVO creates a "NetSlice Lifecycle
3171         Operation Occurrence" resource for the request, and the NS instance state
3172         becomes INSTANTIATED.
3173       operationId: instantiateNSI
3174       requestBody:
3175         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3176       responses:
3177         '202':
3178           description: Accepted
3179           headers:
3180             Location:
3181               description: |
3182                 It must point to the new "NetSlice Lifecycle Operation Occurrence"
3183                 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
3184               schema:
3185                 type: string
3186                 format: uri
3187           content:
3188             application/json:
3189               schema:
3190                 $ref: '#/components/schemas/ObjectId'
3191             application/yaml:
3192               schema:
3193                 $ref: '#/components/schemas/ObjectId'
3194         '400':
3195           $ref: '#/components/responses/BadRequest'
3196         '401':
3197           $ref: '#/components/responses/Unauthorized'
3198         '403':
3199           $ref: '#/components/responses/Forbidden'
3200         '404':
3201           $ref: '#/components/responses/NotFound'
3202         '405':
3203           $ref: '#/components/responses/MethodNotAllowed'
3204         '406':
3205           $ref: '#/components/responses/NotAcceptable'
3206         '409':
3207           $ref: '#/components/responses/Conflict'
3208         '422':
3209           $ref: '#/components/responses/UnprocessableEntity'
3210         '500':
3211           $ref: '#/components/responses/InternalServerError'
3212         '503':
3213           $ref: '#/components/responses/ServiceUnavailable'
3214         '5XX':
3215           $ref: '#/components/responses/UnexpectedError'
3216         default:
3217           $ref: '#/components/responses/UnexpectedError'
3218   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/terminate':
3219     parameters:
3220       - name: netsliceInstanceId
3221         in: path
3222         required: true
3223         description: NetSlice Instance ID
3224         schema:
3225           type: string
3226     post:
3227       tags:
3228         - "NetSlice instances"
3229       summary: Terminate a NetSlice instance
3230       description: |
3231         Terminate a NetSlice instance. The precondition is that the NetSlice instance
3232         must have been created and must be in INSTANTIATED state. As a result of the
3233         success of this operation, the NFVO creates a "NetSlice Lifecycle Operation
3234         Occurrence" resource for the request, and the NetSlice instance state becomes
3235         NOT_INSTANTIATED.
3236       operationId: terminateNSI
3237       requestBody:
3238         # Request data is not required
3239         $ref: '#/components/requestBodies/TerminateNsiRequest'
3240       responses:
3241         '202':
3242           description: Accepted
3243           headers:
3244             Location:
3245               description: |
3246                 It must point to the new "NetSlice Lifecycle Operation Occurrence"
3247                 resource, i.e. an URI like ".../nsi_lcm_op_occs/{nsiLcmOpOccId}"
3248               schema:
3249                 type: string
3250                 format: uri
3251           content:
3252             application/json:
3253               schema:
3254                 $ref: '#/components/schemas/ObjectId'
3255             application/yaml:
3256               schema:
3257                 $ref: '#/components/schemas/ObjectId'
3258         '400':
3259           $ref: '#/components/responses/BadRequest'
3260         '401':
3261           $ref: '#/components/responses/Unauthorized'
3262         '403':
3263           $ref: '#/components/responses/Forbidden'
3264         '404':
3265           $ref: '#/components/responses/NotFound'
3266         '405':
3267           $ref: '#/components/responses/MethodNotAllowed'
3268         '406':
3269           $ref: '#/components/responses/NotAcceptable'
3270         '409':
3271           $ref: '#/components/responses/Conflict'
3272         '422':
3273           $ref: '#/components/responses/UnprocessableEntity'
3274         '500':
3275           $ref: '#/components/responses/InternalServerError'
3276         '503':
3277           $ref: '#/components/responses/ServiceUnavailable'
3278         '5XX':
3279           $ref: '#/components/responses/UnexpectedError'
3280         default:
3281           $ref: '#/components/responses/UnexpectedError'
3282   '/nsilcm/v1/netslice_instances/{netsliceInstanceId}/action':
3283     parameters:
3284       - name: netsliceInstanceId
3285         in: path
3286         required: true
3287         description: NetSlice Instance ID
3288         schema:
3289           type: string
3290     post:
3291       tags:
3292         - "NetSlice instances"
3293       summary: Execute an action on a NetSlice instance
3294       description: |
3295         Execute an action on a NetSlice instance.
3296         The NetSlice instance must have been created and must be in INSTANTIATED state.
3297       operationId: actionOnNSI
3298       requestBody:
3299         content:
3300           application/json:
3301             schema:
3302               $ref: '#/components/schemas/NsiActionRequest'
3303           application/yaml:
3304             schema:
3305               $ref: '#/components/schemas/NsiActionRequest'
3306       responses:
3307         '202':
3308           description: Accepted
3309           headers:
3310             Location:
3311               description: |
3312                 It must point to the new "NS Lifecycle Operation Occurrence"
3313                 resource, i.e. an URI like ".../ns_lcm_op_occs/{nsLcmOpOccId}"
3314               schema:
3315                 type: string
3316                 format: uri
3317           content:
3318             application/json:
3319               schema:
3320                 $ref: '#/components/schemas/ObjectId'
3321             application/yaml:
3322               schema:
3323                 $ref: '#/components/schemas/ObjectId'
3324         '400':
3325           $ref: '#/components/responses/BadRequest'
3326         '401':
3327           $ref: '#/components/responses/Unauthorized'
3328         '403':
3329           $ref: '#/components/responses/Forbidden'
3330         '404':
3331           $ref: '#/components/responses/NotFound'
3332         '405':
3333           $ref: '#/components/responses/MethodNotAllowed'
3334         '406':
3335           $ref: '#/components/responses/NotAcceptable'
3336         '409':
3337           $ref: '#/components/responses/Conflict'
3338         '422':
3339           $ref: '#/components/responses/UnprocessableEntity'
3340         '500':
3341           $ref: '#/components/responses/InternalServerError'
3342         '503':
3343           $ref: '#/components/responses/ServiceUnavailable'
3344         '5XX':
3345           $ref: '#/components/responses/UnexpectedError'
3346         default:
3347           $ref: '#/components/responses/UnexpectedError'
3348   '/nsilcm/v1/netslice_instances_content':
3349     get:
3350       tags:
3351         - "NetSlice instances"
3352       summary: Query information about multiple NetSlice instances
3353       description: Query information about multiple NetSlice isntances
3354       operationId: getNSIsContent
3355       responses:
3356         '200':
3357           description: OK
3358           content:
3359             application/json:
3360               schema:
3361                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3362             application/yaml:
3363               schema:
3364                 $ref: '#/components/schemas/ArrayOfNetSliceInstance'
3365         '400':
3366           $ref: '#/components/responses/BadRequest'
3367         '401':
3368           $ref: '#/components/responses/Unauthorized'
3369         '403':
3370           $ref: '#/components/responses/Forbidden'
3371         '404':
3372           $ref: '#/components/responses/NotFound'
3373         '405':
3374           $ref: '#/components/responses/MethodNotAllowed'
3375         '406':
3376           $ref: '#/components/responses/NotAcceptable'
3377         '409':
3378           $ref: '#/components/responses/Conflict'
3379         '422':
3380           $ref: '#/components/responses/UnprocessableEntity'
3381         '500':
3382           $ref: '#/components/responses/InternalServerError'
3383         '503':
3384           $ref: '#/components/responses/ServiceUnavailable'
3385         '5XX':
3386           $ref: '#/components/responses/UnexpectedError'
3387         default:
3388           $ref: '#/components/responses/UnexpectedError'
3389     post:
3390       tags:
3391         - "NetSlice instances"
3392       summary: Create a new NetSlice instance
3393       description: Create a new NetSlice instance
3394       operationId: createNSIContent
3395       requestBody:
3396         $ref: '#/components/requestBodies/InstantiateNsiRequest'
3397       responses:
3398         '201':
3399           description: Created
3400           headers:
3401             Location:
3402               schema:
3403                 type: string
3404                 format: uri
3405           content:
3406             application/json:
3407               schema:
3408                 $ref: '#/components/schemas/CreateNsiContentResponse'
3409             application/yaml:
3410               schema:
3411                 $ref: '#/components/schemas/CreateNsiContentResponse'
3412         '400':
3413           $ref: '#/components/responses/BadRequest'
3414         '401':
3415           $ref: '#/components/responses/Unauthorized'
3416         '403':
3417           $ref: '#/components/responses/Forbidden'
3418         '404':
3419           $ref: '#/components/responses/NotFound'
3420         '405':
3421           $ref: '#/components/responses/MethodNotAllowed'
3422         '406':
3423           $ref: '#/components/responses/NotAcceptable'
3424         '409':
3425           $ref: '#/components/responses/Conflict'
3426         '422':
3427           $ref: '#/components/responses/UnprocessableEntity'
3428         '500':
3429           $ref: '#/components/responses/InternalServerError'
3430         '503':
3431           $ref: '#/components/responses/ServiceUnavailable'
3432         '5XX':
3433           $ref: '#/components/responses/UnexpectedError'
3434         default:
3435           $ref: '#/components/responses/UnexpectedError'
3436   '/nsilcm/v1/netslice_instances_content/{netsliceInstanceContentId}':
3437     parameters:
3438       - name: netsliceInstanceContentId
3439         in: path
3440         required: true
3441         description: NetSlice Instance Content ID
3442         schema:
3443           type: string
3444     get:
3445       tags:
3446         - "NetSlice instances"
3447       summary: Read an individual NetSlice instance resource
3448       description: Read an individual NetSlice instance resource
3449       operationId: getNSIContent
3450       responses:
3451         '200':
3452           description: OK
3453           content:
3454             application/json:
3455               schema:
3456                 $ref: '#/components/schemas/NetSliceInstance'
3457             application/yaml:
3458               schema:
3459                 $ref: '#/components/schemas/NetSliceInstance'
3460         '400':
3461           $ref: '#/components/responses/BadRequest'
3462         '401':
3463           $ref: '#/components/responses/Unauthorized'
3464         '403':
3465           $ref: '#/components/responses/Forbidden'
3466         '404':
3467           $ref: '#/components/responses/NotFound'
3468         '405':
3469           $ref: '#/components/responses/MethodNotAllowed'
3470         '406':
3471           $ref: '#/components/responses/NotAcceptable'
3472         '409':
3473           $ref: '#/components/responses/Conflict'
3474         '422':
3475           $ref: '#/components/responses/UnprocessableEntity'
3476         '500':
3477           $ref: '#/components/responses/InternalServerError'
3478         '503':
3479           $ref: '#/components/responses/ServiceUnavailable'
3480         '5XX':
3481           $ref: '#/components/responses/UnexpectedError'
3482         default:
3483           $ref: '#/components/responses/UnexpectedError'
3484     delete:
3485       tags:
3486         - "NetSlice instances"
3487       summary: Delete an individual NS instance resource
3488       description: Delete an individual NS instance resource
3489       operationId: deleteNSIContent
3490       responses:
3491         '202':
3492           description: Accepted
3493           content:
3494             application/json:
3495               schema:
3496                 $ref: '#/components/schemas/ObjectId'
3497             application/yaml:
3498               schema:
3499                 $ref: '#/components/schemas/ObjectId'
3500         '204':
3501           description: No Content
3502         '400':
3503           $ref: '#/components/responses/BadRequest'
3504         '401':
3505           $ref: '#/components/responses/Unauthorized'
3506         '403':
3507           $ref: '#/components/responses/Forbidden'
3508         '404':
3509           $ref: '#/components/responses/NotFound'
3510         '405':
3511           $ref: '#/components/responses/MethodNotAllowed'
3512         '406':
3513           $ref: '#/components/responses/NotAcceptable'
3514         '409':
3515           $ref: '#/components/responses/Conflict'
3516         '422':
3517           $ref: '#/components/responses/UnprocessableEntity'
3518         '500':
3519           $ref: '#/components/responses/InternalServerError'
3520         '503':
3521           $ref: '#/components/responses/ServiceUnavailable'
3522         '5XX':
3523           $ref: '#/components/responses/UnexpectedError'
3524         default:
3525           $ref: '#/components/responses/UnexpectedError'
3526   '/nsilcm/v1/nsi_lcm_op_occs':
3527     get:
3528       tags:
3529         - "NetSlice instances"
3530       summary: Query information about multiple NetSlice LCM Operation Occurrences
3531       description: Query information about multiple NetSlice LCM Operation Occurrences
3532       operationId: getNsiLcmOpOccs
3533       responses:
3534         '200':
3535           description: OK
3536           content:
3537             application/json:
3538               schema:
3539                 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3540             application/yaml:
3541               schema:
3542                 $ref: '#/components/schemas/ArrayOfNsiLcmOpOcc'
3543         '400':
3544           $ref: '#/components/responses/BadRequest'
3545         '401':
3546           $ref: '#/components/responses/Unauthorized'
3547         '403':
3548           $ref: '#/components/responses/Forbidden'
3549         '404':
3550           $ref: '#/components/responses/NotFound'
3551         '405':
3552           $ref: '#/components/responses/MethodNotAllowed'
3553         '406':
3554           $ref: '#/components/responses/NotAcceptable'
3555         '409':
3556           $ref: '#/components/responses/Conflict'
3557         '422':
3558           $ref: '#/components/responses/UnprocessableEntity'
3559         '500':
3560           $ref: '#/components/responses/InternalServerError'
3561         '503':
3562           $ref: '#/components/responses/ServiceUnavailable'
3563         '5XX':
3564           $ref: '#/components/responses/UnexpectedError'
3565         default:
3566           $ref: '#/components/responses/UnexpectedError'
3567   '/nsilcm/v1/nsi_lcm_op_occs/{nsiLcmOpOccId}':
3568     parameters:
3569       - name: nsiLcmOpOccId
3570         in: path
3571         required: true
3572         description: NetSlice LCM Operation Occurrence ID
3573         schema:
3574           type: string
3575     get:
3576       tags:
3577         - "NetSlice instances"
3578       summary: Query information about an individual NetSlice LCM Operation Occurrence
3579       description: Query information about an individual NetSlice LCM Operation Occurrence
3580       operationId: getNsiLcmOpOcc
3581       responses:
3582         '200':
3583           description: OK
3584           content:
3585             application/json:
3586               schema:
3587                 $ref: '#/components/schemas/NsiLcmOpOcc'
3588             application/yaml:
3589               schema:
3590                 $ref: '#/components/schemas/NsiLcmOpOcc'
3591         '400':
3592           $ref: '#/components/responses/BadRequest'
3593         '401':
3594           $ref: '#/components/responses/Unauthorized'
3595         '403':
3596           $ref: '#/components/responses/Forbidden'
3597         '404':
3598           $ref: '#/components/responses/NotFound'
3599         '405':
3600           $ref: '#/components/responses/MethodNotAllowed'
3601         '406':
3602           $ref: '#/components/responses/NotAcceptable'
3603         '409':
3604           $ref: '#/components/responses/Conflict'
3605         '422':
3606           $ref: '#/components/responses/UnprocessableEntity'
3607         '500':
3608           $ref: '#/components/responses/InternalServerError'
3609         '503':
3610           $ref: '#/components/responses/ServiceUnavailable'
3611         '5XX':
3612           $ref: '#/components/responses/UnexpectedError'
3613         default:
3614           $ref: '#/components/responses/UnexpectedError'
3615 # END NetSlice Instances
3616
3617 # BEGIN NSPM
3618   '/nspm/v1/pm_jobs/{pmJobId}/reports/{nsId}':
3619     parameters:
3620       - name: pmJobId
3621         in: path
3622         required: true
3623         description: NS PM Job ID
3624         schema:
3625           type: string
3626       - name: nsId
3627         in: path
3628         required: true
3629         description: NS ID
3630         schema:
3631           type: string
3632     get:
3633       tags:
3634         - "NS Performance Management"
3635       summary: Query information about an individual NS PM Job Report
3636       description: Query information about an individual NS PM Job Report
3637       operationId: getNsPmJobReport
3638       responses:
3639         '200':
3640           description: OK
3641           content:
3642             application/json:
3643               schema:
3644                 $ref: '#/components/schemas/NsPmJobReportInfo'
3645             application/yaml:
3646               schema:
3647                 $ref: '#/components/schemas/NsPmJobReportInfo'
3648         '400':
3649           $ref: '#/components/responses/BadRequest'
3650         '401':
3651           $ref: '#/components/responses/Unauthorized'
3652         '403':
3653           $ref: '#/components/responses/Forbidden'
3654         '404':
3655           $ref: '#/components/responses/NotFound'
3656         '405':
3657           $ref: '#/components/responses/MethodNotAllowed'
3658         '406':
3659           $ref: '#/components/responses/NotAcceptable'
3660         '409':
3661           $ref: '#/components/responses/Conflict'
3662         '422':
3663           $ref: '#/components/responses/UnprocessableEntity'
3664         '500':
3665           $ref: '#/components/responses/InternalServerError'
3666         '503':
3667           $ref: '#/components/responses/ServiceUnavailable'
3668         '5XX':
3669           $ref: '#/components/responses/UnexpectedError'
3670         default:
3671           $ref: '#/components/responses/UnexpectedError'
3672 # END NSPM
3673
3674 # BEGIN PDU
3675   '/pdu/v1/pdu_descriptors':
3676     get:
3677       tags:
3678         - "Physical Data Units (PDU)"
3679       summary: Query information about multiple PDU Descriptors
3680       description: Query information about multiple PDU Descriptors
3681       operationId: getPDUs
3682       responses:
3683         '200':
3684           description: OK
3685           content:
3686             application/json:
3687               schema:
3688                 $ref: '#/components/schemas/ArrayOfPduInfo'
3689             application/yaml:
3690               schema:
3691                 $ref: '#/components/schemas/ArrayOfPduInfo'
3692         '400':
3693           $ref: '#/components/responses/BadRequest'
3694         '401':
3695           $ref: '#/components/responses/Unauthorized'
3696         '403':
3697           $ref: '#/components/responses/Forbidden'
3698         '404':
3699           $ref: '#/components/responses/NotFound'
3700         '405':
3701           $ref: '#/components/responses/MethodNotAllowed'
3702         '406':
3703           $ref: '#/components/responses/NotAcceptable'
3704         '409':
3705           $ref: '#/components/responses/Conflict'
3706         '422':
3707           $ref: '#/components/responses/UnprocessableEntity'
3708         '500':
3709           $ref: '#/components/responses/InternalServerError'
3710         '503':
3711           $ref: '#/components/responses/ServiceUnavailable'
3712         '5XX':
3713           $ref: '#/components/responses/UnexpectedError'
3714         default:
3715           $ref: '#/components/responses/UnexpectedError'
3716     post:
3717       tags:
3718         - "Physical Data Units (PDU)"
3719       summary: Create a new PDU
3720       description: Create a new PDU Descriptor
3721       operationId: createPDU
3722       requestBody:
3723         $ref: '#/components/requestBodies/CreatePduRequest'
3724       responses:
3725         '200':
3726           description: OK
3727           headers:
3728             Location:
3729               schema:
3730                 type: string
3731                 format: uri
3732           content:
3733             application/json:
3734               schema:
3735                 $ref: '#/components/schemas/ObjectId'
3736             application/yaml:
3737               schema:
3738                 $ref: '#/components/schemas/ObjectId'
3739         '400':
3740           $ref: '#/components/responses/BadRequest'
3741         '401':
3742           $ref: '#/components/responses/Unauthorized'
3743         '403':
3744           $ref: '#/components/responses/Forbidden'
3745         '404':
3746           $ref: '#/components/responses/NotFound'
3747         '405':
3748           $ref: '#/components/responses/MethodNotAllowed'
3749         '406':
3750           $ref: '#/components/responses/NotAcceptable'
3751         '409':
3752           $ref: '#/components/responses/Conflict'
3753         '422':
3754           $ref: '#/components/responses/UnprocessableEntity'
3755         '500':
3756           $ref: '#/components/responses/InternalServerError'
3757         '503':
3758           $ref: '#/components/responses/ServiceUnavailable'
3759         '5XX':
3760           $ref: '#/components/responses/UnexpectedError'
3761         default:
3762           $ref: '#/components/responses/UnexpectedError'
3763   '/pdu/v1/pdu_descriptors/{pduDescriptorId}':
3764     parameters:
3765       - name: pduDescriptorId
3766         in: path
3767         required: true
3768         description: PDU Descriptor ID
3769         schema:
3770           type: string
3771     get:
3772       tags:
3773         - "Physical Data Units (PDU)"
3774       summary: Query information about an individual PDU Descriptor
3775       description: Query information about an individual PDU Descriptor
3776       operationId: getPDU
3777       responses:
3778         '200':
3779           description: OK
3780           content:
3781             application/json:
3782               schema:
3783                 $ref: '#/components/schemas/PduInfo'
3784             application/yaml:
3785               schema:
3786                 $ref: '#/components/schemas/PduInfo'
3787         '400':
3788           $ref: '#/components/responses/BadRequest'
3789         '401':
3790           $ref: '#/components/responses/Unauthorized'
3791         '403':
3792           $ref: '#/components/responses/Forbidden'
3793         '404':
3794           $ref: '#/components/responses/NotFound'
3795         '405':
3796           $ref: '#/components/responses/MethodNotAllowed'
3797         '406':
3798           $ref: '#/components/responses/NotAcceptable'
3799         '409':
3800           $ref: '#/components/responses/Conflict'
3801         '422':
3802           $ref: '#/components/responses/UnprocessableEntity'
3803         '500':
3804           $ref: '#/components/responses/InternalServerError'
3805         '503':
3806           $ref: '#/components/responses/ServiceUnavailable'
3807         '5XX':
3808           $ref: '#/components/responses/UnexpectedError'
3809         default:
3810           $ref: '#/components/responses/UnexpectedError'
3811     patch:
3812       tags:
3813         - "Physical Data Units (PDU)"
3814       summary: Modify an individual PDU Descriptor
3815       description: Modify an individual PDU Descriptor
3816       operationId: editPDU
3817       requestBody:
3818         $ref: '#/components/requestBodies/EditPduRequest'
3819       responses:
3820         '204':
3821           description: No Content
3822         '400':
3823           $ref: '#/components/responses/BadRequest'
3824         '401':
3825           $ref: '#/components/responses/Unauthorized'
3826         '403':
3827           $ref: '#/components/responses/Forbidden'
3828         '404':
3829           $ref: '#/components/responses/NotFound'
3830         '405':
3831           $ref: '#/components/responses/MethodNotAllowed'
3832         '406':
3833           $ref: '#/components/responses/NotAcceptable'
3834         '409':
3835           $ref: '#/components/responses/Conflict'
3836         '422':
3837           $ref: '#/components/responses/UnprocessableEntity'
3838         '500':
3839           $ref: '#/components/responses/InternalServerError'
3840         '503':
3841           $ref: '#/components/responses/ServiceUnavailable'
3842         '5XX':
3843           $ref: '#/components/responses/UnexpectedError'
3844         default:
3845           $ref: '#/components/responses/UnexpectedError'
3846     delete:
3847       tags:
3848         - "Physical Data Units (PDU)"
3849       summary: Delete an individual PDU Descriptor
3850       description: Delete an individual PDU Descriptor
3851       operationId: deletePDU
3852       responses:
3853         '204':
3854           description: No Content
3855         '400':
3856           $ref: '#/components/responses/BadRequest'
3857         '401':
3858           $ref: '#/components/responses/Unauthorized'
3859         '403':
3860           $ref: '#/components/responses/Forbidden'
3861         '404':
3862           $ref: '#/components/responses/NotFound'
3863         '405':
3864           $ref: '#/components/responses/MethodNotAllowed'
3865         '406':
3866           $ref: '#/components/responses/NotAcceptable'
3867         '409':
3868           $ref: '#/components/responses/Conflict'
3869         '422':
3870           $ref: '#/components/responses/UnprocessableEntity'
3871         '500':
3872           $ref: '#/components/responses/InternalServerError'
3873         '503':
3874           $ref: '#/components/responses/ServiceUnavailable'
3875         '5XX':
3876           $ref: '#/components/responses/UnexpectedError'
3877         default:
3878           $ref: '#/components/responses/UnexpectedError'
3879 # END PDU
3880
3881 # BEGIN Admin
3882   '/admin/v1/tokens':
3883     get:
3884       tags:
3885         - "Authentication"
3886         - "Admin"
3887       summary: Query information about multiple Tokens
3888       description: Query information about multiple Tokens
3889       operationId: getTokens
3890       responses:
3891         '200':
3892           description: OK
3893           content:
3894             application/json:
3895               schema:
3896                 $ref: '#/components/schemas/ArrayOfTokenInfo'
3897             application/yaml:
3898               schema:
3899                 $ref: '#/components/schemas/ArrayOfTokenInfo'
3900         '400':
3901           $ref: '#/components/responses/BadRequest'
3902         '401':
3903           $ref: '#/components/responses/Unauthorized'
3904         '403':
3905           $ref: '#/components/responses/Forbidden'
3906         '404':
3907           $ref: '#/components/responses/NotFound'
3908         '405':
3909           $ref: '#/components/responses/MethodNotAllowed'
3910         '406':
3911           $ref: '#/components/responses/NotAcceptable'
3912         '409':
3913           $ref: '#/components/responses/Conflict'
3914         '422':
3915           $ref: '#/components/responses/UnprocessableEntity'
3916         '500':
3917           $ref: '#/components/responses/InternalServerError'
3918         '503':
3919           $ref: '#/components/responses/ServiceUnavailable'
3920         '5XX':
3921           $ref: '#/components/responses/UnexpectedError'
3922         default:
3923           $ref: '#/components/responses/UnexpectedError'
3924     post:
3925       tags:
3926         - "Authentication"
3927         - "Admin"
3928       summary: Request a new Token
3929       description: Request a new Token
3930       operationId: createToken
3931       requestBody:
3932         $ref: '#/components/requestBodies/CreateTokenRequest'
3933       responses:
3934         '200':
3935           description: OK
3936           headers:
3937             Location:
3938               schema:
3939                 type: string
3940                 format: uri
3941           content:
3942             application/json:
3943               schema:
3944                 $ref: '#/components/schemas/TokenInfo'
3945             application/yaml:
3946               schema:
3947                 $ref: '#/components/schemas/TokenInfo'
3948         '400':
3949           $ref: '#/components/responses/BadRequest'
3950         '401':
3951           $ref: '#/components/responses/Unauthorized'
3952         '403':
3953           $ref: '#/components/responses/Forbidden'
3954         '404':
3955           $ref: '#/components/responses/NotFound'
3956         '405':
3957           $ref: '#/components/responses/MethodNotAllowed'
3958         '406':
3959           $ref: '#/components/responses/NotAcceptable'
3960         '409':
3961           $ref: '#/components/responses/Conflict'
3962         '422':
3963           $ref: '#/components/responses/UnprocessableEntity'
3964         '500':
3965           $ref: '#/components/responses/InternalServerError'
3966         '503':
3967           $ref: '#/components/responses/ServiceUnavailable'
3968         '5XX':
3969           $ref: '#/components/responses/UnexpectedError'
3970         default:
3971           $ref: '#/components/responses/UnexpectedError'
3972     delete:
3973       tags:
3974         - "Authentication"
3975         - "Admin"
3976       summary: Delete the Token indicated in the Authorization Header
3977       description: Delete the Token indicated in the Authorization Header
3978       operationId: deleteAuthToken
3979       responses:
3980         '200':
3981           description: OK
3982           content:
3983             application/json:
3984               schema:
3985                 type: string
3986             application/yaml:
3987               schema:
3988                 type: string
3989         '400':
3990           $ref: '#/components/responses/BadRequest'
3991         '401':
3992           $ref: '#/components/responses/Unauthorized'
3993         '403':
3994           $ref: '#/components/responses/Forbidden'
3995         '404':
3996           $ref: '#/components/responses/NotFound'
3997         '405':
3998           $ref: '#/components/responses/MethodNotAllowed'
3999         '406':
4000           $ref: '#/components/responses/NotAcceptable'
4001         '409':
4002           $ref: '#/components/responses/Conflict'
4003         '422':
4004           $ref: '#/components/responses/UnprocessableEntity'
4005         '500':
4006           $ref: '#/components/responses/InternalServerError'
4007         '503':
4008           $ref: '#/components/responses/ServiceUnavailable'
4009         '5XX':
4010           $ref: '#/components/responses/UnexpectedError'
4011         default:
4012           $ref: '#/components/responses/UnexpectedError'
4013   '/admin/v1/tokens/{tokenId}':
4014     parameters:
4015       - name: tokenId
4016         in: path
4017         required: true
4018         description: Token ID
4019         schema:
4020           type: string
4021     get:
4022       tags:
4023         - "Authentication"
4024         - "Admin"
4025       summary: Query information about an individual Token
4026       description: Query information about an individual Token
4027       operationId: getToken
4028       responses:
4029         '200':
4030           description: OK
4031           content:
4032             application/json:
4033               schema:
4034                 $ref: '#/components/schemas/TokenInfo'
4035             application/yaml:
4036               schema:
4037                 $ref: '#/components/schemas/TokenInfo'
4038         '400':
4039           $ref: '#/components/responses/BadRequest'
4040         '401':
4041           $ref: '#/components/responses/Unauthorized'
4042         '403':
4043           $ref: '#/components/responses/Forbidden'
4044         '404':
4045           $ref: '#/components/responses/NotFound'
4046         '405':
4047           $ref: '#/components/responses/MethodNotAllowed'
4048         '406':
4049           $ref: '#/components/responses/NotAcceptable'
4050         '409':
4051           $ref: '#/components/responses/Conflict'
4052         '422':
4053           $ref: '#/components/responses/UnprocessableEntity'
4054         '500':
4055           $ref: '#/components/responses/InternalServerError'
4056         '503':
4057           $ref: '#/components/responses/ServiceUnavailable'
4058         '5XX':
4059           $ref: '#/components/responses/UnexpectedError'
4060         default:
4061           $ref: '#/components/responses/UnexpectedError'
4062     delete:
4063       tags:
4064         - "Authentication"
4065         - "Admin"
4066       summary: Delete the Token indicated as parameter
4067       description: Delete the Token indicated as parameter
4068       operationId: deleteToken
4069       responses:
4070         '200':
4071           description: OK
4072           content:
4073             application/json:
4074               schema:
4075                 type: string
4076             application/yaml:
4077               schema:
4078                 type: string
4079         '400':
4080           $ref: '#/components/responses/BadRequest'
4081         '401':
4082           $ref: '#/components/responses/Unauthorized'
4083         '403':
4084           $ref: '#/components/responses/Forbidden'
4085         '404':
4086           $ref: '#/components/responses/NotFound'
4087         '405':
4088           $ref: '#/components/responses/MethodNotAllowed'
4089         '406':
4090           $ref: '#/components/responses/NotAcceptable'
4091         '409':
4092           $ref: '#/components/responses/Conflict'
4093         '422':
4094           $ref: '#/components/responses/UnprocessableEntity'
4095         '500':
4096           $ref: '#/components/responses/InternalServerError'
4097         '503':
4098           $ref: '#/components/responses/ServiceUnavailable'
4099         '5XX':
4100           $ref: '#/components/responses/UnexpectedError'
4101         default:
4102           $ref: '#/components/responses/UnexpectedError'
4103   '/admin/v1/users':
4104     get:
4105       tags:
4106         - "Identity"
4107         - "Admin"
4108       summary: Query information about multiple Users
4109       description: Query information about multiple Users
4110       operationId: getUsers
4111       responses:
4112         '200':
4113           description: OK
4114           content:
4115             application/json:
4116               schema:
4117                 $ref: '#/components/schemas/ArrayOfUserInfo'
4118             application/yaml:
4119               schema:
4120                 $ref: '#/components/schemas/ArrayOfUserInfo'
4121         '400':
4122           $ref: '#/components/responses/BadRequest'
4123         '401':
4124           $ref: '#/components/responses/Unauthorized'
4125         '403':
4126           $ref: '#/components/responses/Forbidden'
4127         '404':
4128           $ref: '#/components/responses/NotFound'
4129         '405':
4130           $ref: '#/components/responses/MethodNotAllowed'
4131         '406':
4132           $ref: '#/components/responses/NotAcceptable'
4133         '409':
4134           $ref: '#/components/responses/Conflict'
4135         '422':
4136           $ref: '#/components/responses/UnprocessableEntity'
4137         '500':
4138           $ref: '#/components/responses/InternalServerError'
4139         '503':
4140           $ref: '#/components/responses/ServiceUnavailable'
4141         '5XX':
4142           $ref: '#/components/responses/UnexpectedError'
4143         default:
4144           $ref: '#/components/responses/UnexpectedError'
4145     post:
4146       tags:
4147         - "Identity"
4148         - "Admin"
4149       summary: Create a new User
4150       description: Create a new User
4151       operationId: createUser
4152       requestBody:
4153         $ref: '#/components/requestBodies/CreateUserRequest'
4154       responses:
4155         '201':
4156           description: Created
4157           headers:
4158             Location:
4159               schema:
4160                 type: string
4161                 format: uri
4162           content:
4163             application/json:
4164               schema:
4165                 $ref: '#/components/schemas/ObjectId'
4166             application/yaml:
4167               schema:
4168                 $ref: '#/components/schemas/ObjectId'
4169         '400':
4170           $ref: '#/components/responses/BadRequest'
4171         '401':
4172           $ref: '#/components/responses/Unauthorized'
4173         '403':
4174           $ref: '#/components/responses/Forbidden'
4175         '404':
4176           $ref: '#/components/responses/NotFound'
4177         '405':
4178           $ref: '#/components/responses/MethodNotAllowed'
4179         '406':
4180           $ref: '#/components/responses/NotAcceptable'
4181         '409':
4182           $ref: '#/components/responses/Conflict'
4183         '422':
4184           $ref: '#/components/responses/UnprocessableEntity'
4185         '500':
4186           $ref: '#/components/responses/InternalServerError'
4187         '503':
4188           $ref: '#/components/responses/ServiceUnavailable'
4189         '5XX':
4190           $ref: '#/components/responses/UnexpectedError'
4191         default:
4192           $ref: '#/components/responses/UnexpectedError'
4193   '/admin/v1/users/{userId}':
4194     parameters:
4195       - name: userId
4196         in: path
4197         required: true
4198         description: User ID/Name
4199         schema:
4200           type: string
4201     get:
4202       tags:
4203         - "Identity"
4204         - "Admin"
4205       summary: Query information about an individual User
4206       description: Query information about an individual User
4207       operationId: getUser
4208       responses:
4209         '200':
4210           description: OK
4211           content:
4212             application/json:
4213               schema:
4214                 $ref: '#/components/schemas/UserInfo'
4215             application/yaml:
4216               schema:
4217                 $ref: '#/components/schemas/UserInfo'
4218         '400':
4219           $ref: '#/components/responses/BadRequest'
4220         '401':
4221           $ref: '#/components/responses/Unauthorized'
4222         '403':
4223           $ref: '#/components/responses/Forbidden'
4224         '404':
4225           $ref: '#/components/responses/NotFound'
4226         '405':
4227           $ref: '#/components/responses/MethodNotAllowed'
4228         '406':
4229           $ref: '#/components/responses/NotAcceptable'
4230         '409':
4231           $ref: '#/components/responses/Conflict'
4232         '422':
4233           $ref: '#/components/responses/UnprocessableEntity'
4234         '500':
4235           $ref: '#/components/responses/InternalServerError'
4236         '503':
4237           $ref: '#/components/responses/ServiceUnavailable'
4238         '5XX':
4239           $ref: '#/components/responses/UnexpectedError'
4240         default:
4241           $ref: '#/components/responses/UnexpectedError'
4242     patch:
4243       tags:
4244         - "Identity"
4245         - "Admin"
4246       summary: Modify a User
4247       description: Modify a User
4248       operationId: editUser
4249       requestBody:
4250         $ref: '#/components/requestBodies/EditUserRequest'
4251       responses:
4252         '204':
4253           description: No Content
4254         '400':
4255           $ref: '#/components/responses/BadRequest'
4256         '401':
4257           $ref: '#/components/responses/Unauthorized'
4258         '403':
4259           $ref: '#/components/responses/Forbidden'
4260         '404':
4261           $ref: '#/components/responses/NotFound'
4262         '405':
4263           $ref: '#/components/responses/MethodNotAllowed'
4264         '406':
4265           $ref: '#/components/responses/NotAcceptable'
4266         '409':
4267           $ref: '#/components/responses/Conflict'
4268         '422':
4269           $ref: '#/components/responses/UnprocessableEntity'
4270         '500':
4271           $ref: '#/components/responses/InternalServerError'
4272         '503':
4273           $ref: '#/components/responses/ServiceUnavailable'
4274         '5XX':
4275           $ref: '#/components/responses/UnexpectedError'
4276         default:
4277           $ref: '#/components/responses/UnexpectedError'
4278     delete:
4279       tags:
4280         - "Identity"
4281         - "Admin"
4282       summary: Delete a User
4283       description: Delete a User
4284       operationId: deleteUser
4285       responses:
4286         '204':
4287           description: No Content
4288         '400':
4289           $ref: '#/components/responses/BadRequest'
4290         '401':
4291           $ref: '#/components/responses/Unauthorized'
4292         '403':
4293           $ref: '#/components/responses/Forbidden'
4294         '404':
4295           $ref: '#/components/responses/NotFound'
4296         '405':
4297           $ref: '#/components/responses/MethodNotAllowed'
4298         '406':
4299           $ref: '#/components/responses/NotAcceptable'
4300         '409':
4301           $ref: '#/components/responses/Conflict'
4302         '422':
4303           $ref: '#/components/responses/UnprocessableEntity'
4304         '500':
4305           $ref: '#/components/responses/InternalServerError'
4306         '503':
4307           $ref: '#/components/responses/ServiceUnavailable'
4308         '5XX':
4309           $ref: '#/components/responses/UnexpectedError'
4310         default:
4311           $ref: '#/components/responses/UnexpectedError'
4312   '/admin/v1/projects':
4313     get:
4314       tags:
4315         - "Identity"
4316         - "Admin"
4317       summary: Query information about multiple Projects
4318       description: Query information about multiple Projects
4319       operationId: getProjects
4320       responses:
4321         '200':
4322           description: OK
4323           content:
4324             application/json:
4325               schema:
4326                 $ref: '#/components/schemas/ArrayOfProjectInfo'
4327             application/yaml:
4328               schema:
4329                 $ref: '#/components/schemas/ArrayOfProjectInfo'
4330         '400':
4331           $ref: '#/components/responses/BadRequest'
4332         '401':
4333           $ref: '#/components/responses/Unauthorized'
4334         '403':
4335           $ref: '#/components/responses/Forbidden'
4336         '404':
4337           $ref: '#/components/responses/NotFound'
4338         '405':
4339           $ref: '#/components/responses/MethodNotAllowed'
4340         '406':
4341           $ref: '#/components/responses/NotAcceptable'
4342         '409':
4343           $ref: '#/components/responses/Conflict'
4344         '422':
4345           $ref: '#/components/responses/UnprocessableEntity'
4346         '500':
4347           $ref: '#/components/responses/InternalServerError'
4348         '503':
4349           $ref: '#/components/responses/ServiceUnavailable'
4350         '5XX':
4351           $ref: '#/components/responses/UnexpectedError'
4352         default:
4353           $ref: '#/components/responses/UnexpectedError'
4354     post:
4355       tags:
4356         - "Identity"
4357         - "Admin"
4358       summary: Create a new Project
4359       description: Create a new Project
4360       operationId: createProject
4361       requestBody:
4362         $ref: '#/components/requestBodies/CreateProjectRequest'
4363       responses:
4364         '201':
4365           description: Created
4366           headers:
4367             Location:
4368               schema:
4369                 type: string
4370                 format: uri
4371           content:
4372             application/json:
4373               schema:
4374                 $ref: '#/components/schemas/ObjectId'
4375             application/yaml:
4376               schema:
4377                 $ref: '#/components/schemas/ObjectId'
4378         '400':
4379           $ref: '#/components/responses/BadRequest'
4380         '401':
4381           $ref: '#/components/responses/Unauthorized'
4382         '403':
4383           $ref: '#/components/responses/Forbidden'
4384         '404':
4385           $ref: '#/components/responses/NotFound'
4386         '405':
4387           $ref: '#/components/responses/MethodNotAllowed'
4388         '406':
4389           $ref: '#/components/responses/NotAcceptable'
4390         '409':
4391           $ref: '#/components/responses/Conflict'
4392         '422':
4393           $ref: '#/components/responses/UnprocessableEntity'
4394         '500':
4395           $ref: '#/components/responses/InternalServerError'
4396         '503':
4397           $ref: '#/components/responses/ServiceUnavailable'
4398         '5XX':
4399           $ref: '#/components/responses/UnexpectedError'
4400         default:
4401           $ref: '#/components/responses/UnexpectedError'
4402   '/admin/v1/projects/{projectId}':
4403     parameters:
4404       - name: projectId
4405         in: path
4406         required: true
4407         description: Project ID/Name
4408         schema:
4409           type: string
4410     get:
4411       tags:
4412         - "Identity"
4413         - "Admin"
4414       summary: Query information about an individual Project
4415       description: Query information about an individual Project
4416       operationId: getProject
4417       responses:
4418         '200':
4419           description: OK
4420           content:
4421             application/json:
4422               schema:
4423                 $ref: '#/components/schemas/ProjectInfo'
4424             application/yaml:
4425               schema:
4426                 $ref: '#/components/schemas/ProjectInfo'
4427         '400':
4428           $ref: '#/components/responses/BadRequest'
4429         '401':
4430           $ref: '#/components/responses/Unauthorized'
4431         '403':
4432           $ref: '#/components/responses/Forbidden'
4433         '404':
4434           $ref: '#/components/responses/NotFound'
4435         '405':
4436           $ref: '#/components/responses/MethodNotAllowed'
4437         '406':
4438           $ref: '#/components/responses/NotAcceptable'
4439         '409':
4440           $ref: '#/components/responses/Conflict'
4441         '422':
4442           $ref: '#/components/responses/UnprocessableEntity'
4443         '500':
4444           $ref: '#/components/responses/InternalServerError'
4445         '503':
4446           $ref: '#/components/responses/ServiceUnavailable'
4447         '5XX':
4448           $ref: '#/components/responses/UnexpectedError'
4449         default:
4450           $ref: '#/components/responses/UnexpectedError'
4451     patch:
4452       tags:
4453         - "Identity"
4454         - "Admin"
4455       summary: Modify a Project
4456       description: Modify a Project
4457       operationId: editProject
4458       requestBody:
4459         $ref: '#/components/requestBodies/EditProjectRequest'
4460       responses:
4461         '204':
4462           description: No Content
4463         '400':
4464           $ref: '#/components/responses/BadRequest'
4465         '401':
4466           $ref: '#/components/responses/Unauthorized'
4467         '403':
4468           $ref: '#/components/responses/Forbidden'
4469         '404':
4470           $ref: '#/components/responses/NotFound'
4471         '405':
4472           $ref: '#/components/responses/MethodNotAllowed'
4473         '406':
4474           $ref: '#/components/responses/NotAcceptable'
4475         '409':
4476           $ref: '#/components/responses/Conflict'
4477         '422':
4478           $ref: '#/components/responses/UnprocessableEntity'
4479         '500':
4480           $ref: '#/components/responses/InternalServerError'
4481         '503':
4482           $ref: '#/components/responses/ServiceUnavailable'
4483         '5XX':
4484           $ref: '#/components/responses/UnexpectedError'
4485         default:
4486           $ref: '#/components/responses/UnexpectedError'
4487     delete:
4488       tags:
4489         - "Identity"
4490         - "Admin"
4491       summary: Delete a Project
4492       description: Delete a Project
4493       operationId: deleteProject
4494       responses:
4495         '204':
4496           description: No Content
4497         '400':
4498           $ref: '#/components/responses/BadRequest'
4499         '401':
4500           $ref: '#/components/responses/Unauthorized'
4501         '403':
4502           $ref: '#/components/responses/Forbidden'
4503         '404':
4504           $ref: '#/components/responses/NotFound'
4505         '405':
4506           $ref: '#/components/responses/MethodNotAllowed'
4507         '406':
4508           $ref: '#/components/responses/NotAcceptable'
4509         '409':
4510           $ref: '#/components/responses/Conflict'
4511         '422':
4512           $ref: '#/components/responses/UnprocessableEntity'
4513         '500':
4514           $ref: '#/components/responses/InternalServerError'
4515         '503':
4516           $ref: '#/components/responses/ServiceUnavailable'
4517         '5XX':
4518           $ref: '#/components/responses/UnexpectedError'
4519         default:
4520           $ref: '#/components/responses/UnexpectedError'
4521   '/admin/v1/roles':
4522     get:
4523       tags:
4524         - "Identity"
4525         - "Admin"
4526       summary: Query information about multiple Roles
4527       description: Query information about multiple Roles
4528       operationId: getRoles
4529       responses:
4530         '200':
4531           description: OK
4532           content:
4533             application/json:
4534               schema:
4535                 $ref: '#/components/schemas/ArrayOfRoleInfo'
4536             application/yaml:
4537               schema:
4538                 $ref: '#/components/schemas/ArrayOfRoleInfo'
4539         '400':
4540           $ref: '#/components/responses/BadRequest'
4541         '401':
4542           $ref: '#/components/responses/Unauthorized'
4543         '403':
4544           $ref: '#/components/responses/Forbidden'
4545         '404':
4546           $ref: '#/components/responses/NotFound'
4547         '405':
4548           $ref: '#/components/responses/MethodNotAllowed'
4549         '406':
4550           $ref: '#/components/responses/NotAcceptable'
4551         '409':
4552           $ref: '#/components/responses/Conflict'
4553         '422':
4554           $ref: '#/components/responses/UnprocessableEntity'
4555         '500':
4556           $ref: '#/components/responses/InternalServerError'
4557         '503':
4558           $ref: '#/components/responses/ServiceUnavailable'
4559         '5XX':
4560           $ref: '#/components/responses/UnexpectedError'
4561         default:
4562           $ref: '#/components/responses/UnexpectedError'
4563     post:
4564       tags:
4565         - "Identity"
4566         - "Admin"
4567       summary: Create a new Role
4568       description: Create a new Role
4569       operationId: createRole
4570       requestBody:
4571         $ref: '#/components/requestBodies/CreateRoleRequest'
4572       responses:
4573         '201':
4574           description: Created
4575           headers:
4576             Location:
4577               schema:
4578                 type: string
4579                 format: uri
4580           content:
4581             application/json:
4582               schema:
4583                 $ref: '#/components/schemas/ObjectId'
4584             application/yaml:
4585               schema:
4586                 $ref: '#/components/schemas/ObjectId'
4587         '400':
4588           $ref: '#/components/responses/BadRequest'
4589         '401':
4590           $ref: '#/components/responses/Unauthorized'
4591         '403':
4592           $ref: '#/components/responses/Forbidden'
4593         '404':
4594           $ref: '#/components/responses/NotFound'
4595         '405':
4596           $ref: '#/components/responses/MethodNotAllowed'
4597         '406':
4598           $ref: '#/components/responses/NotAcceptable'
4599         '409':
4600           $ref: '#/components/responses/Conflict'
4601         '422':
4602           $ref: '#/components/responses/UnprocessableEntity'
4603         '500':
4604           $ref: '#/components/responses/InternalServerError'
4605         '503':
4606           $ref: '#/components/responses/ServiceUnavailable'
4607         '5XX':
4608           $ref: '#/components/responses/UnexpectedError'
4609         default:
4610           $ref: '#/components/responses/UnexpectedError'
4611   '/admin/v1/roles/{roleId}':
4612     parameters:
4613       - name: roleId
4614         in: path
4615         required: true
4616         description: Role ID/Name
4617         schema:
4618           type: string
4619     get:
4620       tags:
4621         - "Identity"
4622         - "Admin"
4623       summary: Query information about an individual Role
4624       description: Query information about an individual Role
4625       operationId: getRole
4626       responses:
4627         '200':
4628           description: OK
4629           content:
4630             application/json:
4631               schema:
4632                 $ref: '#/components/schemas/RoleInfo'
4633             application/yaml:
4634               schema:
4635                 $ref: '#/components/schemas/RoleInfo'
4636         '400':
4637           $ref: '#/components/responses/BadRequest'
4638         '401':
4639           $ref: '#/components/responses/Unauthorized'
4640         '403':
4641           $ref: '#/components/responses/Forbidden'
4642         '404':
4643           $ref: '#/components/responses/NotFound'
4644         '405':
4645           $ref: '#/components/responses/MethodNotAllowed'
4646         '406':
4647           $ref: '#/components/responses/NotAcceptable'
4648         '409':
4649           $ref: '#/components/responses/Conflict'
4650         '422':
4651           $ref: '#/components/responses/UnprocessableEntity'
4652         '500':
4653           $ref: '#/components/responses/InternalServerError'
4654         '503':
4655           $ref: '#/components/responses/ServiceUnavailable'
4656         '5XX':
4657           $ref: '#/components/responses/UnexpectedError'
4658         default:
4659           $ref: '#/components/responses/UnexpectedError'
4660     patch:
4661       tags:
4662         - "Identity"
4663         - "Admin"
4664       summary: Modify a Role
4665       description: Modify a Role
4666       operationId: editRole
4667       requestBody:
4668         $ref: '#/components/requestBodies/EditRoleRequest'
4669       responses:
4670         '204':
4671           description: No Content
4672         '400':
4673           $ref: '#/components/responses/BadRequest'
4674         '401':
4675           $ref: '#/components/responses/Unauthorized'
4676         '403':
4677           $ref: '#/components/responses/Forbidden'
4678         '404':
4679           $ref: '#/components/responses/NotFound'
4680         '405':
4681           $ref: '#/components/responses/MethodNotAllowed'
4682         '406':
4683           $ref: '#/components/responses/NotAcceptable'
4684         '409':
4685           $ref: '#/components/responses/Conflict'
4686         '422':
4687           $ref: '#/components/responses/UnprocessableEntity'
4688         '500':
4689           $ref: '#/components/responses/InternalServerError'
4690         '503':
4691           $ref: '#/components/responses/ServiceUnavailable'
4692         '5XX':
4693           $ref: '#/components/responses/UnexpectedError'
4694         default:
4695           $ref: '#/components/responses/UnexpectedError'
4696     delete:
4697       tags:
4698         - "Identity"
4699         - "Admin"
4700       summary: Delete a Role
4701       description: Delete a Role
4702       operationId: deleteRole
4703       responses:
4704         '204':
4705           description: No Content
4706         '400':
4707           $ref: '#/components/responses/BadRequest'
4708         '401':
4709           $ref: '#/components/responses/Unauthorized'
4710         '403':
4711           $ref: '#/components/responses/Forbidden'
4712         '404':
4713           $ref: '#/components/responses/NotFound'
4714         '405':
4715           $ref: '#/components/responses/MethodNotAllowed'
4716         '406':
4717           $ref: '#/components/responses/NotAcceptable'
4718         '409':
4719           $ref: '#/components/responses/Conflict'
4720         '422':
4721           $ref: '#/components/responses/UnprocessableEntity'
4722         '500':
4723           $ref: '#/components/responses/InternalServerError'
4724         '503':
4725           $ref: '#/components/responses/ServiceUnavailable'
4726         '5XX':
4727           $ref: '#/components/responses/UnexpectedError'
4728         default:
4729           $ref: '#/components/responses/UnexpectedError'
4730   '/admin/v1/vims':
4731     get:
4732       tags:
4733         - "Infrastructure"
4734         - "Admin"
4735       summary: Query information about multiple VIMs
4736       description: Query information about multiple VIMs
4737       operationId: getVIMs
4738       responses:
4739         '200':
4740           description: OK
4741           content:
4742             application/json:
4743               schema:
4744                 $ref: '#/components/schemas/ArrayOfVimInfo'
4745             application/yaml:
4746               schema:
4747                 $ref: '#/components/schemas/ArrayOfVimInfo'
4748         '400':
4749           $ref: '#/components/responses/BadRequest'
4750         '401':
4751           $ref: '#/components/responses/Unauthorized'
4752         '403':
4753           $ref: '#/components/responses/Forbidden'
4754         '404':
4755           $ref: '#/components/responses/NotFound'
4756         '405':
4757           $ref: '#/components/responses/MethodNotAllowed'
4758         '406':
4759           $ref: '#/components/responses/NotAcceptable'
4760         '409':
4761           $ref: '#/components/responses/Conflict'
4762         '422':
4763           $ref: '#/components/responses/UnprocessableEntity'
4764         '500':
4765           $ref: '#/components/responses/InternalServerError'
4766         '503':
4767           $ref: '#/components/responses/ServiceUnavailable'
4768         '5XX':
4769           $ref: '#/components/responses/UnexpectedError'
4770         default:
4771           $ref: '#/components/responses/UnexpectedError'
4772     post:
4773       tags:
4774         - "Infrastructure"
4775         - "Admin"
4776       summary: Create a new VIM
4777       description: Create a new VIM
4778       operationId: createVIM
4779       requestBody:
4780         $ref: '#/components/requestBodies/CreateVimRequest'
4781       responses:
4782         '202':
4783           description: Accepted
4784           content:
4785             application/json:
4786               schema:
4787                 $ref: '#/components/schemas/ObjectId_plus_OpId'
4788             application/yaml:
4789               schema:
4790                 $ref: '#/components/schemas/ObjectId_plus_OpId'
4791         '400':
4792           $ref: '#/components/responses/BadRequest'
4793         '401':
4794           $ref: '#/components/responses/Unauthorized'
4795         '403':
4796           $ref: '#/components/responses/Forbidden'
4797         '404':
4798           $ref: '#/components/responses/NotFound'
4799         '405':
4800           $ref: '#/components/responses/MethodNotAllowed'
4801         '406':
4802           $ref: '#/components/responses/NotAcceptable'
4803         '409':
4804           $ref: '#/components/responses/Conflict'
4805         '422':
4806           $ref: '#/components/responses/UnprocessableEntity'
4807         '500':
4808           $ref: '#/components/responses/InternalServerError'
4809         '503':
4810           $ref: '#/components/responses/ServiceUnavailable'
4811         '5XX':
4812           $ref: '#/components/responses/UnexpectedError'
4813         default:
4814           $ref: '#/components/responses/UnexpectedError'
4815   '/admin/v1/vims/{vimId}':
4816     parameters:
4817       - name: vimId
4818         in: path
4819         required: true
4820         description: VIM ID
4821         schema:
4822           type: string
4823           format: uuid
4824     get:
4825       tags:
4826         - "Infrastructure"
4827         - "Admin"
4828       summary: Query information about an individual VIM
4829       description: Query information about an individual VIM
4830       operationId: getVIM
4831       responses:
4832         '200':
4833           description: OK
4834           content:
4835             application/json:
4836               schema:
4837                 $ref: '#/components/schemas/VimInfo'
4838             application/yaml:
4839               schema:
4840                 $ref: '#/components/schemas/VimInfo'
4841         '400':
4842           $ref: '#/components/responses/BadRequest'
4843         '401':
4844           $ref: '#/components/responses/Unauthorized'
4845         '403':
4846           $ref: '#/components/responses/Forbidden'
4847         '404':
4848           $ref: '#/components/responses/NotFound'
4849         '405':
4850           $ref: '#/components/responses/MethodNotAllowed'
4851         '406':
4852           $ref: '#/components/responses/NotAcceptable'
4853         '409':
4854           $ref: '#/components/responses/Conflict'
4855         '422':
4856           $ref: '#/components/responses/UnprocessableEntity'
4857         '500':
4858           $ref: '#/components/responses/InternalServerError'
4859         '503':
4860           $ref: '#/components/responses/ServiceUnavailable'
4861         '5XX':
4862           $ref: '#/components/responses/UnexpectedError'
4863         default:
4864           $ref: '#/components/responses/UnexpectedError'
4865     patch:
4866       tags:
4867         - "Infrastructure"
4868         - "Admin"
4869       summary: Modify a VIM
4870       description: Modify a VIM
4871       operationId: editVIM
4872       requestBody:
4873         $ref: '#/components/requestBodies/EditVimRequest'
4874       responses:
4875         '202':
4876           description: Accepted
4877           content:
4878             application/json:
4879               schema:
4880                 $ref: '#/components/schemas/OpId'
4881             application/yaml:
4882               schema:
4883                 $ref: '#/components/schemas/OpId'
4884         '400':
4885           $ref: '#/components/responses/BadRequest'
4886         '401':
4887           $ref: '#/components/responses/Unauthorized'
4888         '403':
4889           $ref: '#/components/responses/Forbidden'
4890         '404':
4891           $ref: '#/components/responses/NotFound'
4892         '405':
4893           $ref: '#/components/responses/MethodNotAllowed'
4894         '406':
4895           $ref: '#/components/responses/NotAcceptable'
4896         '409':
4897           $ref: '#/components/responses/Conflict'
4898         '422':
4899           $ref: '#/components/responses/UnprocessableEntity'
4900         '500':
4901           $ref: '#/components/responses/InternalServerError'
4902         '503':
4903           $ref: '#/components/responses/ServiceUnavailable'
4904         '5XX':
4905           $ref: '#/components/responses/UnexpectedError'
4906         default:
4907           $ref: '#/components/responses/UnexpectedError'
4908     delete:
4909       tags:
4910         - "Infrastructure"
4911         - "Admin"
4912       summary: Delete a VIM
4913       description: Delete a VIM
4914       operationId: deleteVIM
4915       responses:
4916         '202':
4917           description: Accepted
4918         '400':
4919           $ref: '#/components/responses/BadRequest'
4920         '401':
4921           $ref: '#/components/responses/Unauthorized'
4922         '403':
4923           $ref: '#/components/responses/Forbidden'
4924         '404':
4925           $ref: '#/components/responses/NotFound'
4926         '405':
4927           $ref: '#/components/responses/MethodNotAllowed'
4928         '406':
4929           $ref: '#/components/responses/NotAcceptable'
4930         '409':
4931           $ref: '#/components/responses/Conflict'
4932         '422':
4933           $ref: '#/components/responses/UnprocessableEntity'
4934         '500':
4935           $ref: '#/components/responses/InternalServerError'
4936         '503':
4937           $ref: '#/components/responses/ServiceUnavailable'
4938         '5XX':
4939           $ref: '#/components/responses/UnexpectedError'
4940         default:
4941           $ref: '#/components/responses/UnexpectedError'
4942   '/admin/v1/vim_accounts':
4943     get:
4944       tags:
4945         - "Infrastructure"
4946         - "Admin"
4947       summary: Query information about multiple VIM Accounts
4948       description: Query information about multiple VIM Accounts
4949       operationId: getVimAccounts
4950       responses:
4951         '200':
4952           description: OK
4953           content:
4954             application/json:
4955               schema:
4956                 $ref: '#/components/schemas/ArrayOfVimInfo'
4957             application/yaml:
4958               schema:
4959                 $ref: '#/components/schemas/ArrayOfVimInfo'
4960         '400':
4961           $ref: '#/components/responses/BadRequest'
4962         '401':
4963           $ref: '#/components/responses/Unauthorized'
4964         '403':
4965           $ref: '#/components/responses/Forbidden'
4966         '404':
4967           $ref: '#/components/responses/NotFound'
4968         '405':
4969           $ref: '#/components/responses/MethodNotAllowed'
4970         '406':
4971           $ref: '#/components/responses/NotAcceptable'
4972         '409':
4973           $ref: '#/components/responses/Conflict'
4974         '422':
4975           $ref: '#/components/responses/UnprocessableEntity'
4976         '500':
4977           $ref: '#/components/responses/InternalServerError'
4978         '503':
4979           $ref: '#/components/responses/ServiceUnavailable'
4980         '5XX':
4981           $ref: '#/components/responses/UnexpectedError'
4982         default:
4983           $ref: '#/components/responses/UnexpectedError'
4984     post:
4985       tags:
4986         - "Infrastructure"
4987         - "Admin"
4988       summary: Create a new VIM Account
4989       description: Create a new VIM Account
4990       operationId: createVimAccount
4991       requestBody:
4992         $ref: '#/components/requestBodies/CreateVimRequest'
4993       responses:
4994         '202':
4995           description: Accepted
4996           content:
4997             application/json:
4998               schema:
4999                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5000             application/yaml:
5001               schema:
5002                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5003         '400':
5004           $ref: '#/components/responses/BadRequest'
5005         '401':
5006           $ref: '#/components/responses/Unauthorized'
5007         '403':
5008           $ref: '#/components/responses/Forbidden'
5009         '404':
5010           $ref: '#/components/responses/NotFound'
5011         '405':
5012           $ref: '#/components/responses/MethodNotAllowed'
5013         '406':
5014           $ref: '#/components/responses/NotAcceptable'
5015         '409':
5016           $ref: '#/components/responses/Conflict'
5017         '422':
5018           $ref: '#/components/responses/UnprocessableEntity'
5019         '500':
5020           $ref: '#/components/responses/InternalServerError'
5021         '503':
5022           $ref: '#/components/responses/ServiceUnavailable'
5023         '5XX':
5024           $ref: '#/components/responses/UnexpectedError'
5025         default:
5026           $ref: '#/components/responses/UnexpectedError'
5027   '/admin/v1/vim_accounts/{vimAccountId}':
5028     parameters:
5029       - name: vimAccountId
5030         in: path
5031         required: true
5032         description: VIM Account ID
5033         schema:
5034           type: string
5035           format: uuid
5036     get:
5037       tags:
5038         - "Infrastructure"
5039         - "Admin"
5040       summary: Query information about an individual VIM Account
5041       description: Query information about an individual VIM Account
5042       operationId: getVimAccount
5043       responses:
5044         '200':
5045           description: OK
5046           content:
5047             application/json:
5048               schema:
5049                 $ref: '#/components/schemas/VimInfo'
5050             application/yaml:
5051               schema:
5052                 $ref: '#/components/schemas/VimInfo'
5053         '400':
5054           $ref: '#/components/responses/BadRequest'
5055         '401':
5056           $ref: '#/components/responses/Unauthorized'
5057         '403':
5058           $ref: '#/components/responses/Forbidden'
5059         '404':
5060           $ref: '#/components/responses/NotFound'
5061         '405':
5062           $ref: '#/components/responses/MethodNotAllowed'
5063         '406':
5064           $ref: '#/components/responses/NotAcceptable'
5065         '409':
5066           $ref: '#/components/responses/Conflict'
5067         '422':
5068           $ref: '#/components/responses/UnprocessableEntity'
5069         '500':
5070           $ref: '#/components/responses/InternalServerError'
5071         '503':
5072           $ref: '#/components/responses/ServiceUnavailable'
5073         '5XX':
5074           $ref: '#/components/responses/UnexpectedError'
5075         default:
5076           $ref: '#/components/responses/UnexpectedError'
5077     patch:
5078       tags:
5079         - "Infrastructure"
5080         - "Admin"
5081       summary: Modify a VIM Account
5082       description: Modify a VIM Account
5083       operationId: editVimAccount
5084       requestBody:
5085         $ref: '#/components/requestBodies/EditVimRequest'
5086       responses:
5087         '202':
5088           description: Accepted
5089           content:
5090             application/json:
5091               schema:
5092                 $ref: '#/components/schemas/OpId'
5093             application/yaml:
5094               schema:
5095                 $ref: '#/components/schemas/OpId'
5096         '400':
5097           $ref: '#/components/responses/BadRequest'
5098         '401':
5099           $ref: '#/components/responses/Unauthorized'
5100         '403':
5101           $ref: '#/components/responses/Forbidden'
5102         '404':
5103           $ref: '#/components/responses/NotFound'
5104         '405':
5105           $ref: '#/components/responses/MethodNotAllowed'
5106         '406':
5107           $ref: '#/components/responses/NotAcceptable'
5108         '409':
5109           $ref: '#/components/responses/Conflict'
5110         '422':
5111           $ref: '#/components/responses/UnprocessableEntity'
5112         '500':
5113           $ref: '#/components/responses/InternalServerError'
5114         '503':
5115           $ref: '#/components/responses/ServiceUnavailable'
5116         '5XX':
5117           $ref: '#/components/responses/UnexpectedError'
5118         default:
5119           $ref: '#/components/responses/UnexpectedError'
5120     delete:
5121       tags:
5122         - "Infrastructure"
5123         - "Admin"
5124       summary: Delete a VIM Account
5125       description: Delete a VIM Account
5126       operationId: deleteVimAccount
5127       responses:
5128         '202':
5129           description: Accepted
5130         '400':
5131           $ref: '#/components/responses/BadRequest'
5132         '401':
5133           $ref: '#/components/responses/Unauthorized'
5134         '403':
5135           $ref: '#/components/responses/Forbidden'
5136         '404':
5137           $ref: '#/components/responses/NotFound'
5138         '405':
5139           $ref: '#/components/responses/MethodNotAllowed'
5140         '406':
5141           $ref: '#/components/responses/NotAcceptable'
5142         '409':
5143           $ref: '#/components/responses/Conflict'
5144         '422':
5145           $ref: '#/components/responses/UnprocessableEntity'
5146         '500':
5147           $ref: '#/components/responses/InternalServerError'
5148         '503':
5149           $ref: '#/components/responses/ServiceUnavailable'
5150         '5XX':
5151           $ref: '#/components/responses/UnexpectedError'
5152         default:
5153           $ref: '#/components/responses/UnexpectedError'
5154   '/admin/v1/wim_accounts':
5155     get:
5156       tags:
5157         - "Infrastructure"
5158         - "Admin"
5159       summary: Query information about multiple WIM Accounts
5160       description: Query information about multiple WIM Accounts
5161       operationId: getWimAccounts
5162       responses:
5163         '200':
5164           description: OK
5165           content:
5166             application/json:
5167               schema:
5168                 $ref: '#/components/schemas/ArrayOfWimInfo'
5169             application/yaml:
5170               schema:
5171                 $ref: '#/components/schemas/ArrayOfWimInfo'
5172         '400':
5173           $ref: '#/components/responses/BadRequest'
5174         '401':
5175           $ref: '#/components/responses/Unauthorized'
5176         '403':
5177           $ref: '#/components/responses/Forbidden'
5178         '404':
5179           $ref: '#/components/responses/NotFound'
5180         '405':
5181           $ref: '#/components/responses/MethodNotAllowed'
5182         '406':
5183           $ref: '#/components/responses/NotAcceptable'
5184         '409':
5185           $ref: '#/components/responses/Conflict'
5186         '422':
5187           $ref: '#/components/responses/UnprocessableEntity'
5188         '500':
5189           $ref: '#/components/responses/InternalServerError'
5190         '503':
5191           $ref: '#/components/responses/ServiceUnavailable'
5192         '5XX':
5193           $ref: '#/components/responses/UnexpectedError'
5194         default:
5195           $ref: '#/components/responses/UnexpectedError'
5196     post:
5197       tags:
5198         - "Infrastructure"
5199         - "Admin"
5200       summary: Create a new WIM Account
5201       description: Create a new WIM Account
5202       operationId: createWimAccount
5203       requestBody:
5204         $ref: '#/components/requestBodies/CreateWimRequest'
5205       responses:
5206         '202':
5207           description: Accepted
5208           content:
5209             application/json:
5210               schema:
5211                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5212             application/yaml:
5213               schema:
5214                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5215         '400':
5216           $ref: '#/components/responses/BadRequest'
5217         '401':
5218           $ref: '#/components/responses/Unauthorized'
5219         '403':
5220           $ref: '#/components/responses/Forbidden'
5221         '404':
5222           $ref: '#/components/responses/NotFound'
5223         '405':
5224           $ref: '#/components/responses/MethodNotAllowed'
5225         '406':
5226           $ref: '#/components/responses/NotAcceptable'
5227         '409':
5228           $ref: '#/components/responses/Conflict'
5229         '422':
5230           $ref: '#/components/responses/UnprocessableEntity'
5231         '500':
5232           $ref: '#/components/responses/InternalServerError'
5233         '503':
5234           $ref: '#/components/responses/ServiceUnavailable'
5235         '5XX':
5236           $ref: '#/components/responses/UnexpectedError'
5237         default:
5238           $ref: '#/components/responses/UnexpectedError'
5239   '/admin/v1/wim_accounts/{wimAccountId}':
5240     parameters:
5241       - name: wimAccountId
5242         in: path
5243         required: true
5244         description: WIM Account ID
5245         schema:
5246           type: string
5247           format: uuid
5248     get:
5249       tags:
5250         - "Infrastructure"
5251         - "Admin"
5252       summary: Query information about an individual WIM Account
5253       description: Query information about an individual WIM Account
5254       operationId: getWimAccount
5255       responses:
5256         '200':
5257           description: OK
5258           content:
5259             application/json:
5260               schema:
5261                 $ref: '#/components/schemas/WimInfo'
5262             application/yaml:
5263               schema:
5264                 $ref: '#/components/schemas/WimInfo'
5265         '400':
5266           $ref: '#/components/responses/BadRequest'
5267         '401':
5268           $ref: '#/components/responses/Unauthorized'
5269         '403':
5270           $ref: '#/components/responses/Forbidden'
5271         '404':
5272           $ref: '#/components/responses/NotFound'
5273         '405':
5274           $ref: '#/components/responses/MethodNotAllowed'
5275         '406':
5276           $ref: '#/components/responses/NotAcceptable'
5277         '409':
5278           $ref: '#/components/responses/Conflict'
5279         '422':
5280           $ref: '#/components/responses/UnprocessableEntity'
5281         '500':
5282           $ref: '#/components/responses/InternalServerError'
5283         '503':
5284           $ref: '#/components/responses/ServiceUnavailable'
5285         '5XX':
5286           $ref: '#/components/responses/UnexpectedError'
5287         default:
5288           $ref: '#/components/responses/UnexpectedError'
5289     patch:
5290       tags:
5291         - "Infrastructure"
5292         - "Admin"
5293       summary: Modify a WIM Account
5294       description: Modify a WIM Account
5295       operationId: editWimAccount
5296       requestBody:
5297         $ref: '#/components/requestBodies/EditWimRequest'
5298       responses:
5299         '202':
5300           description: Accepted
5301           content:
5302             application/json:
5303               schema:
5304                 $ref: '#/components/schemas/OpId'
5305             application/yaml:
5306               schema:
5307                 $ref: '#/components/schemas/OpId'
5308         '400':
5309           $ref: '#/components/responses/BadRequest'
5310         '401':
5311           $ref: '#/components/responses/Unauthorized'
5312         '403':
5313           $ref: '#/components/responses/Forbidden'
5314         '404':
5315           $ref: '#/components/responses/NotFound'
5316         '405':
5317           $ref: '#/components/responses/MethodNotAllowed'
5318         '406':
5319           $ref: '#/components/responses/NotAcceptable'
5320         '409':
5321           $ref: '#/components/responses/Conflict'
5322         '422':
5323           $ref: '#/components/responses/UnprocessableEntity'
5324         '500':
5325           $ref: '#/components/responses/InternalServerError'
5326         '503':
5327           $ref: '#/components/responses/ServiceUnavailable'
5328         '5XX':
5329           $ref: '#/components/responses/UnexpectedError'
5330         default:
5331           $ref: '#/components/responses/UnexpectedError'
5332     delete:
5333       tags:
5334         - "Infrastructure"
5335         - "Admin"
5336       summary: Delete a WIM Account
5337       description: Delete a WIM Account
5338       operationId: deleteWimAccount
5339       responses:
5340         '202':
5341           description: Accepted
5342         '400':
5343           $ref: '#/components/responses/BadRequest'
5344         '401':
5345           $ref: '#/components/responses/Unauthorized'
5346         '403':
5347           $ref: '#/components/responses/Forbidden'
5348         '404':
5349           $ref: '#/components/responses/NotFound'
5350         '405':
5351           $ref: '#/components/responses/MethodNotAllowed'
5352         '406':
5353           $ref: '#/components/responses/NotAcceptable'
5354         '409':
5355           $ref: '#/components/responses/Conflict'
5356         '422':
5357           $ref: '#/components/responses/UnprocessableEntity'
5358         '500':
5359           $ref: '#/components/responses/InternalServerError'
5360         '503':
5361           $ref: '#/components/responses/ServiceUnavailable'
5362         '5XX':
5363           $ref: '#/components/responses/UnexpectedError'
5364         default:
5365           $ref: '#/components/responses/UnexpectedError'
5366   '/admin/v1/sdns':
5367     get:
5368       tags:
5369         - "Infrastructure"
5370         - "Admin"
5371       summary: Query information about multiple SDNs
5372       description: Query information about multiple SDNs
5373       operationId: getSDNs
5374       responses:
5375         '200':
5376           description: OK
5377           content:
5378             application/json:
5379               schema:
5380                 $ref: '#/components/schemas/ArrayOfSdnInfo'
5381             application/yaml:
5382               schema:
5383                 $ref: '#/components/schemas/ArrayOfSdnInfo'
5384         '400':
5385           $ref: '#/components/responses/BadRequest'
5386         '401':
5387           $ref: '#/components/responses/Unauthorized'
5388         '403':
5389           $ref: '#/components/responses/Forbidden'
5390         '404':
5391           $ref: '#/components/responses/NotFound'
5392         '405':
5393           $ref: '#/components/responses/MethodNotAllowed'
5394         '406':
5395           $ref: '#/components/responses/NotAcceptable'
5396         '409':
5397           $ref: '#/components/responses/Conflict'
5398         '422':
5399           $ref: '#/components/responses/UnprocessableEntity'
5400         '500':
5401           $ref: '#/components/responses/InternalServerError'
5402         '503':
5403           $ref: '#/components/responses/ServiceUnavailable'
5404         '5XX':
5405           $ref: '#/components/responses/UnexpectedError'
5406         default:
5407           $ref: '#/components/responses/UnexpectedError'
5408     post:
5409       tags:
5410         - "Infrastructure"
5411         - "Admin"
5412       summary: Create a new SDN
5413       description: Create a new SDN
5414       operationId: createSDN
5415       requestBody:
5416         $ref: '#/components/requestBodies/CreateSdnRequest'
5417       responses:
5418         '202':
5419           description: Accepted
5420           content:
5421             application/json:
5422               schema:
5423                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5424             application/yaml:
5425               schema:
5426                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5427         '400':
5428           $ref: '#/components/responses/BadRequest'
5429         '401':
5430           $ref: '#/components/responses/Unauthorized'
5431         '403':
5432           $ref: '#/components/responses/Forbidden'
5433         '404':
5434           $ref: '#/components/responses/NotFound'
5435         '405':
5436           $ref: '#/components/responses/MethodNotAllowed'
5437         '406':
5438           $ref: '#/components/responses/NotAcceptable'
5439         '409':
5440           $ref: '#/components/responses/Conflict'
5441         '422':
5442           $ref: '#/components/responses/UnprocessableEntity'
5443         '500':
5444           $ref: '#/components/responses/InternalServerError'
5445         '503':
5446           $ref: '#/components/responses/ServiceUnavailable'
5447         '5XX':
5448           $ref: '#/components/responses/UnexpectedError'
5449         default:
5450           $ref: '#/components/responses/UnexpectedError'
5451   '/admin/v1/sdns/{sdnId}':
5452     parameters:
5453       - name: sdnId
5454         in: path
5455         required: true
5456         description: SDN ID
5457         schema:
5458           type: string
5459           format: uuid
5460     get:
5461       tags:
5462         - "Infrastructure"
5463         - "Admin"
5464       summary: Query information about an individual SDN
5465       description: Query information about an individual SDN
5466       operationId: getSDN
5467       responses:
5468         '200':
5469           description: OK
5470           content:
5471             application/json:
5472               schema:
5473                 $ref: '#/components/schemas/SdnInfo'
5474             application/yaml:
5475               schema:
5476                 $ref: '#/components/schemas/SdnInfo'
5477         '400':
5478           $ref: '#/components/responses/BadRequest'
5479         '401':
5480           $ref: '#/components/responses/Unauthorized'
5481         '403':
5482           $ref: '#/components/responses/Forbidden'
5483         '404':
5484           $ref: '#/components/responses/NotFound'
5485         '405':
5486           $ref: '#/components/responses/MethodNotAllowed'
5487         '406':
5488           $ref: '#/components/responses/NotAcceptable'
5489         '409':
5490           $ref: '#/components/responses/Conflict'
5491         '422':
5492           $ref: '#/components/responses/UnprocessableEntity'
5493         '500':
5494           $ref: '#/components/responses/InternalServerError'
5495         '503':
5496           $ref: '#/components/responses/ServiceUnavailable'
5497         '5XX':
5498           $ref: '#/components/responses/UnexpectedError'
5499         default:
5500           $ref: '#/components/responses/UnexpectedError'
5501     patch:
5502       tags:
5503         - "Infrastructure"
5504         - "Admin"
5505       summary: Modify a SDN
5506       description: Modify a SDN
5507       operationId: editSDN
5508       requestBody:
5509         $ref: '#/components/requestBodies/EditSdnRequest'
5510       responses:
5511         '202':
5512           description: Accepted
5513           content:
5514             application/json:
5515               schema:
5516                 $ref: '#/components/schemas/OpId'
5517             application/yaml:
5518               schema:
5519                 $ref: '#/components/schemas/OpId'
5520         '400':
5521           $ref: '#/components/responses/BadRequest'
5522         '401':
5523           $ref: '#/components/responses/Unauthorized'
5524         '403':
5525           $ref: '#/components/responses/Forbidden'
5526         '404':
5527           $ref: '#/components/responses/NotFound'
5528         '405':
5529           $ref: '#/components/responses/MethodNotAllowed'
5530         '406':
5531           $ref: '#/components/responses/NotAcceptable'
5532         '409':
5533           $ref: '#/components/responses/Conflict'
5534         '422':
5535           $ref: '#/components/responses/UnprocessableEntity'
5536         '500':
5537           $ref: '#/components/responses/InternalServerError'
5538         '503':
5539           $ref: '#/components/responses/ServiceUnavailable'
5540         '5XX':
5541           $ref: '#/components/responses/UnexpectedError'
5542         default:
5543           $ref: '#/components/responses/UnexpectedError'
5544     delete:
5545       tags:
5546         - "Infrastructure"
5547         - "Admin"
5548       summary: Delete a SDN
5549       description: Delete a SDN
5550       operationId: deleteSDN
5551       responses:
5552         '202':
5553           description: Accepted
5554         '400':
5555           $ref: '#/components/responses/BadRequest'
5556         '401':
5557           $ref: '#/components/responses/Unauthorized'
5558         '403':
5559           $ref: '#/components/responses/Forbidden'
5560         '404':
5561           $ref: '#/components/responses/NotFound'
5562         '405':
5563           $ref: '#/components/responses/MethodNotAllowed'
5564         '406':
5565           $ref: '#/components/responses/NotAcceptable'
5566         '409':
5567           $ref: '#/components/responses/Conflict'
5568         '422':
5569           $ref: '#/components/responses/UnprocessableEntity'
5570         '500':
5571           $ref: '#/components/responses/InternalServerError'
5572         '503':
5573           $ref: '#/components/responses/ServiceUnavailable'
5574         '5XX':
5575           $ref: '#/components/responses/UnexpectedError'
5576         default:
5577           $ref: '#/components/responses/UnexpectedError'
5578   '/admin/v1/k8sclusters':
5579     get:
5580       tags:
5581         - "Infrastructure"
5582         - "Admin"
5583       summary: Query information about multiple K8s Clusters
5584       description: Query information about multiple K8s Clusters
5585       operationId: getK8sClusters
5586       responses:
5587         '200':
5588           description: OK
5589           content:
5590             application/json:
5591               schema:
5592                 $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
5593             application/yaml:
5594               schema:
5595                 $ref: '#/components/schemas/ArrayOfK8sClusterInfo'
5596         '400':
5597           $ref: '#/components/responses/BadRequest'
5598         '401':
5599           $ref: '#/components/responses/Unauthorized'
5600         '403':
5601           $ref: '#/components/responses/Forbidden'
5602         '404':
5603           $ref: '#/components/responses/NotFound'
5604         '405':
5605           $ref: '#/components/responses/MethodNotAllowed'
5606         '406':
5607           $ref: '#/components/responses/NotAcceptable'
5608         '409':
5609           $ref: '#/components/responses/Conflict'
5610         '422':
5611           $ref: '#/components/responses/UnprocessableEntity'
5612         '500':
5613           $ref: '#/components/responses/InternalServerError'
5614         '503':
5615           $ref: '#/components/responses/ServiceUnavailable'
5616         '5XX':
5617           $ref: '#/components/responses/UnexpectedError'
5618         default:
5619           $ref: '#/components/responses/UnexpectedError'
5620     post:
5621       tags:
5622         - "Infrastructure"
5623         - "Admin"
5624       summary: Create a new K8s Cluster
5625       description: Create a new K8s Cluster
5626       operationId: createK8sCluster
5627       requestBody:
5628         $ref: '#/components/requestBodies/CreateK8sClusterRequest'
5629       responses:
5630         '202':
5631           description: Accepted
5632           content:
5633             application/json:
5634               schema:
5635                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5636             application/yaml:
5637               schema:
5638                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5639         '400':
5640           $ref: '#/components/responses/BadRequest'
5641         '401':
5642           $ref: '#/components/responses/Unauthorized'
5643         '403':
5644           $ref: '#/components/responses/Forbidden'
5645         '404':
5646           $ref: '#/components/responses/NotFound'
5647         '405':
5648           $ref: '#/components/responses/MethodNotAllowed'
5649         '406':
5650           $ref: '#/components/responses/NotAcceptable'
5651         '409':
5652           $ref: '#/components/responses/Conflict'
5653         '422':
5654           $ref: '#/components/responses/UnprocessableEntity'
5655         '500':
5656           $ref: '#/components/responses/InternalServerError'
5657         '503':
5658           $ref: '#/components/responses/ServiceUnavailable'
5659         '5XX':
5660           $ref: '#/components/responses/UnexpectedError'
5661         default:
5662           $ref: '#/components/responses/UnexpectedError'
5663   '/admin/v1/k8sclusters/{k8sClusterId}':
5664     parameters:
5665       - name: k8sClusterId
5666         in: path
5667         required: true
5668         description: K8s Cluster ID
5669         schema:
5670           type: string
5671           format: uuid
5672     get:
5673       tags:
5674         - "Infrastructure"
5675         - "Admin"
5676       summary: Query information about an individual K8s Cluster
5677       description: Query information about an individual K8s Cluster
5678       operationId: getK8sCluster
5679       responses:
5680         '200':
5681           description: OK
5682           content:
5683             application/json:
5684               schema:
5685                 $ref: '#/components/schemas/K8sClusterInfo'
5686             application/yaml:
5687               schema:
5688                 $ref: '#/components/schemas/K8sClusterInfo'
5689         '400':
5690           $ref: '#/components/responses/BadRequest'
5691         '401':
5692           $ref: '#/components/responses/Unauthorized'
5693         '403':
5694           $ref: '#/components/responses/Forbidden'
5695         '404':
5696           $ref: '#/components/responses/NotFound'
5697         '405':
5698           $ref: '#/components/responses/MethodNotAllowed'
5699         '406':
5700           $ref: '#/components/responses/NotAcceptable'
5701         '409':
5702           $ref: '#/components/responses/Conflict'
5703         '422':
5704           $ref: '#/components/responses/UnprocessableEntity'
5705         '500':
5706           $ref: '#/components/responses/InternalServerError'
5707         '503':
5708           $ref: '#/components/responses/ServiceUnavailable'
5709         '5XX':
5710           $ref: '#/components/responses/UnexpectedError'
5711         default:
5712           $ref: '#/components/responses/UnexpectedError'
5713     patch:
5714       tags:
5715         - "Infrastructure"
5716         - "Admin"
5717       summary: Modify a K8s Cluster
5718       description: Modify a K8s Cluster
5719       operationId: editK8sCluster
5720       requestBody:
5721         $ref: '#/components/requestBodies/EditK8sClusterRequest'
5722       responses:
5723         '202':
5724           description: Accepted
5725           content:
5726             application/json:
5727               schema:
5728                 $ref: '#/components/schemas/OpId'
5729             application/yaml:
5730               schema:
5731                 $ref: '#/components/schemas/OpId'
5732         '400':
5733           $ref: '#/components/responses/BadRequest'
5734         '401':
5735           $ref: '#/components/responses/Unauthorized'
5736         '403':
5737           $ref: '#/components/responses/Forbidden'
5738         '404':
5739           $ref: '#/components/responses/NotFound'
5740         '405':
5741           $ref: '#/components/responses/MethodNotAllowed'
5742         '406':
5743           $ref: '#/components/responses/NotAcceptable'
5744         '409':
5745           $ref: '#/components/responses/Conflict'
5746         '422':
5747           $ref: '#/components/responses/UnprocessableEntity'
5748         '500':
5749           $ref: '#/components/responses/InternalServerError'
5750         '503':
5751           $ref: '#/components/responses/ServiceUnavailable'
5752         '5XX':
5753           $ref: '#/components/responses/UnexpectedError'
5754         default:
5755           $ref: '#/components/responses/UnexpectedError'
5756     delete:
5757       tags:
5758         - "Infrastructure"
5759         - "Admin"
5760       summary: Delete a K8s Cluster
5761       description: Delete a K8s Cluster
5762       operationId: deleteK8sCluster
5763       responses:
5764         '202':
5765           description: Accepted
5766         '400':
5767           $ref: '#/components/responses/BadRequest'
5768         '401':
5769           $ref: '#/components/responses/Unauthorized'
5770         '403':
5771           $ref: '#/components/responses/Forbidden'
5772         '404':
5773           $ref: '#/components/responses/NotFound'
5774         '405':
5775           $ref: '#/components/responses/MethodNotAllowed'
5776         '406':
5777           $ref: '#/components/responses/NotAcceptable'
5778         '409':
5779           $ref: '#/components/responses/Conflict'
5780         '422':
5781           $ref: '#/components/responses/UnprocessableEntity'
5782         '500':
5783           $ref: '#/components/responses/InternalServerError'
5784         '503':
5785           $ref: '#/components/responses/ServiceUnavailable'
5786         '5XX':
5787           $ref: '#/components/responses/UnexpectedError'
5788         default:
5789           $ref: '#/components/responses/UnexpectedError'
5790   '/admin/v1/vca':
5791     get:
5792       tags:
5793         - "Infrastructure"
5794         - "Admin"
5795       summary: Query information about multiple VCAs
5796       description: Query information about multiple VCAs
5797       operationId: getVcas
5798       responses:
5799         '200':
5800           description: OK
5801           content:
5802             application/json:
5803               schema:
5804                 $ref: '#/components/schemas/ArrayOfVcaInfo'
5805             application/yaml:
5806               schema:
5807                 $ref: '#/components/schemas/ArrayOfVcaInfo'
5808         '400':
5809           $ref: '#/components/responses/BadRequest'
5810         '401':
5811           $ref: '#/components/responses/Unauthorized'
5812         '403':
5813           $ref: '#/components/responses/Forbidden'
5814         '404':
5815           $ref: '#/components/responses/NotFound'
5816         '405':
5817           $ref: '#/components/responses/MethodNotAllowed'
5818         '406':
5819           $ref: '#/components/responses/NotAcceptable'
5820         '409':
5821           $ref: '#/components/responses/Conflict'
5822         '422':
5823           $ref: '#/components/responses/UnprocessableEntity'
5824         '500':
5825           $ref: '#/components/responses/InternalServerError'
5826         '503':
5827           $ref: '#/components/responses/ServiceUnavailable'
5828         '5XX':
5829           $ref: '#/components/responses/UnexpectedError'
5830         default:
5831           $ref: '#/components/responses/UnexpectedError'
5832     post:
5833       tags:
5834         - "Infrastructure"
5835         - "Admin"
5836       summary: Create a new VCA
5837       description: Create a new VCA
5838       operationId: createVca
5839       requestBody:
5840         $ref: '#/components/requestBodies/CreateVcaRequest'
5841       responses:
5842         '202':
5843           description: Accepted
5844           content:
5845             application/json:
5846               schema:
5847                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5848             application/yaml:
5849               schema:
5850                 $ref: '#/components/schemas/ObjectId_plus_OpId'
5851         '400':
5852           $ref: '#/components/responses/BadRequest'
5853         '401':
5854           $ref: '#/components/responses/Unauthorized'
5855         '403':
5856           $ref: '#/components/responses/Forbidden'
5857         '404':
5858           $ref: '#/components/responses/NotFound'
5859         '405':
5860           $ref: '#/components/responses/MethodNotAllowed'
5861         '406':
5862           $ref: '#/components/responses/NotAcceptable'
5863         '409':
5864           $ref: '#/components/responses/Conflict'
5865         '422':
5866           $ref: '#/components/responses/UnprocessableEntity'
5867         '500':
5868           $ref: '#/components/responses/InternalServerError'
5869         '503':
5870           $ref: '#/components/responses/ServiceUnavailable'
5871         '5XX':
5872           $ref: '#/components/responses/UnexpectedError'
5873         default:
5874           $ref: '#/components/responses/UnexpectedError'
5875   '/admin/v1/vca/{vcaId}':
5876     parameters:
5877       - name: vcaId
5878         in: path
5879         required: true
5880         description: VCA ID
5881         schema:
5882           type: string
5883           format: uuid
5884     get:
5885       tags:
5886         - "Infrastructure"
5887         - "Admin"
5888       summary: Query information about an individual VCA
5889       description: Query information about an individual VCA
5890       operationId: getVca
5891       responses:
5892         '200':
5893           description: OK
5894           content:
5895             application/json:
5896               schema:
5897                 $ref: '#/components/schemas/VcaInfo'
5898             application/yaml:
5899               schema:
5900                 $ref: '#/components/schemas/VcaInfo'
5901         '400':
5902           $ref: '#/components/responses/BadRequest'
5903         '401':
5904           $ref: '#/components/responses/Unauthorized'
5905         '403':
5906           $ref: '#/components/responses/Forbidden'
5907         '404':
5908           $ref: '#/components/responses/NotFound'
5909         '405':
5910           $ref: '#/components/responses/MethodNotAllowed'
5911         '406':
5912           $ref: '#/components/responses/NotAcceptable'
5913         '409':
5914           $ref: '#/components/responses/Conflict'
5915         '422':
5916           $ref: '#/components/responses/UnprocessableEntity'
5917         '500':
5918           $ref: '#/components/responses/InternalServerError'
5919         '503':
5920           $ref: '#/components/responses/ServiceUnavailable'
5921         '5XX':
5922           $ref: '#/components/responses/UnexpectedError'
5923         default:
5924           $ref: '#/components/responses/UnexpectedError'
5925     patch:
5926       tags:
5927         - "Infrastructure"
5928         - "Admin"
5929       summary: Modify a VCA
5930       description: Modify a VCA
5931       operationId: editVca
5932       requestBody:
5933         $ref: '#/components/requestBodies/EditVcaRequest'
5934       responses:
5935         '202':
5936           description: Accepted
5937           content:
5938             application/json:
5939               schema:
5940                 $ref: '#/components/schemas/OpId'
5941             application/yaml:
5942               schema:
5943                 $ref: '#/components/schemas/OpId'
5944         '400':
5945           $ref: '#/components/responses/BadRequest'
5946         '401':
5947           $ref: '#/components/responses/Unauthorized'
5948         '403':
5949           $ref: '#/components/responses/Forbidden'
5950         '404':
5951           $ref: '#/components/responses/NotFound'
5952         '405':
5953           $ref: '#/components/responses/MethodNotAllowed'
5954         '406':
5955           $ref: '#/components/responses/NotAcceptable'
5956         '409':
5957           $ref: '#/components/responses/Conflict'
5958         '422':
5959           $ref: '#/components/responses/UnprocessableEntity'
5960         '500':
5961           $ref: '#/components/responses/InternalServerError'
5962         '503':
5963           $ref: '#/components/responses/ServiceUnavailable'
5964         '5XX':
5965           $ref: '#/components/responses/UnexpectedError'
5966         default:
5967           $ref: '#/components/responses/UnexpectedError'
5968     delete:
5969       tags:
5970         - "Infrastructure"
5971         - "Admin"
5972       summary: Delete a VCA
5973       description: Delete a VCA
5974       operationId: deleteVca
5975       responses:
5976         '202':
5977           description: Accepted
5978         '400':
5979           $ref: '#/components/responses/BadRequest'
5980         '401':
5981           $ref: '#/components/responses/Unauthorized'
5982         '403':
5983           $ref: '#/components/responses/Forbidden'
5984         '404':
5985           $ref: '#/components/responses/NotFound'
5986         '405':
5987           $ref: '#/components/responses/MethodNotAllowed'
5988         '406':
5989           $ref: '#/components/responses/NotAcceptable'
5990         '409':
5991           $ref: '#/components/responses/Conflict'
5992         '422':
5993           $ref: '#/components/responses/UnprocessableEntity'
5994         '500':
5995           $ref: '#/components/responses/InternalServerError'
5996         '503':
5997           $ref: '#/components/responses/ServiceUnavailable'
5998         '5XX':
5999           $ref: '#/components/responses/UnexpectedError'
6000         default:
6001           $ref: '#/components/responses/UnexpectedError'
6002   '/admin/v1/k8srepos':
6003     get:
6004       tags:
6005         - "Repositories"
6006         - "Admin"
6007       summary: Query information about multiple K8s Repos
6008       description: Query information about multiple K8s Repos
6009       operationId: getK8sRepos
6010       responses:
6011         '200':
6012           description: OK
6013           content:
6014             application/json:
6015               schema:
6016                 $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
6017             application/yaml:
6018               schema:
6019                 $ref: '#/components/schemas/ArrayOfK8sRepoInfo'
6020         '400':
6021           $ref: '#/components/responses/BadRequest'
6022         '401':
6023           $ref: '#/components/responses/Unauthorized'
6024         '403':
6025           $ref: '#/components/responses/Forbidden'
6026         '404':
6027           $ref: '#/components/responses/NotFound'
6028         '405':
6029           $ref: '#/components/responses/MethodNotAllowed'
6030         '406':
6031           $ref: '#/components/responses/NotAcceptable'
6032         '409':
6033           $ref: '#/components/responses/Conflict'
6034         '422':
6035           $ref: '#/components/responses/UnprocessableEntity'
6036         '500':
6037           $ref: '#/components/responses/InternalServerError'
6038         '503':
6039           $ref: '#/components/responses/ServiceUnavailable'
6040         '5XX':
6041           $ref: '#/components/responses/UnexpectedError'
6042         default:
6043           $ref: '#/components/responses/UnexpectedError'
6044     post:
6045       tags:
6046         - "Repositories"
6047         - "Admin"
6048       summary: Create a new K8s Repo
6049       description: Create a new K8s Repo
6050       operationId: createK8sRepo
6051       requestBody:
6052         $ref: '#/components/requestBodies/CreateK8sRepoRequest'
6053       responses:
6054         '202':
6055           description: Accepted
6056           content:
6057             application/json:
6058               schema:
6059                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6060             application/yaml:
6061               schema:
6062                 $ref: '#/components/schemas/ObjectId_plus_OpId'
6063         '400':
6064           $ref: '#/components/responses/BadRequest'
6065         '401':
6066           $ref: '#/components/responses/Unauthorized'
6067         '403':
6068           $ref: '#/components/responses/Forbidden'
6069         '404':
6070           $ref: '#/components/responses/NotFound'
6071         '405':
6072           $ref: '#/components/responses/MethodNotAllowed'
6073         '406':
6074           $ref: '#/components/responses/NotAcceptable'
6075         '409':
6076           $ref: '#/components/responses/Conflict'
6077         '422':
6078           $ref: '#/components/responses/UnprocessableEntity'
6079         '500':
6080           $ref: '#/components/responses/InternalServerError'
6081         '503':
6082           $ref: '#/components/responses/ServiceUnavailable'
6083         '5XX':
6084           $ref: '#/components/responses/UnexpectedError'
6085         default:
6086           $ref: '#/components/responses/UnexpectedError'
6087   '/admin/v1/k8srepos/{k8sRepoId}':
6088     parameters:
6089       - name: k8sRepoId
6090         in: path
6091         required: true
6092         description: K8s Repo ID
6093         schema:
6094           type: string
6095           format: uuid
6096     get:
6097       tags:
6098         - "Repositories"
6099         - "Admin"
6100       summary: Query information about an individual K8s Repo
6101       description: Query information about an individual K8s Repo
6102       operationId: getK8sRepo
6103       responses:
6104         '200':
6105           description: OK
6106           content:
6107             application/json:
6108               schema:
6109                 $ref: '#/components/schemas/K8sRepoInfo'
6110             application/yaml:
6111               schema:
6112                 $ref: '#/components/schemas/K8sRepoInfo'
6113         '400':
6114           $ref: '#/components/responses/BadRequest'
6115         '401':
6116           $ref: '#/components/responses/Unauthorized'
6117         '403':
6118           $ref: '#/components/responses/Forbidden'
6119         '404':
6120           $ref: '#/components/responses/NotFound'
6121         '405':
6122           $ref: '#/components/responses/MethodNotAllowed'
6123         '406':
6124           $ref: '#/components/responses/NotAcceptable'
6125         '409':
6126           $ref: '#/components/responses/Conflict'
6127         '422':
6128           $ref: '#/components/responses/UnprocessableEntity'
6129         '500':
6130           $ref: '#/components/responses/InternalServerError'
6131         '503':
6132           $ref: '#/components/responses/ServiceUnavailable'
6133         '5XX':
6134           $ref: '#/components/responses/UnexpectedError'
6135         default:
6136           $ref: '#/components/responses/UnexpectedError'
6137     delete:
6138       tags:
6139         - "Repositories"
6140         - "Admin"
6141       summary: Delete a K8s Repo
6142       description: Delete a K8s Repo
6143       operationId: deleteK8sRepo
6144       responses:
6145         '202':
6146           description: Accepted
6147         '400':
6148           $ref: '#/components/responses/BadRequest'
6149         '401':
6150           $ref: '#/components/responses/Unauthorized'
6151         '403':
6152           $ref: '#/components/responses/Forbidden'
6153         '404':
6154           $ref: '#/components/responses/NotFound'
6155         '405':
6156           $ref: '#/components/responses/MethodNotAllowed'
6157         '406':
6158           $ref: '#/components/responses/NotAcceptable'
6159         '409':
6160           $ref: '#/components/responses/Conflict'
6161         '422':
6162           $ref: '#/components/responses/UnprocessableEntity'
6163         '500':
6164           $ref: '#/components/responses/InternalServerError'
6165         '503':
6166           $ref: '#/components/responses/ServiceUnavailable'
6167         '5XX':
6168           $ref: '#/components/responses/UnexpectedError'
6169         default:
6170           $ref: '#/components/responses/UnexpectedError'
6171 # END Admin
6172
6173 externalDocs:
6174   description: Find out more about OSM
6175   url: 'https://osm.etsi.org/docs/user-guide/'
6176
6177 components:
6178   responses:
6179     BadRequest:
6180       description: Bad request. The server cannot process the request due to a client error.
6181       content:
6182         application/json:
6183           schema:
6184             $ref: '#/components/schemas/ProblemDetails'
6185     Unauthorized:
6186       description: Authorization information is missing or invalid.
6187       content:
6188         application/json:
6189           schema:
6190             $ref: '#/components/schemas/ProblemDetails'
6191     Forbidden:
6192       description: Not enough permissions to do this operation.
6193       content:
6194         application/json:
6195           schema:
6196             $ref: '#/components/schemas/ProblemDetails'
6197     NotFound:
6198       description: The specified resource was not found.
6199       content:
6200         application/json:
6201           schema:
6202             $ref: '#/components/schemas/ProblemDetails'
6203     MethodNotAllowed:
6204       description: This method is not supported for the requested resource.
6205       content:
6206         application/json:
6207           schema:
6208             $ref: '#/components/schemas/ProblemDetails'
6209     NotAcceptable:
6210       description: The requested resource content cannot match the Accept headers sent in the request.
6211       content:
6212         application/json:
6213           schema:
6214             $ref: '#/components/schemas/ProblemDetails'
6215     Conflict:
6216       description: The operation cannot be executed currently, due to a conflict with the state of the resource.
6217       content:
6218         application/json:
6219           schema:
6220             $ref: '#/components/schemas/ProblemDetails'
6221     UnprocessableEntity:
6222       description: The request was well-formed but was unable to be followed due to semantic errors.
6223       content:
6224         application/json:
6225           schema:
6226             $ref: '#/components/schemas/ProblemDetails'
6227     InternalServerError:
6228       description: Internal server error.
6229       content:
6230         application/json:
6231           schema:
6232             $ref: '#/components/schemas/ProblemDetails'
6233     ServiceUnavailable:
6234       description: Service temporarily unavailable.
6235       content:
6236         application/json:
6237           schema:
6238             $ref: '#/components/schemas/ProblemDetails'
6239     UnexpectedError:
6240       description: Unexpected error.
6241       content:
6242         application/json:
6243           schema:
6244             $ref: '#/components/schemas/ProblemDetails'
6245     VnfDescriptor:
6246       description: VNF Descriptor (plaintext)
6247       content:
6248         text/plain:
6249           schema:
6250             $ref: '#/components/schemas/VnfDescriptor'
6251     VnfPackage:
6252       description: VNF Package (compressed)
6253       content:
6254         application/zip:
6255           schema:
6256             $ref: '#/components/schemas/VnfPackage'
6257     NsDescriptor:
6258       description: NS Descriptor (plaintext)
6259       content:
6260         text/plain:
6261           schema:
6262             $ref: '#/components/schemas/NsDescriptor'
6263     NsPackage:
6264       description: NS Package (compressed)
6265       content:
6266         application/zip:
6267           schema:
6268             $ref: '#/components/schemas/NsPackage'
6269     NetSliceTemplate:
6270       description: NetSlice Template (plaintext)
6271       content:
6272         text/plain:
6273           schema:
6274             $ref: '#/components/schemas/NetSliceTemplate'
6275     NetSlicePackage:
6276       description: NetSlice Package (compressed)
6277       content:
6278         application/zip:
6279           schema:
6280             $ref: '#/components/schemas/NetSlicePackage'
6281     NslcmSubscriptionResponse:
6282       description: NslcmSubscriptionResponse
6283       content:
6284         application/json:
6285           schema:
6286             $ref: '#/components/schemas/NslcmSubscriptionResponse'
6287         application/yaml:
6288           schema:
6289             $ref: '#/components/schemas/NslcmSubscriptionResponse'
6290   # END RESPONSES
6291
6292   schemas:
6293     ObjectId:
6294       type: object
6295       properties:
6296         id:
6297           type: string
6298           format: uuid
6299     KeyValuePairs:
6300       # A free list of key:value pairs
6301       type: object
6302       additionalProperties: true
6303     NsDescriptor:
6304       type: string
6305       format: yaml|json
6306     NsPackage:
6307       type: string
6308       format: binary
6309     CreateNsdInfoRequest:
6310       # A free list of key:value pairs
6311       type: object
6312       additionalProperties: true
6313     NsdInfoModifications:
6314       description: |
6315         NS Descriptor Information
6316         Only generic fields (id, name, description) are described
6317         For a full specification of the NS Descriptor see:
6318         http://osm-download.etsi.org/ftp/osm-doc/nsd.html
6319       type: object
6320       properties:
6321         id:
6322           description: NSD Identifier
6323           type: string
6324         name:
6325           description: NSD Name
6326           type: string
6327         description:
6328           description: NSD Description
6329           type: string
6330     AlarmInfoModifications:
6331       description: |
6332         Alarm Information
6333       type: object
6334       properties:
6335         id:
6336           description: UUID
6337           type: string
6338         is_enable:
6339           description: To enable/disable the alarm.
6340           type: string
6341         threshold:
6342           description: Threshold value of the Alarm
6343           type: string
6344     NsdInfo:
6345       description: |
6346         NS Descriptor Information
6347         Only generic fields (_id, id, name, description) are described
6348         For a full specification of the NS Descriptor see:
6349         http://osm-download.etsi.org/ftp/osm-doc/nsd.html
6350       type: object
6351       properties:
6352         _id:
6353           description: |
6354             Identifier of the onboarded individual NS descriptor
6355             resource. This identifier is allocated by the NFVO.
6356           type: string
6357           format: uuid
6358         id:
6359           description: |
6360             This identifier, which is allocated by the NSD
6361             designer, identifies the NSD in a globally unique
6362             way. It is copied from the NSD content and shall be
6363             present after the NSD content is on-boarded.
6364           type: string
6365         name:
6366           description: |
6367             Name of the onboarded NSD. This information is
6368             copied from the NSD content and shall be present
6369             after the NSD content is on-boarded.
6370           type: string
6371         description:
6372           description: |
6373             Description of the onboarded NSD.
6374             This information is copied from the NSD content.
6375           type: string
6376       required:
6377         - _id
6378         - id
6379     ArrayOfNsdInfo:
6380       type: array
6381       items:
6382         $ref: '#/components/schemas/NsdInfo'
6383     ProblemDetails:
6384       type: object
6385       properties:
6386         type:
6387           type: string
6388           format: uri
6389         title:
6390           type: string
6391         status:
6392           type: integer
6393         detail:
6394           type: string
6395         instance:
6396           type: string
6397           format: uri
6398       additionalProperties: true
6399       required:
6400         - status
6401         - detail
6402     VnfDescriptor:
6403       type: string
6404       format: yaml|json
6405     VnfPackage:
6406       type: string
6407       format: binary
6408     CreateVnfPkgInfoRequest:
6409       # A free list of key:value pairs
6410       type: object
6411       additionalProperties: true
6412     VnfPkgInfoModifications:
6413       description: |
6414         VNF Package Information
6415         Only generic fields (id, name, description) are described
6416         For a full specification of the VNF Descriptor see:
6417         http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
6418       type: object
6419       properties:
6420         id:
6421           description: VNF Package Identifier
6422           type: string
6423         name:
6424           description: VNF Package Name
6425           type: string
6426         description:
6427           description: VNF Package description
6428           type: string
6429     VnfPkgInfo:
6430       description: |
6431         VNF Package Information
6432         Only generic fields (_id, id, name, description) are described
6433         For a full specification of the VNF Descriptor see:
6434         http://osm-download.etsi.org/ftp/osm-doc/vnfd.html
6435       type: object
6436       properties:
6437         _id:
6438           description: |
6439             Identifier of the VNF package. This identifier is allocated by the NFVO.
6440           type: string
6441           format: uuid
6442         id:
6443           description: VNF Package Identifier
6444           type: string
6445         name:
6446           description: VNF Package Name
6447           type: string
6448         description:
6449           description: VNF Package description
6450           type: string
6451       required:
6452         - _id
6453         - id
6454     ArrayOfVnfPkgInfo:
6455       type: array
6456       items:
6457         $ref: '#/components/schemas/VnfPkgInfo'
6458     # CreateNsRequest:
6459       # Substituted by InstantiateNsRequest
6460     NsInstance:
6461       description: |
6462         NS Instance Information
6463         Only generic fields (_id, id, name, description) are described
6464         For a full specification of the NS Instance see:
6465         http://osm-download.etsi.org/ftp/osm-doc/nsr.html
6466       type: object
6467       properties:
6468         _id:
6469           description: Identifier of the NS instance.
6470           type: string
6471           format: uuid
6472         id:
6473           description: Identifier of the NS instance.
6474           type: string
6475           format: uuid
6476         name:
6477           description: Human readable name of the NS instance.
6478           type: string
6479         description:
6480           description: Human readable description of the NS instance.
6481           type: string
6482       required:
6483         - _id
6484         - id
6485         - name
6486     InstantiateNsRequest:
6487       type: object
6488       properties:
6489         nsName:
6490           description: |
6491             Human-readable name of the NS instance to be created.
6492           type: string
6493         nsdId:
6494           description: |
6495             Identifier of the NSD that defines the NS instance to be created.
6496           type: string
6497           format: uuid
6498         vimAccountId:
6499           description: |
6500             Identifier of the VIM Account where the NS instance shall be created.
6501           type: string
6502           format: uuid
6503         lcmOperationType:
6504           type: string
6505         nsInstanceId:
6506           type: string
6507           format: uuid
6508         netsliceInstanceId:
6509           type: string
6510           format: uuid
6511         nsDescription:
6512           type: string
6513           nullable: true
6514         wimAccountId:
6515           oneOf:
6516             - type: string
6517             - type: boolean
6518           nullable: true
6519         additionalParamsForNs:
6520           type: object
6521           additionalProperties: true
6522         additionalParamsForVnf: &additionalparamsforvnf
6523           type: array
6524           items:
6525             type: object
6526             properties:
6527               member-vnf-index:
6528                 type: string
6529               additionalParams:
6530                 type: object
6531                 additionalProperties: true
6532               k8s-namespace:
6533                 type: string
6534                 description: |
6535                   use this namespace for all the KDU deployed in this VNF
6536                   (if any). By default it is used the id of the project
6537               additionalParamsForVdu:
6538                 type: array
6539                 items:
6540                   type: object
6541                   properties:
6542                     vdu_id:
6543                       type: string
6544                     additionalParams:
6545                       type: object
6546                       additionalProperties: true
6547                   required:
6548                     - vdu_id
6549                     - additionalParams
6550                   additionalProperties: false
6551               additionalParamsForKdu:
6552                 type: array
6553                 items:
6554                   type: object
6555                   properties:
6556                     kdu_name:
6557                       type: string
6558                     k8s-namespace:
6559                       type: string
6560                       description: use this namespace for this KDU
6561                     kdu_model:
6562                       type: string
6563                     additionalParams:
6564                       type: object
6565                       additionalProperties: true
6566                   required:
6567                     - kdu_name
6568                   minProperties: 2
6569                   additionalProperties: false
6570             required:
6571               - member-vnf-index
6572             minProperties: 2
6573             additionalProperties: false
6574         ssh_keys:
6575           type: array
6576           items:
6577             type: string
6578         nsr_id:
6579           type: string
6580           format: uuid
6581         vduImage:
6582           type: string
6583         placement-engine:
6584           type: string
6585           description: |
6586            To compute automatically the target VIM for each VNF based on 
6587            constrains, e.g. latency. Currently only 'PLA' is supported
6588         placement-constraints:
6589           type: object
6590           additionalProperties: true
6591         k8s-namespace:
6592           type: string
6593         timeout_ns_deploy:
6594           type: integer
6595         vnf:
6596           type: array
6597           items:
6598             type: object
6599             properties:
6600               member-vnf-index:
6601                 type: string
6602               vimAccountId:
6603                 type: string
6604                 format: uuid
6605               vdu:
6606                 type: array
6607                 items:
6608                   type: object
6609                   properties:
6610                     id:
6611                       type: string
6612                     volume:
6613                       type: array
6614                       items:
6615                         type: object
6616                         properties:
6617                           name:
6618                             type: string
6619                           vim-volume-id:
6620                             type: string
6621                         required:
6622                           - name
6623                           - vim-volume-id
6624                         additionalProperties: false
6625                       minItems: 1
6626                     interface:
6627                       type: array
6628                       items:
6629                         type: object
6630                         properties:
6631                           name:
6632                             type: string
6633                           ip-address:
6634                             type: string
6635                             format: ipv4
6636                           mac-address:
6637                             type: string
6638                             format: mac_address
6639                           floating-ip-required:
6640                             type: boolean
6641                         required:
6642                           - name
6643                         additionalProperties: false
6644                       minItems: 1
6645                   required:
6646                     - id
6647                   additionalProperties: false
6648                 minItems: 1
6649               internal-vld:
6650                 type: array
6651                 items:
6652                   type: object
6653                   properties:
6654                     name:
6655                       type: string
6656                     vim-network-name:
6657                       type: string
6658                     vim-network-id:
6659                       type: string
6660                     ip-profile:
6661                       type: object
6662                       properties:
6663                         ip-version:
6664                           type: string
6665                           enum:
6666                             - ipv4
6667                             - ipv6
6668                         subnet-address:
6669                           type: string
6670                           format: ip_prefix
6671                           nullable: true
6672                         gateway-address:
6673                           type: string
6674                           format: ipv4
6675                           nullable: true
6676                         dns-server:
6677                           type: array
6678                           items:
6679                             type: object
6680                             properties:
6681                               address:
6682                                 type: string
6683                                 format: ipv4
6684                             required:
6685                               - address
6686                             additionalProperties: false
6687                           minItems: 1
6688                           nullable: true
6689                         dhcp-params:
6690                           type: object
6691                           properties:
6692                             enabled:
6693                               type: boolean
6694                             count:
6695                               type: integer
6696                               minimum: 1
6697                             start-address:
6698                               type: string
6699                               format: ipv4
6700                           additionalProperties: false
6701                           nullable: true
6702                       additionalProperties: false
6703                     provider-network:
6704                       type: object
6705                       properties:
6706                         physical-network:
6707                           type: string
6708                         segmentation-id:
6709                           type: string
6710                         network-type:
6711                           type: string
6712                         sdn-ports:
6713                           description: |
6714                             connect additional ports to the created underlay SDN connectivity.
6715                             Normally for external connectivy.
6716                           type: array
6717                           items:
6718                             type: object
6719                             properties:
6720                               switch_id:
6721                                 type: string
6722                               switch_port:
6723                                 type: string
6724                               mac_address:
6725                                 type: string
6726                                 format: mac_address
6727                               vlan:
6728                                 type: integer
6729                             additionalProperties: true
6730                             required:
6731                               - switch_id
6732                               - switch_port
6733                           minItems: 1
6734                       additionalProperties: false
6735                     internal-connection-point:
6736                       type: array
6737                       items:
6738                         type: object
6739                         properties:
6740                           id-ref:
6741                             type: string
6742                           ip-address:
6743                             type: string
6744                             format: ipv4
6745                         required:
6746                           - id-ref
6747                         minProperties: 2
6748                         additionalProperties: False
6749                       minItems: 1
6750                   required:
6751                     - name
6752                   minProperties: 2
6753                   additionalProperties: false
6754                 minItems: 1
6755             required:
6756               - member-vnf-index
6757             minProperties: 2
6758             additionalProperties: false
6759           minItems: 1
6760         vld:
6761           type: array
6762           items:
6763             type: object
6764             properties:
6765               name:
6766                 type: string
6767               vim-network-name:
6768                 oneOf:
6769                   - type: string
6770                   - type: object
6771               vim-network-id:
6772                 oneOf:
6773                   - type: string
6774                   - type: object
6775               ns-net:
6776                 type: object
6777                 additionalProperties: true
6778               wimAccountId:
6779                 oneOf:
6780                   - type: string
6781                   - type: boolean
6782                 nullable: true
6783               ip-profile:
6784                 type: object
6785                 additionalProperties: true
6786               provider-network:
6787                 type: object
6788                 properties:
6789                   physical-network:
6790                     type: string
6791                   segmentation-id:
6792                     type: string
6793                 additionalProperties: false
6794               vnfd-connection-point-ref:
6795                 type: array
6796                 items:
6797                   type: object
6798                   properties:
6799                     member-vnf-index-ref:
6800                       type: string
6801                     vnfd-connection-point-ref:
6802                       type: string
6803                     ip-address:
6804                       type: string
6805                       format: ipv4
6806                   required:
6807                     - member-vnf-index-ref
6808                     - vnfd-connection-point-ref
6809                   minProperties: 3
6810                   additionalProperties: false
6811                 minItems: 1
6812             required:
6813               - name
6814             additionalProperties: false
6815           minItems: 1
6816       required:
6817         - nsName
6818         - nsdId
6819         - vimAccountId
6820       additionalProperties: false
6821     ScaleNsRequest:
6822       type: object
6823       properties:
6824         scaleType:
6825           type: string
6826           enum:
6827             - SCALE_VNF
6828         timeout_ns_scale:
6829           description: timeout for the scale operation
6830           type: integer
6831         scaleVnfData:
6832           type: object
6833           properties:
6834             scaleVnfType:
6835               type: string
6836               enum:
6837                 - SCALE_IN
6838                 - SCALE_OUT
6839             scaleByStepData:
6840               type: object
6841               properties:
6842                 scaling-group-descriptor:
6843                   type: string
6844                 scaling-policy:
6845                   type: string
6846                 member-vnf-index:
6847                   type: string
6848               required:
6849                 - scaling-group-descriptor
6850                 - member-vnf-index
6851               additionalProperties: false
6852           required:
6853             - scaleVnfType
6854             - scaleByStepData
6855           additionalProperties: false
6856       required:
6857         - scaleType
6858         - scaleVnfData
6859       additionalProperties: false
6860     TerminateNsRequest:
6861       type: object
6862       properties:
6863         timeout_ns_terminate:
6864           description: timeout for terminate operation
6865           type: integer
6866         autoremove:
6867           description: remove network service if termination end without error
6868           type: boolean
6869         skip_terminate_primitives:
6870           description: Do not execute network service termination primitives
6871           type: boolean
6872       additionalProperties: false
6873     ArrayOfNsInstance:
6874       type: array
6875       items:
6876         $ref: '#/components/schemas/NsInstance'
6877     NSinstanceActionRequest:
6878       type: object
6879       properties:
6880         primitive:
6881           type: string
6882           description: |
6883             name of the primitive in the 'config-descriptor'. If the target is
6884             a kdu it can be also 'status', 'rollback' or 'upgrade'
6885         primitive_params:
6886           description: parameters of this primitive
6887           $ref: '#/components/schemas/KeyValuePairs'
6888         member_vnf_index:
6889           type: string
6890           description: provide if the target action is for a vnf, vdu or kdu
6891         vdu_id:
6892           type: string
6893           description: provide if the target action is for a vdu
6894         kdu_name:
6895           type: string
6896           description: provide if the target action is for a kdu
6897         vdu_count_index:
6898           type: integer
6899         timeout_ns_action:
6900           description: timeout for the day 1/2 operation
6901           type: integer
6902       required:
6903         - primitive
6904         - primitive_params
6905       additionalProperties: false
6906     # CreateNSinstanceContentRequest:
6907       # Substituted by InstantiateNsRequest
6908     CreateNSinstanceContentResponse:
6909       type: object
6910       properties:
6911         id:
6912           type: string
6913           format: uuid
6914         nslcmop_id:
6915           type: string
6916           format: uuid
6917     NsLcmOpOcc:
6918       type: object
6919       properties:
6920         _id:
6921           type: string
6922           format: uuid
6923         id:
6924           type: string
6925           format: uuid
6926         lcmOperationType:
6927           type: string
6928         nsInstanceId:
6929           type: string
6930           format: uuid
6931         isAutomaticInvocation:
6932           type: boolean
6933         isCancelPending:
6934           type: boolean
6935         startTime:
6936           type: number
6937           format: float
6938         statusEnteredTime:
6939           type: number
6940           format: float
6941         operationParams:
6942           type: object
6943           properties:
6944             nsName:
6945               type: string
6946             nsdId:
6947               type: string
6948               format: uuid
6949             vimAccountId:
6950               type: string
6951               format: uuid
6952             nsInstanceId:
6953               type: string
6954               format: uuid
6955             lcmOperationType:
6956               type: string
6957         operationState:
6958           type: string
6959         detailed-status:
6960           type: string
6961         links:
6962           type: object
6963           properties:
6964             self:
6965               type: string
6966               format: path   # uri?
6967             nsInstance:
6968               type: string
6969               format: path   # uri?
6970     ArrayOfNsLcmOpOcc:
6971       type: array
6972       items:
6973         $ref: '#/components/schemas/NsLcmOpOcc'
6974     VnfInstanceInfo:
6975       description: |
6976         VNF Instance Information
6977         Only generic fields (_id, id) are described
6978         For a full specification of the VNF Instance see:
6979         http://osm-download.etsi.org/ftp/osm-doc/vnfr.html
6980       type: object
6981       properties:
6982         _id:
6983           type: string
6984           format: uuid
6985         id:
6986           type: string
6987           format: uuid
6988     ArrayOfVnfInstanceInfo:
6989       type: array
6990       items:
6991         $ref: '#/components/schemas/VnfInstanceInfo'
6992     NstInfo:
6993       description: |
6994         NetSlice Template Information
6995         Only generic fields (_id, id, name) are described
6996         For a full specification of the NetSlice Template see:
6997         http://osm-download.etsi.org/ftp/osm-doc/nst.html
6998       type: object
6999       properties:
7000         _id:
7001           description: NetSlice Template Identifier
7002           type: string
7003           format: uuid
7004         id:
7005           description: Human readable NetSlice Template Identifier
7006           type: string
7007         name:
7008           description: Human readable name of the NetSlice Template
7009           type: string
7010     ArrayOfNstInfo:
7011       type: array
7012       items:
7013         $ref: '#/components/schemas/NstInfo'
7014     CreateNstInfoRequest:
7015       # A free list of key:value pairs
7016       type: object
7017       additionalProperties: true
7018     NetSliceTemplate:
7019       type: string
7020       format: yaml|json
7021     NetSlicePackage:
7022       type: string
7023       format: binary
7024     NstInfoModifications:
7025       description: |
7026         NetSlice Template Information
7027         Only generic fields (id, name) are described
7028         For a full specification of the NetSlice Template see:
7029         http://osm-download.etsi.org/ftp/osm-doc/nst.html
7030       type: object
7031       properties:
7032         id:
7033           description: NST Identifier
7034           type: string
7035         name:
7036           description: NST Name
7037           type: string
7038     NetSliceInstance:
7039       description: |
7040         NetSlice Instance Information
7041         Only generic fields (_id, id, name, description) are described
7042         For a full specification of the NetSlice Instance see:
7043         http://osm-download.etsi.org/ftp/osm-doc/nsi.html
7044       type: object
7045       properties:
7046         _id:
7047           description: Identifier of the NetSlice instance.
7048           type: string
7049           format: uuid
7050         id:
7051           description: Identifier of the NetSlice instance.
7052           type: string
7053           format: uuid
7054         name:
7055           description: Human readable name of the NetSlice instance.
7056           type: string
7057         description:
7058           description: Human readable description of the NetSlice instance.
7059           type: string
7060       required:
7061         - _id
7062         - id
7063         - name
7064     ArrayOfNetSliceInstance:
7065       type: array
7066       items:
7067         $ref: '#/components/schemas/NetSliceInstance'
7068     Alarm:
7069       description: |
7070         Alarm Information
7071       type: object
7072       properties:
7073         _id:
7074           description: Identifier of the Alarm.
7075           type: string
7076           format: uuid
7077         id:
7078           description: Identifier of the Alarm.
7079           type: string
7080           format: uuid
7081         metric:
7082           description: Alarm metric.
7083           type: string
7084         threshold:
7085           description: Threshold value of the Alarm.
7086           type: number
7087           format: float
7088         operation:
7089           description: Operation to be applied.
7090           type: string
7091         action:
7092           description: Action to be taken.
7093           type: string
7094         status:
7095           description: Current status of the alarm.
7096           type: string
7097       required:
7098         - _id
7099         - id
7100         - metric
7101         - threshold
7102         - operation
7103     ArrayOfAlarm:
7104       type: array
7105       items:
7106         $ref: '#/components/schemas/Alarm'
7107     # CreateNsiRequest:
7108       # Substituted by InstantiateNsiRequest
7109     InstantiateNsiRequest:
7110       type: object
7111       properties:
7112         nsiName:
7113           description: |
7114             Human-readable name of the NetSlice instance to be created.
7115           type: string
7116         nstId:
7117           description: |
7118             Identifier of the NST that defines the NetSlice instance to be created.
7119           type: string
7120           format: uuid
7121         vimAccountId:
7122           description: |
7123             Identifier of the VIM Account where the NetSlice instance shall be created.
7124           type: string
7125           format: uuid
7126         lcmOperationType:
7127           type: string
7128         netsliceInstanceId:
7129           type: string
7130           format: uuid
7131         nsiDescription:
7132           type: string
7133           nullable: true
7134         ssh_keys:
7135           type: string
7136         nsi_id:
7137           type: string
7138           format: uuid
7139         additionalParamsForNsi:
7140           type: object
7141           additionalProperties: true
7142         netslice-subnet:
7143           type: array
7144           items:
7145             type: object
7146             properties:
7147               id:
7148                 type: string
7149               nsName:
7150                 type: string
7151               nsdId:
7152                 type: string
7153                 format: uuid
7154               vimAccountId:
7155                 type: string
7156                 format: uuid
7157               lcmOperationType:
7158                 type: string
7159               nsInstanceId:
7160                 type: string
7161                 format: uuid
7162               netsliceInstanceId:
7163                 type: string
7164                 format: uuid
7165               nsDescription:
7166                 type: string
7167                 nullable: true
7168               wimAccountId:
7169                 oneOf:
7170                   - type: string
7171                   - type: boolean
7172                 nullable: true
7173               additionalParamsForNs:
7174                 type: object
7175                 additionalProperties: true
7176               additionalParamsForVnf: *additionalparamsforvnf
7177               ssh_keys:
7178                 type: array
7179                 items:
7180                   type: string
7181               nsr_id:
7182                 type: string
7183                 format: uuid
7184               vduImage:
7185                 type: string
7186               vnf:
7187                 type: array
7188                 items:
7189                   type: object
7190                   properties:
7191                     member-vnf-index:
7192                       type: string
7193                     vimAccountId:
7194                       type: string
7195                       format: uuid
7196                     vdu:
7197                       type: array
7198                       items:
7199                         type: object
7200                         properties:
7201                           id:
7202                             type: string
7203                           volume:
7204                             type: array
7205                             items:
7206                               type: object
7207                               properties:
7208                                 name:
7209                                   type: string
7210                                 vim-volume-id:
7211                                   type: string
7212                               required:
7213                                 - name
7214                                 - vim-volume-id
7215                               additionalProperties: false
7216                             minItems: 1
7217                           interface:
7218                             type: array
7219                             items:
7220                               type: object
7221                               properties:
7222                                 name:
7223                                   type: string
7224                                 ip-address:
7225                                   type: string
7226                                   format: ipv4
7227                                 mac-address:
7228                                   type: string
7229                                   format: mac_address
7230                                 floating-ip-required:
7231                                   type: boolean
7232                               required:
7233                                 - name
7234                               additionalProperties: false
7235                             minItems: 1
7236                         required:
7237                           - id
7238                         additionalProperties: false
7239                       minItems: 1
7240                     internal-vld:
7241                       type: array
7242                       items:
7243                         type: object
7244                         properties:
7245                           name:
7246                             type: string
7247                           vim-network-name:
7248                             type: string
7249                           vim-network-id:
7250                             type: string
7251                           ip-profile:
7252                             type: object
7253                             properties:
7254                               ip-version:
7255                                 type: string
7256                                 enum:
7257                                   - ipv4
7258                                   - ipv6
7259                               subnet-address:
7260                                 type: string
7261                                 format: ip_prefix
7262                                 nullable: true
7263                               gateway-address:
7264                                 type: string
7265                                 format: ipv4
7266                                 nullable: true
7267                               dns-server:
7268                                 type: array
7269                                 items:
7270                                   type: object
7271                                   properties:
7272                                     address:
7273                                       type: string
7274                                       format: ipv4
7275                                   required:
7276                                     - address
7277                                   additionalProperties: false
7278                                 minItems: 1
7279                                 nullable: true
7280                               dhcp-params:
7281                                 type: object
7282                                 properties:
7283                                   enabled:
7284                                     type: boolean
7285                                   count:
7286                                     type: integer
7287                                     minimum: 1
7288                                   start-address:
7289                                     type: string
7290                                     format: ipv4
7291                                 additionalProperties: false
7292                                 nullable: true
7293                             additionalProperties: false
7294                           provider-network:
7295                             type: object
7296                             properties:
7297                               physical-network:
7298                                 type: string
7299                               segmentation-id:
7300                                 type: string
7301                             additionalProperties: false
7302                           internal-connection-point:
7303                             type: array
7304                             items:
7305                               type: object
7306                               properties:
7307                                 id-ref:
7308                                   type: string
7309                                 ip-address:
7310                                   type: string
7311                                   format: ipv4
7312                               required:
7313                                 - id-ref
7314                               minProperties: 2
7315                               additionalProperties: False
7316                             minItems: 1
7317                         required:
7318                           - name
7319                         minProperties: 2
7320                         additionalProperties: false
7321                       minItems: 1
7322                   required:
7323                     - member-vnf-index
7324                   minProperties: 2
7325                   additionalProperties: false
7326                 minItems: 1
7327               vld:
7328                 type: array
7329                 items:
7330                   type: object
7331                   properties:
7332                     name:
7333                       type: string
7334                     vim-network-name:
7335                       oneOf:
7336                         - type: string
7337                         - type: object
7338                     vim-network-id:
7339                       oneOf:
7340                         - type: string
7341                         - type: object
7342                     ns-net:
7343                       type: object
7344                       additionalProperties: true
7345                     wimAccountId:
7346                       oneOf:
7347                         - type: string
7348                         - type: boolean
7349                       nullable: true
7350                     ip-profile:
7351                       type: object
7352                       additionalProperties: true
7353                     provider-network:
7354                       type: object
7355                       properties:
7356                         physical-network:
7357                           type: string
7358                         segmentation-id:
7359                           type: string
7360                       additionalProperties: false
7361                     vnfd-connection-point-ref:
7362                       type: array
7363                       items:
7364                         type: object
7365                         properties:
7366                           member-vnf-index-ref:
7367                             type: string
7368                           vnfd-connection-point-ref:
7369                             type: string
7370                           ip-address:
7371                             type: string
7372                             format: ipv4
7373                         required:
7374                           - member-vnf-index-ref
7375                           - vnfd-connection-point-ref
7376                         minProperties: 3
7377                         additionalProperties: false
7378                       minItems: 1
7379                   required:
7380                     - name
7381                   additionalProperties: false
7382                 minItems: 1
7383             additionalProperties: false
7384           minItems: 1
7385         netslice-vld:
7386           type: array
7387           items:
7388             type: object
7389             properties:
7390               name:
7391                 type: string
7392               vim-network-name:
7393                 oneOf:
7394                   - type: string
7395                   - type: object
7396               vim-network-id:
7397                 oneOf:
7398                   - type: string
7399                   - type: object
7400               ip-profile:
7401                 type: object
7402                 additionalProperties: true
7403             required:
7404               - name
7405             additionalProperties: false
7406           minItems: 1
7407       required:
7408         - nsiName
7409         - nstId
7410         - vimAccountId
7411       additionalProperties: false
7412     TerminateNsiRequest:
7413       type: object
7414       properties:
7415         terminationTime:
7416           description: |
7417             Timestamp indicating the end time of the NSI, i.e. the NSI will be terminated
7418             automatically at this timestamp. Cardinality "0" indicates the NSI termination
7419             takes place immediately.
7420           type: string
7421           format: date-time
7422     NsiActionRequest:
7423       type: object
7424       properties:
7425         primitive:
7426           type: string
7427         primitive_params:
7428           $ref: '#/components/schemas/KeyValuePairs'
7429         lcmOperationType:
7430           type: string
7431         netsliceInstanceId:
7432           type: string
7433           format: uuid
7434       required:
7435         - primitive
7436         - primitive_params
7437     # CreateNsiContentRequest:
7438       # Substituted by InstantiateNsiRequest
7439     CreateNsiContentResponse:
7440       type: object
7441       properties:
7442         id:
7443           type: string
7444           format: uuid
7445         nsilcmop_id:
7446           type: string
7447           format: uuid
7448     NsiLcmOpOcc:
7449       type: object
7450       properties:
7451         _id:
7452           type: string
7453           format: uuid
7454         id:
7455           type: string
7456           format: uuid
7457         lcmOperationType:
7458           type: string
7459         netsliceInstanceId:
7460           type: string
7461           format: uuid
7462         isAutomaticInvocation:
7463           type: boolean
7464         isCancelPending:
7465           type: boolean
7466         startTime:
7467           type: number
7468           format: float
7469         statusEnteredTime:
7470           type: number
7471           format: float
7472         operationParams:
7473           type: object
7474           properties:
7475             nsiName:
7476               type: string
7477             nstId:
7478               type: string
7479               format: uuid
7480             vimAccountId:
7481               type: string
7482               format: uuid
7483             netsliceInstanceId:
7484               type: string
7485               format: uuid
7486             lcmOperationType:
7487               type: string
7488             nslcmops_ids:
7489               type: array
7490               items:
7491                 type: string
7492                 format: uuid
7493         operationState:
7494           type: string
7495         detailed-status:
7496           type: string
7497         links:
7498           type: object
7499           properties:
7500             self:
7501               type: string
7502               format: path   # uri?
7503             netsliceInstanceId:
7504               type: string
7505               format: path   # uri?
7506     ArrayOfNsiLcmOpOcc:
7507       type: array
7508       items:
7509         $ref: '#/components/schemas/NsiLcmOpOcc'
7510     TokenInfo:
7511       type: object
7512       properties:
7513         _id:
7514           type: string
7515         id:
7516           type: string
7517         admin:
7518           type: boolean
7519         project_id:
7520           type: string
7521           format: uuid
7522         user_id:
7523           type: string
7524           format: uuid
7525         project_name:
7526           type: string
7527         username:
7528           type: string
7529         issued_at:
7530           type: number
7531           format: float
7532         expires:
7533           type: number
7534           format: float
7535         remote_host:
7536           type: string
7537           format: ipv4
7538         remote_port:
7539           type: integer
7540         roles:
7541           type: array
7542           items:
7543             type: object
7544             properties:
7545               id:
7546                 type: string
7547                 format: uuid
7548               name:
7549                 type: string
7550     ArrayOfTokenInfo:
7551       type: array
7552       items:
7553         $ref: '#/components/schemas/TokenInfo'
7554     CreateTokenRequest:
7555       type: object
7556       properties:
7557         username:
7558           type: string
7559         password:
7560           type: string
7561         project_id:
7562           type: string
7563       required:
7564         - username
7565         - password
7566     UserInfo:
7567       type: object
7568       properties:
7569         _id:
7570           type: string
7571           format: uuid
7572         username:
7573           type: string
7574         password:
7575           type: string
7576         project_role_mappings:
7577           type: array
7578           items:
7579             type: object
7580             properties:
7581               project:
7582                 type: string
7583                 format: uuid
7584               role:
7585                 type: string
7586                 format: uuid
7587               project_name:
7588                 type: string
7589               role_name:
7590                 type: string
7591         projects:
7592           type: array
7593           items:
7594             type: string
7595     ArrayOfUserInfo:
7596       type: array
7597       items:
7598         $ref: '#/components/schemas/UserInfo'
7599     ProjectRoleMappings:
7600       type: array
7601       items:
7602         type: object
7603         properties:
7604           project:
7605             type: string
7606           role:
7607             type: string
7608       required:
7609         - project
7610         - role
7611       additionalProperties: false
7612     ProjectRoleMappingsOpt:
7613       type: array
7614       items:
7615         type: object
7616         properties:
7617           project:
7618             type: string
7619           role:
7620             type: string
7621       required:
7622         - project
7623       additionalProperties: false
7624     CreateUserRequest:
7625       type: object
7626       properties:
7627         username:
7628           type: string
7629         password:
7630           type: string
7631         projects:
7632           type: array
7633           items:
7634             type: string
7635         project_role_mappings:
7636           $ref: '#/components/schemas/ProjectRoleMappings'
7637       required:
7638         - username
7639         - password
7640       additionalProperties: false
7641     ShortNameList:
7642       type: array
7643       items:
7644         type: string
7645     ArrayEditionSchema:
7646       type: object
7647       additionalProperties: true
7648       minProperties: 1
7649       description: |
7650         Array edition keys must start with '$'
7651         and follow the syntax defined in: https://osm.etsi.org/wikipub/index.php/NBI_API_Description
7652     EditUserRequest:
7653       type: object
7654       properties:
7655         username:
7656           type: string
7657         password:
7658           type: string
7659         projects:
7660           oneOf:
7661             - $ref: '#/components/schemas/ShortNameList'
7662             - $ref: '#/components/schemas/ArrayEditionSchema'
7663         project_role_mappings:
7664           $ref: '#/components/schemas/ProjectRoleMappings'
7665         add_project_role_mappings:
7666           $ref: '#/components/schemas/ProjectRoleMappings'
7667         remove_project_role_mappings:
7668           $ref: '#/components/schemas/ProjectRoleMappingsOpt'
7669     QuotasInfo:
7670       type: object
7671       properties:
7672         vnfds:
7673           type: integer
7674           minimum: 0
7675           nullable: false
7676         nsds:
7677           type: integer
7678           minimum: 0
7679           nullable: false
7680         slice_templates:
7681           type: integer
7682           minimum: 0
7683           nullable: false
7684         pduds:
7685           type: integer
7686           minimum: 0
7687           nullable: false
7688         ns_instances:
7689           type: integer
7690           minimum: 0
7691           nullable: false
7692         slice_instances:
7693           type: integer
7694           minimum: 0
7695           nullable: false
7696         vim_accounts:
7697           type: integer
7698           minimum: 0
7699           nullable: false
7700         wim_accounts:
7701           type: integer
7702           minimum: 0
7703           nullable: false
7704         sdn_controllers:
7705           type: integer
7706           minimum: 0
7707           nullable: false
7708         k8sclusters:
7709           type: integer
7710           minimum: 0
7711           nullable: false
7712         vca:
7713           type: integer
7714           minimum: 0
7715           nullable: false
7716         k8srepos:
7717           type: integer
7718           minimum: 0
7719           nullable: false
7720         osmrepos:
7721           type: integer
7722           minimum: 0
7723           nullable: false
7724       additionalProperties: false
7725     EditQuotasInfo:
7726       type: object
7727       properties:
7728         vnfds:
7729           type: integer
7730           minimum: 0
7731           nullable: true
7732         nsds:
7733           type: integer
7734           minimum: 0
7735           nullable: true
7736         slice_templates:
7737           type: integer
7738           minimum: 0
7739           nullable: true
7740         pduds:
7741           type: integer
7742           minimum: 0
7743           nullable: true
7744         ns_instances:
7745           type: integer
7746           minimum: 0
7747           nullable: true
7748         slice_instances:
7749           type: integer
7750           minimum: 0
7751           nullable: true
7752         vim_accounts:
7753           type: integer
7754           minimum: 0
7755           nullable: true
7756         wim_accounts:
7757           type: integer
7758           minimum: 0
7759           nullable: true
7760         sdn_controllers:
7761           type: integer
7762           minimum: 0
7763           nullable: true
7764         k8sclusters:
7765           type: integer
7766           minimum: 0
7767           nullable: true
7768         vca:
7769           type: integer
7770           minimum: 0
7771           nullable: true
7772         k8srepos:
7773           type: integer
7774           minimum: 0
7775           nullable: true
7776         osmrepos:
7777           type: integer
7778           minimum: 0
7779           nullable: true
7780       additionalProperties: false
7781     ProjectInfo:
7782       type: object
7783       properties:
7784         _id:
7785           type: string
7786           format: uuid
7787         name:
7788           type: string
7789         quotas:
7790           $ref: '#/components/schemas/QuotasInfo'
7791     ArrayOfProjectInfo:
7792       type: array
7793       items:
7794         $ref: '#/components/schemas/ProjectInfo'
7795     CreateProjectRequest:
7796       type: object
7797       properties:
7798         name:
7799           type: string
7800         admin:
7801           type: boolean
7802         quotas:
7803           $ref: '#/components/schemas/QuotasInfo'
7804       required:
7805         - name
7806       additionalProperties: false
7807     EditProjectRequest:
7808       type: object
7809       properties:
7810         name:
7811           type: string
7812         admin:
7813           type: boolean
7814         quotas:
7815           $ref: '#/components/schemas/EditQuotasInfo'
7816       additionalProperties: false
7817     PermissionsInfo:
7818       type: object
7819       additionalProperties:
7820         type: boolean
7821         nullable: false
7822       description: |
7823         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
7824         Permission values are either true or false
7825     EditPermissionsInfo:
7826       type: object
7827       additionalProperties:
7828         type: boolean
7829         nullable: true
7830       description: |
7831         Permissions keys must follow the syntax 'main_topic[:subtopic[:id[:component|action|etc]]]'
7832         Permission values are either true, false, or null
7833     RoleInfo:
7834       type: object
7835       properties:
7836         _id:
7837           type: string
7838           format: uuid
7839         name:
7840           type: string
7841         permissions:
7842           $ref: '#/components/schemas/PermissionsInfo'
7843     ArrayOfRoleInfo:
7844       type: array
7845       items:
7846         $ref: '#/components/schemas/RoleInfo'
7847     CreateRoleRequest:
7848       type: object
7849       properties:
7850         name:
7851           type: string
7852         permissions:
7853           $ref: '#/components/schemas/PermissionsInfo'
7854       required:
7855         - name
7856       additionalProperties: false
7857     EditRoleRequest:
7858       type: object
7859       properties:
7860         name:
7861           type: string
7862         permissions:
7863           $ref: '#/components/schemas/EditPermissionsInfo'
7864       additionalProperties: false
7865     VimType:
7866       type: string
7867       enum:
7868         - openvim
7869         - openstack
7870         - vmware
7871         - opennebula
7872         - aws
7873         - azure
7874         - fos
7875     VimInfo:
7876       type: object
7877       properties:
7878         _id:
7879           type: string
7880           format: uuid
7881         schema_version:
7882           type: string
7883           format: X.Y[.Z]
7884         schema_type:
7885           type: string
7886         name:
7887           type: string
7888         description:
7889           type: string
7890         vim:
7891           type: string
7892         datacenter:
7893           type: string
7894         vim_type:
7895           $ref: '#/components/schemas/VimType'
7896         vim_url:
7897           type: string
7898           format: uri
7899         vim_tenant_name:
7900           type: string
7901         vim_user:
7902           type: string
7903         vim_password:
7904           type: string
7905         vca:
7906           type: string
7907           format: uuid
7908         config:
7909           type: object
7910           additionalProperties: true
7911         resources:
7912           type: object
7913     ArrayOfVimInfo:
7914       type: array
7915       items:
7916         $ref: '#/components/schemas/VimInfo'
7917     CreateVimRequest:
7918       type: object
7919       properties:
7920         schema_version:
7921           type: string
7922           format: X.Y[.Z]
7923         schema_type:
7924           type: string
7925         name:
7926           type: string
7927         description:
7928           type: string
7929         vim:
7930           type: string
7931         datacenter:
7932           type: string
7933         vim_type:
7934           $ref: '#/components/schemas/VimType'
7935         vim_url:
7936           type: string
7937           format: uri
7938         vim_tenant_name:
7939           type: string
7940         vim_user:
7941           type: string
7942         vim_password:
7943           type: string
7944         vca:
7945           type: string
7946           format: uuid
7947         config:
7948           type: object
7949           additionalProperties: true
7950         resources:
7951           type: object
7952       required:
7953         - name
7954         - vim_url
7955         - vim_type
7956         - vim_user
7957         - vim_password
7958         - vim_tenant_name
7959       additionalProperties: false
7960     EditVimRequest:
7961       type: object
7962       properties:
7963         name:
7964           type: string
7965         description:
7966           type: string
7967         vim:
7968           type: string
7969         datacenter:
7970           type: string
7971         vim_type:
7972           $ref: '#/components/schemas/VimType'
7973         vim_url:
7974           type: string
7975           format: uri
7976         vim_tenant_name:
7977           type: string
7978         vim_user:
7979           type: string
7980         vim_password:
7981           type: string
7982         vca:
7983           type: string
7984           format: uuid
7985         config:
7986           type: object
7987           additionalProperties: true
7988       additionalProperties: false
7989     ObjectId_plus_OpId:
7990       type: object
7991       properties:
7992         id:
7993           type: string
7994           format: uuid
7995         op_id:
7996           type: string
7997           format: uuid
7998     OpId:
7999       type: object
8000       properties:
8001         op_id:
8002           type: string
8003           format: uuid
8004     WimType:
8005       type: string
8006       enum:
8007         - onos
8008         - odl
8009         - tapi
8010         - dynpac
8011         - fake
8012     WimInfo:
8013       type: object
8014       properties:
8015         _id:
8016           type: string
8017           format: uuid
8018         schema_version:
8019           type: string
8020           format: X.Y[.Z]
8021         schema_type:
8022           type: string
8023         name:
8024           type: string
8025         description:
8026           type: string
8027         wim:
8028           type: string
8029         wim_type:
8030           $ref: '#/components/schemas/WimType'
8031         wim_url:
8032           type: string
8033           format: uri
8034         user:
8035           type: string
8036         password:
8037           type: string
8038         config:
8039           type: object
8040           additionalProperties: true
8041     ArrayOfWimInfo:
8042       type: array
8043       items:
8044         $ref: '#/components/schemas/WimInfo'
8045     CreateWimRequest:
8046       type: object
8047       properties:
8048         schema_version:
8049           type: string
8050           format: X.Y[.Z]
8051         schema_type:
8052           type: string
8053         name:
8054           type: string
8055         description:
8056           type: string
8057         wim:
8058           type: string
8059         wim_type:
8060           $ref: '#/components/schemas/WimType'
8061         wim_url:
8062           type: string
8063           format: uri
8064         user:
8065           type: string
8066         password:
8067           type: string
8068         config:
8069           type: object
8070           additionalProperties: true
8071       required:
8072         - name
8073         - wim_url
8074         - wim_type
8075       additionalProperties: false
8076     EditWimRequest:
8077       type: object
8078       properties:
8079         name:
8080           type: string
8081         description:
8082           type: string
8083         wim:
8084           type: string
8085         wim_type:
8086           type: string
8087         wim_url:
8088           type: string
8089           format: uri
8090         user:
8091           type: string
8092         password:
8093           type: string
8094         config:
8095           type: object
8096           additionalProperties: true
8097       additionalProperties: false
8098     SdnBasicProperties:
8099       type: object
8100       properties:
8101         name:
8102           type: string
8103         description:
8104           type: string
8105         dpid:
8106           type: string
8107           format: mac_address
8108         ip:
8109           type: string
8110           format: ipv4
8111         port:
8112           type: integer
8113         type:
8114           type: string
8115           enum:
8116             - floodlight
8117             - opendaylight
8118             - onos
8119         version:
8120           type: string
8121         user:
8122           type: string
8123         password:
8124           type: string
8125     SdnExtraProperties:
8126       type: object
8127       properties:
8128         _id:
8129           type: string
8130           format: uuid
8131         schema_version:
8132           type: string
8133           format: X.Y[.Z]
8134     SdnInfo:
8135       allOf:
8136         - $ref: '#/components/schemas/SdnExtraProperties'
8137         - $ref: '#/components/schemas/SdnBasicProperties'
8138     ArrayOfSdnInfo:
8139       type: array
8140       items:
8141         $ref: '#/components/schemas/SdnInfo'
8142     CreateSdnRequest:
8143       allOf:
8144         - $ref: '#/components/schemas/SdnBasicProperties'
8145       required:
8146         - name
8147         - type
8148         - ip
8149         - port
8150         - dpid
8151       additionalProperties: false
8152     EditSdnRequest:
8153       allOf:
8154         - $ref: '#/components/schemas/SdnBasicProperties'
8155       additionalProperties: false
8156     NsPmJobReportInfo:
8157       type: object
8158       properties:
8159         entries:
8160           type: array
8161           items:
8162             type: object
8163             properties:
8164               objectInstanceId:
8165                 type: string
8166                 format: uuid
8167               performanceMetric:
8168                 type: string
8169               performanceValue:
8170                 type: object
8171                 properties:
8172                   performanceValue:
8173                     type: object
8174                     properties:
8175                       performanceValue:
8176                         type: number
8177                       vnfMemberIndex:
8178                         type: string
8179                       vduName:
8180                         type: string
8181                   timestamp:
8182                     type: number
8183     PduInterfaces:
8184       type: array
8185       items:
8186         type: object
8187         properties:
8188           name:
8189             type: string
8190           mgmt:
8191             type: boolean
8192           type:
8193             type: string
8194             enum:
8195               - overlay
8196               - underlay
8197           ip-address:
8198             type: string
8199             format: ipv4
8200           mac-address:
8201             type: string
8202             format: mac_address
8203           vim-network-name:
8204             type: string
8205           vim-network-id:
8206             type: string
8207         required:
8208           - name
8209           - mgmt
8210           - ip-address
8211         additionalProperties: false
8212     PduInfo:
8213       type: object
8214       properties:
8215         _id:
8216           type: string
8217           format: uuid
8218         name:
8219           type: string
8220         type:
8221           type: string
8222         description:
8223           type: string
8224         shared:
8225           type: boolean
8226         vims:
8227           type: array
8228           items:
8229             type: string
8230         vim_accounts:
8231           type: array
8232           items:
8233             type: string
8234         interfaces:
8235           $ref: '#/components/schemas/PduInterfaces'
8236     ArrayOfPduInfo:
8237       type: array
8238       items:
8239         $ref: '#/components/schemas/PduInfo'
8240     CreatePduRequest:
8241       type: object
8242       properties:
8243         name:
8244           type: string
8245         type:
8246           type: string
8247         description:
8248           type: string
8249         shared:
8250           type: boolean
8251         vims:
8252           type: array
8253           items:
8254             type: string
8255         vim_accounts:
8256           type: array
8257           items:
8258             type: string
8259         interfaces:
8260           $ref: '#/components/schemas/PduInterfaces'
8261       required:
8262         - name
8263         - type
8264         - interfaces
8265       additionalProperties: false
8266     EditPduRequest:
8267       type: object
8268       properties:
8269         name:
8270           type: string
8271         type:
8272           type: string
8273         description:
8274           type: string
8275         shared:
8276           type: boolean
8277         vims:
8278           type: array
8279           items:
8280             type: string
8281         vim_accounts:
8282           type: array
8283           items:
8284             type: string
8285         interfaces:
8286           $ref: '#/components/schemas/PduInterfaces'
8287       additionalProperties: false
8288     K8sClusterNetList:
8289       type: array
8290       items:
8291         type: object
8292         additionalProperties: true
8293     K8sClusterInfo:
8294       type: object
8295       properties:
8296         _id:
8297           type: string
8298           format: uuid
8299         schema_version:
8300           type: string
8301           format: X.Y[.Z]
8302         schema_type:
8303           type: string
8304         name:
8305           type: string
8306         description:
8307           type: string
8308         credentials:
8309           type: object
8310           additionalProperties: true
8311         vim_account:
8312           type: string
8313           format: uuid
8314         k8s_version:
8315           type: string
8316         nets:
8317           $ref: '#/components/schemas/K8sClusterNetList'
8318         namespace:
8319           type: string
8320         cni:
8321           type: array
8322           items:
8323             type: string
8324     ArrayOfK8sClusterInfo:
8325       type: array
8326       items:
8327         $ref: '#/components/schemas/K8sClusterInfo'
8328     CreateK8sClusterRequest:
8329       type: object
8330       properties:
8331         schema_version:
8332           type: string
8333           format: X.Y[.Z]
8334         schema_type:
8335           type: string
8336         name:
8337           type: string
8338         description:
8339           type: string
8340         credentials:
8341           type: object
8342           additionalProperties: true
8343         vim_account:
8344           type: string
8345           format: uuid
8346         k8s_version:
8347           type: string
8348         nets:
8349           $ref: '#/components/schemas/K8sClusterNetList'
8350         namespace:
8351           type: string
8352         cni:
8353           type: array
8354           items:
8355             type: string
8356       required:
8357         - name
8358         - credentials
8359         - vim_account
8360         - k8s_version
8361         - nets
8362       additionalProperties: false
8363     EditK8sClusterRequest:
8364       type: object
8365       properties:
8366         name:
8367           type: string
8368         description:
8369           type: string
8370         credentials:
8371           type: object
8372           additionalProperties: true
8373         vim_account:
8374           type: string
8375           format: uuid
8376         k8s_version:
8377           type: string
8378         nets:
8379           $ref: '#/components/schemas/K8sClusterNetList'
8380         namespace:
8381           type: string
8382         cni:
8383           type: array
8384           items:
8385             type: string
8386       additionalProperties: false
8387     VcaInfo:
8388       type: object
8389       properties:
8390         _id:
8391           type: string
8392           format: uuid
8393         schema_version:
8394           type: string
8395           format: X.Y[.Z]
8396         schema_type:
8397           type: string
8398         name:
8399           type: string
8400         description:
8401           type: string
8402         endpoints:
8403           type: string
8404         user:
8405           type: string
8406         secret:
8407           type: string
8408         cacert:
8409           type: string
8410         lxd-cloud:
8411           type: string
8412         lxd-credentials:
8413           type: string
8414         k8s-cloud:
8415           type: string
8416         k8s-credentials:
8417           type: string
8418         model-config:
8419           type: object
8420           additionalProperties: true
8421     ArrayOfVcaInfo:
8422       type: array
8423       items:
8424         $ref: '#/components/schemas/VcaInfo'
8425     CreateVcaRequest:
8426       type: object
8427       properties:
8428         schema_version:
8429           type: string
8430           format: X.Y[.Z]
8431         schema_type:
8432           type: string
8433         name:
8434           type: string
8435         description:
8436           type: string
8437         endpoints:
8438           type: string
8439         user:
8440           type: string
8441         secret:
8442           type: string
8443         cacert:
8444           type: string
8445         lxd-cloud:
8446           type: string
8447         lxd-credentials:
8448           type: string
8449         k8s-cloud:
8450           type: string
8451         k8s-credentials:
8452           type: string
8453         model-config:
8454           type: object
8455           additionalProperties: true
8456       required:
8457         - name
8458         - endpoints
8459         - user
8460         - secret
8461         - cacert
8462         - lxd-cloud
8463         - lxd-credentials
8464         - k8s-cloud
8465         - k8s-credentials
8466       additionalProperties: false
8467     EditVcaRequest:
8468       type: object
8469       properties:
8470         name:
8471           type: string
8472         description:
8473           type: string
8474         endpoints:
8475           type: string
8476         user:
8477           type: string
8478         secret:
8479           type: string
8480         cacert:
8481           type: string
8482         lxd-cloud:
8483           type: string
8484         lxd-credentials:
8485           type: string
8486         k8s-cloud:
8487           type: string
8488         k8s-credentials:
8489           type: string
8490         model-config:
8491           type: object
8492           additionalProperties: true
8493       additionalProperties: false
8494     K8sRepoType:
8495       type: string
8496       enum:
8497         - chart
8498         - bundle
8499     K8sRepoInfo:
8500       type: object
8501       properties:
8502         _id:
8503           type: string
8504           format: uuid
8505         name:
8506           type: string
8507         description:
8508           type: string
8509         type:
8510           $ref: '#/components/schemas/K8sRepoType'
8511         url:
8512           type: string
8513           format: uri
8514         username:
8515           type: string
8516           description: repository username
8517         password:
8518           type: string
8519           description: repository password
8520         ca-file:
8521           type: string
8522           description: verify certificates of HTTPS-enabled servers using this CA bundle
8523         cert-file:
8524           type: string
8525           description: identify HTTPS client using this SSL certificate file
8526         skip-tls-verify:
8527           type: boolean
8528           description: skip tls certificate checks for the repository
8529         key-file:
8530           type: string
8531           description: identify HTTPS client using this SSL key file
8532     ArrayOfK8sRepoInfo:
8533       type: array
8534       items:
8535         $ref: '#/components/schemas/K8sRepoInfo'
8536     CreateK8sRepoRequest:
8537       type: object
8538       properties:
8539         name:
8540           type: string
8541         description:
8542           type: string
8543         type:
8544           $ref: '#/components/schemas/K8sRepoType'
8545         url:
8546           type: string
8547           format: uri
8548       required:
8549         - name
8550         - type
8551         - url
8552       additionalProperties: false
8553     NslcmSubscriptionResponse:
8554       type: object
8555       properties:
8556         id:
8557           type: string
8558           format: uuid
8559         filter:
8560           type: object
8561         CallbackUri:
8562           type: string
8563           format: uri
8564         _links:
8565           type: object
8566     NslcmSubscriptionInfo:
8567       type: object
8568       properties:
8569         _id:
8570           type: string
8571           format: uuid
8572         _admin:
8573           type: object
8574         schema_version:
8575           type: string
8576           format: 'X.Y[.Z]'
8577         CallbackUri:
8578           type: string
8579           format: uri
8580         filter:
8581           type: object
8582         authentication:
8583           $ref: '#/components/schemas/Authenticationschema'
8584     ArrayOfNslcmSubscriptionInfo:
8585       type: array
8586       items:
8587         $ref: '#/components/schemas/NslcmSubscriptionInfo'
8588     NsInstanceSubscriptionFilter:
8589       description: |
8590         used to identify the network service
8591       type: object
8592       oneOf:
8593         - $ref: '#/components/schemas/nsdIds'
8594         - $ref: '#/components/schemas/vnfdIds'
8595         - $ref: '#/components/schemas/pnfdIds'
8596         - $ref: '#/components/schemas/nsInstanceIds'
8597         - $ref: '#/components/schemas/nsInstanceNames'
8598     nsdIds:
8599       type: array
8600       items:
8601         type: string
8602     vnfdIds:
8603       type: array
8604       items:
8605         type: string
8606     pnfdIds:
8607       type: array
8608       items:
8609         type: string
8610     nsInstanceIds:
8611       type: array
8612       items:
8613         type: string
8614     nsInstanceNames:
8615       type: array
8616       items:
8617         type: string
8618     Nslcmsubschema:
8619       type: object
8620       properties:
8621         nsInstanceSubscriptionFilter:
8622            $ref: '#/components/schemas/NsInstanceSubscriptionFilter'
8623         notificationTypes:
8624           description: |
8625             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
8626           type: array
8627           items:
8628             type: string
8629             enum:
8630               - NsIdentifierCreationNotification
8631               - NsIdentifierDeletionNotification
8632               - NsLcmOperationOccurrenceNotification
8633               - NsChangeNotification
8634         operationTypes:
8635           type: array
8636           items:
8637             type: string
8638             enum:
8639               - INSTANTIATE
8640               - SCALE
8641               - TERMINATE
8642               - UPDATE
8643               - HEAL
8644         operationStates:
8645           type: array
8646           items:
8647             type: string
8648             enum:
8649               - PROCESSING
8650               - COMPLETED
8651               - PARTIALLY_COMPLETED
8652               - FAILED
8653               - FAILED_TEMP
8654               - ROLLING_BACK
8655               - ROLLED_BACK
8656         nsComponentTypes:
8657           type: array
8658           items:
8659             type: string
8660             enum:
8661               - VNF
8662               - NS
8663               - PNF
8664         lcmOpNameImpactingNsComponent:
8665           type: array
8666           items:
8667             type: string
8668             enum:
8669               - VNF_INSTANTIATE
8670               - VNF_SCALE
8671               - VNF_SCALE_TO_LEVEL
8672               - VNF_CHANGE_FLAVOUR
8673               - VNF_TERMINATE
8674               - VNF_HEAL
8675               - VNF_OPERATE
8676               - VNF_CHANGE_EXT_CONN
8677               - VNF_MODIFY_INFO
8678               - NS_INSTANTIATE
8679               - NS_SCALE
8680               - NS_UPDATE
8681               - NS_TERMINATE
8682               - NS_HEAL
8683         lcmOpOccStatusImpactingNsComponent:
8684           type: array
8685           items:
8686             type: string
8687             enum:
8688               - START
8689               - COMPLETED
8690               - PARTIALLY_COMPLETED
8691               - FAILED
8692               - ROLLED_BACK
8693     Authenticationschema:
8694       type: object
8695       properties:
8696         authType:
8697           type: string
8698           enum:
8699             - basic
8700         paramsBasic:
8701           type: object
8702           properties:
8703             userName:
8704               type: string
8705             password:
8706               type: string
8707     NslcmSubscriptionRequest:
8708       type: object
8709       properties:
8710         filter:
8711           $ref: '#/components/schemas/Nslcmsubschema'
8712         CallbackUri:
8713           type: string
8714           format: uri
8715         authentication:
8716           $ref: '#/components/schemas/Authenticationschema'
8717       required:
8718         - CallbackUri
8719   # END SCHEMAS
8720
8721   requestBodies:
8722     CreateNsdInfoRequest:
8723       content:
8724         application/json:
8725           schema:
8726             $ref: '#/components/schemas/CreateNsdInfoRequest'
8727         application/yaml:
8728           schema:
8729             $ref: '#/components/schemas/CreateNsdInfoRequest'
8730     NsdInfoModifications:
8731       content:
8732         application/json:
8733           schema:
8734             $ref: '#/components/schemas/NsdInfoModifications'
8735         application/yaml:
8736           schema:
8737             $ref: '#/components/schemas/NsdInfoModifications'
8738     AlarmInfoModifications:
8739       content:
8740         application/json:
8741           schema:
8742             $ref: '#/components/schemas/AlarmInfoModifications'
8743         application/yaml:
8744           schema:
8745             $ref: '#/components/schemas/AlarmInfoModifications'
8746     NsDescriptor:
8747       content:
8748         text/plain:
8749           schema:
8750             $ref: '#/components/schemas/NsDescriptor'
8751     NsPackage:
8752       content:
8753         application/zip:
8754           schema:
8755             $ref: '#/components/schemas/NsPackage'
8756     CreateVnfPkgInfoRequest:
8757       content:
8758         application/json:
8759           schema:
8760             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
8761         application/yaml:
8762           schema:
8763             $ref: '#/components/schemas/CreateVnfPkgInfoRequest'
8764     VnfPkgInfoModifications:
8765       content:
8766         application/json:
8767           schema:
8768             $ref: '#/components/schemas/VnfPkgInfoModifications'
8769         application/yaml:
8770           schema:
8771             $ref: '#/components/schemas/VnfPkgInfoModifications'
8772     VnfPackage:
8773       content:
8774         application/zip:
8775           schema:
8776             $ref: '#/components/schemas/VnfPackage'
8777     VnfDescriptor:
8778       content:
8779         text/plain:
8780           schema:
8781             $ref: '#/components/schemas/VnfDescriptor'
8782     # CreateNsRequest:
8783       # Substituted by InstantiateNsRequest
8784     InstantiateNsRequest:
8785       content:
8786         application/json:
8787           schema:
8788             $ref: '#/components/schemas/InstantiateNsRequest'
8789         application/yaml:
8790           schema:
8791             $ref: '#/components/schemas/InstantiateNsRequest'
8792     ScaleNsRequest:
8793       content:
8794         application/json:
8795           schema:
8796             $ref: '#/components/schemas/ScaleNsRequest'
8797         application/yaml:
8798           schema:
8799             $ref: '#/components/schemas/ScaleNsRequest'
8800     TerminateNsRequest:
8801       content:
8802         application/json:
8803           schema:
8804             $ref: '#/components/schemas/TerminateNsRequest'
8805         application/yaml:
8806           schema:
8807             $ref: '#/components/schemas/TerminateNsRequest'
8808     # CreateNSinstanceContentRequest:
8809       # Substituted by InstantiateNsRequest
8810     CreateNstInfoRequest:
8811       content:
8812         application/json:
8813           schema:
8814             $ref: '#/components/schemas/CreateNstInfoRequest'
8815         application/yaml:
8816           schema:
8817             $ref: '#/components/schemas/CreateNstInfoRequest'
8818     NetSliceTemplate:
8819       content:
8820         text/plain:
8821           schema:
8822             $ref: '#/components/schemas/NetSliceTemplate'
8823     NetSlicePackage:
8824       content:
8825         application/zip:
8826           schema:
8827             $ref: '#/components/schemas/NetSlicePackage'
8828     NstInfoModifications:
8829       content:
8830         application/json:
8831           schema:
8832             $ref: '#/components/schemas/NstInfoModifications'
8833         application/yaml:
8834           schema:
8835             $ref: '#/components/schemas/NstInfoModifications'
8836     # CreateNsiRequest:
8837       # Substituted by InstantiateNsiRequest
8838     InstantiateNsiRequest:
8839       content:
8840         application/json:
8841           schema:
8842             $ref: '#/components/schemas/InstantiateNsiRequest'
8843         application/yaml:
8844           schema:
8845             $ref: '#/components/schemas/InstantiateNsiRequest'
8846     TerminateNsiRequest:
8847       content:
8848         application/json:
8849           schema:
8850             $ref: '#/components/schemas/TerminateNsiRequest'
8851         application/yaml:
8852           schema:
8853             $ref: '#/components/schemas/TerminateNsiRequest'
8854     NsiActionRequest:
8855       content:
8856         application/json:
8857           schema:
8858             $ref: '#/components/schemas/NsiActionRequest'
8859         application/yaml:
8860           schema:
8861             $ref: '#/components/schemas/NsiActionRequest'
8862     # CreateNsiContentRequest:
8863       # Substituted by InstantiateNsiRequest
8864     CreateTokenRequest:
8865       content:
8866         application/json:
8867           schema:
8868             $ref: '#/components/schemas/CreateTokenRequest'
8869         application/yaml:
8870           schema:
8871             $ref: '#/components/schemas/CreateTokenRequest'
8872     CreateUserRequest:
8873       content:
8874         application/json:
8875           schema:
8876             $ref: '#/components/schemas/CreateUserRequest'
8877         application/yaml:
8878           schema:
8879             $ref: '#/components/schemas/CreateUserRequest'
8880     EditUserRequest:
8881       content:
8882         application/json:
8883           schema:
8884             $ref: '#/components/schemas/EditUserRequest'
8885         application/yaml:
8886           schema:
8887             $ref: '#/components/schemas/EditUserRequest'
8888     CreateProjectRequest:
8889       content:
8890         application/json:
8891           schema:
8892             $ref: '#/components/schemas/CreateProjectRequest'
8893         application/yaml:
8894           schema:
8895             $ref: '#/components/schemas/CreateProjectRequest'
8896     EditProjectRequest:
8897       content:
8898         application/json:
8899           schema:
8900             $ref: '#/components/schemas/EditProjectRequest'
8901         application/yaml:
8902           schema:
8903             $ref: '#/components/schemas/EditProjectRequest'
8904     CreateRoleRequest:
8905       content:
8906         application/json:
8907           schema:
8908             $ref: '#/components/schemas/CreateRoleRequest'
8909         application/yaml:
8910           schema:
8911             $ref: '#/components/schemas/CreateRoleRequest'
8912     EditRoleRequest:
8913       content:
8914         application/json:
8915           schema:
8916             $ref: '#/components/schemas/EditRoleRequest'
8917         application/yaml:
8918           schema:
8919             $ref: '#/components/schemas/EditRoleRequest'
8920     CreateVimRequest:
8921       content:
8922         application/json:
8923           schema:
8924             $ref: '#/components/schemas/CreateVimRequest'
8925         application/yaml:
8926           schema:
8927             $ref: '#/components/schemas/CreateVimRequest'
8928     EditVimRequest:
8929       content:
8930         application/json:
8931           schema:
8932             $ref: '#/components/schemas/EditVimRequest'
8933         application/yaml:
8934           schema:
8935             $ref: '#/components/schemas/EditVimRequest'
8936     CreateWimRequest:
8937       content:
8938         application/json:
8939           schema:
8940             $ref: '#/components/schemas/CreateWimRequest'
8941         application/yaml:
8942           schema:
8943             $ref: '#/components/schemas/CreateWimRequest'
8944     EditWimRequest:
8945       content:
8946         application/json:
8947           schema:
8948             $ref: '#/components/schemas/EditWimRequest'
8949         application/yaml:
8950           schema:
8951             $ref: '#/components/schemas/EditWimRequest'
8952     CreateSdnRequest:
8953       content:
8954         application/json:
8955           schema:
8956             $ref: '#/components/schemas/CreateSdnRequest'
8957         application/yaml:
8958           schema:
8959             $ref: '#/components/schemas/CreateSdnRequest'
8960     EditSdnRequest:
8961       content:
8962         application/json:
8963           schema:
8964             $ref: '#/components/schemas/EditSdnRequest'
8965         application/yaml:
8966           schema:
8967             $ref: '#/components/schemas/EditSdnRequest'
8968     CreatePduRequest:
8969       content:
8970         application/json:
8971           schema:
8972             $ref: '#/components/schemas/CreatePduRequest'
8973         application/yaml:
8974           schema:
8975             $ref: '#/components/schemas/CreatePduRequest'
8976     EditPduRequest:
8977       content:
8978         application/json:
8979           schema:
8980             $ref: '#/components/schemas/EditPduRequest'
8981         application/yaml:
8982           schema:
8983             $ref: '#/components/schemas/EditPduRequest'
8984     CreateK8sClusterRequest:
8985       content:
8986         application/json:
8987           schema:
8988             $ref: '#/components/schemas/CreateK8sClusterRequest'
8989         application/yaml:
8990           schema:
8991             $ref: '#/components/schemas/CreateK8sClusterRequest'
8992     EditK8sClusterRequest:
8993       content:
8994         application/json:
8995           schema:
8996             $ref: '#/components/schemas/EditK8sClusterRequest'
8997         application/yaml:
8998           schema:
8999             $ref: '#/components/schemas/EditK8sClusterRequest'
9000     CreateVcaRequest:
9001       content:
9002         application/json:
9003           schema:
9004             $ref: '#/components/schemas/CreateVcaRequest'
9005         application/yaml:
9006           schema:
9007             $ref: '#/components/schemas/CreateVcaRequest'
9008     EditVcaRequest:
9009       content:
9010         application/json:
9011           schema:
9012             $ref: '#/components/schemas/EditVcaRequest'
9013         application/yaml:
9014           schema:
9015             $ref: '#/components/schemas/EditVcaRequest'
9016     CreateK8sRepoRequest:
9017       content:
9018         application/json:
9019           schema:
9020             $ref: '#/components/schemas/CreateK8sRepoRequest'
9021         application/yaml:
9022           schema:
9023             $ref: '#/components/schemas/CreateK8sRepoRequest'
9024     NslcmSubscriptionRequest:
9025       content:
9026         application/json:
9027           schema:
9028             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9029         application/yaml:
9030           schema:
9031             $ref: '#/components/schemas/NslcmSubscriptionRequest'
9032   # END REQUEST BODIES
9033
9034   securitySchemes:
9035     bearerAuth:
9036       type: http
9037       scheme: bearer