2 "basePath": "/api/NokiaSVNFM/v1",
15 "email": "onap-discuss@lists.onap.org",
17 "url": "https://gerrit.onap.org/r/#/admin/projects/vfc/nfvo/lcm"
19 "description": "ONAP Nokia CBAM Driver API.",
20 "title": "ONAP Nokia CBAM Driver API",
29 "description": "The identifier of the job",
35 "description": "The status of the job",
46 "$ref": "#/definitions/SoJobHandler"
53 "description": "The status of the job",
54 "$ref": "#/definitions/SoJobStatus"
58 "description": "The description of the current state of the job",
65 "SoVnfCreationRequest": {
70 "description": "The name of the VNF",
75 "description": "The identifier of the VNF package in SDC",
80 "description": "The description of the VNF",
84 "description": "Additional VNFM specific parameters",
86 "additionalProperties": true
90 "SoVnfCreationResponse": {
95 "description": "The identifier of the created VNF",
105 "description": "The identifier of the VDU within the VNF package",
110 "description": "The provider id of the image to be used for the VDU",
115 "description": "The provider id of the flavour to be used for the VDU",
122 "description": "Maps a server instance to a VDU and availability zone",
126 "description": "The identifier of the VDU",
129 "availabilityZoneId": {
131 "description": "The provider id of the availability zone to be used for the server instance",
136 "SoAssignedAddresses": {
141 "description": "The identifier of the connection point descriptor",
146 "description": "The IP address to be used",
151 "SoNetworkMapping": {
156 "description": "The identifier of the network in the VNF package",
159 "networkProviderId": {
161 "description": "The provider id of the network be used for the given purpose",
164 "assignedAddresses": {
166 "description": "The assigned network addresses",
169 "$ref": "#/definitions/SoAssignedAddresses"
174 "SoVnfActivationRequest": {
180 "description": "The identifier of the VIM on which the VNF is to be instantiated"
184 "description": "The server mappings",
187 "$ref": "#/definitions/SoServerMapping"
192 "description": "The VDU mappings",
195 "$ref": "#/definitions/SoVduMapping"
200 "description": "The network mappings",
203 "$ref": "#/definitions/SoNetworkMapping"
206 "additionalParams": {
207 "description": "Additional VNFM specific parameters",
209 "additionalProperties": true
213 "SoScaleDirection": {
214 "description": "The direction of the scale",
221 "SoVnfScaleRequest": {
226 "description": "The identifier of the scaling aspect in the VNF package"
230 "description": "The expected absolute scale level"
234 "description": "The direction of the scale",
235 "$ref": "#/definitions/SoScaleDirection"
239 "description": "The server mappings",
241 "$ref": "#/definitions/SoServerMapping"
244 "additionalParams": {
245 "description": "Additional VNFM specific parameters",
247 "additionalProperties": true
251 "SoVnfCustomOperation": {
257 "description": "The identifier of the custom operation"
259 "additionalParams": {
260 "description": "Additional VNFM specific parameters",
262 "additionalProperties": true
266 "SoVnfHealRequest": {
271 "description": "The identifier of the VNFC to be healed"
273 "additionalParams": {
274 "description": "Additional VNFM specific parameters",
276 "additionalProperties": true
280 "SoTerminationMode": {
281 "description": "The way in which the VNF is terminated",
288 "SoVnfTerminationRequest": {
293 "description": "The VNF termination mode",
294 "$ref": "#/definitions/SoTerminationMode"
296 "gracefulTerminationTimeoutInMs": {
299 "description": "The timeout for graceful termination. After the timeout has expired forceful termination is attempted."
301 "additionalParams": {
302 "description": "Additional VNFM specific parameters",
304 "additionalProperties": true
313 "responseDescriptor": {
319 "description": "The progress of the job. Value between 0 and 100.",
322 "responseHistoryList": {
324 "$ref": "#/definitions/jobResponseInfo"
332 "$ref": "#/definitions/JobStatus",
333 "description": "The status of the job"
335 "statusDescription": {
336 "description": "The reason of the current status of the job.",
354 "description": "The status of the job",
365 "description": "The direction of the scaling",
375 "description": "vim info createTime",
379 "description": "vim description",
383 "description": "vim name",
387 "description": "vim login password",
391 "description": "The collection of trusted certificates towards the VIM connection.",
395 "description": "Whether to verify VIM's certificate",
399 "description": "The status of external system",
403 "description": "vim type",
407 "description": "vim url",
411 "description": "vim login username",
415 "description": "vendor name",
419 "description": "vim version",
423 "description": "vim Id",
456 "vnfInstanceDescription": {
486 "description": "VNF instance ID",
490 "description": "VNF instance name",
498 "$ref": "#/definitions/VnfInstInfo"
502 "VnfInstantiateRequest": {
509 "$ref": "#/definitions/extVirtualLinkInfo"
516 "vnfInstanceDescription": {
528 "VnfInstantiateResponse": {
542 "description": "Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled",
546 "description": "Identifies the aspect of the VNF that is requested to be scaled",
550 "description": "Number of scaling steps to be executed as part of this ScaleVnf operation. It shall be a positive number",
554 "$ref": "#/definitions/ScaleDirection",
555 "description": "The direction of the scaling."
560 "VnfTerminateRequest": {
562 "gracefulTerminationTimeout": {
563 "description": "The time interval(second) to wait for the VNF to be taken out of service during graceful termination.",
567 "$ref": "#/definitions/VnfTerminationType",
568 "description": "The type of the termination"
573 "VnfTerminationType": {
574 "description": "The type of the termination.",
581 "extVirtualLinkInfo": {
584 "resourceSubnetId": {
586 "description": "The provider id of the subnet"
590 "description": "The identifier of the virtual link"
594 "description": "The provider id of the network"
598 "description": "The identifier of the connection point descriptor"
605 "description": "The identifier of the VIM"
625 "statusDescription": {
636 "description": "Password of login user",
640 "description": "Tenant Name of tenant",
644 "description": "Username for login",
650 "interfaceEndpoint": {
651 "description": "Information about the interface endpoint. It is a URL",
657 "description": "The api Version Type value will be ",
661 "description": "The protocol Type value will be http or https",
665 "description": "The vim Type value wil be openstack",
680 "VnfLifecycleChangeNotification": {
682 "description": "The lifecycle change notifications send from CBAM"
691 "description": "VNF create&instantiate Rest API should be provided by the VNFM Driver",
692 "operationId": "vnf_instantiate",
695 "description": "The value of vnfmid should be the VNFM Instantiate ID",
702 "description": "instantiate request param",
707 "$ref": "#/definitions/VnfInstantiateRequest"
718 "$ref": "#/definitions/VnfInstantiateResponse"
722 "summary": "vnf create&instantiate",
728 "/{vnfmId}/vnfs/{vnfId}": {
734 "operationId": "query_vnf",
737 "description": "The value of vnfmId should be the VNFM Instantiate ID",
744 "description": "The value of vnfId should be the VNF Instantiate ID",
756 "description": "successful operation",
758 "$ref": "#/definitions/VnfInfo"
762 "description": "the vnf instance id is wrong"
765 "description": "the url is invalid"
768 "summary": "query the specified vnf info",
774 "/{vnfmId}/vnfs/{vnfId}/heal": {
779 "description": "VNF Heal Rest API should be provided by the VNFM Driver",
780 "operationId": "vnf_heal",
783 "description": "The value of vnfmId should be the VNFM Instantiate ID",
790 "description": "The value of vnfId should be the VNF Instantiate ID",
797 "description": "instantiate request param",
802 "$ref": "#/definitions/VnfHealRequest"
813 "$ref": "#/definitions/JobInfo"
817 "description": "the VNF instance id is wrong"
820 "description": "the url is invalid"
823 "summary": "vnf heal",
829 "/{vnfmId}/vnfs/{vnfId}/scale": {
834 "description": "VNF Scale Rest API should be provided by the VNFM Driver",
835 "operationId": "vnf_scale",
838 "description": "The value of vnfmId should be the VNFM Instantiate ID",
845 "description": "The value of vnfId should be the VNF Instantiate ID",
852 "description": "instantiate request param",
857 "$ref": "#/definitions/VnfScaleRequest"
868 "$ref": "#/definitions/JobInfo"
872 "description": "the VNF instance id is wrong"
875 "description": "the url is invalid"
878 "summary": "vnf Scale",
884 "/{vnfmId}/vnfs/{vnfId}/terminate": {
889 "description": "VNF terminate&delete Rest API should be provided by the VNFM Driver",
890 "operationId": "terminate_vnf",
893 "description": "The value of vnfmId should be the VNFM Instantiate ID",
900 "description": "The value of vnfId should be the VNF Instantiate ID",
907 "description": "instantiate request param",
912 "$ref": "#/definitions/VnfTerminateRequest"
921 "description": "successful operation",
923 "$ref": "#/definitions/JobInfo"
927 "description": "the VNF instance id is wrong"
930 "description": "the url is invalid"
933 "summary": "terminate&delete vnf",
939 "/{vnfmId}/jobs/{jobId}": {
944 "summary": "jobstatus",
945 "description": "Job Infomation API should be provided by VNFM Driver",
946 "operationId": "get_jobstatus",
951 "description": "job Id",
958 "description": "The value of vnfmId should be the VNFM Instantiate ID",
965 "description": "job response message id",
966 "name": "responseId",
974 "$ref": "#/definitions/JobDetailInfo"
985 "summary": "Test LCN connectivity from CBAM to driver",
986 "description": "Test LCN connectivity from CBAM to driver",
989 "description": "Used for connectivity test"
1000 "summary": "Send LCN from CBAM",
1001 "description": "Test LCN connectivity from CBAM to driver",
1004 "description": "The life cycle change notification",
1009 "$ref": "#/definitions/VnfLifecycleChangeNotification"
1015 "description": "Used for connectivity test"
1025 "summary": "The Nokia SVNFM API definition",
1026 "description": "The Nokia SVNFM API definition",
1029 "description": "The swagger API definition"
1040 "multipart/form-data"
1043 "application/octet-stream"
1047 "description": "The CBAM VNF package",
1053 "summary": "Converts the Nokia CBAM package to ONAP package",
1054 "description": "Converts the Nokia CBAM package to ONAP package",
1057 "description": "The converted package",
1071 "summary": "UI to convert the Nokia CBAM package to ONAP package",
1072 "description": "UI to convert the Nokia CBAM package to ONAP package",
1075 "description": "The converted package"
1080 "/so/{vnfmId}/vnfs": {
1085 "summary": "VNF create",
1086 "description": "VNF create",
1087 "operationId": "vnf_create",
1098 "description": "The identifier of the VNFM in A&AI",
1105 "description": "VNF creation request parameter",
1108 "$ref": "#/definitions/SoVnfCreationRequest"
1116 "$ref": "#/definitions/SoVnfCreationResponse"
1122 "/so/{vnfmId}/vnfs/{vnfId}": {
1127 "summary": "VNF activation",
1128 "description": "VNF activation",
1129 "operationId": "vnf_activate",
1140 "description": "The identifier of the VNFM in A&AI",
1147 "description": "The identifier of the VNF in A&AI",
1154 "description": "instantiate request param",
1157 "$ref": "#/definitions/SoVnfActivationRequest"
1165 "$ref": "#/definitions/SoJobHandler"
1174 "summary": "Deletes VNF",
1175 "description": "Deletes the VNF. If the VNF was instantiated VNF termination must be called before VNF deletion",
1176 "operationId": "delete_vnf",
1181 "description": "The identifier of the VNFM in A&AI",
1188 "description": "The identifier of the VNF in A&AI",
1195 "description": "The VNF was deleted successfully"
1200 "/so/{vnfmId}/vnfs/{vnfId}/scale": {
1205 "summary": "VNF scale",
1206 "description": "VNF scale request",
1207 "operationId": "vnf_scale",
1218 "description": "The identifier of the VNFM in A&AI",
1225 "description": "The identifier of the VNF in A&AI",
1232 "description": "VNF scale request parameters",
1235 "$ref": "#/definitions/SoVnfScaleRequest"
1243 "$ref": "#/definitions/SoJobHandler"
1249 "/so/{vnfmId}/vnfs/{vnfId}/customOperation": {
1254 "summary": "VNF scale",
1255 "description": "VNF scale request",
1256 "operationId": "vnf_scale",
1267 "description": "The identifier of the VNFM in A&AI",
1274 "description": "The identifier of the VNF in A&AI",
1281 "description": "VNF scale request parameters",
1284 "$ref": "#/definitions/SoVnfCustomOperation"
1292 "$ref": "#/definitions/SoJobHandler"
1298 "/so/{vnfmId}/vnfs/{vnfId}/heal": {
1303 "summary": "VNF heal",
1304 "description": "VNF heal",
1305 "operationId": "vnf_heal",
1316 "description": "The identifier of the VNFM in A&AI",
1323 "description": "The identifier of the VNF in A&AI",
1330 "description": "VNF heal request parameters",
1333 "$ref": "#/definitions/SoVnfHealRequest"
1341 "$ref": "#/definitions/SoJobHandler"
1347 "/so/{vnfmId}/vnfs/{vnfId}/terminate": {
1352 "summary": "VNF terminate",
1353 "description": "VNF terminate",
1354 "operationId": "vnf_terminate",
1365 "description": "The identifier of the VNFM in A&AI",
1372 "description": "The identifier of the VNF in A&AI",
1379 "description": "VNF termination request parameters",
1382 "$ref": "#/definitions/SoVnfTerminationRequest"
1390 "$ref": "#/definitions/SoJobHandler"
1396 "/so/{vnfmId}/jobs/{jobId}": {
1401 "summary": "Query job status",
1402 "description": "Query the job status",
1403 "operationId": "get_jobstatus",
1408 "description": "The identifier of the VNFM in A&AI",
1415 "description": "The identifier of the job",
1422 "description": "The details of a job",
1424 "$ref": "#/definitions/SoJobDetail"
1428 "description": "The job is unknown to the VNFM. The VNFM does not keep finished jobs for forever.",
1430 "$ref": "#/definitions/SoJobDetail"