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