-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| **Field** | **Description** | **Required?** |
-+===========================+========================================================================================================================================================================================================================================================================================================================+=====================+
-| input | The block that defines the details of the input to the command processing. Contains the common-header details. | Yes |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| common- header | The block that contains the generic details about a request. | Yes |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| timestamp | The time of the request, in ISO 8601 format, ZULU offset. For example: 2016-08-03T08:50:18.97Z. | Yes |
-| | | |
-| | APPC will reject the request if timestamp is in the future (due to clock error), or timestamp is too old (compared to TTL flag) | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| api-ver | Identifies the API version, in X.YY format, where X denotes the major version increased with each APPC release, and YY is the minor release version. | Yes |
-| | | |
-| | 2.00 should be used for all LCM API requests | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| originator-id | An identifier of the calling system limited to a length of 40 characters. | Yes |
-| | | |
-| | It can be used for addressing purposes, such as to return an asynchronous response to the correct destination, in particular where there are multiple consumers of APPC APIs. | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| request-id | The UUID for the request ID, limited to a length of 40 characters. The unique OSS/BSS identifier for the request ID that triggers the current LCM action. Multiple API calls can be made with the same request-id. | Yes |
-| | | |
-| | The request-id is stored throughout the operations performed during a single request. | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| sub-request-id | Uniquely identifies a specific LCM or control action, limited to a length of 40 characters. Persists throughout the life cycle of a single request. | No |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| flags | Generic flags that apply to all LCM actions: | No |
-| | | |
-| | - "MODE" : | |
-| | | |
-| | - "EXCLUSIVE" - reject requests on this VNF while another request is in progress, or | |
-| | | |
-| | - "NORMAL" - allow requests (pending additional validations) on this VNF if there is another request is in progress. | |
-| | | |
-| | - "FORCE" : | |
-| | - TRUE – forces APP-C to process the request regardless of whether there is another request for the VNF or VM in progress. | |
-| | - FALSE – default value. Will return an error if there is another action in progress on the same VNF or VM, unless the two actions are allowed in parallel based on a Request Management Model stored in APP-C. | |
-| | The model allows some non-disruptive actions such as Lock, Unlock, CheckLock, and ActionStatus to be performed in conjunction with other actions. | |
-| | | |
-| | - "TTL": <0....N> - The timeout value is used to determine if the request timeout has been exceeded (i.e., if the TTL value is less than the current time minus the timestamp, the request is rejected). The value is in seconds. | |
-| | | |
-| | If no TTL value provided, the default/configurable TTL value is to be used. | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| action | The action to be taken by APPC, for example: Test, Start | Yes |
-| | | |
-| | These are case-sensitive; e.g.,”Restart” is correct; “restart” is incorrect. | |
-| | | |
-| | ***NOTE:** The specific value for the action parameter is provided for each command. | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| action-identifiers | A block containing the action arguments. These are used to specify the object upon which APPC LCM command is to operate. At least one action-identifier must be specified (note that vnf-id is mandatory). For actions that are at the VM level, the action-identifiers provided would be vnf-id and vserver-id. | Yes |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| service-instance-id | Identifies a specific service instance that the command refers to. When multiple APPC instances are used and applied to a subset of services, this will become significant. The field is mandatory when the vnf-id is empty. Currently not used. | No |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| vnf-id | Identifies the VNF instance to which this action is to be applied. Required for actions. | Yes |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| vnfc-name | Identifies the VNFC instance to which this action is to be applied. Required if the action applied to a specific VNFC. Currently not used. | No |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| vserver-id | Identifies a specific VM instance to which this action is to be applied. Required if the action applied to a specific VM. (Populate the vserver-id field with the UUID of the VM) | No |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| vf-module-id | Identifies a specific VF module to which this action is to be applied. Required if the action applied to a specific VF module. | No |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
-| payload | An action-specific open-format field. | No |
-| | | |
-| | The payload can be any valid JSON string value. JSON escape characters need to be added when an inner JSON string is included within the payload, for example: ``"{\\" vnf -host- ip | |
-| | | |
-| | -address\\": \\"<VNF-HOST-IP-ADDRESS>\\"}"``. | |
-| | | |
-| | The payload is typically used to provide parametric data associated with the command, such as a list of configuration parameters. | |
-| | | |
-| | Note that not all LCM commands need have a payload. | |
-| | | |
-| | ***NOTE:** See discussion below on the use of payloads for self-service actions. | |
-+---------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| **Field** | **Description** | **Required?** |
++===========================+=============================================================================================================================================================================================================================================================================================================================================================================+=====================+
+| input | The block that defines the details of the input to the command processing. Contains the common-header details. | Yes |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| common- header | The block that contains the generic details about a request. | Yes |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| timestamp | The time of the request, in ISO 8601 format, ZULU offset. For example: 2016-08-03T08:50:18.97Z. | Yes |
+| | | |
+| | APPC will reject the request if timestamp is in the future (due to clock error), or timestamp is too old (compared to TTL flag) | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| api-ver | Identifies the API version, in X.YY format, where X denotes the major version increased with each APPC release, and YY is the minor release version. | Yes |
+| | | |
+| | 2.00 should be used for all LCM API requests | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| originator-id | An identifier of the calling system limited to a length of 40 characters. | Yes |
+| | | |
+| | It can be used for addressing purposes, such as to return an asynchronous response to the correct destination, in particular where there are multiple consumers of APPC APIs. | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| request-id | The UUID for the request ID, limited to a length of 40 characters. The unique OSS/BSS identifier for the request ID that triggers the current LCM action. Multiple API calls can be made with the same request-id. | Yes |
+| | | |
+| | The request-id is stored throughout the operations performed during a single request. | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| sub-request-id | Uniquely identifies a specific LCM or control action, limited to a length of 40 characters. Persists throughout the life cycle of a single request. | No |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| flags | Generic flags that apply to all LCM actions: | No |
+| | | |
+| | - "MODE" : | |
+| | | |
+| | - "EXCLUSIVE" - reject requests on this VNF while another request is in progress, or | |
+| | | |
+| | - "NORMAL" - allow requests (pending additional validations) on this VNF if there is another request is in progress. | |
+| | | |
+| | - "FORCE" : | |
+| | - **TRUE** – forces APPC to process the request regardless of whether there is another request for the VNF or VM in progress. | |
+| | - **FALSE** – default value. Will return an error if there is another action in progress on the same VNF or VM, unless the two actions are allowed in parallel based on a Request Management Model stored in APPC. The model allows some non-disruptive actions such as Lock, Unlock, CheckLock, and ActionStatus to be performed in conjunction with other actions. | |
+| | | |
+| | | |
+| | - "TTL": <0....N> - The timeout value is used to determine if the request timeout has been exceeded (i.e., if the TTL value is less than the current time minus the timestamp, the request is rejected). The value is in seconds. | |
+| | | |
+| | If no TTL value provided, the default/configurable TTL value is to be used. | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| action | The action to be taken by APPC, for example: Test, Start | Yes |
+| | | |
+| | These are case-sensitive; e.g.,”Restart” is correct; “restart” is incorrect. | |
+| | | |
+| | ***NOTE:** The specific value for the action parameter is provided for each command. | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| action-identifiers | A block containing the action arguments. These are used to specify the object upon which APPC LCM command is to operate. At least one action-identifier must be specified (note that vnf-id is mandatory). For actions that are at the VM level, the action-identifiers provided would be vnf-id and vserver-id. | Yes |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| service-instance-id | Identifies a specific service instance that the command refers to. When multiple APPC instances are used and applied to a subset of services, this will become significant. The field is mandatory when the vnf-id is empty. Currently not used. | No |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| vnf-id | Identifies the VNF instance to which this action is to be applied. Required for actions. | Yes |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| vnfc-name | Identifies the VNFC instance to which this action is to be applied. Required if the action applied to a specific VNFC. Currently not used. | No |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| vserver-id | Identifies a specific VM instance to which this action is to be applied. Required if the action applied to a specific VM. (Populate the vserver-id field with the UUID of the VM) | No |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| vf-module-id | Identifies a specific VF module to which this action is to be applied. Required if the action applied to a specific VF module. | No |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
+| payload | An action-specific open-format field. | No |
+| | | |
+| | The payload can be any valid JSON string value. JSON escape characters need to be added when an inner JSON string is included within the payload, for example: | |
+| | | |
+| | ``"{\" vnf-host-ip-address\": \"<VNF-HOST-IP-ADDRESS>\"}"`` | |
+| | | |
+| | The payload is typically used to provide parametric data associated with the command, such as a list of configuration parameters. | |
+| | | |
+| | Note that not all LCM commands need have a payload. | |
+| | | |
+| | ***NOTE:** See discussion below on the use of payloads for self-service actions. | |
++---------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+