4 title: ONAP SO VNFM Adapter API
6 Describes the API between SO (Service Orchestrator) and the adapter for VNFM
7 (Virtual Network Function Manager)
8 basePath: /so/vnfm-adapter/v1
22 description: Create a VNF instance using a VNFM.
23 operationId: vnf_create
30 The identifier of the VNF. This must be the vnf-id of an existing
36 description: VNF creation parameters
39 $ref: '#/definitions/CreateVnfRequest'
40 - name: X-ONAP-RequestID
42 Used to track REST requests for logging purposes. Identifies a
43 single top level invocation of ONAP
47 - name: X-InvocationID
49 Used to track REST requests for logging purposes. Identifies a
50 single invocation of a single component
57 The request was accepted for processing, but the processing has not
60 $ref: '#/definitions/CreateVnfResponse'
63 An error occurred in the VNFM adapter relating to the given input,
64 for example, if the definition of the given VNF in AAI does not
65 included required information.
67 description: A VNF with the specified ID was not found in AAI.
70 An error occurred in the VNFM adapter not relating to the given
71 input, or an error is received from the VNFM.
76 description: Delete an instance of a VNF using a VNFM.
77 operationId: vnf_delete
84 The identifier of the VNF. This must be the vnf-id of an existing
88 - name: X-ONAP-RequestID
90 Used to track REST requests for logging purposes. Identifies a
91 single top level invocation of ONAP
95 - name: X-InvocationID
97 Used to track REST requests for logging purposes. Identifies a
98 single invocation of a single component
105 The request was accepted for processing, but the processing has not
108 $ref: '#/definitions/DeleteVnfResponse'
111 An error occurred in the VNFM adapter relating to the given input,
112 for example, if the definition of the given VNF in AAI does not
113 included required information.
115 description: A VNF with the specified ID was not found in AAI.
118 An error occurred in the VNFM adapter not relating to the given
119 input, or an error is received from the VNFM.
125 description: Query the status of a job.
126 operationId: job_query
134 description: The identifier of the Job.
137 - name: X-ONAP-RequestID
139 Used to track REST requests for logging purposes. Identifies a
140 single top level invocation of ONAP
144 - name: X-InvocationID
146 Used to track REST requests for logging purposes. Identifies a
147 single invocation of a single component
155 $ref: '#/definitions/QueryJobResponse'
157 description: A job with the specified ID was not found.
160 An error occurred in the VNFM adapter not relating to the given
161 input, or an error is received from the VNFM.
168 description: The name to be applied to the VNF.
170 $ref: '#/definitions/Tenant'
174 Additional input parameters for the instantiation process, specific to
175 the VNF being instantiated, as declared in the VNFD as part of
176 "InstantiateVnfOpConfig".
177 additionalProperties:
179 externalVirtualLinks:
181 description: Information about external VLs to connect the VNF to.
183 $ref: '#/definitions/ExternalVirtualLink'
189 description: Details of the tenant that VNFs can be deployed into
193 description: The owner in AAI of the cloud to which the tenant belongs.
196 description: The regionName in AAI of the cloud to which the tenant belongs.
199 description: The identifier of the tenant in the VIM.
208 description: The ID of the job which can be used to query the status of the job
217 The ID of the job which can be used to query the status of the delete
225 operationStatusRetrievalStatus:
226 $ref: '#/definitions/OperationStatusRetrievalStatusEnum'
230 $ref: '#/definitions/OperationEnum'
232 $ref: '#/definitions/OperationStateEnum'
242 - operationStatusRetrievalStatus
243 OperationStatusRetrievalStatusEnum:
244 description: The status of the attempt to retrieve the operation from the VNFM
249 - OPERATION_NOT_FOUND
250 - CANNOT_RETRIEVE_STATUS
252 description: The operation
265 description: The status of the operation
277 This type represents an external VL.
286 An identifier with the intention of being globally unique.
289 $ref: '#/definitions/Tenant'
292 An identifier maintained by the VIM.
296 External CPs of the VNF to be connected to this external VL.
300 This type represents configuration information for external CPs
308 An identifier that is unique within a VNF descriptor.
312 List of instance data that need to be configured on the CP
313 instances created from the respective CPD.
317 This type represents an externally provided link port or
318 network address information per instance of an external
319 connection point. In case a link port is provided, the VNFM
320 shall use that link port when connecting the external CP to
321 the external VL. In a link port is not provided, the VNFM
322 shall create a link port on the external VL, and use that link
323 port to connect the external CP to the external VL.
328 An identifier that is unique for the respective type
329 within a VNF instance, but may not be globally unique.
333 An identifier with the intention of being globally unique.
337 Parameters for configuring the network protocols on the
338 link port that connects the CP to a VL. The following
339 conditions apply to the attributes "linkPortId" and
340 "cpProtocolData": * The "linkPortId" and "cpProtocolData"
341 attributes shall both be absent for the deletion of an
342 existing external CP instance
343 addressed by cpInstanceId.
344 * At least one of these attributes shall be present for a
345 to-be-created external CP instance or an existing external
347 * If the "linkPortId" attribute is absent, the VNFM shall
350 * If the "cpProtocolData" attribute is absent, the
351 "linkPortId" attribute shall be provided referencing a
352 pre-created link port,
353 and the VNFM can use means outside the scope of the present
354 document to obtain the pre-configured address information for the
355 connection point from the resource representing the link port.
356 * If both "cpProtocolData" and "linkportId" are provided,
357 the API consumer shall ensure that the cpProtocolData can
359 pre-created link port referenced by "linkPortId".
363 This type represents network protocol data.
370 Identifier of layer(s) and protocol(s). This
371 attribute allows to signal the addition of further
372 types of layer and protocol in future versions of
373 the present document in a backwards-compatible way.
374 In the current version of the present document, only
375 IP over Ethernet is supported.
381 This type represents network address data for IP
387 A MAC address. Representation: string that
388 consists of groups of two hexadecimal digits,
389 separated by hyphens or colons.
394 List of IP addresses to assign to the CP
395 instance. Each entry represents IP address data
396 for fixed or dynamic IP address assignment per
397 subnet. If this attribute is not present, no IP
398 address shall be assigned.
407 The type of the IP addresses. Permitted
415 Fixed addresses to assign (from the subnet
416 defined by "subnetId" if provided).
417 Exactly one of "fixedAddresses",
418 "numDynamicAddresses" or "ipAddressRange"
423 An IPV4 or IPV6 address. Representation:
424 In case of an IPV4 address, string that
425 consists of four decimal integers
426 separated by dots, each integer ranging
427 from 0 to 255. In case of an IPV6
428 address, string that consists of groups
429 of zero to four hexadecimal digits,
435 Number of dynamic addresses to assign
436 (from the subnet defined by "subnetId" if
437 provided). Exactly one of
438 "fixedAddresses", "numDynamicAddresses" or
439 "ipAddressRange" shall be present.
443 An IP address range to be used, e.g. in
444 case of egress connections. In case this
445 attribute is present, IP addresses from
446 the range will be used.
454 An IPV4 or IPV6 address. Representation:
455 In case of an IPV4 address, string that
456 consists of four decimal integers
457 separated by dots, each integer ranging
458 from 0 to 255. In case of an IPV6
459 address, string that consists of groups
460 of zero to four hexadecimal digits,
466 An IPV4 or IPV6 address. Representation:
467 In case of an IPV4 address, string that
468 consists of four decimal integers
469 separated by dots, each integer ranging
470 from 0 to 255. In case of an IPV6
471 address, string that consists of groups
472 of zero to four hexadecimal digits,
478 An identifier maintained by the VIM or
479 other resource provider. It is expected to
480 be unique within the VIM instance.
484 Externally provided link ports to be used to connect external
485 connection points to this external VL. If this attribute is not
486 present, the VNFM shall create the link ports on the external VL.
490 This type represents an externally provided link port to be used to
491 connect an external connection point to an external VL.
499 An identifier with the intention of being globally unique.
507 This type represents the information that allows addressing a
508 virtualised resource that is used by a VNF instance.
511 $ref: '#/definitions/Tenant'
514 An identifier maintained by the VIM or other resource
515 provider. It is expected to be unique within the VIM
518 vimLevelResourceType:
520 Type of the resource in the scope of the VIM or the resource