Merge "Fixed git clone to point at gerrit"
authorSeshu Kumar M <seshu.kumar.m@huawei.com>
Tue, 2 Jan 2018 10:36:57 +0000 (10:36 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 2 Jan 2018 10:36:57 +0000 (10:36 +0000)
19 files changed:
adapters/mso-network-adapter/src/main/java/org/openecomp/mso/adapters/network/HealthCheckHandler.java
adapters/mso-requests-db-adapter/src/main/java/org/openecomp/mso/adapters/requestsdb/HealthCheckHandler.java
adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/impl/SDNCAdapterRestImpl.java
adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCAdapterRest.java
adapters/mso-tenant-adapter/src/main/java/org/openecomp/mso/adapters/tenant/HealthCheckHandler.java
adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/HealthCheckHandler.java
adapters/mso-vnf-adapter/src/main/java/org/openecomp/mso/adapters/vnf/HealthCheckHandler.java
adapters/mso-workflow-message-adapter/src/main/java/org/openecomp/mso/adapters/workflowmessage/WMAdapterRest.java
asdc-controller/src/main/java/org/openecomp/mso/asdc/healthcheck/HealthCheckHandler.java
bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoCreateE2EServiceInstance.groovy
bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoCustomDeleteE2EServiceInstance.groovy
common/src/main/java/org/openecomp/mso/properties/MsoJavaProperties.java
docs/SO_R1_Interface.rst
docs/images/SO_R1_1.png
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/GlobalHealthcheckHandler.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/HealthcheckHandler.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/openecomp/mso/apihandlerinfra/NodeHealthcheckHandler.java
status-control/src/main/java/org/openecomp/mso/HealthCheckUtils.java
status-control/src/test/java/org/openecomp/mso/HealthCheckUtilsTest.java

index 85bca6f..5314de0 100644 (file)
@@ -48,7 +48,7 @@ import org.openecomp.mso.utils.UUIDChecker;
                        MsoLogger.setServiceName ("Healthcheck");
                        UUIDChecker.verifyOldUUID(requestId, msoLogger);
                        HealthCheckUtils healthCheck = new HealthCheckUtils ();
-                       if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+                       if (!healthCheck.siteStatusCheck(msoLogger)) {
                                return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                        }
 
index 0c4c1c4..2a74d79 100644 (file)
@@ -46,7 +46,7 @@ import org.openecomp.mso.utils.UUIDChecker;
                        MsoLogger.setServiceName ("Healthcheck");
                        UUIDChecker.verifyOldUUID(requestId, msoLogger);
                        HealthCheckUtils healthCheck = new HealthCheckUtils ();
-                       if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+                       if (!healthCheck.siteStatusCheck(msoLogger)) {
                                return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                        }
 
index c69aee5..f6a3e36 100644 (file)
@@ -131,7 +131,7 @@ public class SDNCAdapterRestImpl {
                MsoLogger.setServiceName ("Healthcheck");
                UUIDChecker.verifyOldUUID(requestId, msoLogger);
                HealthCheckUtils healthCheck = new HealthCheckUtils ();
-               if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+               if (!healthCheck.siteStatusCheck(msoLogger)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
@@ -152,7 +152,7 @@ public class SDNCAdapterRestImpl {
                // Generate a Request Id
                String requestId = UUIDChecker.generateUUID(msoLogger);
                HealthCheckUtils healthCheck = new HealthCheckUtils ();
-               if (!healthCheck.siteStatusCheck (msoLogger, startTime)) {
+               if (!healthCheck.siteStatusCheck (msoLogger)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
@@ -175,7 +175,7 @@ public class SDNCAdapterRestImpl {
                // Generate a Request Id
                String requestId = UUIDChecker.generateUUID(msoLogger);
                HealthCheckUtils healthCheck = new HealthCheckUtils ();
-               if (!healthCheck.siteStatusCheck (msoLogger, startTime)) {
+               if (!healthCheck.siteStatusCheck (msoLogger)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
index 0c787ca..f7a37fc 100644 (file)
@@ -58,7 +58,7 @@ public class SDNCAdapterRest {
                UUIDChecker.verifyOldUUID(requestId, LOGGER);
                HealthCheckUtils healthCheck = new HealthCheckUtils();
 
-               if (!healthCheck.siteStatusCheck(LOGGER, startTime)) {
+               if (!healthCheck.siteStatusCheck(LOGGER)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
index ce2113e..1a4bec4 100644 (file)
@@ -45,7 +45,7 @@ import org.openecomp.mso.utils.UUIDChecker;
                        MsoLogger.setServiceName ("Healthcheck");
                        UUIDChecker.verifyOldUUID(requestId, msoLogger);
                        HealthCheckUtils healthCheck = new HealthCheckUtils ();
-                       if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+                       if (!healthCheck.siteStatusCheck(msoLogger)) {
                                return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                        }
 
index 13e963f..8e163d4 100644 (file)
@@ -56,7 +56,7 @@ public class HealthCheckHandler {
         MsoLogger.setServiceName("Healthcheck");
         UUIDChecker.verifyOldUUID(requestId, msoLogger);
         HealthCheckUtils healthCheck = new HealthCheckUtils();
-        if(!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+        if(!healthCheck.siteStatusCheck(msoLogger)) {
             return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
         }
 
index 3b619d9..840bd02 100644 (file)
@@ -49,7 +49,7 @@ public class HealthCheckHandler {
                MsoLogger.setServiceName ("Healthcheck");
                UUIDChecker.verifyOldUUID(requestId, msoLogger);
                HealthCheckUtils healthCheck = new HealthCheckUtils ();
-               if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+               if (!healthCheck.siteStatusCheck(msoLogger)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
index dc94a78..4be6b93 100644 (file)
@@ -30,8 +30,6 @@ import javax.ws.rs.HeaderParam;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 
@@ -62,7 +60,7 @@ public class WMAdapterRest {
                UUIDChecker.verifyOldUUID(requestId, LOGGER);
                HealthCheckUtils healthCheck = new HealthCheckUtils();
 
-               if (!healthCheck.siteStatusCheck(LOGGER, startTime)) {
+               if (!healthCheck.siteStatusCheck(LOGGER)) {
                        return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                }
 
index 24e1153..2162607 100644 (file)
@@ -59,7 +59,7 @@ import org.openecomp.mso.utils.UUIDChecker;
                        MsoLogger.setServiceName ("Healthcheck");
                        UUIDChecker.verifyOldUUID(requestId, msoLogger);
                        HealthCheckUtils healthCheck = new HealthCheckUtils ();
-                       if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+                       if (!healthCheck.siteStatusCheck(msoLogger)) {
                                return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
                        }
 
index 9404364..d15be38 100644 (file)
@@ -413,7 +413,11 @@ public class DoCreateE2EServiceInstance extends AbstractServiceTaskProcessor {
         String nsServiceDescription = jsonUtil.getJsonValue(incomingRequest, "service.description")  
         execution.setVariable("nsServiceDescription", nsServiceDescription)
         utils.log("INFO", "Prepare VFC Request nsServiceDescription:" + nsServiceDescription, isDebugEnabled)
-        List<String> resourceList = jsonUtil.StringArrayToList(execution, resourcesStr)   
+        List<String> resourceList = jsonUtil.StringArrayToList(execution, resourcesStr) 
+        //reset the variables
+        execution.setVariable("resourceUUID", "")
+        execution.setVariable("resourceInvariantUUID", "")
+        execution.setVariable("resourceParameters", "")
         for(String resource : resourceList){
             String resourceName = jsonUtil.getJsonValue(resource, "resourceName")  
             if(StringUtils.containsIgnoreCase(resourceName, resourceType)){
index ffd8372..ecc1488 100644 (file)
@@ -406,7 +406,7 @@ public class DoCustomDeleteE2EServiceInstance extends AbstractServiceTaskProcess
                                                                }
                                                        }
                                                }
-                        execution.setVariable("serviceRelationShip", jArray)
+                        execution.setVariable("serviceRelationShip", jArray.toString())
                                        }
                                }
                        }else{
index 3675dd6..f0ca191 100644 (file)
@@ -115,7 +115,6 @@ public class MsoJavaProperties extends AbstractMsoProperties {
 
                } finally {
                        this.automaticRefreshInMinutes = this.getIntProperty(RELOAD_TIME_PROPERTY, DEFAULT_RELOAD_TIME_MIN);
-                       // Always close the file
                        try {
                                if (reader != null) {
                                        reader.close();
@@ -155,27 +154,31 @@ public class MsoJavaProperties extends AbstractMsoProperties {
                        return false;
                }
                MsoJavaProperties other = (MsoJavaProperties) obj;
-               if (!msoProperties.equals(other.msoProperties)) {
-                       return false;
-               }
-               return true;
+
+               return msoProperties.equals(other.msoProperties);
        }
 
        @Override
        public String toString() {
 
-               StringBuffer response = new StringBuffer();
-               response.append("Config file " + propertiesFileName + "(Timer:" + automaticRefreshInMinutes + "mins):"
-                               + System.getProperty("line.separator"));
+               StringBuilder response = new StringBuilder();
+               response.append("Config file ")
+                               .append(propertiesFileName)
+                               .append("(Timer:")
+                               .append(automaticRefreshInMinutes)
+                               .append("mins):")
+                               .append(System.lineSeparator());
+
                for (Object key : this.msoProperties.keySet()) {
                        String propertyName = (String) key;
                        response.append(propertyName);
                        response.append("=");
                        response.append(this.msoProperties.getProperty(propertyName));
-                       response.append(System.getProperty("line.separator"));
+                       response.append(System.lineSeparator());
                }
-               response.append(System.getProperty("line.separator"));
-               response.append(System.getProperty("line.separator"));
+               response.append(System.lineSeparator());
+               response.append(System.lineSeparator());
+
                return response.toString();
        }
 }
index 6ed8ebe..10b894c 100644 (file)
@@ -7,15 +7,4166 @@ SO Amsterdam Interfaces
 \r
 .. image:: images/SO_R1_1.png\r
 \r
-Service Orchestrator in Amsterdam release uses interfaces from both the MSO seed code and as well as new interfaces between the new components of ONAP. \r
-The below documentation of the SO APIs and are reviewed in the architecture committee meeting on 22/08/2017.\r
+SO APIs\r
+============\r
 \r
-See :download:`SO_API_v0.1.2.pdf`\r
+North Bound APIs\r
+----------------\r
+Create service instance\r
+++++++++++++++++++++++++\r
 \r
-The interface between UUI and SO for the E2E VoLTE service:\r
++--------------------+-------------------------------------+\r
+|Interface Definition|Description                          |\r
++====================+=====================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2     |\r
++--------------------+-------------------------------------+\r
+|Operation Type      |POST                                 |\r
++--------------------+-------------------------------------+\r
+|Content-Type        |application/json                     |\r
++--------------------+-------------------------------------+\r
 \r
-See :download:`UUI-SO_API_Specification_v0.1.docx`\r
+Request Body:\r
 \r
-The interface between Multi VIM and SO:\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
 \r
-See :download:`SO_MultiCloud.xlsx`
\ No newline at end of file
+RequestDetails Object \r
+\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|Attribute          |Content                  |Description                                      |\r
++===================+=========================+=================================================+\r
+|modelInfo          |modelInfo Object         |Content of modelInfo object.                     |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|subscriberInfo     |subscriberInfo Object    |Content of subscriberInfo object.                |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo        |requestInfo Object       |Content of requestInfo object.                   |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters  |requestParameters Object |Content of requestParameters object.             |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelCustomization Name  |String            |The Model Customization name                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+SubscriberInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|GlobalSubscriberId       |String            |Global customer Id (in A&AI)                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SubscriberName           |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ProductFamilyId          |String            |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|SubscriptionServiceType  |String            |The service type of the Subscription             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|UserParams               |Array             |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+UserParams Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|name                     |String            |Tag name of attribute                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|value                    |String            |Value of the tag                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Delete service instance\r
+++++++++++++++++++++++++\r
+\r
++--------------------+---------------------------------------------------------+\r
+|Interface Definition|Description                                              |\r
++====================+=========================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}     |\r
++--------------------+---------------------------------------------------------+\r
+|Operation Type      |DELETE                                                   |\r
++--------------------+---------------------------------------------------------+\r
+|Content-Type        |application/json                                         |\r
++--------------------+---------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|Attribute          |Content                  |Description                                      |\r
++===================+=========================+=================================================+\r
+|modelInfo          |modelInfo Object         |Content of modelInfo object.                     |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo        |requestInfo Object       |Content of requestInfo object.                   |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Create Volume Group\r
+++++++++++++++++++++++++\r
+\r
++--------------------+-------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                |\r
++====================+===========================================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs/{vnfInstanceId}/volumeGroups     |\r
++--------------------+-------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                       |\r
++--------------------+-------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                           |\r
++--------------------+-------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|relatedInstanceList  |List                     |Content of relatedInstanceList.                  |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelCustomization Name  |String            |The Model Customization name                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|relatedInstance          |Object            |relatedInstance Object                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|instanceId               |String            |instanceId                                       |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|modelInfo                |Object            |Content of modelInfo object.                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Delete Volume Group\r
+++++++++++++++++++++++++\r
+\r
++--------------------+---------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                          |\r
++====================+=====================================================================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs/{vnfInstanceId}/volumeGroups/{volume-groupinstance-id}     |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                               |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                     |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Create VF Module\r
++++++++++++++++++\r
+\r
++--------------------+----------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                             |\r
++====================+========================================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules     |\r
++--------------------+----------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                    |\r
++--------------------+----------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                        |\r
++--------------------+----------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|relatedInstanceList  |List                     |Content of relatedInstanceList.                  |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelCustomization Name  |String            |The Model Customization name                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|relatedInstance          |Object            |relatedInstance Object                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|instanceId               |String            |instanceId                                       |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|modelInfo                |Object            |Content of modelInfo object.                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|instanceName             |String            |Name of the instance                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Delete Volume Group\r
+++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                   |\r
++====================+==============================================================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs/{vnfInstanceId}/vfModules/{vfmoduleinstance-id}     |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                        |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                              |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelCustomization Name  |String            |The Model Customization name                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Create Network\r
++++++++++++++++\r
+\r
++--------------------+------------------------------------------------------------------+\r
+|Interface Definition|Description                                                       |\r
++====================+==================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/networks     |\r
++--------------------+------------------------------------------------------------------+\r
+|Operation Type      |POST                                                              |\r
++--------------------+------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                  |\r
++--------------------+------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|relatedInstanceList  |List                     |Content of relatedInstanceList.                  |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters    |requestParameters Object |Content of requestParameters object.             |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ProductFamilyId          |String            |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|relatedInstance          |Object            |relatedInstance Object                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|instanceId               |String            |instanceId                                       |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|modelInfo                |Object            |Content of modelInfo object.                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|UserParams               |Array             |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+UserParams Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|name                     |String            |Tag name of attribute                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|value                    |String            |Value of the tag                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Delete Network\r
++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                           |\r
++====================+======================================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/networks/{networkInstanceId}     |\r
++--------------------+--------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                |\r
++--------------------+--------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                      |\r
++--------------------+--------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Create VNF\r
++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------+\r
+|Interface Definition|Description                                                   |\r
++====================+==============================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs     |\r
++--------------------+--------------------------------------------------------------+\r
+|Operation Type      |POST                                                          |\r
++--------------------+--------------------------------------------------------------+\r
+|Content-Type        |application/json                                              |\r
++--------------------+--------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|relatedInstanceList  |List                     |Content of relatedInstanceList.                  |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters    |requestParameters Object |Content of requestParameters object.             |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelCustomization Name  |String            |The Model Customization name                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ProductFamilyId          |String            |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|relatedInstance          |Object            |relatedInstance Object                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+relatedInstance List  \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|instanceId               |String            |instanceId                                       |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|modelInfo                |Object            |Content of modelInfo object.                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|UserParams               |Array             |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+UserParams Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|name                     |String            |Tag name of attribute                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|value                    |String            |Value of the tag                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+Delete VNF\r
++++++++++++++++\r
+\r
++--------------------+------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                   |\r
++====================+==============================================================================+\r
+|URI                 |{serverRoot}/serviceInstances/v2/{serviceInstanceId}/vnfs/{vnfInstanceId}     |\r
++--------------------+------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                        |\r
++--------------------+------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                              |\r
++--------------------+------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestDetails  |M        |1          |requestDetails Object     |Content of requestDetails object.          |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|Attribute            |Content                  |Description                                      |\r
++=====================+=========================+=================================================+\r
+|modelInfo            |modelInfo Object         |Content of modelInfo object.                     |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|cloudConfiguration   |cloudConfiguration Object|Content of cloudConfiguration object.            |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo          |requestInfo Object       |Content of requestInfo object.                   |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters    |requestParameters Object |Content of requestParameters object.             |\r
++---------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+CloudConfiguration Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|lcpCloudRegionId         |String            |CloudRegion Id (in A&AI)                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|tenantId                 |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|UserParams               |Array             |The product family Id.                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+UserParams Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|name                     |String            |Tag name of attribute                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|value                    |String            |Value of the tag                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+GET Orchestration Request\r
+++++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------+\r
+|Interface Definition|Description                                                   |\r
++====================+==============================================================+\r
+|URI                 |{serverRoot}/orchestrationRequests/v2/{request-id}            |\r
++--------------------+--------------------------------------------------------------+\r
+|Operation Type      |GET                                                           |\r
++--------------------+--------------------------------------------------------------+\r
+|Content-Type        |application/json                                              |\r
++--------------------+--------------------------------------------------------------+\r
+\r
+Response Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|request         |M        |1          |request Object            |Content of request object.                 |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+Request Object\r
+\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content                   |Description                                |\r
++===================+=========+===========+==========================+===========================================+\r
+|requestId          |M        |1          |String                    |Request Id                                 |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|startTime          |M        |1          |request Object            |Start time.                                |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|serviceInstanceId  |M        |1          |request Object            |Service Instance id.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestScope       |M        |1          |request Object            |Scope of the request.                      |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestType        |M        |1          |request Object            |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestDetails     |M        |1          |requestDetails Object     |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestStatus      |M        |1          |requestStatus Object      |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|Attribute          |Content                  |Description                                      |\r
++===================+=========================+=================================================+\r
+|modelInfo          |modelInfo Object         |Content of modelInfo object.                     |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|subscriberInfo     |subscriberInfo Object    |Content of subscriberInfo object.                |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo        |requestInfo Object       |Content of requestInfo object.                   |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters  |requestParameters Object |Content of requestParameters object.             |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+SubscriberInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|GlobalSubscriberId       |String            |Global customer Id (in A&AI)                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SubscriberName           |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|SubscriptionServiceType  |String            |The service type of the Subscription             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestStatus Object\r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|timestamp                |String            |Time                                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|requestState             |String            |state of the request                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|statusMessage            |String            |statusMessage                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|percentProgress          |String            |percentage of progress                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+GET Orchestration Requests\r
+++++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------+\r
+|Interface Definition|Description                                                   |\r
++====================+==============================================================+\r
+|URI                 |{serverRoot}/orchestrationRequests/v2                         |\r
++--------------------+--------------------------------------------------------------+\r
+|Operation Type      |GET                                                           |\r
++--------------------+--------------------------------------------------------------+\r
+|Content-Type        |application/json                                              |\r
++--------------------+--------------------------------------------------------------+\r
+\r
+Response Body:\r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|requestList     |M        |1          |Array                     |Content of request List.                   |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestList : \r
+\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                |\r
++================+=========+===========+==========================+===========================================+\r
+|request         |M        |1          |request Object            |Content of request object.                 |\r
++----------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+Request Object\r
+\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content                   |Description                                |\r
++===================+=========+===========+==========================+===========================================+\r
+|requestId          |M        |1          |String                    |Request Id                                 |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|startTime          |M        |1          |request Object            |Start time.                                |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|serviceInstanceId  |M        |1          |request Object            |Service Instance id.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestScope       |M        |1          |request Object            |Scope of the request.                      |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestType        |M        |1          |request Object            |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestDetails     |M        |1          |requestDetails Object     |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+|requestStatus      |M        |1          |requestStatus Object      |Type of the request.                       |\r
++-------------------+---------+-----------+--------------------------+-------------------------------------------+\r
+\r
+RequestDetails Object \r
+\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|Attribute          |Content                  |Description                                      |\r
++===================+=========================+=================================================+\r
+|modelInfo          |modelInfo Object         |Content of modelInfo object.                     |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|subscriberInfo     |subscriberInfo Object    |Content of subscriberInfo object.                |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestInfo        |requestInfo Object       |Content of requestInfo object.                   |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+|requestParameters  |requestParameters Object |Content of requestParameters object.             |\r
++-------------------+-------------------------+-------------------------------------------------+\r
+\r
+ModelInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|ModelType                |String            |Type of model                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelInvariantId         |String            |The Model Invariant Id.                          |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelNameVersionId       |String            |The modelname Version Id                         |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelName                |String            |Name of the Model                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|ModelVersion             |String            |Version of the model                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+SubscriberInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|GlobalSubscriberId       |String            |Global customer Id (in A&AI)                     |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SubscriberName           |String            |Name of the Subscriber                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestInfo Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|InstanceName             |String            |The instance Name                                |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Source                   |String            |source of the request                            |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|SuppressRollback         |Boolean           |SuppressRollback                                 |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestParameters Object \r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|SubscriptionServiceType  |String            |The service type of the Subscription             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+RequestStatus Object\r
+\r
++-------------------------+------------------+-------------------------------------------------+\r
+|Attribute                |Content           |Description                                      |\r
++=========================+==================+=================================================+\r
+|timestamp                |String            |Time                                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|requestState             |String            |state of the request                             |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|statusMessage            |String            |statusMessage                                    |\r
++-------------------------+------------------+-------------------------------------------------+\r
+|percentProgress          |String            |percentage of progress                           |\r
++-------------------------+------------------+-------------------------------------------------+\r
+\r
+SDC API\r
+--------\r
+\r
+Get List of Existing Catalog Assets \r
++++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |sdc/v1/catalog/{assetType}|\r
++--------------------+--------------------------+\r
+|Operation Type      |GET                       |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|assetType          |M        |1          |String |The requested asset type.valid values are resources/services.|\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|service-type       |M        |1          |String |Service Type                                                 |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|service-instance-id|M        |1          |String |Service Instance ID                                          |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content|Description                                                                           |\r
++==================+=========+===========+=======+======================================================================================+\r
+|uuid              |M        |1          |String |Global Asset Version Identifier: UUID generated by SDC per each version of the asset. |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|invariantUUID     |M        |1          |String |UUID generated by SDC per each asset.                                                 |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|name              |M        |1          |String |The name of the asset                                                                 |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|version           |M        |1          |String |The asset version in SDC catalog.                                                     |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|toscaModelURL     |M        |1          |String |Relative asset’s URL. Should be used in REST GET API to download the asset’s CSAR.    |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|category          |M        |1          |String |Category of the asset.                                                                |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|subcategory       |M        |1          |String |Sub-category of the asset                                                             |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|resourceType      |M        |1          |String |The type of resource.resource types are VF, VL, CP, VFC, VFCMT, PNF.                  |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|lifecycleState    |M        |1          |String |The lifecycle state of the asset                                                      |\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+|lastUpdaterUserId |M        |1          |String |UserID of the SDC designer who was the last to update the asset for this major version|\r
++------------------+---------+-----------+-------+--------------------------------------------------------------------------------------+\r
+\r
+Get Specific Asset Detailed Metadata \r
+++++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+-------------------------------------------+\r
+|Interface Definition|Description                                |\r
++====================+===========================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/metadata|\r
++--------------------+-------------------------------------------+\r
+|Operation Type      |GET                                        |\r
++--------------------+-------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                                          |\r
++===================+=========+===========+=======+=====================================================================================+\r
+|assetType          |M        |1          |String |The requested asset type.valid values are resources/services.                        |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|uuid               |M        |1          |String |Global Asset Version Identifier: UUID generated by SDC per each version of the asset.|\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                           |\r
++====================+=========+=======+======================================================================================+\r
+|uuid                |M        |String |Global Asset Version Identifier: UUID generated by SDC per each version of the asset. |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|invariantUUID       |M        |String |UUID generated by SDC per each asset.                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|name                |M        |String |The name of the asset                                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|version             |M        |String |The asset version in SDC catalog.                                                     |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|toscaModelURL       |M        |String |Relative asset’s URL. Should be used in REST GET API to download the asset’s CSAR.    |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|description         |M        |String |Short description of the resource                                                     |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|lastUpdaterUserId   |M        |String |UserID of the SDC designer who was the last to update the asset for this major version|\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|lastUpdaterFullName |M        |String |UserID of the SDC designer who was the last to update the asset for this major version|\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|category            |M        |String |Category of the asset                                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|subCategory         |M        |String |Sub-category of the asset.                                                            |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|toscaResourceName   |M        |String |The full name of the asset                                                            |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|resourceType        |M        |String |The type of resource.                                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|lifecycleState      |M        |String |The lifecycle state of the asset                                                      |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|resources           |N        |Object |Category of the asset                                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+|artifacts           |M        |Object |Category of the asset                                                                 |\r
++--------------------+---------+-------+--------------------------------------------------------------------------------------+\r
+\r
+Resource Object:\r
+\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|Attribute            |Qualifier|Content|Description                                                                                                        |                                                                         |\r
++=====================+=========+=======+===================================================================================================================+\r
+|resourceInstanceName |M        |String |Logical Resource Instance Name.Unique Identifier of  the instance of the  specific resource in the service context.|\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|resourceName         |M        |String |Resource Name                                                                                                      |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|resourceInvariantUUID|M        |String |The invariant UUID of the resource                                                                                 |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|resourceVersion      |M        |String |Resource Version                                                                                                   |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|resoucreType         |M        |String |Resource Type                                                                                                      |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|resourceUUID         |M        |String |Global UUID of the resource that specific artifact belongs to                                                      |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifacts            |M        |Object |Array of  resource instance deployment artifacts.                                                                  |\r
++---------------------+---------+-------+-------------------------------------------------------------------------------------------------------------------+\r
+\r
+Artifact Metadata Object:\r
+\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|Attribute            |Qualifier|Content |Description                                                                                                        |\r
++=====================+=========+========+===================================================================================================================+\r
+|artifactName         |M        |String  |Artifact File name                                                                                                 |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactLabel        |M        |String  |Identifier of the artifact within the VF / Service.                                                                |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactType         |M        |String  |Artifact Type                                                                                                      |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactGroupType    |M        |String  |Whether the artifact is informational or deployment.                                                               |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactURL          |M        |String  |Relative artifact’s URL.                                                                                           |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactDescription  |M        |String  |Artifact Description                                                                                               |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactTimeout      |N        |Integer |Artifact Description                                                                                               |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactChecksum     |M        |String  |Base-64 encoded MD5 checksum of the artifact’s payload.                                                            |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactUUID         |M        |String  |Global UUID generated by SDC each time  when artifact payload is  updated.                                         |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|artifactVersion      |M        |String  |Service Version                                                                                                    |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+|generatedFromUUID    |N        |String  |This attribute will be  sent only  in the case of  an artifact  generated on basis of  other artifact              |\r
++---------------------+---------+--------+-------------------------------------------------------------------------------------------------------------------+\r
+\r
+Download (CSAR of) Specific Asset\r
++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+-----------------------------------------------------------+\r
+|Interface Definition|Description                                                |\r
++====================+===========================================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/artifacts/{artifactUUID}|\r
++--------------------+-----------------------------------------------------------+\r
+|Operation Type      |GET                                                        |\r
++--------------------+-----------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                                          |\r
++===================+=========+===========+=======+=====================================================================================+\r
+|assetType          |M        |1          |String |The requested asset type.valid values are resources/services.                        |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Uuid               |M        |1          |String |The uuid of the asset as published in the metadata                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactUUID       |M        |1          |String |The artifactUUID of the asset as published in the metadata                           |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+--------------------------------------------------------------------------------------------------------------------------+\r
+|Header name         |Qualifier|Description                                                                                                               |\r
++====================+=========+==========================================================================================================================+\r
+|Content-Type        |M        |Specifies the  downloaded payload format as “ arbitrary data in binary format” .Valid value is : application/octet-stream |\r
++--------------------+---------+--------------------------------------------------------------------------------------------------------------------------+\r
+|Content-Length      |M        |Streamed artifact payload size                                                                                            |\r
++--------------------+---------+--------------------------------------------------------------------------------------------------------------------------+\r
+|Content-Disposition |M        |Specifies  the name of  file to  store the  downloaded artifact’s  payload  ( RFC 2183) .                                 |\r
++--------------------+---------+--------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Upload Artifact \r
++++++++++++++++\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                    |\r
++====================+===============================================================================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/resourceInstances/{resourceInstanceNormalizedName}/artifacts|\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                           |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================+\r
+|assetType                     |M        |1          |String |The requested asset type.valid values are resources/services.                        |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Uuid                          |M        |1          |String |The uuid of the asset as published in the metadata                                   |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|resourceInstanceNormalizedName|M        |1          |String |Normalized name of resource                                                          |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Request Body\r
+++++++++++++\r
+\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================+\r
+|payloadData                   |M        |1          |String |The data of the artifact after Base64 encoding                                       |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactLabel                 |M        |1          |String |Identifier of the artifact within the VF / Service.                                  |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactName                  |M        |1          |String |The name of the artifact                                                             |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactType                  |M        |1          |String |The type of the artifact                                                             |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactGroupType             |M        |1          |String |Whether the artifact is informational or deployment.                                 |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|description                   |M        |1          |String |Description of the artifact                                                          |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|USER_ID            |Y        |The user ID of the DCAE Designer. This user must also have Designer role in SDC          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Content-Type       |Y        |Valid value is : application/json                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Content-MD5        |Y        |The value for this header must be the MD5 checksum over the whole json body              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                                        |\r
++====================+=========+=======+===================================================================================================+\r
+|artifactName        |M        |String |Artifact File name                                                                                 |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactType        |M        |String |Artifact Type                                                                                      |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactURL         |M        |String |Relative artifact’s URL.                                                                           |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactDescription |M        |String |Artifact Description.                                                                              |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactTimeout     |N        |String |Will be populated only if its value is not 0.                                                      |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactChecksum    |Y        |String |Base-64 encoded MD5 checksum of the artifact’s payload.                                            |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactUUID        |Y        |String |Global UUID generated by SDC each time  when artifact payload is  updated.                         |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactVersion     |Y        |String |Service Version .                                                                                  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|generatedFromUUID   |N        |String |This attribute will be sent only  in the case of an artifact generated on basis of other artifact  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+\r
+Update Artifact  \r
++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                   |\r
++====================+==============================================================================================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/resourceInstances/{resourceInstanceNormalizedName}/artifacts/{artifactUUID}|\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                          |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================+\r
+|assetType                     |M        |1          |String |The requested asset type.valid values are resources/services.                        |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Uuid                          |M        |1          |String |The uuid of the asset as published in the metadata                                   |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactUUID                  |M        |1          |String |The uuid of the artifact as published in the response of the upload/update operation |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|resourceInstanceNormalizedName|M        |1          |String |Normalized name of resource                                                          |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|USER_ID            |Y        |The user ID of the DCAE Designer. This user must also have Designer role in SDC          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Content-Type       |Y        |Valid value is : application/json                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Content-MD5        |Y        |The value for this header must be the MD5 checksum over the whole json body              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================+\r
+|payloadData                   |M        |1          |String |The data of the artifact after Base64 encoding                                       |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactLabel                 |M        |1          |String |Identifier of the artifact within the VF / Service.                                  |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactName                  |M        |1          |String |The name of the artifact                                                             |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactType                  |M        |1          |String |The type of the artifact                                                             |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactGroupType             |M        |1          |String |Whether the artifact is informational or deployment.                                 |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|description                   |M        |1          |String |Description of the artifact                                                          |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                                        |\r
++====================+=========+=======+===================================================================================================+\r
+|artifactName        |M        |String |Artifact File name                                                                                 |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactType        |M        |String |Artifact Type                                                                                      |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactURL         |M        |String |Relative artifact’s URL.                                                                           |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactDescription |M        |String |Artifact Description.                                                                              |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactTimeout     |N        |String |Will be populated only if its value is not 0.                                                      |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactChecksum    |Y        |String |Base-64 encoded MD5 checksum of the artifact’s payload.                                            |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactUUID        |Y        |String |Global UUID generated by SDC each time  when artifact payload is  updated.                         |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|artifactVersion     |Y        |String |Service Version .                                                                                  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|generatedFromUUID   |N        |String |This attribute will be sent only  in the case of an artifact generated on basis of other artifact  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+\r
+Delete Artifact   \r
++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                   |\r
++====================+==============================================================================================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/resourceInstances/{resourceInstanceNormalizedName}/artifacts/{artifactUUID}|\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                        |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================+\r
+|assetType                     |M        |1          |String |The requested asset type.valid values are resources/services.                        |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|Uuid                          |M        |1          |String |The uuid of the asset as published in the metadata                                   |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|artifactUUID                  |M        |1          |String |The uuid of the artifact as published in the response of the upload/update operation |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+|resourceInstanceNormalizedName|M        |1          |String |Normalized name of resource                                                          |\r
++------------------------------+---------+-----------+-------+-------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|USER_ID            |Y        |The user ID of the DCAE Designer. This user must also have Designer role in SDC          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                                        |\r
++====================+=========+=======+===================================================================================================+\r
+|artifactUUID        |Y        |String |Global UUID generated by SDC each time  when artifact payload is  updated.                         |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+\r
+Update Lifecycle   \r
+++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                   |\r
++====================+==============================================================================================================+\r
+|URI                 |/sdc/v1/catalog/{assetType}/{uuid}/lifecycleState/{lifecycleOperation}                                        |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                          |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++------------------------------+---------+-----------+-------+-----------------------------------------------------------------------------------------------------+\r
+|Attribute                     |Qualifier|Cardinality|Content|Description                                                                                          |\r
++==============================+=========+===========+=======+=====================================================================================================+\r
+|assetType                     |M        |1          |String |The requested asset type.valid values are resources/services.                                        |\r
++------------------------------+---------+-----------+-------+-----------------------------------------------------------------------------------------------------+\r
+|Uuid                          |M        |1          |String |The uuid of the asset as published in the metadata                                                   |\r
++------------------------------+---------+-----------+-------+-----------------------------------------------------------------------------------------------------+\r
+|lifecycleOperation            |M        |1          |String |The lifecycle operation to be performed on the asset.Valid values are: Checkin / Checkout /  Certify |\r
++------------------------------+---------+-----------+-------+-----------------------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|USER_ID            |Y        |The user ID of the DCAE Designer. This user must also have Designer role in SDC          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Attribute          |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|userRemarks        |N        |Short description (free text) about the asset version being changed                      |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                                        |\r
++====================+=========+=======+===================================================================================================+\r
+|uuid                |Y        |String |UUID generated by SDC per each major version of the asset                                          |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|invariantUUID       |Y        |String |UUID generated by SDC per each asset. This UUID stays constant for all the asset’s versions        |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|name                |Y        |String |The name of the asset.                                                                             |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|version             |Y        |String |The asset version in SDC catalog                                                                   |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|category            |Y        |String |Category of the asset.                                                                             |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|subcategory         |Y        |String |Sub-category of the asset.                                                                         |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|resourceType        |Y        |String |The type of resource.                                                                              |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|lifecycleState      |Y        |String |The lifecycle state of the asset.                                                                  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|lastUpdaterUserId   |Y        |String |User ID of the SDC designer who was the last to update the asset for this major version.           |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+\r
+Create Resource   \r
++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                   |\r
++====================+==============================================================================================================+\r
+|URI                 |/sdc/v1/catalog/resources                                                                                     |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                          |\r
++--------------------+--------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|X-ECOMP-RequestID  |N        |request ID.If it is not sent it will be automatically generated by SDC on request receipt|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-InstanceID |Y        |Instance ID                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Accept             |N        |Determines the format of the body of the response. Valid values are :  “application/json”|\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|USER_ID            |Y        |The user ID of the DCAE Designer. This user must also have Designer role in SDC          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Content-Type       |Y        |Valid value is : application/json                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Attribute          |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|name               |Y        |The name of the resource                                                                 |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|description        |Y        |Short description of the resource                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|resourceType       |Y        |“VFCMT” / “VF” / “PNF”                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|category           |Y        |VFCMT category is “Template”.                                                            |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|subcategory        |Y        |VFCMT subcategory is “Monitoring Template”.                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|vendorName         |Y        |Vendor Name                                                                              |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|vendorRelease      |Y        |Vendor Release                                                                           |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|tags               |Y        |The tags are used for search options.                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|icon               |Y        |The icon should be pre-defined in SDC.                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|contactId          |Y        |The user ID of user responsible for this VFCMT.                                          |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|Attribute           |Qualifier|Content|Description                                                                                        |\r
++====================+=========+=======+===================================================================================================+\r
+|uuid                |Y        |String |UUID generated by SDC per each major version of the asset                                          |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|invariantUUID       |Y        |String |UUID generated by SDC per each asset. This UUID stays constant for all the asset’s versions        |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|name                |Y        |String |The name of the asset.                                                                             |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|version             |Y        |String |The asset version in SDC catalog                                                                   |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|category            |Y        |String |Category of the asset.                                                                             |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|subcategory         |Y        |String |Sub-category of the asset.                                                                         |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|resourceType        |Y        |String |The type of resource.                                                                              |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|lifecycleState      |Y        |String |The lifecycle state of the asset.                                                                  |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+|lastUpdaterUserId   |Y        |String |User ID of the SDC designer who was the last to update the asset for this major version.           |\r
++--------------------+---------+-------+---------------------------------------------------------------------------------------------------+\r
+\r
+UUI API\r
+----------------\r
+Create E2E service instance\r
+++++++++++++++++++++++++++++\r
+\r
++--------------------+-------------------------------------+\r
+|Interface Definition|Description                          |\r
++====================+=====================================+\r
+|URI                 |{serverRoot}/e2eServiceInstances/v3  |\r
++--------------------+-------------------------------------+\r
+|Operation Type      |POST                                 |\r
++--------------------+-------------------------------------+\r
+|Content-Type        |application/json                     |\r
++--------------------+-------------------------------------+\r
+\r
+Request Body:\r
+\r
++---------+---------+-----------+--------------------------+-----------------------------+\r
+|Attribute|Qualifier|Cardinality|Content                   |Description                  |\r
++=========+=========+===========+==========================+=============================+\r
+|service  |M        |1          |Service Object            |Content of service object.   |\r
++---------+---------+-----------+--------------------------+-----------------------------+\r
+\r
+Service Object \r
+\r
++----------------+------------------+-------------------------------------------------+\r
+|Attribute       |Content           |Description                                      |\r
++================+==================+=================================================+\r
+|name            |String            |Service instance name.                           |\r
++----------------+------------------+-------------------------------------------------+\r
+|description     |String            |Service instance description                     |\r
++----------------+------------------+-------------------------------------------------+\r
+|serviceDef ID   |String            |The service invariantUUID. It is defined in SDC. |\r
++----------------+------------------+-------------------------------------------------+\r
+|templateId      |String            |The service Template UUID. It is defined in SDC. |\r
++----------------+------------------+-------------------------------------------------+\r
+|parameters      |Parameter Object  |Parameter Object                                 |\r
++----------------+------------------+-------------------------------------------------+\r
+\r
+Parameter Object\r
+\r
++----------------------+------------------+-----------------------------------------------------+\r
+|Attribute             |Content           |Description                                          |\r
++======================+==================+=====================================================+\r
+|globalSubscriberId    |String            |The subscriber id. It is defined in AAI              |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|subscriberName        |String            |The subscriber name. It is defined in AAI            |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|serviceType           |String            |The service type. It is defined in AAI               |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|templateName          |String            |The service Template name                            |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|resources             |Object            |This field manages parameters of resources           |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|resourceName          |String            |The resource name                                    |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|resouceDefId          |String            |The resource invariantUUID. It is defined in SDC.    |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|resourceId            |String            |The resource UUID. It is defined in SDC.             |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|nsParameters          |String            |Parameters for current resource object.              |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|locationConstraints   |String            |The DC location info for each VNF of current service |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|vnfProfileId          |String            |VNFD id                                              |\r
++----------------------+------------------+-----------------------------------------------------+\r
+|additionalParamForNs  |String            |The parameter for current resource                   |\r
++----------------------+------------------+-----------------------------------------------------+\r
+\r
+\r
+Response:\r
+\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|Attribute    |Qualifier|Cardinality|Content|Description                                                             |\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|serviceId    |M        |1          |String |Service instance ID.                                                    |\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operationId  |M        |1          |String |Service Operation ID.                                                   |\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+\r
+Delete E2E service instance\r
+++++++++++++++++++++++++++++\r
+\r
++--------------------+-----------------------------------------------+\r
+|Interface Definition|Description                                    |\r
++====================+===============================================+\r
+|URI                 |{serverRoot}/e2eServiceInstances/v3/{serviceId}|\r
++--------------------+-----------------------------------------------+\r
+|Operation Type      |DELETE                                         |\r
++--------------------+-----------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+----------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                             |\r
++===================+=========+===========+=======+========================================+\r
+|globalSubscriberId |M        |1          |String |The subscriber id. It is defined in AAI |\r
++-------------------+---------+-----------+-------+----------------------------------------+\r
+|serviceType        |M        |1          |String |The service type. It is defined in AAI  |\r
++-------------------+---------+-----------+-------+----------------------------------------+\r
+\r
+Response:\r
+\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|Attribute    |Qualifier|Cardinality|Content|Description                                                             |\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operationId  |M        |1          |String |The operation id.                                                       |\r
++-------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+\r
+Query E2E service operation result\r
+++++++++++++++++++++++++++\r
+\r
++--------------------+------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                             |\r
++====================+========================================================================+\r
+|URI                 |{serverRoot}/e2eServiceInstances/v3/{serviceId}/operations/{operationId}|\r
++--------------------+------------------------------------------------------------------------+\r
+|Operation Type      |GET                                                                     |\r
++--------------------+------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++--------------+---------+-----------+-------+--------------+\r
+|Attribute     |Qualifier|Cardinality|Content|Description   |\r
++==============+=========+===========+=======+==============+\r
+|serviceId     |M        |1          |Service instance ID.  |\r
++--------------+---------+-----------+-------+--------------+\r
+|operationId   |M        |1          |Service Operation ID. |\r
++--------------+---------+-----------+-------+--------------+\r
+\r
+Response:\r
+\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content|Description                                                             |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operation         |M        |1          |String |Operation object identify.                                              |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operationId       |M        |1          |String |Operation ID.                                                           |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operation         |M        |1          |String |Operation type, create|delete.                                          |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|result            |M        |1          |String |Operation result: finished, error, processing.                          |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|reason            |M        |1          |String |If failing, need to write fail reason.                                  |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|userId            |M        |1          |String |Operation user ID.                                                      |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operationContent  |M        |1          |String |The status detail of current operation which is being executing.        |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|progress          |M        |1          |String |Current operation progress.                                             |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|operateAt         |M        |1          |String |Time that it starts to execute operation.                               |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+|finishedAt        |M        |1          |String |Time that it finished executing operation.                              |\r
++------------------+---------+-----------+-------+------------------------------------------------------------------------+\r
+\r
+Inventory APIs\r
+----------------\r
+\r
+create or update an existing service-instance\r
++++++++++++++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                                                         |\r
++====================+====================================================================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}|\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |PUT                                                                                                                                                                 |\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-instance-id|M        |1          |String |Service Instance ID    |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++---------+---------+-----------+-------+-------------------+\r
+|Attribute|Qualifier|Cardinality|Content|Description        |\r
++---------+---------+-----------+-------+-------------------+\r
+|HTTP code|M        |1          |Integer|HTTP response code |\r
++---------+---------+-----------+-------+-------------------+\r
+\r
+delete an existing service-instance\r
++++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                                                         |\r
++====================+====================================================================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}|\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                                                              |\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-instance-id|M        |1          |String |Service Instance ID    |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++---------+---------+-----------+-------+-------------------+\r
+|Attribute|Qualifier|Cardinality|Content|Description        |\r
++---------+---------+-----------+-------+-------------------+\r
+|HTTP code|M        |1          |Integer|HTTP response code |\r
++---------+---------+-----------+-------+-------------------+\r
+\r
+get service-instances\r
++++++++++++++++++++++\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                  |\r
++====================+=============================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances|\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |GET                                                                                                                          |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|Attribute        |Qualifier|Cardinality|Content         |Description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|service-instances|M        |1          |ServiceInstances|Service Instances  |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+\r
+get service-instance\r
+++++++++++++++++++++\r
+\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                                                         |\r
++====================+====================================================================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}|\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |GET                                                                                                                                                                 |\r
++--------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-instance-id|M        |1          |String |Service instance ID    |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|Attribute        |Qualifier|Cardinality|Content         |Description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|service-instance |M        |1          |ServiceInstance |Service Instance   |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+\r
+see node definition for valid relationships\r
++++++++++++++++++++++++++++++++++++++++++++\r
+\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                                                                                        |\r
++====================+===================================================================================================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/relationship-list/relationship|\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |PUT                                                                                                                                                                                                |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-instance-id|M        |1          |String |Service instance ID    |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++---------+---------+-----------+-------+-------------------+\r
+|Attribute|Qualifier|Cardinality|Content|Description        |\r
++---------+---------+-----------+-------+-------------------+\r
+|HTTP code|M        |1          |Integer|HTTP response code |\r
++---------+---------+-----------+-------+-------------------+\r
+\r
+delete an existing relationship\r
++++++++++++++++++++++++++++++++\r
+\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                                                                                        |\r
++====================+===================================================================================================================================================================================================+\r
+|URI                 |/business/customers/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id}/relationship-list/relationship|\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                                                                                             |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|global-customer-id |M        |1          |String |Global Customer ID     |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-type       |M        |1          |String |Service Type           |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|service-instance-id|M        |1          |String |Service instance ID    |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++---------+---------+-----------+-------+-------------------+\r
+|Attribute|Qualifier|Cardinality|Content|Description        |\r
++---------+---------+-----------+-------+-------------------+\r
+|HTTP code|M        |1          |Integer|HTTP response code |\r
++---------+---------+-----------+-------+-------------------+\r
+\r
+\r
+VFC APIs\r
+---------\r
+\r
+Create NS\r
++++++++++++\r
+\r
++--------------------+-------------------+\r
+|Interface Definition|Description        |\r
++====================+===================+\r
+|URI                 |/ns                |\r
++--------------------+-------------------+\r
+|Operation Type      |POST               |\r
++--------------------+-------------------+\r
+|Content-Type        |application/json   |\r
++--------------------+-------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description            |\r
++===================+=========+===========+=======+=======================+\r
+|context            |M        |1          |Object |Context                |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|csarId             |M        |1          |String |csarId                 |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|nsName             |M        |1          |String |Name of the NS         |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+|description        |M        |1          |String |description            |\r
++-------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|Attribute        |Qualifier|Cardinality|Content         |Description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|nsInstanceId     |M        |1          |String          |nsInstanceId       |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+\r
+Get NS\r
++++++++\r
+\r
++--------------------+-------------------+\r
+|Interface Definition|Description        |\r
++====================+===================+\r
+|URI                 |/ns                |\r
++--------------------+-------------------+\r
+|Operation Type      |GET                |\r
++--------------------+-------------------+\r
+|Content-Type        |application/json   |\r
++--------------------+-------------------+\r
+\r
+Response:\r
+\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|Attribute        |Qualifier|Cardinality|Content         |Description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|nsInstanceId     |M        |1          |String          |nsInstanceId       |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|nsName           |M        |1          |String          |The name of ns     |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|description      |M        |1          |String          |description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|nsdId            |M        |1          |String          |ID of ns           |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vnfInfo          |M        |1          |Array           |Vnf information    |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vlInfo           |M        |1          |Array           |vl information     |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vnffgInfo        |M        |1          |Array           |vnffg information  |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|nsState          |M        |1          |String          |state of ns        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+\r
+vnfInfo Object: \r
+\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|Attribute        |Qualifier|Cardinality|Content         |Description        |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vnfInstanceId    |M        |1          |String          |vnfInstanceId      |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vnfInstanceName  |M        |1          |String          |vnfInstanceName    |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+|vnfdId           |M        |1          |String          |vnfdId             |\r
++-----------------+---------+-----------+----------------+-------------------+\r
+\r
+vlInfo Object: \r
+\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|Attribute             |Qualifier|Cardinality|Content         |Description        |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|vlInstanceId          |M        |1          |String          |vlInstanceId       |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|vlInstanceName        |M        |1          |String          |vlInstanceName     |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|vldId                 |M        |1          |String          |vldId              |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|relatedCpInstanceId   |M        |1          |Array           |relatedCpInstanceId|\r
++----------------------+---------+-----------+----------------+-------------------+\r
+\r
+relatedCpInstanceId Array: \r
+\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|Attribute             |Qualifier|Cardinality|Content         |Description        |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|cpInstanceId          |M        |1          |String          |cpInstanceId       |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|cpInstanceName        |M        |1          |String          |cpInstanceName     |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|cpdId                 |M        |1          |String          |cpdId              |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+\r
+vnffgInfo Array:\r
+\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|Attribute             |Qualifier|Cardinality|Content         |Description        |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|vnffgInstanceId       |M        |1          |String          |vnffgInstanceId    |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|vnfId                 |M        |1          |String          |vnfId              |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|pnfId                 |M        |1          |String          |pnfId              |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|virtualLinkId         |M        |1          |Array           |virtualLinkId      |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|cpId                  |M        |1          |Array           |cpId               |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+|nfp                   |M        |1          |Array           |nfp                |\r
++----------------------+---------+-----------+----------------+-------------------+\r
+\r
+Instantiate NS\r
++++++++++++++++\r
+\r
++--------------------+-------------------------------------+\r
+|Interface Definition|Description                          |\r
++====================+=====================================+\r
+|URI                 |/ns/{nsInstanceId}/Instantiate       |\r
++--------------------+-------------------------------------+\r
+|Operation Type      |POST                                 |\r
++--------------------+-------------------------------------+\r
+|Content-Type        |application/json                     |\r
++--------------------+-------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++----------------------+---------+-----------+-------+-----------------------+\r
+|Attribute             |Qualifier|Cardinality|Content|Description            |\r
++======================+=========+===========+=======+=======================+\r
+|LocationConstraints   |M        |1          |Array  |LocationConstraints    |\r
++----------------------+---------+-----------+-------+-----------------------+\r
+|additionalParamForNs  |M        |1          |String |additionalParamForNs   |\r
++----------------------+---------+-----------+-------+-----------------------+\r
+|nsInstanceId          |M        |1          |String |nsInstanceId           |\r
++----------------------+---------+-----------+-------+-----------------------+\r
+\r
+LocationConstraints Array:\r
+\r
++----------------------+---------+-----------+-------+-----------------------+\r
+|Attribute             |Qualifier|Cardinality|Content|Description            |\r
++======================+=========+===========+=======+=======================+\r
+|vnfProfileId          |M        |1          |String  |vnfProfileId          |\r
++----------------------+---------+-----------+-------+-----------------------+\r
+|vimid                 |M        |1          |String |vimid                  |\r
++----------------------+---------+-----------+-------+-----------------------+\r
+\r
+Response:\r
+\r
++--------------+---------+-----------+-------+-----------------------+\r
+|Attribute     |Qualifier|Cardinality|Content|Description            |\r
++==============+=========+===========+=======+=======================+\r
+|jobId         |M        |1          |String |jobId                  |\r
++--------------+---------+-----------+-------+-----------------------+\r
+\r
+Terminate NS\r
++++++++++++++++\r
+\r
++--------------------+-------------------------------------+\r
+|Interface Definition|Description                          |\r
++====================+=====================================+\r
+|URI                 |/ns/{ns_instance_id}/terminate       |\r
++--------------------+-------------------------------------+\r
+|Operation Type      |POST                                 |\r
++--------------------+-------------------------------------+\r
+|Content-Type        |application/json                     |\r
++--------------------+-------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content|Description                  |\r
++============================+=========+===========+=======+=============================+\r
+|terminationType             |M        |1          |String |terminationType              |\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+|gracefulTerminationTimeout  |M        |1          |String |gracefulTerminationTimeout   |\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+|nsInstanceId                |M        |1          |String |nsInstanceId                 |\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+\r
+Response:\r
+\r
++--------------+---------+-----------+-------+-----------------------+\r
+|Attribute     |Qualifier|Cardinality|Content|Description            |\r
++==============+=========+===========+=======+=======================+\r
+|jobId         |M        |1          |String |jobId                  |\r
++--------------+---------+-----------+-------+-----------------------+\r
+\r
+Delete NS\r
++++++++++++++++\r
+\r
++--------------------+-------------------------------------+\r
+|Interface Definition|Description                          |\r
++====================+=====================================+\r
+|URI                 |/ns/{ns_instance_id}                 |\r
++--------------------+-------------------------------------+\r
+|Operation Type      |DELETE                               |\r
++--------------------+-------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content|Description                  |\r
++============================+=========+===========+=======+=============================+\r
+|nsInstanceId                |M        |1          |String |nsInstanceId                 |\r
++----------------------------+---------+-----------+-------+-----------------------------+\r
+\r
+MultiVIM API\r
+----------------\r
+Get token\r
+++++++++++\r
+\r
+https://developer.openstack.org/api-ref/identity/v3/#password-authentication-with-unscoped-authorization\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                    |\r
++====================+===============================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/identity/v3/auth/tokens     |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                           |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                               |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|Attribute       |Qualifier|Cardinality|Content                   |Description                                                                                                                                     |\r
++================+=========+===========+==========================+================================================================================================================================================+\r
+|nocatalog       |O        |1          |string                    |The authentication response excludes the service catalog. By default, the response includes the service catalog.                                |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|name            |O        |1          |string                    |The user name. Required if you do not specify the ID of the user. If you specify the user name, you must also specify the domain, by ID or name.|\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|auth            |M        |1          |object                    |An auth object.                                                                                                                                 |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|user            |M        |1          |object                    |A user object.                                                                                                                                  |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|scope           |O        |1          |string                    |The authorization scope, including either a project or a domain                                                                                 |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|password        |M        |1          |object                    |The password object, contains the authentication information.                                                                                   |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|id              |O        |1          |string                    |The ID of the user. Required if you do not specify the user name.                                                                               |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|identity        |M        |1          |object                    |An identity object.                                                                                                                             |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+|methods         |M        |1          |array                     |The authentication method. For password authentication, specify password.                                                                       |\r
++----------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|Attribute                |Content           |Description                                                               |\r
++=========================+==================+==========================================================================+\r
+|X-Subject-Token          |String            |The authentication token.                                                 |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|domain                   |object            |A domain object, containing:                                              |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|region_id                |String            |The ID of the region that contains the service endpoint.                  |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|methods                  |array             |The authentication method. For password authentication, specify password. |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|roles                    |array             |A list of role objects, each containing:                                  |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|url                      |String            |The endpoint URL.                                                         |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|region                   |String            |The geographic location of the service endpoint.                          |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|token                    |object            |A token object.                                                           |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|expires_at               |String            |The date and time when the token expires.                                 |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|project                  |object            |A project object, containing:                                             |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|issued_at                |String            |The date and time when the token was issued.                              |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|catalog                  |array             |A catalog object.                                                         |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|extras                   |object            |A set of metadata key and value pairs, if any.                            |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|user                     |object            |A user object.                                                            |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|audit_ids                |array             |A list of one or two audit IDs.                                           |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|interface                |String            |The interface type, which describes the visibility of the endpoint.       |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|endpoints                |array             |A list of endpoint objects.                                               |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|type                     |String            |The endpoint type.                                                        |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|id                       |String            |The ID of the user. Required if you do not specify the user name.         |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|name                     |String            |The user name.                                                            |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+\r
+Create stack\r
++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/orchestration/v1/#create-stack\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                    |\r
++====================+===============================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/heat/v1/{tenant-id}/stacks  |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                           |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                               |\r
++--------------------+-----------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|tenant_id         |M        |1          |string                    |The UUID of the tenant. A tenant is also known as a project.                                     |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|disable_rollback  |O        |1          |boolean                   |Enables or disables deletion of all stack resources when stack creation fails.                   |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|environment       |O        |1          |object                    |A JSON environment for the stack.                                                                |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|files             |O        |1          |object                    |Supplies the contents of files referenced in the template or the environment.                    |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|parameters        |O        |1          |object                    |Supplies arguments for parameters defined in the stack template.                                 |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|stack_name        |M        |1          |string                    |A name for the stack.                                                                            |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|tags              |O        |1          |string                    |One or more simple string tags to associate with the stack.                                      |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|template          |O        |1          |object                    |The stack template on which to perform the operation.                                            |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|template_url      |O        |1          |string                    |A URI to the location containing the stack template on which to perform the operation.           |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|timeout_mins      |O        |1          |integer                   |The timeout for stack creation in minutes.                                                       |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|Attribute                |Content           |Description                                                               |\r
++=========================+==================+==========================================================================+\r
+|location                 |String            |For asynchronous resource operations.                                     |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|X-Openstack-Reqeuest-Id  |object            |A domain object, containing:                                              |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|stack                    |String            |The ID of the region that contains the service endpoint.                  |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|id                       |String            |The authentication method. For password authentication, specify password. |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+|links                    |String            |The authentication method. For password authentication, specify password. |\r
++-------------------------+------------------+--------------------------------------------------------------------------+\r
+\r
+Get stack\r
++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/orchestration/v1/#show-stack-details\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/heat/v1/{tenant-id}/stacks/{stack-name}/{stack-id}  |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |GET                                                                                                                    |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|tenant_id         |M        |1          |string                    |The UUID of the tenant. A tenant is also known as a project.                                     |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|stack_name        |M        |1          |string                    |The name of a stack.                                                                             |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|stack_id          |M        |1          |string                    |The UUID of the stack.                                                                           |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|resolve_outputs   |O        |1          |boolean                   |A boolean indicating whether the outputs section of a stack should be resolved.                  |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                |Content           |Description                                                                   |\r
++=========================+==================+==============================================================================+\r
+|X-Openstack-Reqeuest-Id  |String            |A unique ID for tracking service request.                                     |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack                    |Object            |The stack object.                                                             |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|capabilities             |array             |List of stack capabilities for stack.                                         |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|creation_time            |String            |The date and time when the resource was created.                              |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|deletion_time            |String            |The date and time when the resource was (soft-) deleted.                      |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|description              |String            |The description of the stack resource.                                        |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|disable_rollback         |boolean           |Whether deletion of all stack resources when stack creation fails is enabled. |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                       |String            |The UUID of the stack.                                                        |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|links                    |array             |A list of URLs for the stack.                                                 |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|notification_topics      |array             |List of notification topics for stack.                                        |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|outputs                  |array             |A list of stack outputs.                                                      |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|parameters               |object            | A group of key-value pairs                                                  |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|parent                   |String            |The stack ID of the parent stack, if this is a nested stack.                  |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack_name               |String            |A name for the stack.                                                         |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack_owner              |String            |The owner of the stack.                                                       |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack_status             |String            |The status of the stack.                                                      |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack_status_reason      |String            |The reason for the current status of the stack.                               |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|stack_user_project_id    |String            |The project UUID of the stack user.                                           |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|tags                     |array             |The stack tags.                                                               |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|template_description     |String            |The description of the stack template.                                        |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|timeout_mins             |integer           |The timeout for stack creation in minutes.                                    |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|updated_time             |String            |The date and time when the object was updated.                                |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete stack\r
++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/orchestration/v1/#show-stack-details\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/heat/v1/{tenant-id}/stacks/{stack-name}/{stack-id}  |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|tenant_id         |M        |1          |string                    |The UUID of the tenant. A tenant is also known as a project.                                     |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|stack_name        |M        |1          |string                    |The name of a stack.                                                                             |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|stack_id          |M        |1          |string                    |The UUID of the stack.                                                                           |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Create server\r
++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/compute/#create-server\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/nova/v2.1/{tenant_id}/servers                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute                                       |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++================================================+=========+===========+==========================+=================================================================================================+\r
+|server                                          |M        |1          |object                    |A server object.                                                                                 |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|name                                            |M        |1          |string                    |The server name.                                                                                 |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|flavorRef                                       |M        |1          |string                    |The flavor reference, as an ID (including a UUID) or full URL                                    |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|imageRef                                        |M        |1          |string                    |The UUID of the image to use for your server instance                                            |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|security_groups                                 |O        |1          |array                     |One or more security groups.                                                                     |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|metadata                                        |O        |1          |object                    |Metadata key and value pairs.                                                                    |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|accessIPv4                                      |O        |1          |string                    |IPv4 address that should be used to access this server.                                          |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|accessIPv6                                      |O        |1          |string                    |IPv6 address that should be used to access this server.                                          |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|adminPass                                       |O        |1          |string                    |The administrative password of the server.                                                       |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|user_data                                       |O        |1          |string                    |Configuration information or scripts to use upon launch.                                         |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|availability_zone                               |O        |1          |string                    |The availability zone from which to launch the server.                                           |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|networks                                        |M        |1          |object                    |A networks object.                                                                               |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|networks.uuid                                   |O        |1          |string                    |To provision the server instance with a NIC for a network                                        |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|networks.port                                   |O        |1          |string                    |To provision the server instance with a NIC for an already existing port                         |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|networks.fixed_ip                               |O        |1          |string                    |A fixed IPv4 address for the NIC                                                                 |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|networks.tag                                    |O        |1          |string                    |A device role tag that can be applied to a network interface.                                    |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|personality                                     |O        |1          |array                     |The file path and contents, text only, to inject into the server at launch.                      |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2                         |O        |1          |array                     |Enables fine grained control of the block device mapping for an instance.                        |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.device_name             |M        |1          |string                    |A path to the device for the volume that you want to use to boot the server.                     |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.source_type             |M        |1          |string                    |The source type of the volume.                                                                   |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.destination_type        |O        |1          |string                    |Defines where the volume comes from.                                                             |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.delete_on_termination   |O        |1          |string                    |To delete the boot volume when the server is destroyed, specify true.                            |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.guest_format            |M        |1          |string                    |Specifies the guest server disk file system format, such as ephemeral or swap.                   |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.boot_index              |M        |1          |string                    |Defines the order in which a hypervisor tries devices                                            |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.uuid                    |O        |1          |string                    |This is the uuid of source resource.                                                             |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.tag                     |O        |1          |string                    |A device role tag that can be applied to a block device.                                         |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|block_device_mapping_v2.disk_bus                |O        |1          |string                    |Disk bus type, some hypervisors (currently only libvirt) support specify this parameter          |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|config_drive                                    |O        |1          |boolean                   |Indicates whether a configuration drive enables metadata injection.                              |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|key_name                                        |O        |1          |string                    |Key pair name.                                                                                   |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|os:scheduler_hints                              |O        |1          |object                    |The dictionary of data to send to the scheduler.                                                 |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|OS-DCF:diskConfig                               |O        |1          |string                    |Controls how the API partitions the disk when you create, rebuild, or resize servers.            |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|description                                     |O        |1          |string                    |A free form description of the server.                                                           |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|tags                                            |O        |1          |array                     |A list of tags.                                                                                  |\r
++------------------------------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                |Content           |Description                                                                   |\r
++=========================+==================+==============================================================================+\r
+|server                   |object            |A server object.                                                              |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                       |String            |The UUID of the server.                                                       |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|links                    |array             |Links to the resources in question.                                           |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|OS-DCF:diskConfig        |String            |Disk configuration.                                                           |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|security_groups          |array             |One or more security groups objects.                                          |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|security_groups.name     |String            |The security group name.                                                      |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+|adminPass                |String            |The administrative password for the server.                                   |\r
++-------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete server\r
++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/compute/#delete-server\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/nova/v2.1/{tenant_id}/servers/{server_id}           |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|server_id         |M        |1          |string                    |The UUID of the server.                                                                          |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Create Keypair\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/compute/#create-or-import-keypair\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/nova/v2.1/{tenant_id}/os-keypairs                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|keypair           |M        |1          |Object                    |Keypair object                                                                                   |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|name              |M        |1          |string                    |A name for the keypair which will be used to reference it later.                                 |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|public_key        |O        |1          |string                    |The public ssh key to import. If you omit this value, a keypair is generated for you.            |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|type              |O        |1          |string                    |The type of the keypair.                                                                         |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|user_id           |O        |1          |string                    |The user_id for a keypair.                                                                       |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute        |Content           |Description                                                                   |\r
++=================+==================+==============================================================================+\r
+|keypair          |object            |Keypair object                                                                |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|name             |String            |A name for the keypair which will be used to reference it later.              |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|public_key       |String            |The keypair public key.                                                       |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|fingerprint      |String            |The fingerprint for the keypair.                                              |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|user_id          |String            |The user_id for a keypair.                                                    |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|private_key      |String            |If you do not provide a public key on create                                  |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+|type             |String            |The type of the keypair.                                                      |\r
++-----------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete Keypair\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/compute/#delete-keypair\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/nova/v2.1/{tenant_id}/os-keypairs/{keypair-id}      |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute         |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++==================+=========+===========+==========================+=================================================================================================+\r
+|keypair_name      |M        |1          |String                    |The keypair name.                                                                                |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|user_id           |O        |1          |String                    |This allows administrative users to operate key-pairs of specified user ID.                      |\r
++------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Create Network\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/?expanded=create-network-detail#create-network\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/networks                               |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++============================+=========+===========+==========================+=================================================================================================+\r
+|network                     |M        |1          |Object                    |A network object.                                                                                |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|admin_state_up              |O        |1          |boolean                   |The administrative state of the network, which is up (true) or down (false).                     |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|dns_domain                  |O        |1          |string                    |A valid DNS domain.                                                                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|mtu                         |O        |1          |integer                   |The maximum transmission unit (MTU) value to address fragmentation.                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|name                        |O        |1          |string                    |Human-readable name of the network.                                                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|port_security_enabled       |O        |1          |boolean                   |The port security status of the network.                                                         |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|project_id                  |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|provider:network_type       |O        |1          |string                    |The type of physical network that this network should be mapped to.                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|provider:physical_network   |O        |1          |string                    |The physical network where this network should be implemented.                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|provider:segmentation_id    |O        |1          |integer                   |The ID of the isolated segment on the physical network.                                          |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|qos_policy_id               |O        |1          |string                    |The ID of the QoS policy.                                                                        |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|router:external             |O        |1          |boolean                   |Indicates whether this network can provide floating IPs via a router.                            |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|segments                    |O        |1          |array                     |A list of provider segment objects.                                                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|shared                      |O        |1          |boolean                   |Indicates whether this network is shared across all tenants.                                     |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|tenant_id                   |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|vlan_transparent            |O        |1          |boolean                   |Indicates the VLAN transparency mode of the network,                                             |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|description                 |O        |1          |string                    |A human-readable description for the resource.                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                    |Content           |Description                                                                   |\r
++=============================+==================+==============================================================================+\r
+|network                      |object            |A network object.                                                             |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|admin_state_up               |boolean           |The administrative state of the network, which is up (true) or down (false).  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|availability_zone_hints      |array             |The availability zone candidate for the network.                              |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|availability_zones           |array             |The availability zone for the network.                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|dns_domain                   |String            |A valid DNS domain.                                                           |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                           |String            |The ID of the network.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|mtu                          |integer           |The maximum transmission unit (MTU) value to address fragmentation.           |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|name                         |String            |Human-readable name of the network.                                           |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|port_security_enabled        |boolean           |The port security status of the network.                                      |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|project_id                   |String            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|provider:network_type        |String            |The type of physical network that this network is mapped to.                  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|provider:physical_network    |String            |The physical network where this network is implemented.                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|provider:segmentation_id     |integer           |The ID of the isolated segment on the physical network.                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|qos_policy_id                |String            |The ID of the QoS policy.                                                     |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|revision_number              |integer           |The revision number of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|router:external              |boolean           |Indicates whether this network can provide floating IPs via a router.         |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|segments                     |array             |A list of provider segment objects.                                           |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|shared                       |boolean           |Indicates whether this network is shared across all tenants.                  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|status                       |String            |The network status. Values are ACTIVE, DOWN, BUILD or ERROR.                  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|subnets                      |array             |The associated subnets.                                                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|tenant_id                    |String            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|vlan_transparent             |boolean           |Indicates the VLAN transparency mode of the network.                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|description                  |String            |A human-readable description for the resource.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete Network\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/?expanded=create-network-detail#delete-network\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/networks/{network-id}                  |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|network_id                  |M        |1          |Object                    |The ID of the network.                                        |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Create Subnet\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/?expanded=create-network-detail,create-subnet-detail#create-subnet\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/subnets                                |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++============================+=========+===========+==========================+=================================================================================================+\r
+|subnet                      |M        |1          |string                    |A subnet object.                                                                                 |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|tenant_id                   |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|project_id                  |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|name                        |O        |1          |string                    |Human-readable name of the resource.                                                             |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|enable_dhcp                 |O        |1          |boolean                   |Indicates whether dhcp is enabled or disabled for the subnet.                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|network_id                  |M        |1          |string                    |The ID of the network to which the subnet belongs.                                               |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|dns_nameservers             |O        |1          |array                     |List of dns name servers associated with the subnet.                                             |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|allocation_pools            |O        |1          |array                     |Allocation pools with start and end IP addresses for this subnet.                                |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|host_routes                 |O        |1          |array                     |Additional routes for the subnet.                                                                |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|ip_version                  |M        |1          |integer                   |The IP protocol version. Value is 4 or 6.                                                        |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|gateway_ip                  |O        |1          |string                    |Gateway IP of this subnet.                                                                       |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|cidr                        |M        |1          |string                    |The CIDR of the subnet.                                                                          |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|description                 |O        |1          |string                    |A human-readable description for the resource.                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|ipv6_address_mode           |O        |1          |string                    |The IPv6 address modes specifies mechanisms for assigning IP addresses.                          |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|ipv6_ra_mode                |O        |1          |string                    |The IPv6 router advertisement specifies whether the networking service                           |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|segment_id                  |O        |1          |string                    |The ID of a network segment the subnet is associated with.                                       |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|subnetpool_id               |O        |1          |string                    |The ID of the subnet pool associated with the subnet.                                            |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|use_default_subnetpool      |O        |1          |boolean                   |Whether to allocate this subnet from the default subnet pool.                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                    |Content           |Description                                                                   |\r
++=============================+==================+==============================================================================+\r
+|subnet                       |string            |A subnet object.                                                              |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                           |string            |The ID of the subnet.                                                         |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|tenant_id                    |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|project_id                   |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|name                         |String            |Human-readable name of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|enable_dhcp                  |boolean           |Indicates whether dhcp is enabled or disabled for the subnet.                 |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|network_id                   |String            |The ID of the network to which the subnet belongs.                            |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|dns_nameservers              |array             |List of dns name servers associated with the subnet.                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|allocation_pools             |array             |Allocation pools with start and end IP addresses for this subnet.             |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|host_routes                  |array             |Additional routes for the subnet.                                             |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|ip_version                   |integer           |The IP protocol version. Value is 4 or 6.                                     |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|gateway_ip                   |string            |Gateway IP of this subnet.                                                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|cidr                         |string            |The CIDR of the subnet.                                                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|created_at                   |string            |Time at which the subnet has been created.                                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|description                  |string            |A human-readable description for the resource.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|ipv6_address_mode            |string            |The IPv6 address modes specifies mechanisms for assigning IP addresses.       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|ipv6_ra_mode                 |string            |The IPv6 router advertisement specifies whether the networking service        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|revision_number              |integer           |The revision number of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|service_types                |string            |The service types associated with the subnet.                                 |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|subnetpool_id                |string            |The ID of the subnet pool associated with the subnet.                         |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|segment_id                   |string            |The ID of a network segment the subnet is associated with.                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|updated_at                   |string            |Time at which the subnet has been updated.                                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete Subnet\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/networking/v2/?expanded=create-network-detail,delete-subnet-detail#delete-subnet\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/subnets/{subnet-id}                    |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|subnet_id                   |M        |1          |String                    |The ID of the subnet.                                         |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Create Port\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/networking/v2/#create-port\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/ports                                  |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                                                      |\r
++============================+=========+===========+==========================+=================================================================================================+\r
+|port                        |M        |1          |object                    |A port object.                                                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|admin_state_up              |O        |1          |boolean                   |The administrative state of the resource.                                                        |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|allowed_address_pairs       |O        |1          |array                     |A set of zero or more allowed address pairs.                                                     |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|binding:host_id             |O        |1          |string                    |The ID of the host where the port resides.                                                       |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|binding:profile             |O        |1          |string                    |A dictionary that enables the application running on the specific host                           |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|binding:vnic_type           |O        |1          |string                    |The type of vNIC which this port should be attached to.                                          |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|description                 |O        |1          |string                    |A human-readable description for the resource.                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|device_id                   |O        |1          |string                    |The ID of the device that uses this port.                                                        |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|device_owner                |O        |1          |string                    |The entity type that uses this port.                                                             |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|dns_domain                  |O        |1          |string                    |A valid DNS domain.                                                                              |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|dns_name                    |O        |1          |string                    |A valid DNS name.                                                                                |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|extra_dhcp_opts             |O        |1          |array                     |A set of zero or more extra DHCP option pairs.                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|fixed_ips                   |O        |1          |array                     |The IP addresses for the port.                                                                   |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|mac_address                 |O        |1          |string                    |The MAC address of the port.                                                                     |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|name                        |O        |1          |string                    |Human-readable name of the resource.                                                             |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|network_id                  |M        |1          |string                    |The ID of the attached network.                                                                  |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|port_security_enabled       |O        |1          |boolean                   |The port security status.                                                                        |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|project_id                  |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|security_groups             |O        |1          |array                     |The IDs of security groups applied to the port.                                                  |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+|tenant_id                   |O        |1          |string                    |The ID of the project that owns the resource.                                                    |\r
++----------------------------+---------+-----------+--------------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                    |Content           |Description                                                                   |\r
++=============================+==================+==============================================================================+\r
+|port                         |object            |A port object.                                                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|admin_state_up               |boolean           |The administrative state of the resource.                                     |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|allowed_address_pairs        |array             |A set of zero or more allowed address pairs.                                  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|binding:host_id              |string            |The ID of the host where the port resides.                                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|binding:profile              |String            |A dictionary that enables the application running on the specific host        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|binding:vif_details          |object            |A dictionary which contains additional information on the port.               |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|binding:vif_type             |String            |The type of which mechanism is used for the port.                             |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|binding:vnic_type            |string            |The type of vNIC which this port should be attached to.                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|created_at                   |string            |Time at which port has been created.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|data_plane_status            |string            |Status of the underlying data plane of a port.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|description                  |string            |A human-readable description for the resource.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|device_id                    |string            |The ID of the device that uses this port.                                     |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|device_owner                 |string            |The entity type that uses this port.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|dns_assignment               |object            |Data assigned to a port by the Networking internal DNS                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|dns_domain                   |string            |A valid DNS domain.                                                           |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|dns_name                     |string            |A valid DNS name.                                                             |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|extra_dhcp_opts              |array             |A set of zero or more extra DHCP option pairs.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|fixed_ips                    |array             |The IP addresses for the port.                                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                           |string            |The ID of the resource.                                                       |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|mac_address                  |string            |The MAC address of the port.                                                  |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|name                         |string            |Human-readable name of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|network_id                   |string            |The ID of the attached network.                                               |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|port_security_enabled        |boolean           |The port security status.                                                     |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|project_id                   |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|revision_number              |integer           |The revision number of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|security_groups              |array             |The IDs of security groups applied to the port.                               |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|status                       |string            |The port status. Values are ACTIVE, DOWN, BUILD and ERROR.                    |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|tenant_id                    |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|updated_at                   |string            |Time at which port has been updated.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete Port\r
++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/#delete-port\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/ports/{port-id}                        |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|port_id                     |M        |1          |String                    |The ID of the port.                                           |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Create Security Group\r
+++++++++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/#create-security-group\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/security-groups                        |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|security_group              |M        |1          |object                    |A security_group object.                                      |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|tenant_id                   |M        |1          |string                    |The ID of the project.                                        |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|project_id                  |M        |1          |string                    |The ID of the project.                                        |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|description                 |O        |1          |string                    |A human-readable description for the resource.                |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|name                        |M        |1          |string                    |Human-readable name of the resource.                          |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|Attribute                    |Content           |Description                                                                   |\r
++=============================+==================+==============================================================================+\r
+|security_group               |object            |A security_group object.                                                      |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|id                           |string            |The ID of the security group.                                                 |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|tenant_id                    |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|project_id                   |string            |The ID of the project.                                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|revision_number              |integer           |The revision number of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|name                         |string            |Human-readable name of the resource.                                          |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|description                  |string            |A human-readable description for the resource.                                |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+|security_group_rules         |array             |A list of security_group_rule objects.                                        |\r
++-----------------------------+------------------+------------------------------------------------------------------------------+\r
+\r
+Delete security group\r
+++++++++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/#delete-security-group\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/security-groups/{security-group-id}    |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                 |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|security_group_id           |M        |1          |String                    |The ID of the security group.                                 |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Create Security Group Rule\r
+++++++++++++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/network/v2/#create-security-group-rule\r
+\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                            |\r
++====================+=======================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/security-group-rules                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |POST                                                                                                                   |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                       |\r
++--------------------+-----------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                                                     |\r
++============================+=========+===========+==========================+================================================================================================+\r
+|security_group_rule         |M        |1          |object                    |A security_group_rule object.                                                                   |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|remote_group_id             |O        |1          |string                    |The remote group UUID to associate with this security group rule.                               |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|direction                   |M        |1          |string                    |Ingress or egress, which is the direction in which the metering rule is applied.                |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|protocol                    |M        |1          |string                    |The IP protocol can be represented by a string, an integer, or null.                            |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|ethertype                   |O        |1          |string                    |Must be IPv4 or IPv6, and addresses represented in CIDR must match the ingress or egress rules. |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|port_range_max              |O        |1          |integer                   |The maximum port number in the range that is matched by the security group rule.                |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|security_group_id           |M        |1          |string                    |The security group ID to associate with this security group rule.                               |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|port_range_min              |O        |1          |integer                   |The minimum port number in the range that is matched by the security group rule.                |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|remote_ip_prefix            |M        |1          |string                    |The remote IP prefix to associate with this metering rule packet.                               |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+|description                 |O        |1          |string                    |A human-readable description for the resource. Default is an empty string.                      |\r
++----------------------------+---------+-----------+--------------------------+------------------------------------------------------------------------------------------------+\r
+\r
+Response:\r
+\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|Attribute                    |Content           |Description                                                                                      |\r
++=============================+==================+=================================================================================================+\r
+|security_group_rule          |object            |A security_group_rule object.                                                                    |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|remote_group_id              |string            |The remote group UUID to associate with this security group rule.                                |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|direction                    |string            |Ingress or egress, which is the direction in which the metering rule is applied.                 |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|protocol                     |string            |The IP protocol can be represented by a string, an integer, or null.                             |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|ethertype                    |string            |Must be IPv4 or IPv6, and addresses represented in CIDR must match the ingress or egress rules.  |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|port_range_max               |integer           |The maximum port number in the range that is matched by the security group rule.                 |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|security_group_id            |string            |The security group ID to associate with this security group rule.                                |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|tenant_id                    |string            |The ID of the project.                                                                           |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|project_id                   |string            |The ID of the project.                                                                           |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|port_range_min               |integer           |The minimum port number in the range that is matched by the security group rule.                 |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|remote_ip_prefix             |string            |The remote IP prefix to associate with this metering rule packet.                                |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|revision_number              |integer           |The revision number of the resource.                                                             |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|id                           |string            |The ID of the security group rule.                                                               |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+|description                  |string            |A human-readable description for the resource.                                                   |\r
++-----------------------------+------------------+-------------------------------------------------------------------------------------------------+\r
+\r
+Delete security group\r
+++++++++++++++++++++++\r
+\r
+https://developer.openstack.org/api-ref/networking/v2/#delete-security-group-rule\r
+\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------+\r
+|Interface Definition|Description                                                                                                                      |\r
++====================+=================================================================================================================================+\r
+|URI                 |http://msb.onap.org/api/multicloud/v0/{cloud-owner}_{cloud-region}/neutron/v2.0/security-group-rules/{security-group-rule-id}    |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------+\r
+|Operation Type      |DELETE                                                                                                                           |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------+\r
+|Content-Type        |application/json                                                                                                                 |\r
++--------------------+---------------------------------------------------------------------------------------------------------------------------------+\r
+\r
+Request Body:\r
+\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+|Attribute                   |Qualifier|Cardinality|Content                   |Description                                                   |\r
++============================+=========+===========+==========================+==============================================================+\r
+|security_group_rule_id      |M        |1          |String                    |The ID of the security group rule.                            |\r
++----------------------------+---------+-----------+--------------------------+--------------------------------------------------------------+\r
+\r
+Policy API\r
+----------\r
+\r
+Create a dictionary item \r
+++++++++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/createDictionaryItem     |\r
++--------------------+--------------------------+\r
+|Operation Type      |PUT                       |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|dictionory         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryJson     |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryType     |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestId          |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Create Policy \r
++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/createPolicy             |\r
++--------------------+--------------------------+\r
+|Operation Type      |PUT                       |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|attributes         |M        |1          |Object |set of attributes in key value pair                          |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configBody         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configBodyType     |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configName         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|ecompName          |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyClass        |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyConfigType   |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyDescription  |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |M        |1          |String |request ID                                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Delete Policy \r
++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/deletePolicy             |\r
++--------------------+--------------------------+\r
+|Operation Type      |DELETE                    |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|deleteCondition    |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|pdpGroup           |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyComponent    |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyType         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |M        |1          |String |request ID                                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Get Configuration\r
++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/getConfig                |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|configAttributes   |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configName         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|ecompName          |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|unique             |M        |1          |Boolean|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |M        |1          |String |request ID                                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Get Decision     \r
+++++++++++++     \r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/getDecision              |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|decisionAttributes |M        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|ecompComponentName |M        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |M        |1          |String |request ID                                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Response Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|decision           |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|details            |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Get Dictionary Items\r
+++++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/getDictionaryItems       |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|dictionary         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryJson     |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryType     |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |M        |1          |String |request ID                                                   |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Response Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|dictionaryData     |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryJson     |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseCode       |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseMessage    |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Get Metrics         \r
++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/getMetrics               |\r
++--------------------+--------------------------+\r
+|Operation Type      |GET                       |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Response Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|metricsTotal       |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|papMetrics         |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|pdpMetrics         |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseCode       |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseMessage    |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+Get Notification    \r
+++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/getNotification          |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Response Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|metricsTotal       |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|papMetrics         |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|pdpMetrics         |N        |1          |Integer|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseCode       |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|responseMessage    |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+List Configuration  \r
+++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/listConfiguration        |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|configAttributes   |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configName         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|ecompName          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|unique             |N        |1          |Boolean|                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Import policy\r
++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/policyEngineImport       |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|importParameterJson|Y        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|file               |Y        |1          |File   |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Push Policy\r
++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/pushPolicy               |\r
++--------------------+--------------------------+\r
+|Operation Type      |PUT                       |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|pdpGroup           |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyType         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Send Event \r
+++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/sendEvent                |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|eventAttributes    |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Send Heartbeat\r
+++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/sendEvent                |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|notificationTopic  |Y        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Stop Notification\r
++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/stopNotification         |\r
++--------------------+--------------------------+\r
+|Operation Type      |POST                      |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|notificationTopic  |Y        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Update Dictionary\r
++++++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/updateDictionaryItem     |\r
++--------------------+--------------------------+\r
+|Operation Type      |PUT                       |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|dictionary         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryJson     |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|dictionaryType     |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+\r
+\r
+Update Policy    \r
++++++++++++++\r
+\r
++--------------------+--------------------------+\r
+|Interface Definition|Description               |\r
++====================+==========================+\r
+|URI                 |/updatePolicy             |\r
++--------------------+--------------------------+\r
+|Operation Type      |PUT                       |\r
++--------------------+--------------------------+\r
+\r
+Request Headers:\r
+\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Header Name        |Qualifier|Description                                                                              |\r
++===================+=========+=========================================================================================+\r
+|ClientAuth         |Y        |encoded client authentication details                                                    |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|X-ECOMP-RequestID  |N        |Request ID  to track the requests                                                        |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Environment        |Y        |execution environments                                                                   |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+|Authorization      |Y        |Base64 encoded username:password                                                         |\r
++-------------------+---------+-----------------------------------------------------------------------------------------+\r
+\r
+Request Parameters:\r
+\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|Attribute          |Qualifier|Cardinality|Content|Description                                                  |\r
++===================+=========+===========+=======+=============================================================+\r
+|attributes         |N        |1          |Object |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configBody         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configBodyType     |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|configName         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|ecompName          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyClass        |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyConfigType   |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyDescription  |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|policyName         |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+|requestID          |N        |1          |String |                                                             |\r
++-------------------+---------+-----------+-------+-------------------------------------------------------------+\r
+\r
+HTTP Response Code:\r
+\r
++------------------+---------------------+\r
+|HTTP CODE         |Description          |\r
++==================+=====================+\r
+|200               |successful           |\r
++------------------+---------------------+\r
+|400               |Invalid Request      |\r
++------------------+---------------------+\r
+|401               |Unauthorized         |\r
++------------------+---------------------+\r
+|500               |Error                |\r
++------------------+---------------------+
\ No newline at end of file
index 99a0c8e..06d9eb3 100644 (file)
Binary files a/docs/images/SO_R1_1.png and b/docs/images/SO_R1_1.png differ
index af0fabc..52256d9 100644 (file)
@@ -53,7 +53,7 @@ public class GlobalHealthcheckHandler {
         // Generate a Request Id\r
         String requestId = UUIDChecker.generateUUID(msoLogger);\r
         HealthCheckUtils healthCheck = new HealthCheckUtils ();\r
-        if (!healthCheck.siteStatusCheck (msoLogger, startTime)) {\r
+        if (!healthCheck.siteStatusCheck (msoLogger)) {\r
             return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;\r
         }\r
 \r
index 291414b..55f44a7 100644 (file)
@@ -51,7 +51,7 @@ public class HealthcheckHandler {
         MsoLogger.setServiceName ("Healthcheck");
         UUIDChecker.verifyOldUUID(requestId, msoLogger);
         HealthCheckUtils healthCheck = new HealthCheckUtils ();
-        if (!healthCheck.siteStatusCheck(msoLogger, startTime)) {
+        if (!healthCheck.siteStatusCheck(msoLogger)) {
             return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;
         }
 
index beb26af..0191b54 100644 (file)
@@ -51,7 +51,7 @@ public class NodeHealthcheckHandler {
         // Generate a Request Id\r
         String requestId = UUIDChecker.generateUUID(msoLogger);\r
         HealthCheckUtils healthCheck = new HealthCheckUtils ();\r
-        if (!healthCheck.siteStatusCheck (msoLogger, startTime)) {\r
+        if (!healthCheck.siteStatusCheck (msoLogger)) {\r
             return HealthCheckUtils.HEALTH_CHECK_NOK_RESPONSE;\r
         }\r
 \r
index e7c4e0d..b64f5bf 100644 (file)
@@ -55,7 +55,7 @@ public class HealthCheckUtils {
             .entity (NOT_FOUND)
             .build ();
 
-    public enum NodeType {APIH, RA, BPMN};
+    public enum NodeType {APIH, RA, BPMN}
 
     public boolean catalogDBCheck (MsoLogger subMsoLogger, long startTime) {
         try(CatalogDatabase catalogDB = CatalogDatabase.getInstance()) {
@@ -79,7 +79,7 @@ public class HealthCheckUtils {
         return true;
     }
 
-    public boolean siteStatusCheck (MsoLogger subMsoLogger, long startTime) {
+    public boolean siteStatusCheck(MsoLogger subMsoLogger) {
         // Check the Site Status value in DB first, if set to false, return NOK
         String site = getProperty("site-name");
 
@@ -180,57 +180,26 @@ public class HealthCheckUtils {
         if (null == topologyProp) {
             return false;
         }
-        String port = topologyProp.getProperty("server-port", null);
-        String ip = System.getProperty("jboss.qualified.host.name");
-        String sslEnabled = topologyProp.getProperty("ssl-enable", null);
 
-        if (null == port || null == ip || ip.isEmpty() || port.isEmpty()) {
-            msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, "Not able to get the IP or the Port value. IP:" + ip + "; Port:" + port, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Not able to get the IP or the Port value. IP:" + ip + "; Port:" + port);
-            return false;
+        checkHealthForProperty(topologyProp, "", requestId);
+
+        boolean healthCheck = false;
+        switch (type) {
+            case APIH:
+                healthCheck = checkHealthForProperty(topologyProp, "apih-healthcheck-urn", requestId);
+                break;
+            case RA:
+                healthCheck = checkHealthForProperty(topologyProp, "jra-healthcheck-urn", requestId);
+                break;
+            case BPMN:
+                healthCheck = checkHealthForProperty(topologyProp, "camunda-healthcheck-urn", requestId);
+                break;
+            default:
+                msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, "Unknown NodeType:" + type, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Unknown NodeType:" + type);
+                break;
         }
 
-        String[] apis;
-        if (NodeType.APIH.equals (type)) {
-            String apiList = topologyProp.getProperty("apih-healthcheck-urn", null);
-            if (null == apiList) {
-                String errorDescription = "Not able to get apih-healthcheck-urn parameter";
-                msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, errorDescription, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, errorDescription);
-                return false;
-            }
-            apis = apiList.split(",");
-        } else if (NodeType.RA.equals (type)){
-            String apiList = topologyProp.getProperty("jra-healthcheck-urn", null);
-            if (null == apiList) {
-                String errorDescription = "Not able to get jra-healthcheck-urn parameter";
-                msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, errorDescription, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, errorDescription);
-                return false;
-            }
-            apis = apiList.split(",");
-        } else if (NodeType.BPMN.equals (type)){
-            String apiList = topologyProp.getProperty("camunda-healthcheck-urn", null);
-            if (null == apiList) {
-                String errorDescription = "Not able to get camunda-healthcheck-urn parameter";
-                msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, errorDescription, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, errorDescription);
-                return false;
-            }
-            apis = apiList.split(",");
-        } else {
-            msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, "Unknown NodeType:" + type, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Unknown NodeType:" + type);
-            return false;
-        }
-
-        // Verify health check on APIH servers
-        for (String url : apis) {
-            // if any of the parameters is null or empty, no need to establish the health check request, just go to the next iteration
-            if ((url == null)  || url.isEmpty()) {
-                continue;
-            }
-            // Exit the loop if local health check returns false from any of the sub component
-            if (!this.verifyLocalHealth(ip, port, url, sslEnabled, requestId)) {
-                return false;
-            }
-        }
-        return true;
+        return healthCheck;
     }
 
     public boolean verifyGlobalHealthCheck(boolean verifyBpmn, String requestId) {
@@ -241,56 +210,99 @@ public class HealthCheckUtils {
             return false;
         }
 
-        String apihLB = topologyProp.getProperty("apih-load-balancer", null);
-        String apihApi = topologyProp.getProperty("apih-nodehealthcheck-urn", null);
-        String bpmnLB= topologyProp.getProperty("camunda-load-balancer", null);
-        String bpmnApi = topologyProp.getProperty("camunda-nodehealthcheck-urn", null);
+        return verifyApihServersHealthCheck(topologyProp, requestId) &&
+                verifyCamundaServersHealthCheck(topologyProp, requestId, verifyBpmn) &&
+                verifyRaServersHealthCheck(topologyProp, requestId);
+    }
+
+    public String getProperty (String name) {
+        MsoJavaProperties prop = this.loadTopologyProperties();
+
+        return prop.getProperty(name, null);
+    }
+
+    protected String getFinalUrl (String ip, String port, String url, String sslEnabled) {
+        if (null == port && null == sslEnabled) {
+            int length = ip.length();
+            if ("/".equals(ip.substring(length - 1))) {
+                ip = ip.substring(0, length - 1);
+            }
+            return ip + url;
+        } else if ("true".equalsIgnoreCase(sslEnabled)) {
+            return "https://" + ip + ":" + port + url;
+        } else {
+            return "http://" + ip + ":" + port + url;
+        }
+    }
+
+    private boolean verifyRaServersHealthCheck(MsoJavaProperties topologyProp, String requestId) {
         String jraLB = topologyProp.getProperty("jra-load-balancer", null);
         String jraApi = topologyProp.getProperty("jra-nodehealthcheck-urn", null);
 
-        if (null == apihLB || null == apihApi || null == bpmnLB || null == bpmnApi || null == jraLB || null == jraApi
-                || apihLB.isEmpty () || apihApi.isEmpty () || bpmnLB.isEmpty () || bpmnApi.isEmpty () || jraLB.isEmpty () || jraApi.isEmpty () ) {
-            msoLogger.error (MessageEnum.GENERAL_EXCEPTION_ARG, "Key parameters are missing from the topology file", "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Key parameters are missing from the topology file");
+        if (null == jraLB || null == jraApi || jraLB.isEmpty() || jraApi.isEmpty()) {
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, "Key parameters are missing from the topology file", "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Key parameters are missing from the topology file");
             return false;
         }
 
-        // Verify health check on APIH servers
-        if (!this.verifyLocalHealth (apihLB, null, apihApi, null, requestId)) {
+        return verifyLocalHealth(jraLB, null, jraApi, null, requestId);
+    }
+
+    private boolean verifyCamundaServersHealthCheck(MsoJavaProperties topologyProp, String requestId, boolean verifyBpmn) {
+        String bpmnLB = topologyProp.getProperty("camunda-load-balancer", null);
+        String bpmnApi = topologyProp.getProperty("camunda-nodehealthcheck-urn", null);
+
+        if (null == bpmnLB || null == bpmnApi || bpmnLB.isEmpty() || bpmnApi.isEmpty()) {
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, "Key parameters are missing from the topology file", "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Key parameters are missing from the topology file");
             return false;
         }
 
-        // Verify health check on Camunda servers
-        if (verifyBpmn) {
-            if (!this.verifyLocalHealth (bpmnLB, null, bpmnApi, null, requestId)) {
-                return false;
-            }
-        }
+        return !verifyBpmn || verifyLocalHealth(bpmnLB, null, bpmnApi, null, requestId);
+    }
 
-        // Verify health check on RA servers
-        if (!verifyLocalHealth (jraLB, null, jraApi, null, requestId)) {
+    private boolean verifyApihServersHealthCheck(MsoJavaProperties topologyProp, String requestId) {
+        String apihLB = topologyProp.getProperty("apih-load-balancer", null);
+        String apihApi = topologyProp.getProperty("apih-nodehealthcheck-urn", null);
+
+        if (null == apihLB || null == apihApi || apihLB.isEmpty() || apihApi.isEmpty()) {
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, "Key parameters are missing from the topology file", "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Key parameters are missing from the topology file");
             return false;
         }
 
-        return true;
+        return verifyLocalHealth(apihLB, null, apihApi, null, requestId);
     }
 
-    public String getProperty (String name) {
-        MsoJavaProperties prop = this.loadTopologyProperties();
-
-        return prop.getProperty(name, null);
+    private boolean checkHealthForProperty(MsoJavaProperties topologyProp, String property, String requestId) {
+        String apiList = topologyProp.getProperty(property, null);
+        if (apiList == null) {
+            String errorDescription = "Not able to get " + property + " parameter";
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, errorDescription, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, errorDescription);
+            return false;
+        }
+        String[] apis = apiList.split(",");
+        return checkHealthForEachApi(topologyProp, apis, requestId);
     }
 
-    protected String getFinalUrl (String ip, String port, String url, String sslEnabled) {
-        if (null == port && null == sslEnabled) {
-            int length = ip.length();
-            if (ip.substring(length - 1).equals ("/")) {
-                ip = ip.substring (0, length - 1);
+    private boolean checkHealthForEachApi(MsoJavaProperties topologyProp, String[] apis, String requestId) {
+
+        String port = topologyProp.getProperty("server-port", null);
+        String ip = System.getProperty("jboss.qualified.host.name");
+        String sslEnabled = topologyProp.getProperty("ssl-enable", null);
+
+        if (null == port || null == ip || ip.isEmpty() || port.isEmpty()) {
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION_ARG, "Not able to get the IP or the Port value. IP:" + ip + "; Port:" + port, "", HEALTH_CHECK, MsoLogger.ErrorCode.DataError, "Not able to get the IP or the Port value. IP:" + ip + "; Port:" + port);
+            return false;
+        }
+
+        for (String url : apis) {
+            // if any of the parameters is null or empty, no need to establish the health check request, just go to the next iteration
+            if ((url == null) || url.isEmpty()) {
+                continue;
+            }
+            // Exit the loop if local health check returns false from any of the sub component
+            if (!this.verifyLocalHealth(ip, port, url, sslEnabled, requestId)) {
+                return false;
             }
-            return ip + url;
-        } else if ("true".equalsIgnoreCase(sslEnabled)) {
-            return "https://" + ip + ":" + port + url;
-        } else {
-            return "http://" + ip + ":" + port + url;
         }
+        return true;
     }
 }
index cdb5695..91016d2 100644 (file)
 package org.openecomp.mso;
 
 
-import org.openecomp.mso.logger.MsoLogger;
-import org.openecomp.mso.properties.MsoJavaProperties;
-import org.openecomp.mso.requestsdb.RequestsDatabase;
 import org.apache.http.HttpStatus;
 import org.apache.http.HttpVersion;
 import org.apache.http.client.methods.CloseableHttpResponse;
-import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpUriRequest;
 import org.apache.http.impl.client.CloseableHttpClient;
 import org.apache.http.message.BasicStatusLine;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.mockito.Mockito;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
+import org.openecomp.mso.properties.MsoJavaProperties;
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -63,7 +57,7 @@ public class HealthCheckUtilsTest {
     private static CloseableHttpResponse nokRes, okRes;
 
     @BeforeClass
-    public static final void prepareMockvalues() {
+    public static void prepareMockvalues() {
         utils = Mockito.mock(HealthCheckUtils.class);
         client = Mockito.mock(CloseableHttpClient.class);
         nokRes = Mockito.mock(CloseableHttpResponse.class);
@@ -207,11 +201,11 @@ public class HealthCheckUtilsTest {
 
         try {
             Mockito.when (client.execute (any(HttpUriRequest.class))).thenReturn (okRes);
-            Boolean res1 = (Boolean)invokeProtectedMethod(tempUtil, "verifyLocalHealth", ip1, port, apihUrl1, sslEnable, null);
+            boolean res1 = tempUtil.verifyLocalHealth(ip1, port, apihUrl1, sslEnable, null);
             assertTrue(res1);
 
             Mockito.when (client.execute (any(HttpUriRequest.class))).thenReturn (nokRes);
-            Boolean res2 = (Boolean)invokeProtectedMethod(tempUtil, "verifyLocalHealth", ip1, port, apihUrl1, sslEnable, null);
+            boolean res2 = tempUtil.verifyLocalHealth(ip1, port, apihUrl1, sslEnable, null);
             assertFalse(res2);
 
         } catch (Exception e) {
@@ -270,29 +264,4 @@ public class HealthCheckUtilsTest {
         Mockito.when(utils.loadTopologyProperties()).thenReturn(properties);
     }
 
-    // User reflection to invoke to avoid change the publicity of the method
-    private static Object invokeProtectedMethod (HealthCheckUtils tempUtil, String methodName, String arg1, String arg2, String arg3, String arg4, String arg5) {
-        Method method;
-        try {
-            method = HealthCheckUtils.class.getDeclaredMethod(methodName, String.class, String.class, String.class, String.class, String.class);
-            method.setAccessible(true);
-            return  method.invoke(tempUtil, arg1, arg2, arg3, arg4, arg5);
-        } catch (NoSuchMethodException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        } catch (SecurityException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        } catch (IllegalAccessException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        } catch (IllegalArgumentException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        } catch (InvocationTargetException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        }
-        return null;
-    }
 }
\ No newline at end of file