50901b0dcee42353620221db0b87057cec46808b
[vfc/nfvo/lcm.git] / docs / platform / APIs / CATALOG_API / CATALOG_API_Specification_v1.json
1 {
2   "swagger": "2.0",
3   "info": {
4     "title": "VFC Catalog API",
5     "description": "\n\nThe `swagger-ui` view can be found [here](/api/catalog/v1/swagger).\nThe `ReDoc` view can be found [here](/api/catalog/v1/redoc).\nThe swagger YAML document can be found [here](/api/catalog/v1/swagger.yaml).\nThe swagger JSON document can be found [here](/api/catalog/v1/swagger.json).",
6     "version": "v1"
7   },
8   "host": "127.0.0.1:9000",
9   "schemes": [
10     "http"
11   ],
12   "basePath": "/",
13   "consumes": [
14     "application/json"
15   ],
16   "produces": [
17     "application/json"
18   ],
19   "securityDefinitions": {
20     "basic": {
21       "type": "basic"
22     }
23   },
24   "security": [
25     {
26       "basic": []
27     }
28   ],
29   "paths": {
30     "/api/catalog/v1/health_check": {
31       "get": {
32         "operationId": "api_catalog_v1_health_check_list",
33         "description": "",
34         "parameters": [],
35         "responses": {
36           "200": {
37             "description": "Active"
38           }
39         },
40         "tags": [
41           "api"
42         ]
43       },
44       "parameters": []
45     },
46     "/api/catalog/v1/jobs/{job_id}": {
47       "get": {
48         "operationId": "api_catalog_v1_jobs_read",
49         "description": "Get job status",
50         "parameters": [
51           {
52             "name": "job_id",
53             "in": "query",
54             "description": "job id",
55             "type": "string"
56           },
57           {
58             "name": "responseId",
59             "in": "query",
60             "description": "response id",
61             "type": "string"
62           }
63         ],
64         "responses": {
65           "200": {
66             "description": "",
67             "schema": {
68               "$ref": "#/definitions/GetJobResponse"
69             }
70           },
71           "500": {
72             "description": "",
73             "schema": {
74               "$ref": "#/definitions/PostJobResponseResult"
75             }
76           }
77         },
78         "tags": [
79           "api"
80         ]
81       },
82       "post": {
83         "operationId": "api_catalog_v1_jobs_create",
84         "description": "Update job status",
85         "parameters": [
86           {
87             "name": "data",
88             "in": "body",
89             "required": true,
90             "schema": {
91               "$ref": "#/definitions/PostJobRequest"
92             }
93           },
94           {
95             "name": "job_id",
96             "in": "query",
97             "description": "job id",
98             "type": "string"
99           }
100         ],
101         "responses": {
102           "202": {
103             "description": "",
104             "schema": {
105               "$ref": "#/definitions/PostJobResponseResult"
106             }
107           },
108           "500": {
109             "description": "",
110             "schema": {
111               "$ref": "#/definitions/PostJobResponseResult"
112             }
113           }
114         },
115         "tags": [
116           "api"
117         ]
118       },
119       "parameters": [
120         {
121           "name": "job_id",
122           "in": "path",
123           "required": true,
124           "type": "string"
125         }
126       ]
127     },
128     "/api/catalog/v1/mandb/{modelName}": {
129       "get": {
130         "operationId": "api_catalog_v1_mandb_read",
131         "description": "",
132         "parameters": [],
133         "responses": {
134           "200": {
135             "description": ""
136           }
137         },
138         "tags": [
139           "api"
140         ]
141       },
142       "delete": {
143         "operationId": "api_catalog_v1_mandb_delete",
144         "description": "",
145         "parameters": [],
146         "responses": {
147           "204": {
148             "description": ""
149           }
150         },
151         "tags": [
152           "api"
153         ]
154       },
155       "parameters": [
156         {
157           "name": "modelName",
158           "in": "path",
159           "required": true,
160           "type": "string"
161         }
162       ]
163     },
164     "/api/catalog/v1/nspackages": {
165       "get": {
166         "operationId": "api_catalog_v1_nspackages_list",
167         "description": "Query NS packages",
168         "parameters": [],
169         "responses": {
170           "200": {
171             "description": "",
172             "schema": {
173               "type": "array",
174               "items": {
175                 "$ref": "#/definitions/NsPackage"
176               }
177             }
178           },
179           "500": {
180             "description": "",
181             "schema": {
182               "$ref": "#/definitions/InternalErrorRequest"
183             }
184           }
185         },
186         "tags": [
187           "api"
188         ]
189       },
190       "post": {
191         "operationId": "api_catalog_v1_nspackages_create",
192         "description": "On distribute NS package",
193         "parameters": [
194           {
195             "name": "data",
196             "in": "body",
197             "required": true,
198             "schema": {
199               "$ref": "#/definitions/NsPackageDistributeRequest"
200             }
201           }
202         ],
203         "responses": {
204           "202": {
205             "description": "",
206             "schema": {
207               "$ref": "#/definitions/NsPackageDistributeResponse"
208             }
209           },
210           "500": {
211             "description": "",
212             "schema": {
213               "$ref": "#/definitions/InternalErrorRequest"
214             }
215           }
216         },
217         "tags": [
218           "api"
219         ]
220       },
221       "parameters": []
222     },
223     "/api/catalog/v1/nspackages/{csarId}": {
224       "get": {
225         "operationId": "api_catalog_v1_nspackages_read",
226         "description": "Query one NS package",
227         "parameters": [
228           {
229             "name": "csarId",
230             "in": "query",
231             "description": "csarId",
232             "type": "string"
233           }
234         ],
235         "responses": {
236           "200": {
237             "description": "",
238             "schema": {
239               "$ref": "#/definitions/NsPackage"
240             }
241           },
242           "500": {
243             "description": "error message",
244             "schema": {
245               "type": "string"
246             }
247           }
248         },
249         "tags": [
250           "api"
251         ]
252       },
253       "delete": {
254         "operationId": "api_catalog_v1_nspackages_delete",
255         "description": "Delete one NS package",
256         "parameters": [
257           {
258             "name": "csarId",
259             "in": "query",
260             "description": "csarId",
261             "type": "string"
262           }
263         ],
264         "responses": {
265           "200": {
266             "description": "",
267             "schema": {
268               "$ref": "#/definitions/NsPackageDistributeResponse"
269             }
270           },
271           "500": {
272             "description": "error message",
273             "schema": {
274               "type": "string"
275             }
276           }
277         },
278         "tags": [
279           "api"
280         ]
281       },
282       "parameters": [
283         {
284           "name": "csarId",
285           "in": "path",
286           "required": true,
287           "type": "string"
288         }
289       ]
290     },
291     "/api/catalog/v1/parsernsd": {
292       "post": {
293         "operationId": "api_catalog_v1_parsernsd_create",
294         "description": "Parse NS model",
295         "parameters": [
296           {
297             "name": "data",
298             "in": "body",
299             "required": true,
300             "schema": {
301               "$ref": "#/definitions/ParseModelRequest"
302             }
303           }
304         ],
305         "responses": {
306           "202": {
307             "description": "",
308             "schema": {
309               "$ref": "#/definitions/ParseModelResponse"
310             }
311           },
312           "500": {
313             "description": "",
314             "schema": {
315               "$ref": "#/definitions/InternalErrorRequest"
316             }
317           }
318         },
319         "tags": [
320           "api"
321         ]
322       },
323       "parameters": []
324     },
325     "/api/catalog/v1/parserpnfd": {
326       "post": {
327         "operationId": "api_catalog_v1_parserpnfd_create",
328         "description": "Parse PNF model",
329         "parameters": [
330           {
331             "name": "data",
332             "in": "body",
333             "required": true,
334             "schema": {
335               "$ref": "#/definitions/ParseModelRequest"
336             }
337           }
338         ],
339         "responses": {
340           "202": {
341             "description": "",
342             "schema": {
343               "$ref": "#/definitions/ParseModelResponse"
344             }
345           },
346           "500": {
347             "description": "",
348             "schema": {
349               "$ref": "#/definitions/InternalErrorRequest"
350             }
351           }
352         },
353         "tags": [
354           "api"
355         ]
356       },
357       "parameters": []
358     },
359     "/api/catalog/v1/parservnfd": {
360       "post": {
361         "operationId": "api_catalog_v1_parservnfd_create",
362         "description": "Parse NF model",
363         "parameters": [
364           {
365             "name": "data",
366             "in": "body",
367             "required": true,
368             "schema": {
369               "$ref": "#/definitions/ParseModelRequest"
370             }
371           }
372         ],
373         "responses": {
374           "202": {
375             "description": "",
376             "schema": {
377               "$ref": "#/definitions/ParseModelResponse"
378             }
379           },
380           "500": {
381             "description": "",
382             "schema": {
383               "$ref": "#/definitions/InternalErrorRequest"
384             }
385           }
386         },
387         "tags": [
388           "api"
389         ]
390       },
391       "parameters": []
392     },
393     "/api/catalog/v1/vnfpackages": {
394       "get": {
395         "operationId": "api_catalog_v1_vnfpackages_list",
396         "description": "Query Nf packages",
397         "parameters": [],
398         "responses": {
399           "200": {
400             "description": "",
401             "schema": {
402               "type": "array",
403               "items": {
404                 "$ref": "#/definitions/NfPackage"
405               }
406             }
407           },
408           "500": {
409             "description": "",
410             "schema": {
411               "$ref": "#/definitions/InternalErrorRequest"
412             }
413           }
414         },
415         "tags": [
416           "api"
417         ]
418       },
419       "post": {
420         "operationId": "api_catalog_v1_vnfpackages_create",
421         "description": "On distribute Nf package",
422         "parameters": [
423           {
424             "name": "data",
425             "in": "body",
426             "required": true,
427             "schema": {
428               "$ref": "#/definitions/NfPackageDistributeRequest"
429             }
430           }
431         ],
432         "responses": {
433           "202": {
434             "description": "",
435             "schema": {
436               "$ref": "#/definitions/PostJobResponse"
437             }
438           },
439           "500": {
440             "description": "",
441             "schema": {
442               "$ref": "#/definitions/InternalErrorRequest"
443             }
444           }
445         },
446         "tags": [
447           "api"
448         ]
449       },
450       "parameters": []
451     },
452     "/api/catalog/v1/vnfpackages/{csarId}": {
453       "get": {
454         "operationId": "api_catalog_v1_vnfpackages_read",
455         "description": "Query one Nf package",
456         "parameters": [
457           {
458             "name": "csarId",
459             "in": "query",
460             "description": "csarId",
461             "type": "string"
462           }
463         ],
464         "responses": {
465           "200": {
466             "description": "",
467             "schema": {
468               "$ref": "#/definitions/NfPackage"
469             }
470           },
471           "500": {
472             "description": "error message",
473             "schema": {
474               "type": "string"
475             }
476           }
477         },
478         "tags": [
479           "api"
480         ]
481       },
482       "delete": {
483         "operationId": "api_catalog_v1_vnfpackages_delete",
484         "description": "Delete one Nf package",
485         "parameters": [
486           {
487             "name": "csarId",
488             "in": "query",
489             "description": "csarId",
490             "type": "string"
491           }
492         ],
493         "responses": {
494           "202": {
495             "description": "",
496             "schema": {
497               "$ref": "#/definitions/PostJobResponse"
498             }
499           },
500           "500": {
501             "description": "error message",
502             "schema": {
503               "type": "string"
504             }
505           }
506         },
507         "tags": [
508           "api"
509         ]
510       },
511       "parameters": [
512         {
513           "name": "csarId",
514           "in": "path",
515           "required": true,
516           "type": "string"
517         }
518       ]
519     },
520     "/api/nsd/v1/health_check": {
521       "get": {
522         "operationId": "api_nsd_v1_health_check_list",
523         "description": "",
524         "parameters": [],
525         "responses": {
526           "200": {
527             "description": "Active"
528           }
529         },
530         "tags": [
531           "api"
532         ]
533       },
534       "parameters": []
535     },
536     "/api/nsd/v1/ns_descriptors": {
537       "get": {
538         "operationId": "api_nsd_v1_ns_descriptors_list",
539         "description": "Query multiple NSDs",
540         "parameters": [],
541         "responses": {
542           "200": {
543             "description": "",
544             "schema": {
545               "type": "array",
546               "items": {
547                 "$ref": "#/definitions/NsdInfo"
548               }
549             }
550           },
551           "500": {
552             "description": "Internal error"
553           }
554         },
555         "tags": [
556           "api"
557         ]
558       },
559       "post": {
560         "operationId": "api_nsd_v1_ns_descriptors_create",
561         "description": "Create a NSD",
562         "parameters": [
563           {
564             "name": "data",
565             "in": "body",
566             "required": true,
567             "schema": {
568               "$ref": "#/definitions/CreateNsdInfoRequest"
569             }
570           }
571         ],
572         "responses": {
573           "201": {
574             "description": "",
575             "schema": {
576               "$ref": "#/definitions/NsdInfo"
577             }
578           },
579           "500": {
580             "description": "Internal error"
581           }
582         },
583         "tags": [
584           "api"
585         ]
586       },
587       "parameters": []
588     },
589     "/api/nsd/v1/ns_descriptors/{nsdInfoId}": {
590       "get": {
591         "operationId": "api_nsd_v1_ns_descriptors_read",
592         "description": "Query a NSD",
593         "parameters": [],
594         "responses": {
595           "200": {
596             "description": "",
597             "schema": {
598               "$ref": "#/definitions/NsdInfo"
599             }
600           },
601           "404": {
602             "description": "NSDs do not exist"
603           },
604           "500": {
605             "description": "Internal error"
606           }
607         },
608         "tags": [
609           "api"
610         ]
611       },
612       "delete": {
613         "operationId": "api_nsd_v1_ns_descriptors_delete",
614         "description": "Delete a NSD",
615         "parameters": [],
616         "responses": {
617           "204": {
618             "description": "No content"
619           },
620           "500": {
621             "description": "Internal error"
622           }
623         },
624         "tags": [
625           "api"
626         ]
627       },
628       "parameters": [
629         {
630           "name": "nsdInfoId",
631           "in": "path",
632           "required": true,
633           "type": "string"
634         }
635       ]
636     },
637     "/api/nsd/v1/ns_descriptors/{nsdInfoId}/nsd_content": {
638       "get": {
639         "operationId": "api_nsd_v1_ns_descriptors_nsd_content_list",
640         "description": "Download NSD content",
641         "parameters": [],
642         "responses": {
643           "204": {
644             "description": "No content"
645           },
646           "404": {
647             "description": "NSD does not exist."
648           },
649           "500": {
650             "description": "Internal error"
651           }
652         },
653         "tags": [
654           "api"
655         ]
656       },
657       "put": {
658         "operationId": "api_nsd_v1_ns_descriptors_nsd_content_update",
659         "description": "Upload NSD content",
660         "parameters": [],
661         "responses": {
662           "204": {
663             "description": "PNFD file"
664           },
665           "500": {
666             "description": "Internal error"
667           }
668         },
669         "tags": [
670           "api"
671         ]
672       },
673       "parameters": [
674         {
675           "name": "nsdInfoId",
676           "in": "path",
677           "required": true,
678           "type": "string"
679         }
680       ]
681     },
682     "/api/nsd/v1/pnf_descriptors": {
683       "get": {
684         "operationId": "api_nsd_v1_pnf_descriptors_list",
685         "description": "Query multiple PNFDs",
686         "parameters": [],
687         "responses": {
688           "200": {
689             "description": "",
690             "schema": {
691               "type": "array",
692               "items": {
693                 "$ref": "#/definitions/PnfdInfo"
694               }
695             }
696           },
697           "500": {
698             "description": "Internal error"
699           }
700         },
701         "tags": [
702           "api"
703         ]
704       },
705       "post": {
706         "operationId": "api_nsd_v1_pnf_descriptors_create",
707         "description": "Create a  PNFD",
708         "parameters": [
709           {
710             "name": "data",
711             "in": "body",
712             "required": true,
713             "schema": {
714               "$ref": "#/definitions/CreatePnfdInfoRequest"
715             }
716           }
717         ],
718         "responses": {
719           "201": {
720             "description": "",
721             "schema": {
722               "$ref": "#/definitions/PnfdInfo"
723             }
724           },
725           "500": {
726             "description": "Internal error"
727           }
728         },
729         "tags": [
730           "api"
731         ]
732       },
733       "parameters": []
734     },
735     "/api/nsd/v1/pnf_descriptors/{pnfdInfoId}": {
736       "get": {
737         "operationId": "api_nsd_v1_pnf_descriptors_read",
738         "description": "Query a PNFD",
739         "parameters": [],
740         "responses": {
741           "200": {
742             "description": "",
743             "schema": {
744               "$ref": "#/definitions/PnfdInfo"
745             }
746           },
747           "404": {
748             "description": "PNFD does not exist"
749           },
750           "500": {
751             "description": "Internal error"
752           }
753         },
754         "tags": [
755           "api"
756         ]
757       },
758       "delete": {
759         "operationId": "api_nsd_v1_pnf_descriptors_delete",
760         "description": "Delete a PNFD",
761         "parameters": [],
762         "responses": {
763           "204": {
764             "description": "No content"
765           },
766           "500": {
767             "description": "Internal error"
768           }
769         },
770         "tags": [
771           "api"
772         ]
773       },
774       "parameters": [
775         {
776           "name": "pnfdInfoId",
777           "in": "path",
778           "required": true,
779           "type": "string"
780         }
781       ]
782     },
783     "/api/nsd/v1/pnf_descriptors/{pnfdInfoId}/pnfd_content": {
784       "get": {
785         "operationId": "api_nsd_v1_pnf_descriptors_pnfd_content_list",
786         "description": "Fetch PNFD content",
787         "parameters": [],
788         "responses": {
789           "204": {
790             "description": "PNFD file"
791           },
792           "404": {
793             "description": "PNFD does not exist"
794           },
795           "500": {
796             "description": "Internal error"
797           }
798         },
799         "tags": [
800           "api"
801         ]
802       },
803       "put": {
804         "operationId": "api_nsd_v1_pnf_descriptors_pnfd_content_update",
805         "description": "Upload PNFD content",
806         "parameters": [],
807         "responses": {
808           "204": {
809             "description": "No content"
810           },
811           "500": {
812             "description": "Internal error"
813           }
814         },
815         "tags": [
816           "api"
817         ]
818       },
819       "parameters": [
820         {
821           "name": "pnfdInfoId",
822           "in": "path",
823           "required": true,
824           "type": "string"
825         }
826       ]
827     },
828     "/api/nsd/v1/subscriptions": {
829       "get": {
830         "operationId": "api_nsd_v1_subscriptions_list",
831         "description": "Query subscriptions for Nsd Management",
832         "parameters": [],
833         "responses": {
834           "200": {
835             "description": "",
836             "schema": {
837               "type": "array",
838               "items": {
839                 "$ref": "#/definitions/NsdmSubscription"
840               }
841             }
842           },
843           "400": {
844             "description": "",
845             "schema": {
846               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
847             }
848           },
849           "404": {
850             "description": "",
851             "schema": {
852               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
853             }
854           },
855           "500": {
856             "description": "",
857             "schema": {
858               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
859             }
860           }
861         },
862         "tags": [
863           "api"
864         ]
865       },
866       "post": {
867         "operationId": "api_nsd_v1_subscriptions_create",
868         "description": "Create Subscription for NSD Management",
869         "parameters": [
870           {
871             "name": "data",
872             "in": "body",
873             "required": true,
874             "schema": {
875               "$ref": "#/definitions/NsdmSubscriptionRequest"
876             }
877           }
878         ],
879         "responses": {
880           "201": {
881             "description": "",
882             "schema": {
883               "$ref": "#/definitions/NsdmSubscription"
884             }
885           },
886           "303": {
887             "description": "",
888             "schema": {
889               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
890             }
891           },
892           "400": {
893             "description": "",
894             "schema": {
895               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
896             }
897           },
898           "500": {
899             "description": "",
900             "schema": {
901               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
902             }
903           }
904         },
905         "tags": [
906           "api"
907         ]
908       },
909       "parameters": []
910     },
911     "/api/nsd/v1/subscriptions/{subscriptionId}": {
912       "get": {
913         "operationId": "api_nsd_v1_subscriptions_read",
914         "description": "Query subscriptions for Nsd Management",
915         "parameters": [],
916         "responses": {
917           "200": {
918             "description": "",
919             "schema": {
920               "$ref": "#/definitions/NsdmSubscription"
921             }
922           },
923           "400": {
924             "description": "",
925             "schema": {
926               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
927             }
928           },
929           "404": {
930             "description": "",
931             "schema": {
932               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
933             }
934           },
935           "500": {
936             "description": "",
937             "schema": {
938               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
939             }
940           }
941         },
942         "tags": [
943           "api"
944         ]
945       },
946       "delete": {
947         "operationId": "api_nsd_v1_subscriptions_delete",
948         "description": "Delete subscription for Nsd Management",
949         "parameters": [],
950         "responses": {
951           "204": {
952             "description": "No_Content"
953           },
954           "400": {
955             "description": "",
956             "schema": {
957               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
958             }
959           },
960           "404": {
961             "description": "",
962             "schema": {
963               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
964             }
965           },
966           "500": {
967             "description": "",
968             "schema": {
969               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
970             }
971           }
972         },
973         "tags": [
974           "api"
975         ]
976       },
977       "parameters": [
978         {
979           "name": "subscriptionId",
980           "in": "path",
981           "required": true,
982           "type": "string"
983         }
984       ]
985     },
986     "/api/parser/v1/health_check": {
987       "get": {
988         "operationId": "api_parser_v1_health_check_list",
989         "description": "",
990         "parameters": [],
991         "responses": {
992           "200": {
993             "description": "Active"
994           }
995         },
996         "tags": [
997           "api"
998         ]
999       },
1000       "parameters": []
1001     },
1002     "/api/parser/v1/parser": {
1003       "post": {
1004         "operationId": "api_parser_v1_parser_create",
1005         "description": "Parse model(NS, Service, VNF, PNF)",
1006         "parameters": [
1007           {
1008             "name": "data",
1009             "in": "body",
1010             "required": true,
1011             "schema": {
1012               "$ref": "#/definitions/ParseModelRequest"
1013             }
1014           }
1015         ],
1016         "responses": {
1017           "202": {
1018             "description": "",
1019             "schema": {
1020               "$ref": "#/definitions/ParseModelResponse"
1021             }
1022           },
1023           "500": {
1024             "description": "",
1025             "schema": {
1026               "$ref": "#/definitions/InternalErrorRequest"
1027             }
1028           }
1029         },
1030         "tags": [
1031           "api"
1032         ]
1033       },
1034       "parameters": []
1035     },
1036     "/api/parser/v1/parsernsd": {
1037       "post": {
1038         "operationId": "api_parser_v1_parsernsd_create",
1039         "description": "Parse NS model",
1040         "parameters": [
1041           {
1042             "name": "data",
1043             "in": "body",
1044             "required": true,
1045             "schema": {
1046               "$ref": "#/definitions/ParseModelRequest"
1047             }
1048           }
1049         ],
1050         "responses": {
1051           "202": {
1052             "description": "",
1053             "schema": {
1054               "$ref": "#/definitions/ParseModelResponse"
1055             }
1056           },
1057           "500": {
1058             "description": "",
1059             "schema": {
1060               "$ref": "#/definitions/InternalErrorRequest"
1061             }
1062           }
1063         },
1064         "tags": [
1065           "api"
1066         ]
1067       },
1068       "parameters": []
1069     },
1070     "/api/parser/v1/parserpnfd": {
1071       "post": {
1072         "operationId": "api_parser_v1_parserpnfd_create",
1073         "description": "Parse PNF model",
1074         "parameters": [
1075           {
1076             "name": "data",
1077             "in": "body",
1078             "required": true,
1079             "schema": {
1080               "$ref": "#/definitions/ParseModelRequest"
1081             }
1082           }
1083         ],
1084         "responses": {
1085           "202": {
1086             "description": "",
1087             "schema": {
1088               "$ref": "#/definitions/ParseModelResponse"
1089             }
1090           },
1091           "500": {
1092             "description": "",
1093             "schema": {
1094               "$ref": "#/definitions/InternalErrorRequest"
1095             }
1096           }
1097         },
1098         "tags": [
1099           "api"
1100         ]
1101       },
1102       "parameters": []
1103     },
1104     "/api/parser/v1/parservnfd": {
1105       "post": {
1106         "operationId": "api_parser_v1_parservnfd_create",
1107         "description": "Parse NF model",
1108         "parameters": [
1109           {
1110             "name": "data",
1111             "in": "body",
1112             "required": true,
1113             "schema": {
1114               "$ref": "#/definitions/ParseModelRequest"
1115             }
1116           }
1117         ],
1118         "responses": {
1119           "202": {
1120             "description": "",
1121             "schema": {
1122               "$ref": "#/definitions/ParseModelResponse"
1123             }
1124           },
1125           "500": {
1126             "description": "",
1127             "schema": {
1128               "$ref": "#/definitions/InternalErrorRequest"
1129             }
1130           }
1131         },
1132         "tags": [
1133           "api"
1134         ]
1135       },
1136       "parameters": []
1137     },
1138     "/api/parser/v1/service_packages": {
1139       "get": {
1140         "operationId": "api_parser_v1_service_packages_list",
1141         "description": "Query Service packages",
1142         "parameters": [],
1143         "responses": {
1144           "200": {
1145             "description": "",
1146             "schema": {
1147               "type": "array",
1148               "items": {
1149                 "$ref": "#/definitions/ServicePackage"
1150               }
1151             }
1152           },
1153           "500": {
1154             "description": "",
1155             "schema": {
1156               "$ref": "#/definitions/InternalErrorRequest"
1157             }
1158           }
1159         },
1160         "tags": [
1161           "api"
1162         ]
1163       },
1164       "post": {
1165         "operationId": "api_parser_v1_service_packages_create",
1166         "description": "On distribute Service package",
1167         "parameters": [
1168           {
1169             "name": "data",
1170             "in": "body",
1171             "required": true,
1172             "schema": {
1173               "$ref": "#/definitions/ServicePackageDistributeRequest"
1174             }
1175           }
1176         ],
1177         "responses": {
1178           "202": {
1179             "description": ""
1180           },
1181           "400": {
1182             "description": "",
1183             "schema": {
1184               "$ref": "#/definitions/InternalErrorRequest"
1185             }
1186           },
1187           "500": {
1188             "description": "",
1189             "schema": {
1190               "$ref": "#/definitions/InternalErrorRequest"
1191             }
1192           }
1193         },
1194         "tags": [
1195           "api"
1196         ]
1197       },
1198       "parameters": []
1199     },
1200     "/api/parser/v1/service_packages/{csarId}": {
1201       "get": {
1202         "operationId": "api_parser_v1_service_packages_read",
1203         "description": "Query one Service package",
1204         "parameters": [
1205           {
1206             "name": "csarId",
1207             "in": "query",
1208             "description": "csarId",
1209             "type": "string"
1210           }
1211         ],
1212         "responses": {
1213           "200": {
1214             "description": "",
1215             "schema": {
1216               "$ref": "#/definitions/ServicePackage"
1217             }
1218           },
1219           "404": {
1220             "description": "",
1221             "schema": {
1222               "$ref": "#/definitions/InternalErrorRequest"
1223             }
1224           },
1225           "500": {
1226             "description": "",
1227             "schema": {
1228               "$ref": "#/definitions/InternalErrorRequest"
1229             }
1230           }
1231         },
1232         "tags": [
1233           "api"
1234         ]
1235       },
1236       "delete": {
1237         "operationId": "api_parser_v1_service_packages_delete",
1238         "description": "Delete one Service package",
1239         "parameters": [
1240           {
1241             "name": "csarId",
1242             "in": "query",
1243             "description": "csarId",
1244             "type": "string"
1245           }
1246         ],
1247         "responses": {
1248           "204": {
1249             "description": ""
1250           },
1251           "404": {
1252             "description": "",
1253             "schema": {
1254               "$ref": "#/definitions/InternalErrorRequest"
1255             }
1256           },
1257           "500": {
1258             "description": "",
1259             "schema": {
1260               "$ref": "#/definitions/InternalErrorRequest"
1261             }
1262           }
1263         },
1264         "tags": [
1265           "api"
1266         ]
1267       },
1268       "parameters": [
1269         {
1270           "name": "csarId",
1271           "in": "path",
1272           "required": true,
1273           "type": "string"
1274         }
1275       ]
1276     },
1277     "/api/vnfpkgm/v1/health_check": {
1278       "get": {
1279         "operationId": "api_vnfpkgm_v1_health_check_list",
1280         "description": "",
1281         "parameters": [],
1282         "responses": {
1283           "200": {
1284             "description": "Active"
1285           }
1286         },
1287         "tags": [
1288           "api"
1289         ]
1290       },
1291       "parameters": []
1292     },
1293     "/api/vnfpkgm/v1/subscriptions": {
1294       "get": {
1295         "operationId": "api_vnfpkgm_v1_subscriptions_list",
1296         "description": "",
1297         "parameters": [],
1298         "responses": {
1299           "200": {
1300             "description": "",
1301             "schema": {
1302               "$ref": "#/definitions/PkgmSubscription"
1303             }
1304           },
1305           "400": {
1306             "description": "",
1307             "schema": {
1308               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1309             }
1310           },
1311           "500": {
1312             "description": "",
1313             "schema": {
1314               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1315             }
1316           }
1317         },
1318         "tags": [
1319           "api"
1320         ]
1321       },
1322       "post": {
1323         "operationId": "api_vnfpkgm_v1_subscriptions_create",
1324         "description": "",
1325         "parameters": [
1326           {
1327             "name": "data",
1328             "in": "body",
1329             "required": true,
1330             "schema": {
1331               "$ref": "#/definitions/PkgmSubscriptionRequest"
1332             }
1333           }
1334         ],
1335         "responses": {
1336           "201": {
1337             "description": "",
1338             "schema": {
1339               "$ref": "#/definitions/PkgmSubscription"
1340             }
1341           },
1342           "500": {
1343             "description": "Internal error"
1344           }
1345         },
1346         "tags": [
1347           "api"
1348         ]
1349       },
1350       "parameters": []
1351     },
1352     "/api/vnfpkgm/v1/subscriptions/{subscriptionId}": {
1353       "get": {
1354         "operationId": "api_vnfpkgm_v1_subscriptions_read",
1355         "description": "",
1356         "parameters": [],
1357         "responses": {
1358           "200": {
1359             "description": "",
1360             "schema": {
1361               "$ref": "#/definitions/PkgmSubscription"
1362             }
1363           },
1364           "404": {
1365             "description": "",
1366             "schema": {
1367               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1368             }
1369           },
1370           "500": {
1371             "description": "",
1372             "schema": {
1373               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1374             }
1375           }
1376         },
1377         "tags": [
1378           "api"
1379         ]
1380       },
1381       "delete": {
1382         "operationId": "api_vnfpkgm_v1_subscriptions_delete",
1383         "description": "",
1384         "parameters": [],
1385         "responses": {
1386           "204": {
1387             "description": ""
1388           },
1389           "404": {
1390             "description": "",
1391             "schema": {
1392               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1393             }
1394           },
1395           "500": {
1396             "description": "",
1397             "schema": {
1398               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1399             }
1400           }
1401         },
1402         "tags": [
1403           "api"
1404         ]
1405       },
1406       "parameters": [
1407         {
1408           "name": "subscriptionId",
1409           "in": "path",
1410           "required": true,
1411           "type": "string"
1412         }
1413       ]
1414     },
1415     "/api/vnfpkgm/v1/vnf_packages": {
1416       "get": {
1417         "operationId": "api_vnfpkgm_v1_vnf_packages_list",
1418         "description": "Query multiple VNF package resource",
1419         "parameters": [],
1420         "responses": {
1421           "200": {
1422             "description": "",
1423             "schema": {
1424               "type": "array",
1425               "items": {
1426                 "$ref": "#/definitions/VnfPkgInfo"
1427               }
1428             }
1429           },
1430           "500": {
1431             "description": "Internal error"
1432           }
1433         },
1434         "tags": [
1435           "api"
1436         ]
1437       },
1438       "post": {
1439         "operationId": "api_vnfpkgm_v1_vnf_packages_create",
1440         "description": "Create an individual VNF package resource",
1441         "parameters": [
1442           {
1443             "name": "data",
1444             "in": "body",
1445             "required": true,
1446             "schema": {
1447               "$ref": "#/definitions/CreateVnfPkgInfoRequest"
1448             }
1449           }
1450         ],
1451         "responses": {
1452           "201": {
1453             "description": "",
1454             "schema": {
1455               "$ref": "#/definitions/VnfPkgInfo"
1456             }
1457           },
1458           "500": {
1459             "description": "Internal error"
1460           }
1461         },
1462         "tags": [
1463           "api"
1464         ]
1465       },
1466       "parameters": []
1467     },
1468     "/api/vnfpkgm/v1/vnf_packages/{vnfPkgId}": {
1469       "get": {
1470         "operationId": "api_vnfpkgm_v1_vnf_packages_read",
1471         "description": "Query an individual VNF package resource",
1472         "parameters": [],
1473         "responses": {
1474           "200": {
1475             "description": "",
1476             "schema": {
1477               "$ref": "#/definitions/VnfPkgInfo"
1478             }
1479           },
1480           "404": {
1481             "description": "VNF package does not exist"
1482           },
1483           "500": {
1484             "description": "Internal error"
1485           }
1486         },
1487         "tags": [
1488           "api"
1489         ]
1490       },
1491       "delete": {
1492         "operationId": "api_vnfpkgm_v1_vnf_packages_delete",
1493         "description": "Delete an individual VNF package resource",
1494         "parameters": [],
1495         "responses": {
1496           "204": {
1497             "description": "No content"
1498           },
1499           "500": {
1500             "description": "Internal error"
1501           }
1502         },
1503         "tags": [
1504           "api"
1505         ]
1506       },
1507       "parameters": [
1508         {
1509           "name": "vnfPkgId",
1510           "in": "path",
1511           "required": true,
1512           "type": "string"
1513         }
1514       ]
1515     },
1516     "/api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath}": {
1517       "get": {
1518         "operationId": "api_vnfpkgm_v1_vnf_packages_artifacts_read",
1519         "description": "",
1520         "parameters": [],
1521         "responses": {
1522           "200": {
1523             "description": "HTTP_200_OK"
1524           },
1525           "404": {
1526             "description": "",
1527             "schema": {
1528               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1529             }
1530           },
1531           "500": {
1532             "description": "",
1533             "schema": {
1534               "$ref": "#/definitions/SUBSCRIPTION_ProblemDetailsSerializer"
1535             }
1536           }
1537         },
1538         "tags": [
1539           "api"
1540         ]
1541       },
1542       "parameters": [
1543         {
1544           "name": "vnfPkgId",
1545           "in": "path",
1546           "required": true,
1547           "type": "string"
1548         },
1549         {
1550           "name": "artifactPath",
1551           "in": "path",
1552           "required": true,
1553           "type": "string"
1554         }
1555       ]
1556     },
1557     "/api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content": {
1558       "get": {
1559         "operationId": "api_vnfpkgm_v1_vnf_packages_package_content_list",
1560         "description": "Fetch VNF package content",
1561         "parameters": [],
1562         "responses": {
1563           "200": {
1564             "description": "",
1565             "schema": {
1566               "type": "array",
1567               "items": {
1568                 "$ref": "#/definitions/VnfPkgInfo"
1569               }
1570             }
1571           },
1572           "404": {
1573             "description": "VNF package does not exist"
1574           },
1575           "500": {
1576             "description": "Internal error"
1577           }
1578         },
1579         "tags": [
1580           "api"
1581         ]
1582       },
1583       "put": {
1584         "operationId": "api_vnfpkgm_v1_vnf_packages_package_content_update",
1585         "description": "Upload VNF package content",
1586         "parameters": [],
1587         "responses": {
1588           "202": {
1589             "description": "Successfully"
1590           },
1591           "500": {
1592             "description": "Internal error"
1593           }
1594         },
1595         "tags": [
1596           "api"
1597         ]
1598       },
1599       "parameters": [
1600         {
1601           "name": "vnfPkgId",
1602           "in": "path",
1603           "required": true,
1604           "type": "string"
1605         }
1606       ]
1607     },
1608     "/api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content/upload_from_uri": {
1609       "post": {
1610         "operationId": "api_vnfpkgm_v1_vnf_packages_package_content_upload_from_uri_create",
1611         "description": "Upload VNF package content from uri",
1612         "parameters": [
1613           {
1614             "name": "data",
1615             "in": "body",
1616             "required": true,
1617             "schema": {
1618               "$ref": "#/definitions/UploadVnfPackageFromUriRequest"
1619             }
1620           }
1621         ],
1622         "responses": {
1623           "202": {
1624             "description": "Successfully"
1625           },
1626           "500": {
1627             "description": "Internal error"
1628           }
1629         },
1630         "tags": [
1631           "api"
1632         ]
1633       },
1634       "parameters": [
1635         {
1636           "name": "vnfPkgId",
1637           "in": "path",
1638           "required": true,
1639           "type": "string"
1640         }
1641       ]
1642     },
1643     "/samples/": {
1644       "get": {
1645         "operationId": "samples_list",
1646         "description": "List all samples.",
1647         "parameters": [],
1648         "responses": {
1649           "200": {
1650             "description": ""
1651           }
1652         },
1653         "tags": [
1654           "samples"
1655         ]
1656       },
1657       "parameters": []
1658     }
1659   },
1660   "definitions": {
1661     "JobResponseHistoryList": {
1662       "description": "Response History List",
1663       "type": "object",
1664       "properties": {
1665         "status": {
1666           "title": "Status",
1667           "description": "Status",
1668           "type": "string"
1669         },
1670         "progress": {
1671           "title": "Progress",
1672           "description": "Job Progress",
1673           "type": "string"
1674         },
1675         "statusDescription": {
1676           "title": "Statusdescription",
1677           "description": "Status Description",
1678           "type": "string"
1679         },
1680         "errorCode": {
1681           "title": "Errorcode",
1682           "description": "Error Code",
1683           "type": "string"
1684         },
1685         "responseId": {
1686           "title": "Responseid",
1687           "description": "Response Id",
1688           "type": "string"
1689         }
1690       }
1691     },
1692     "JobResponseDescriptor": {
1693       "title": "Responsedescriptor",
1694       "description": "Job Response Descriptor",
1695       "type": "object",
1696       "properties": {
1697         "status": {
1698           "title": "Status",
1699           "description": "Status",
1700           "type": "string"
1701         },
1702         "progress": {
1703           "title": "Progress",
1704           "description": "Job Progress",
1705           "type": "string"
1706         },
1707         "statusDescription": {
1708           "title": "Statusdescription",
1709           "description": "Status Description",
1710           "type": "string"
1711         },
1712         "errorCode": {
1713           "title": "Errorcode",
1714           "description": "Error Code",
1715           "type": "string"
1716         },
1717         "responseId": {
1718           "title": "Responseid",
1719           "description": "Response Id",
1720           "type": "string"
1721         },
1722         "responseHistoryList": {
1723           "description": "Response History List",
1724           "type": "array",
1725           "items": {
1726             "$ref": "#/definitions/JobResponseHistoryList"
1727           }
1728         }
1729       }
1730     },
1731     "GetJobResponse": {
1732       "type": "object",
1733       "properties": {
1734         "jobId": {
1735           "title": "Jobid",
1736           "description": "Job Id",
1737           "type": "string"
1738         },
1739         "responseDescriptor": {
1740           "$ref": "#/definitions/JobResponseDescriptor"
1741         }
1742       }
1743     },
1744     "PostJobResponseResult": {
1745       "required": [
1746         "result"
1747       ],
1748       "type": "object",
1749       "properties": {
1750         "result": {
1751           "title": "Result",
1752           "description": "Result",
1753           "type": "string"
1754         },
1755         "msg": {
1756           "title": "Msg",
1757           "description": "Message",
1758           "type": "string"
1759         }
1760       }
1761     },
1762     "PostJobRequest": {
1763       "type": "object",
1764       "properties": {
1765         "progress": {
1766           "title": "Progress",
1767           "description": "Job Progress",
1768           "type": "string"
1769         },
1770         "desc": {
1771           "title": "Desc",
1772           "description": "Description",
1773           "type": "string"
1774         },
1775         "errcode": {
1776           "title": "Errcode",
1777           "description": "Error Code",
1778           "type": "string"
1779         }
1780       }
1781     },
1782     "NsPackageInfo": {
1783       "title": "Packageinfo",
1784       "description": "NS Package Info",
1785       "type": "object",
1786       "properties": {
1787         "nsdId": {
1788           "title": "Nsdid",
1789           "description": "NSD ID",
1790           "type": "string"
1791         },
1792         "nsPackageId": {
1793           "title": "Nspackageid",
1794           "description": "NS Package ID",
1795           "type": "string"
1796         },
1797         "nsdProvider": {
1798           "title": "Nsdprovider",
1799           "description": "NSD Provider",
1800           "type": "string"
1801         },
1802         "nsdVersion": {
1803           "title": "Nsdversion",
1804           "description": "NSD Version",
1805           "type": "string"
1806         },
1807         "csarName": {
1808           "title": "Csarname",
1809           "description": "CSAR name",
1810           "type": "string"
1811         },
1812         "nsdModel": {
1813           "title": "Nsdmodel",
1814           "description": "NSD Model",
1815           "type": "string"
1816         },
1817         "downloadUrl": {
1818           "title": "Downloadurl",
1819           "description": "URL to download NSD Model",
1820           "type": "string"
1821         }
1822       }
1823     },
1824     "NsPackage": {
1825       "type": "object",
1826       "properties": {
1827         "csarId": {
1828           "title": "Csarid",
1829           "description": "CSAR ID",
1830           "type": "string"
1831         },
1832         "packageInfo": {
1833           "$ref": "#/definitions/NsPackageInfo"
1834         }
1835       }
1836     },
1837     "InternalErrorRequest": {
1838       "required": [
1839         "error"
1840       ],
1841       "type": "object",
1842       "properties": {
1843         "error": {
1844           "title": "Error",
1845           "description": "Error",
1846           "type": "string"
1847         },
1848         "errorMessage": {
1849           "title": "Errormessage",
1850           "description": "Error Message",
1851           "type": "string"
1852         }
1853       }
1854     },
1855     "NsPackageDistributeRequest": {
1856       "required": [
1857         "csarId"
1858       ],
1859       "type": "object",
1860       "properties": {
1861         "csarId": {
1862           "title": "Csarid",
1863           "description": "csarId",
1864           "type": "string"
1865         }
1866       }
1867     },
1868     "NsPackageDistributeResponse": {
1869       "required": [
1870         "status",
1871         "statusDescription",
1872         "errorCode"
1873       ],
1874       "type": "object",
1875       "properties": {
1876         "status": {
1877           "title": "Status",
1878           "description": "status",
1879           "type": "string"
1880         },
1881         "statusDescription": {
1882           "title": "Statusdescription",
1883           "description": "statusDescription",
1884           "type": "string"
1885         },
1886         "errorCode": {
1887           "title": "Errorcode",
1888           "description": "errorCode",
1889           "type": "string"
1890         }
1891       }
1892     },
1893     "ParseModelRequest": {
1894       "required": [
1895         "csarId"
1896       ],
1897       "type": "object",
1898       "properties": {
1899         "csarId": {
1900           "title": "Csarid",
1901           "description": "CSAR ID",
1902           "type": "string"
1903         },
1904         "packageType": {
1905           "title": "Packagetype",
1906           "description": "Package type: VNF, PNF, NS, Service",
1907           "type": "string"
1908         },
1909         "inputs": {
1910           "title": "Inputs",
1911           "description": "Inputs",
1912           "type": "string"
1913         }
1914       }
1915     },
1916     "ParseModelResponse": {
1917       "required": [
1918         "model"
1919       ],
1920       "type": "object",
1921       "properties": {
1922         "model": {
1923           "title": "Model",
1924           "description": "Model",
1925           "type": "string"
1926         }
1927       }
1928     },
1929     "NfPackageInfo": {
1930       "title": "Packageinfo",
1931       "description": "VNF Package Info",
1932       "required": [
1933         "vnfPackageId"
1934       ],
1935       "type": "object",
1936       "properties": {
1937         "vnfdId": {
1938           "title": "Vnfdid",
1939           "description": "VNFD ID",
1940           "type": "string"
1941         },
1942         "vnfPackageId": {
1943           "title": "Vnfpackageid",
1944           "description": "VNF Package ID",
1945           "type": "string"
1946         },
1947         "vnfdProvider": {
1948           "title": "Vnfdprovider",
1949           "description": "VNFD Provider",
1950           "type": "string"
1951         },
1952         "vnfdVersion": {
1953           "title": "Vnfdversion",
1954           "description": "VNFD Version",
1955           "type": "string"
1956         },
1957         "vnfVersion": {
1958           "title": "Vnfversion",
1959           "description": "VNF Version",
1960           "type": "string"
1961         },
1962         "csarName": {
1963           "title": "Csarname",
1964           "description": "CSAR Name",
1965           "type": "string"
1966         },
1967         "vnfdModel": {
1968           "title": "Vnfdmodel",
1969           "description": "VNFD Model",
1970           "type": "string"
1971         },
1972         "downloadUrl": {
1973           "title": "Downloadurl",
1974           "description": "URL to download VNFD Model",
1975           "type": "string"
1976         }
1977       }
1978     },
1979     "NfImageInfo": {
1980       "description": "Image Info",
1981       "required": [
1982         "index",
1983         "fileName",
1984         "imageId",
1985         "vimId",
1986         "vimUser",
1987         "tenant",
1988         "status"
1989       ],
1990       "type": "object",
1991       "properties": {
1992         "index": {
1993           "title": "Index",
1994           "description": "Index of VNF Image",
1995           "type": "string"
1996         },
1997         "fileName": {
1998           "title": "Filename",
1999           "description": "Image file name",
2000           "type": "string"
2001         },
2002         "imageId": {
2003           "title": "Imageid",
2004           "description": "Image ID",
2005           "type": "string"
2006         },
2007         "vimId": {
2008           "title": "Vimid",
2009           "description": "VIM ID",
2010           "type": "string"
2011         },
2012         "vimUser": {
2013           "title": "Vimuser",
2014           "description": "User of VIM",
2015           "type": "string"
2016         },
2017         "tenant": {
2018           "title": "Tenant",
2019           "description": "Tenant",
2020           "type": "string"
2021         },
2022         "status": {
2023           "title": "Status",
2024           "description": "Status",
2025           "type": "string"
2026         }
2027       }
2028     },
2029     "NfPackage": {
2030       "required": [
2031         "csarId",
2032         "packageInfo"
2033       ],
2034       "type": "object",
2035       "properties": {
2036         "csarId": {
2037           "title": "Csarid",
2038           "description": "CSAR ID",
2039           "type": "string"
2040         },
2041         "packageInfo": {
2042           "$ref": "#/definitions/NfPackageInfo"
2043         },
2044         "imageInfo": {
2045           "description": "Image Info",
2046           "type": "array",
2047           "items": {
2048             "$ref": "#/definitions/NfImageInfo"
2049           }
2050         }
2051       }
2052     },
2053     "NfPackageDistributeRequest": {
2054       "required": [
2055         "csarId"
2056       ],
2057       "type": "object",
2058       "properties": {
2059         "csarId": {
2060           "title": "Csarid",
2061           "description": "CSAR ID",
2062           "type": "string"
2063         },
2064         "vimIds": {
2065           "description": "A string for vimIds",
2066           "type": "array",
2067           "items": {
2068             "type": "string"
2069           }
2070         },
2071         "labVimId": {
2072           "title": "Labvimid",
2073           "description": "A list of VIM IDs.",
2074           "type": "string"
2075         }
2076       }
2077     },
2078     "PostJobResponse": {
2079       "required": [
2080         "jobId"
2081       ],
2082       "type": "object",
2083       "properties": {
2084         "jobId": {
2085           "title": "Jobid",
2086           "description": "jobId",
2087           "type": "string"
2088         }
2089       }
2090     },
2091     "ProblemDetails": {
2092       "title": "Onboardingfailuredetails",
2093       "description": "Failure details of current onboarding procedure.It shall be present when the nsdOnboardingState attribute is CREATED and the uploading or processing fails in NFVO.",
2094       "required": [
2095         "title",
2096         "detail"
2097       ],
2098       "type": "object",
2099       "properties": {
2100         "type": {
2101           "title": "Type",
2102           "description": "A URI reference according to IETF RFC 3986 [10] that identifies the problem type.         It is encouraged that the URI provides human-readable documentation for the problem (e.g. using HTML) when dereferenced.         When this member is not present, its value is assumed to be \"about:blank\".",
2103           "type": "string"
2104         },
2105         "title": {
2106           "title": "Title",
2107           "description": "The HTTP status code for this occurrence of the problem.",
2108           "type": "integer"
2109         },
2110         "detail": {
2111           "title": "Detail",
2112           "description": "A human-readable explanation specific to this occurrence of the problem.",
2113           "type": "string"
2114         },
2115         "instance": {
2116           "title": "Instance",
2117           "description": "A URI reference that identifies the specific occurrence of the problem.         It may yield further information if dereferenced.",
2118           "type": "string"
2119         },
2120         "additional_attributes": {
2121           "title": "Additional attributes",
2122           "description": "Any number of additional attributes, as defined in a specification or by an implementation.",
2123           "type": "object",
2124           "additionalProperties": {
2125             "description": "Additional attribute",
2126             "type": "string"
2127           }
2128         }
2129       }
2130     },
2131     "Link": {
2132       "title": "Self",
2133       "description": "URI of this resource.",
2134       "required": [
2135         "href"
2136       ],
2137       "type": "object",
2138       "properties": {
2139         "href": {
2140           "title": "Href",
2141           "description": "URI of the referenced resource",
2142           "type": "string"
2143         }
2144       }
2145     },
2146     "NSD_LinkSerializer": {
2147       "title": " links",
2148       "description": "Links to resources related to this resource.",
2149       "required": [
2150         "self",
2151         "nsd_content"
2152       ],
2153       "type": "object",
2154       "properties": {
2155         "self": {
2156           "$ref": "#/definitions/Link"
2157         },
2158         "nsd_content": {
2159           "$ref": "#/definitions/Link"
2160         }
2161       }
2162     },
2163     "NsdInfo": {
2164       "required": [
2165         "id",
2166         "nsdOnboardingState",
2167         "nsdOperationalState",
2168         "nsdUsageState",
2169         "_links"
2170       ],
2171       "type": "object",
2172       "properties": {
2173         "id": {
2174           "title": "Id",
2175           "description": "Identifier of the onboarded individual NS descriptor resource.This identifier is allocated by the NFVO.",
2176           "type": "string"
2177         },
2178         "nsdId": {
2179           "title": "Nsdid",
2180           "description": "This identifier, which is allocated by the NSD designer,identifies the NSD in a globally unique way.It is copied from the NSD content and shall be present after the NSD content is on-boarded.",
2181           "type": "string"
2182         },
2183         "nsdName": {
2184           "title": "Nsdname",
2185           "description": "Name of the onboarded NSD.This information is copied from the NSD content and shall be present after the NSD content is on-boarded.",
2186           "type": "string"
2187         },
2188         "nsdVersion": {
2189           "title": "Nsdversion",
2190           "description": "Version of the on-boarded NSD.This information is copied from the NSD content and shall be present after the NSD content is on-boarded.",
2191           "type": "string"
2192         },
2193         "nsdDesigner": {
2194           "title": "Nsddesigner",
2195           "description": "Designer of the on-boarded NSD.This information is copied from the NSD content and shall be present after the NSD content is on-boarded.",
2196           "type": "string"
2197         },
2198         "nsdInvariantId": {
2199           "title": "Nsdinvariantid",
2200           "description": "This identifier, which is allocated by the NSD designer,identifies an NSD in a version independent manner.This information is copied from the NSD content and shall be present after the NSD content is on-boarded.",
2201           "type": "string"
2202         },
2203         "vnfPkgIds": {
2204           "description": "Identifies the VNF package for the VNFD referenced by the on-boarded NS descriptor resource.",
2205           "type": "array",
2206           "items": {
2207             "description": "Identifier of the VNF package",
2208             "type": "string"
2209           }
2210         },
2211         "pnfdInfoIds": {
2212           "description": "Identifies the PnfdInfo element for the PNFD referenced by the on-boarded NS descriptor resource.",
2213           "type": "array",
2214           "items": {
2215             "description": "Identifier of the PnfdInfo element",
2216             "type": "string"
2217           }
2218         },
2219         "nestedNsdInfoIds": {
2220           "description": "Identifies the NsdInfo element for the nested NSD referenced by the on-boarded NS descriptor resource.",
2221           "type": "array",
2222           "items": {
2223             "description": "Identifier of the NsdInfo element",
2224             "type": "string"
2225           }
2226         },
2227         "nsdOnboardingState": {
2228           "title": "Nsdonboardingstate",
2229           "description": "Onboarding state of the individual NS descriptor resource.",
2230           "type": "string",
2231           "enum": [
2232             "CREATED",
2233             "UPLOADING",
2234             "PROCESSING",
2235             "ONBOARDED"
2236           ]
2237         },
2238         "onboardingFailureDetails": {
2239           "$ref": "#/definitions/ProblemDetails"
2240         },
2241         "nsdOperationalState": {
2242           "title": "Nsdoperationalstate",
2243           "description": "Operational state of the individual NS descriptor resource.This attribute can be modified with the PATCH method.",
2244           "type": "string",
2245           "enum": [
2246             "ENABLED",
2247             "DISABLED"
2248           ]
2249         },
2250         "nsdUsageState": {
2251           "title": "Nsdusagestate",
2252           "description": "Usage state of the individual NS descriptor resource.",
2253           "type": "string",
2254           "enum": [
2255             "IN_USE",
2256             "NOT_IN_USE"
2257           ]
2258         },
2259         "userDefinedData": {
2260           "title": "Userdefineddata",
2261           "description": "User defined data for the individual NS descriptor resource.This attribute can be modified with the PATCH method.",
2262           "type": "object",
2263           "additionalProperties": {
2264             "description": "Key Value Pairs",
2265             "type": "string"
2266           }
2267         },
2268         "_links": {
2269           "$ref": "#/definitions/NSD_LinkSerializer"
2270         }
2271       }
2272     },
2273     "CreateNsdInfoRequest": {
2274       "type": "object",
2275       "properties": {
2276         "userDefinedData": {
2277           "title": "Userdefineddata",
2278           "description": "User-defined data for the NS descriptor resource to be created.It shall be present when the user defined data is set for the individual NS descriptor resource to be created.",
2279           "type": "object",
2280           "additionalProperties": {
2281             "description": "Key Value Pairs",
2282             "type": "string"
2283           }
2284         }
2285       }
2286     },
2287     "_Link": {
2288       "title": " links",
2289       "description": "Links to resources related to this resource.",
2290       "required": [
2291         "self",
2292         "pnfd_content"
2293       ],
2294       "type": "object",
2295       "properties": {
2296         "self": {
2297           "$ref": "#/definitions/Link"
2298         },
2299         "pnfd_content": {
2300           "$ref": "#/definitions/Link"
2301         }
2302       }
2303     },
2304     "PnfdInfo": {
2305       "required": [
2306         "id",
2307         "pnfdOnboardingState",
2308         "pnfdUsageState",
2309         "_links"
2310       ],
2311       "type": "object",
2312       "properties": {
2313         "id": {
2314           "title": "Id",
2315           "description": "Identifier of the onboarded individual PNF descriptor resource.         This identifier is allocated by the NFVO.",
2316           "type": "string"
2317         },
2318         "pnfdId": {
2319           "title": "Pnfdid",
2320           "description": "This identifier, which is allocated by the PNFD designer,         identifies the PNFD in a globally unique way.         It is copied from the PNFD content and shall be present after the PNFD content is on-boarded.",
2321           "type": "string"
2322         },
2323         "pnfdName": {
2324           "title": "Pnfdname",
2325           "description": "Name of the onboarded PNFD.         This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded.",
2326           "type": "string"
2327         },
2328         "pnfdVersion": {
2329           "title": "Pnfdversion",
2330           "description": "Version of the on-boarded PNFD.         This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded.",
2331           "type": "string"
2332         },
2333         "pnfdProvider": {
2334           "title": "Pnfdprovider",
2335           "description": "Provider of the on-boarded PNFD.         This information is copied from the PNFD content and shall be present after the PNFD content is on-boarded.",
2336           "type": "string"
2337         },
2338         "pnfdInvariantId": {
2339           "title": "Pnfdinvariantid",
2340           "description": "Identifies a PNFD in a version independent manner.         This attribute is invariant across versions of PNFD.",
2341           "type": "string"
2342         },
2343         "pnfdOnboardingState": {
2344           "title": "Pnfdonboardingstate",
2345           "description": "Onboarding state of the individual PNF descriptor resource.",
2346           "type": "string",
2347           "enum": [
2348             "CREATED",
2349             "UPLOADING",
2350             "PROCESSING",
2351             "ONBOARDED"
2352           ]
2353         },
2354         "onboardingFailureDetails": {
2355           "$ref": "#/definitions/ProblemDetails"
2356         },
2357         "pnfdUsageState": {
2358           "title": "Pnfdusagestate",
2359           "description": "Usage state of the individual PNF descriptor resource.",
2360           "type": "string",
2361           "enum": [
2362             "IN_USE",
2363             "NOT_IN_USE"
2364           ]
2365         },
2366         "userDefinedData": {
2367           "title": "Userdefineddata",
2368           "description": "User defined data for the individual PNF descriptor resource.         This attribute can be modified with the PATCH method.",
2369           "type": "object",
2370           "additionalProperties": {
2371             "description": "Key Value Pairs",
2372             "type": "string"
2373           }
2374         },
2375         "_links": {
2376           "$ref": "#/definitions/_Link"
2377         }
2378       }
2379     },
2380     "CreatePnfdInfoRequest": {
2381       "type": "object",
2382       "properties": {
2383         "userDefinedData": {
2384           "title": "Userdefineddata",
2385           "description": "User-defined data for the PNF descriptor resource to be created.It shall be present when the user defined data is set for the individual PNF descriptor resource to be created.",
2386           "type": "object",
2387           "additionalProperties": {
2388             "description": "Key Value Pairs",
2389             "type": "string"
2390           }
2391         }
2392       }
2393     },
2394     "NsdmNotificationsFilter": {
2395       "title": "Filter",
2396       "description": "Filter settings for this subscription, to define the of all notifications this subscription relates to.",
2397       "type": "object",
2398       "properties": {
2399         "notificationTypes": {
2400           "description": "Match particular notification types",
2401           "type": "array",
2402           "items": {
2403             "type": "string",
2404             "enum": [
2405               "NsdOnBoardingNotification",
2406               "NsdOnboardingFailureNotification",
2407               "NsdChangeNotification",
2408               "NsdDeletionNotification",
2409               "PnfdOnBoardingNotification",
2410               "PnfdOnBoardingFailureNotification",
2411               "PnfdDeletionNotification"
2412             ]
2413           }
2414         },
2415         "nsdInfoId": {
2416           "description": "Match NS packages with particular nsdInfoIds",
2417           "type": "array",
2418           "items": {
2419             "type": "string",
2420             "format": "uuid"
2421           }
2422         },
2423         "nsdId": {
2424           "description": "Match NS Packages with particular nsdIds",
2425           "type": "array",
2426           "items": {
2427             "type": "string",
2428             "format": "uuid"
2429           }
2430         },
2431         "nsdName": {
2432           "description": "Match NS Packages with particular nsdNames",
2433           "type": "array",
2434           "items": {
2435             "type": "string",
2436             "maxLength": 255
2437           }
2438         },
2439         "nsdVersion": {
2440           "description": "match NS packages that belong to certain nsdversion",
2441           "type": "array",
2442           "items": {
2443             "type": "string",
2444             "maxLength": 255
2445           }
2446         },
2447         "nsdInvariantId": {
2448           "description": "Match NS Packages with particular nsdInvariantIds",
2449           "type": "array",
2450           "items": {
2451             "type": "string",
2452             "format": "uuid"
2453           }
2454         },
2455         "vnfPkgIds": {
2456           "description": "Match NS Packages that has VNF PackageIds",
2457           "type": "array",
2458           "items": {
2459             "type": "string",
2460             "format": "uuid"
2461           }
2462         },
2463         "nestedNsdInfoIds": {
2464           "description": "Match NS Packages with particular nsdInvariantIds",
2465           "type": "array",
2466           "items": {
2467             "type": "string",
2468             "format": "uuid"
2469           }
2470         },
2471         "nsdOnboardingState": {
2472           "description": "Match NS Packages with particular NS Onboarding State",
2473           "type": "array",
2474           "items": {
2475             "type": "string",
2476             "enum": [
2477               "CREATED",
2478               "UPLOADING",
2479               "PROCESSING",
2480               "ONBOARDED"
2481             ]
2482           }
2483         },
2484         "nsdOperationalState": {
2485           "description": "Match NS Packages with particular NS Operational State",
2486           "type": "array",
2487           "items": {
2488             "type": "string",
2489             "enum": [
2490               "ENABLED",
2491               "DISABLED"
2492             ]
2493           }
2494         },
2495         "nsdUsageState": {
2496           "description": "Match NS Packages with particular NS Usage State",
2497           "type": "array",
2498           "items": {
2499             "type": "string",
2500             "enum": [
2501               "IN_USE",
2502               "NOT_IN_USE"
2503             ]
2504           }
2505         },
2506         "pnfdInfoIds": {
2507           "description": "Match PF packages with particular pnfdInfoIds",
2508           "type": "array",
2509           "items": {
2510             "type": "string",
2511             "format": "uuid"
2512           }
2513         },
2514         "pnfdId": {
2515           "description": "Match PF packages with particular pnfdInfoIds",
2516           "type": "array",
2517           "items": {
2518             "type": "string",
2519             "format": "uuid"
2520           }
2521         },
2522         "pnfdName": {
2523           "description": "Match PF Packages with particular pnfdNames",
2524           "type": "array",
2525           "items": {
2526             "type": "string",
2527             "maxLength": 255
2528           }
2529         },
2530         "pnfdVersion": {
2531           "description": "match PF packages that belong to certain pnfd version",
2532           "type": "array",
2533           "items": {
2534             "type": "string",
2535             "maxLength": 255
2536           }
2537         },
2538         "pnfdProvider": {
2539           "description": "Match PF Packages with particular pnfdProvider",
2540           "type": "array",
2541           "items": {
2542             "type": "string",
2543             "maxLength": 255
2544           }
2545         },
2546         "pnfdInvariantId": {
2547           "description": "Match PF Packages with particular pnfdInvariantIds",
2548           "type": "array",
2549           "items": {
2550             "type": "string",
2551             "format": "uuid"
2552           }
2553         },
2554         "pnfdOnboardingState": {
2555           "description": "Match PF Packages with particular PNF Onboarding State ",
2556           "type": "array",
2557           "items": {
2558             "type": "string",
2559             "enum": [
2560               "CREATED",
2561               "UPLOADING",
2562               "PROCESSING",
2563               "ONBOARDED"
2564             ]
2565           }
2566         },
2567         "pnfdUsageState": {
2568           "description": "Match PF Packages with particular PNF usage State",
2569           "type": "array",
2570           "items": {
2571             "type": "string",
2572             "enum": [
2573               "IN_USE",
2574               "NOT_IN_USE"
2575             ]
2576           }
2577         }
2578       }
2579     },
2580     "NsdmSubscriptionLink": {
2581       "title": " links",
2582       "description": "Links to resources related to this resource.",
2583       "required": [
2584         "self"
2585       ],
2586       "type": "object",
2587       "properties": {
2588         "self": {
2589           "$ref": "#/definitions/Link"
2590         }
2591       }
2592     },
2593     "NsdmSubscription": {
2594       "required": [
2595         "id",
2596         "callbackUri",
2597         "_links"
2598       ],
2599       "type": "object",
2600       "properties": {
2601         "id": {
2602           "title": "Id",
2603           "description": "Identifier of this subscription resource.",
2604           "type": "string",
2605           "maxLength": 255
2606         },
2607         "callbackUri": {
2608           "title": "Callbackuri",
2609           "description": "The URI of the endpoint to send the notification to.",
2610           "type": "string",
2611           "maxLength": 255
2612         },
2613         "filter": {
2614           "$ref": "#/definitions/NsdmNotificationsFilter"
2615         },
2616         "_links": {
2617           "$ref": "#/definitions/NsdmSubscriptionLink"
2618         }
2619       }
2620     },
2621     "SUBSCRIPTION_ProblemDetailsSerializer": {
2622       "required": [
2623         "status",
2624         "detail"
2625       ],
2626       "type": "object",
2627       "properties": {
2628         "type": {
2629           "title": "Type",
2630           "description": "Type",
2631           "type": "string"
2632         },
2633         "title": {
2634           "title": "Title",
2635           "description": "Title",
2636           "type": "string"
2637         },
2638         "status": {
2639           "title": "Status",
2640           "description": "Status",
2641           "type": "integer"
2642         },
2643         "detail": {
2644           "title": "Detail",
2645           "description": "Detail",
2646           "type": "string"
2647         },
2648         "instance": {
2649           "title": "Instance",
2650           "description": "Instance",
2651           "type": "string"
2652         },
2653         "additional_details": {
2654           "description": "Any number of additional attributes, as defined in a specification or by an implementation.",
2655           "type": "array",
2656           "items": {
2657             "type": "string"
2658           }
2659         }
2660       }
2661     },
2662     "BasicAuth": {
2663       "title": "Paramsbasic",
2664       "description": "Parameters for authentication/authorization using BASIC.",
2665       "type": "object",
2666       "properties": {
2667         "userName": {
2668           "title": "Username",
2669           "description": "Username to be used in HTTP Basic authentication.",
2670           "type": "string",
2671           "maxLength": 255
2672         },
2673         "password": {
2674           "title": "Password",
2675           "description": "Password to be used in HTTP Basic authentication.",
2676           "type": "string",
2677           "maxLength": 255
2678         }
2679       }
2680     },
2681     "OAuthCredentials": {
2682       "title": "Paramsoauth2clientcredentials",
2683       "description": "Parameters for authentication/authorization using OAUTH2_CLIENT_CREDENTIALS.",
2684       "type": "object",
2685       "properties": {
2686         "clientId": {
2687           "title": "Clientid",
2688           "description": "Client identifier to be used in the access token request of the OAuth 2.0 client credentials grant type.",
2689           "type": "string",
2690           "maxLength": 255
2691         },
2692         "clientPassword": {
2693           "title": "Clientpassword",
2694           "description": "Client password to be used in the access token request of the OAuth 2.0 client credentials grant type.",
2695           "type": "string",
2696           "maxLength": 255
2697         },
2698         "tokenEndpoint": {
2699           "title": "Tokenendpoint",
2700           "description": "The token endpoint from which the access token can be obtained.",
2701           "type": "string",
2702           "maxLength": 255
2703         }
2704       }
2705     },
2706     "SubscriptionAuthentication": {
2707       "title": "Authentication",
2708       "description": "Authentication parameters to configure the use of Authorization when sending notifications corresponding to this subscription.",
2709       "required": [
2710         "authType"
2711       ],
2712       "type": "object",
2713       "properties": {
2714         "authType": {
2715           "description": "Defines the types of Authentication / Authorization which the API consumer is willing to accept when receiving a notification.",
2716           "type": "array",
2717           "items": {
2718             "type": "string",
2719             "enum": [
2720               "BASIC",
2721               "OAUTH2_CLIENT_CREDENTIALS",
2722               "TLS_CERT"
2723             ]
2724           }
2725         },
2726         "paramsBasic": {
2727           "$ref": "#/definitions/BasicAuth"
2728         },
2729         "paramsOauth2ClientCredentials": {
2730           "$ref": "#/definitions/OAuthCredentials"
2731         }
2732       }
2733     },
2734     "NsdmSubscriptionRequest": {
2735       "required": [
2736         "callbackUri"
2737       ],
2738       "type": "object",
2739       "properties": {
2740         "callbackUri": {
2741           "title": "Callbackuri",
2742           "description": "The URI of the endpoint to send the notification to.",
2743           "type": "string"
2744         },
2745         "filter": {
2746           "$ref": "#/definitions/NsdmNotificationsFilter"
2747         },
2748         "authentication": {
2749           "$ref": "#/definitions/SubscriptionAuthentication"
2750         }
2751       }
2752     },
2753     "ServicePackageInfo": {
2754       "title": "Packageinfo",
2755       "description": "Service Package Info",
2756       "type": "object",
2757       "properties": {
2758         "servicedId": {
2759           "title": "Servicedid",
2760           "description": "ServiceD ID",
2761           "type": "string"
2762         },
2763         "servicePackageId": {
2764           "title": "Servicepackageid",
2765           "description": "Service Package ID",
2766           "type": "string"
2767         },
2768         "servicedProvider": {
2769           "title": "Servicedprovider",
2770           "description": "ServiceD Provider",
2771           "type": "string"
2772         },
2773         "servicedVersion": {
2774           "title": "Servicedversion",
2775           "description": "ServiceD Version",
2776           "type": "string"
2777         },
2778         "csarName": {
2779           "title": "Csarname",
2780           "description": "CSAR name",
2781           "type": "string"
2782         },
2783         "servicedModel": {
2784           "title": "Servicedmodel",
2785           "description": "ServiceD Model",
2786           "type": "string"
2787         },
2788         "downloadUrl": {
2789           "title": "Downloadurl",
2790           "description": "URL to download ServiceD Model",
2791           "type": "string"
2792         }
2793       }
2794     },
2795     "ServicePackage": {
2796       "type": "object",
2797       "properties": {
2798         "csarId": {
2799           "title": "Csarid",
2800           "description": "CSAR ID",
2801           "type": "string"
2802         },
2803         "packageInfo": {
2804           "$ref": "#/definitions/ServicePackageInfo"
2805         }
2806       }
2807     },
2808     "ServicePackageDistributeRequest": {
2809       "required": [
2810         "csarId"
2811       ],
2812       "type": "object",
2813       "properties": {
2814         "csarId": {
2815           "title": "Csarid",
2816           "description": "csarId",
2817           "type": "string"
2818         }
2819       }
2820     },
2821     "VNF_SUBSCRIPTION_LINKSERIALIZER": {
2822       "title": "Self",
2823       "description": "URI of this resource.",
2824       "required": [
2825         "href"
2826       ],
2827       "type": "object",
2828       "properties": {
2829         "href": {
2830           "title": "Href",
2831           "description": "URI of the referenced resource.",
2832           "type": "string"
2833         }
2834       }
2835     },
2836     "LinkSelf": {
2837       "title": " links",
2838       "description": "Links to resources related to this resource.",
2839       "required": [
2840         "self"
2841       ],
2842       "type": "object",
2843       "properties": {
2844         "self": {
2845           "$ref": "#/definitions/VNF_SUBSCRIPTION_LINKSERIALIZER"
2846         }
2847       }
2848     },
2849     "Version": {
2850       "title": "Versions",
2851       "description": "match VNF packages that contain VNF products with certain versions",
2852       "required": [
2853         "vnfSoftwareVersion"
2854       ],
2855       "type": "object",
2856       "properties": {
2857         "vnfSoftwareVersion": {
2858           "title": "Vnfsoftwareversion",
2859           "description": "VNF software version to match.",
2860           "type": "string",
2861           "maxLength": 255
2862         },
2863         "vnfdVersions": {
2864           "description": "Match VNF packages that contain VNF products with certain VNFD versions",
2865           "type": "array",
2866           "items": {
2867             "type": "string"
2868           }
2869         }
2870       }
2871     },
2872     "vnfProducts": {
2873       "title": "Vnfproducts",
2874       "description": "match VNF packages that contain VNF products with certain product names, from one particular provider",
2875       "required": [
2876         "vnfProductName"
2877       ],
2878       "type": "object",
2879       "properties": {
2880         "vnfProductName": {
2881           "title": "Vnfproductname",
2882           "description": "Name of the VNF product to match.",
2883           "type": "string",
2884           "maxLength": 255
2885         },
2886         "versions": {
2887           "$ref": "#/definitions/Version"
2888         }
2889       }
2890     },
2891     "vnfProductsProviders": {
2892       "title": "Vnfproductsfromproviders",
2893       "description": "Match VNF packages that contain VNF products from certain providers.",
2894       "required": [
2895         "vnfProvider"
2896       ],
2897       "type": "object",
2898       "properties": {
2899         "vnfProvider": {
2900           "title": "Vnfprovider",
2901           "description": "Name of the VNFprovider to match.",
2902           "type": "string",
2903           "maxLength": 255
2904         },
2905         "vnfProducts": {
2906           "$ref": "#/definitions/vnfProducts"
2907         }
2908       }
2909     },
2910     "PkgmNotificationsFilter": {
2911       "title": "Filter",
2912       "description": "Filter settings for this subscription, to define the subset of all notifications this subscription relates to",
2913       "type": "object",
2914       "properties": {
2915         "notificationTypes": {
2916           "description": "Match particular notification types",
2917           "type": "array",
2918           "items": {
2919             "type": "string",
2920             "enum": [
2921               "VnfPackageOnboardingNotification",
2922               "VnfPackageChangeNotification"
2923             ]
2924           }
2925         },
2926         "vnfProductsFromProviders": {
2927           "$ref": "#/definitions/vnfProductsProviders"
2928         },
2929         "vnfdId": {
2930           "description": "Match VNF packages with a VNFD identifierlisted in the attribute",
2931           "type": "array",
2932           "items": {
2933             "type": "string",
2934             "format": "uuid"
2935           }
2936         },
2937         "vnfPkgId": {
2938           "description": "Match VNF packages with a VNFD identifierlisted in the attribute",
2939           "type": "array",
2940           "items": {
2941             "type": "string",
2942             "format": "uuid"
2943           }
2944         },
2945         "operationalState": {
2946           "description": "Operational state of the VNF package.",
2947           "type": "array",
2948           "items": {
2949             "type": "string",
2950             "enum": [
2951               "ENABLED",
2952               "DISABLED"
2953             ]
2954           }
2955         },
2956         "usageState": {
2957           "description": "Operational state of the VNF package.",
2958           "type": "array",
2959           "items": {
2960             "type": "string",
2961             "enum": [
2962               "IN_USE",
2963               "NOT_IN_USE"
2964             ]
2965           }
2966         }
2967       }
2968     },
2969     "PkgmSubscription": {
2970       "required": [
2971         "id",
2972         "callbackUri",
2973         "_links"
2974       ],
2975       "type": "object",
2976       "properties": {
2977         "id": {
2978           "title": "Id",
2979           "description": "Identifier of this subscription resource.",
2980           "type": "string",
2981           "format": "uuid"
2982         },
2983         "callbackUri": {
2984           "title": "Callbackuri",
2985           "description": "The URI of the endpoint to send the notification to.",
2986           "type": "string",
2987           "format": "uri"
2988         },
2989         "_links": {
2990           "$ref": "#/definitions/LinkSelf"
2991         },
2992         "filter": {
2993           "$ref": "#/definitions/PkgmNotificationsFilter"
2994         }
2995       }
2996     },
2997     "PkgmSubscriptionRequest": {
2998       "required": [
2999         "callbackUri"
3000       ],
3001       "type": "object",
3002       "properties": {
3003         "filters": {
3004           "$ref": "#/definitions/PkgmNotificationsFilter"
3005         },
3006         "callbackUri": {
3007           "title": "Callbackuri",
3008           "description": "Callback URI to sendthe notification",
3009           "type": "string",
3010           "format": "uri"
3011         },
3012         "authentication": {
3013           "$ref": "#/definitions/SubscriptionAuthentication"
3014         }
3015       }
3016     },
3017     "Checksum": {
3018       "title": "Checksum",
3019       "description": "Checksum of the on-boarded VNF package.",
3020       "required": [
3021         "algorithm",
3022         "hash"
3023       ],
3024       "type": "object",
3025       "properties": {
3026         "algorithm": {
3027           "title": "Algorithm",
3028           "description": "Name of the algorithm used to generate the checksum.",
3029           "type": "string"
3030         },
3031         "hash": {
3032           "title": "Hash",
3033           "description": "The hexadecimal value of the checksum.",
3034           "type": "string"
3035         }
3036       }
3037     },
3038     "VnfPackageSoftwareImageInfo": {
3039       "description": "Information about VNF package artifacts that are software images.",
3040       "required": [
3041         "id",
3042         "name",
3043         "provider",
3044         "version",
3045         "checksum",
3046         "containerFormat",
3047         "diskFormat",
3048         "createdAt",
3049         "minDisk",
3050         "minRam",
3051         "size",
3052         "imagePath"
3053       ],
3054       "type": "object",
3055       "properties": {
3056         "id": {
3057           "title": "Id",
3058           "description": "Identifier of the software image.",
3059           "type": "string"
3060         },
3061         "name": {
3062           "title": "Name",
3063           "description": "Name of the software image.",
3064           "type": "string"
3065         },
3066         "provider": {
3067           "title": "Provider",
3068           "description": "Provider of the software image.",
3069           "type": "string"
3070         },
3071         "version": {
3072           "title": "Version",
3073           "description": "Version of the software image.",
3074           "type": "string"
3075         },
3076         "checksum": {
3077           "$ref": "#/definitions/Checksum"
3078         },
3079         "containerFormat": {
3080           "title": "Containerformat",
3081           "description": "terminationType: Indicates whether forceful or graceful termination is requested.",
3082           "type": "string",
3083           "enum": [
3084             "AKI",
3085             "AMI",
3086             "ARI",
3087             "BARE",
3088             "DOCKER",
3089             "OVA",
3090             "OVF"
3091           ]
3092         },
3093         "diskFormat": {
3094           "title": "Diskformat",
3095           "description": "Disk format of a software image is the format of the underlying disk image.",
3096           "type": "string",
3097           "enum": [
3098             "AKI",
3099             "AMI",
3100             "ARI",
3101             "ISO",
3102             "QCOW2",
3103             "RAW",
3104             "VDI",
3105             "VHD",
3106             "VHDX",
3107             "VMDK"
3108           ]
3109         },
3110         "createdAt": {
3111           "title": "Createdat",
3112           "description": "Time when this software image was created.",
3113           "type": "string",
3114           "format": "date-time"
3115         },
3116         "minDisk": {
3117           "title": "Mindisk",
3118           "description": "The minimal disk for this software image in bytes.",
3119           "type": "integer"
3120         },
3121         "minRam": {
3122           "title": "Minram",
3123           "description": "The minimal RAM for this software image in bytes.",
3124           "type": "integer"
3125         },
3126         "size": {
3127           "title": "Size",
3128           "description": "Size of this software image in bytes.",
3129           "type": "integer"
3130         },
3131         "userMetadata": {
3132           "title": "Usermetadata",
3133           "description": "User-defined data.",
3134           "type": "object",
3135           "additionalProperties": {
3136             "description": "KeyValue Pairs",
3137             "type": "string"
3138           }
3139         },
3140         "imagePath": {
3141           "title": "Imagepath",
3142           "description": "Path in the VNF package.",
3143           "type": "string"
3144         }
3145       }
3146     },
3147     "VnfPackageArtifactInfo": {
3148       "description": "Information about VNF package artifacts contained in the VNF package that are not software images.",
3149       "required": [
3150         "artifactPath",
3151         "checksum"
3152       ],
3153       "type": "object",
3154       "properties": {
3155         "artifactPath": {
3156           "title": "Artifactpath",
3157           "description": "Path in the VNF package.",
3158           "type": "string"
3159         },
3160         "checksum": {
3161           "$ref": "#/definitions/Checksum"
3162         },
3163         "metadata": {
3164           "title": "Metadata",
3165           "description": "The metadata of the artifact that are available in the VNF package",
3166           "type": "object",
3167           "additionalProperties": {
3168             "description": "KeyValue Pairs",
3169             "type": "string"
3170           }
3171         }
3172       }
3173     },
3174     "VNF_PKGM_Link_Serializer": {
3175       "title": " links",
3176       "description": "Links to resources related to this resource.",
3177       "required": [
3178         "self",
3179         "packageContent"
3180       ],
3181       "type": "object",
3182       "properties": {
3183         "self": {
3184           "$ref": "#/definitions/Link"
3185         },
3186         "vnfd": {
3187           "$ref": "#/definitions/Link"
3188         },
3189         "packageContent": {
3190           "$ref": "#/definitions/Link"
3191         }
3192       }
3193     },
3194     "VnfPkgInfo": {
3195       "required": [
3196         "id",
3197         "onboardingState",
3198         "operationalState",
3199         "usageState",
3200         "_links"
3201       ],
3202       "type": "object",
3203       "properties": {
3204         "id": {
3205           "title": "Id",
3206           "description": "Identifier of the on-boarded VNF package.",
3207           "type": "string"
3208         },
3209         "vnfdId": {
3210           "title": "Vnfdid",
3211           "description": "This identifier, which is managed by the VNF provider, identifies the VNF package and the VNFD in a globally unique way.",
3212           "type": "string"
3213         },
3214         "vnfProvider": {
3215           "title": "Vnfprovider",
3216           "description": "Provider of the VNF package and the VNFD.",
3217           "type": "string"
3218         },
3219         "vnfProductName": {
3220           "title": "Vnfproductname",
3221           "description": "Name to identify the VNF product.",
3222           "type": "string"
3223         },
3224         "vnfSoftwareVersion": {
3225           "title": "Vnfsoftwareversion",
3226           "description": "Software version of the VNF.",
3227           "type": "string"
3228         },
3229         "vnfdVersion": {
3230           "title": "Vnfdversion",
3231           "description": "The version of the VNvFD.",
3232           "type": "string"
3233         },
3234         "checksum": {
3235           "$ref": "#/definitions/Checksum"
3236         },
3237         "softwareImages": {
3238           "description": "Information about VNF package artifacts that are software images.",
3239           "type": "array",
3240           "items": {
3241             "$ref": "#/definitions/VnfPackageSoftwareImageInfo"
3242           }
3243         },
3244         "additionalArtifacts": {
3245           "description": "Information about VNF package artifacts contained in the VNF package that are not software images.",
3246           "type": "array",
3247           "items": {
3248             "$ref": "#/definitions/VnfPackageArtifactInfo"
3249           }
3250         },
3251         "onboardingState": {
3252           "title": "Onboardingstate",
3253           "description": "On-boarding state of the VNF package.",
3254           "type": "string",
3255           "enum": [
3256             "CREATED",
3257             "UPLOADING",
3258             "PROCESSING",
3259             "ONBOARDED"
3260           ]
3261         },
3262         "operationalState": {
3263           "title": "Operationalstate",
3264           "description": "Operational state of the VNF package.",
3265           "type": "string",
3266           "enum": [
3267             "ENABLED",
3268             "DISABLED"
3269           ]
3270         },
3271         "usageState": {
3272           "title": "Usagestate",
3273           "description": "Usage state of the VNF package.",
3274           "type": "string",
3275           "enum": [
3276             "IN_USE",
3277             "NOT_IN_USE"
3278           ]
3279         },
3280         "userDefinedData": {
3281           "title": "Userdefineddata",
3282           "description": "User defined data for the VNF package.",
3283           "type": "object",
3284           "additionalProperties": {
3285             "description": "KeyValue Pairs",
3286             "type": "string"
3287           }
3288         },
3289         "_links": {
3290           "$ref": "#/definitions/VNF_PKGM_Link_Serializer"
3291         }
3292       }
3293     },
3294     "CreateVnfPkgInfoRequest": {
3295       "type": "object",
3296       "properties": {
3297         "userDefinedData": {
3298           "title": "Userdefineddata",
3299           "description": "User defined data for the VNF package.",
3300           "type": "object",
3301           "additionalProperties": {
3302             "description": "KeyValue Pairs",
3303             "type": "string"
3304           }
3305         }
3306       }
3307     },
3308     "UploadVnfPackageFromUriRequest": {
3309       "required": [
3310         "addressInformation"
3311       ],
3312       "type": "object",
3313       "properties": {
3314         "addressInformation": {
3315           "title": "Addressinformation",
3316           "description": "Address information of the VNF package content.",
3317           "type": "string"
3318         },
3319         "userName": {
3320           "title": "Username",
3321           "description": "User name to be used for authentication.",
3322           "type": "string"
3323         },
3324         "password": {
3325           "title": "Password",
3326           "description": "Password to be used for authentication.",
3327           "type": "string"
3328         }
3329       }
3330     }
3331   }
3332 }