diff --git a/test/postman/01_Onboard_Vendor.postman_collection.json b/test/postman/01_Onboard_Vendor.postman_collection.json
index 123f5f5..17d23d3 100644
--- a/test/postman/01_Onboard_Vendor.postman_collection.json
+++ b/test/postman/01_Onboard_Vendor.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "fa388fc9-15ed-4e6c-8c47-96fdc4ac7f12",
+		"_postman_id": "338c7225-c4d5-40c8-8619-ae904f41a83d",
 		"name": "01_Onboard_Vendor",
 		"description": "onboard new vendor",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
@@ -22,20 +22,19 @@
 							"",
 							"var vendor_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vendor_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vendor_name\")) {",
 							"       vendor_found = true;",
-							"       pm.globals.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
+							"       pm.environment.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
 							"   }",
 							"}",
 							"if (vendor_found === false) {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" not yet declared\"] = true;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" not yet declared\"] = true;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" already exists, we stop the run\"] = false;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" already exists, we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}",
-							"",
 							""
 						],
 						"type": "text/javascript"
@@ -100,8 +99,8 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_vendor_id\", \"\"+jsonData.itemId+\"\");",
-							"pm.globals.set(\"auto_vendor_version_id\", \"\"+jsonData.version.id+\"\");",
+							"pm.environment.set(\"auto_vendor_id\", \"\"+jsonData.itemId+\"\");",
+							"pm.environment.set(\"auto_vendor_version_id\", \"\"+jsonData.version.id+\"\");",
 							"",
 							"tests[\"Vendor status is : \"+jsonData.version.status] = jsonData.version.status === \"Draft\";"
 						],
@@ -169,12 +168,12 @@
 							"",
 							"var vendor_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vendor_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vendor_name\")) {",
 							"       vendor_found = true;",
-							"       pm.globals.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
+							"       pm.environment.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
 							"   }",
 							"}",
-							"tests[pm.globals.get(\"vendor_name\")+\" found\"] = vendor_found === vendor_found;",
+							"tests[pm.environment.get(\"vendor_name\")+\" found\"] = vendor_found === vendor_found;",
 							"",
 							"",
 							""
diff --git a/test/postman/02_Onboard_VSP_part1.postman_collection.json b/test/postman/02_Onboard_VSP_part1.postman_collection.json
index 557b557..0e46193 100644
--- a/test/postman/02_Onboard_VSP_part1.postman_collection.json
+++ b/test/postman/02_Onboard_VSP_part1.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "e226e82c-74b6-42bc-a1e9-1168b860a234",
+		"_postman_id": "7f61efa5-8b7f-4593-9d57-26da61bb8604",
 		"name": "02_Onboard_VSP_part1",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -20,17 +20,17 @@
 							"var jsonData = pm.response.json();",
 							"var vsp_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vsp_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vsp_name\")) {",
 							"       vsp_found = true;",
 							"   }",
 							"}",
 							"",
 							"if (vsp_found === false) {",
-							"    tests[pm.globals.get(\"vsp_name\")+\" does not yet exist, we continue\"] = true;",
+							"    tests[pm.environment.get(\"vsp_name\")+\" does not yet exist, we continue\"] = true;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"vsp_name\")+\" already exists, we stop the run\"] = false;",
+							"    tests[pm.environment.get(\"vsp_name\")+\" already exists, we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}"
 						],
@@ -98,18 +98,18 @@
 							"var jsonData = pm.response.json();",
 							"var vendor_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vendor_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vendor_name\")) {",
 							"       vendor_found = true;",
-							"       pm.globals.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
+							"       pm.environment.set(\"auto_vendor_id\", \"\"+jsonData.results[i].id+\"\");",
 							"   }",
 							"}",
 							"if (vendor_found === false) {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" does not exists : we stop the run\"] = false;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" does not exists : we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" exists\"] = true;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" exists\"] = true;",
 							"}",
 							"",
 							"",
@@ -176,9 +176,9 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_vsp_id\", \"\"+jsonData.itemId+\"\");",
-							"pm.globals.set(\"auto_vsp_version_id\", \"\"+jsonData.version.id+\"\");",
-							"pm.globals.set(\"auto_vsp_version_name\", \"\"+jsonData.version.name+\"\");",
+							"pm.environment.set(\"auto_vsp_id\", \"\"+jsonData.itemId+\"\");",
+							"pm.environment.set(\"auto_vsp_version_id\", \"\"+jsonData.version.id+\"\");",
+							"pm.environment.set(\"auto_vsp_version_name\", \"\"+jsonData.version.name+\"\");",
 							"",
 							"tests[\"VSP version is : \"+jsonData.version.status] = jsonData.version.status === \"Draft\";"
 						],
diff --git a/test/postman/03_Onboard_VSP_part2.postman_collection.json b/test/postman/03_Onboard_VSP_part2.postman_collection.json
index 8a5392c..d4b3a28 100644
--- a/test/postman/03_Onboard_VSP_part2.postman_collection.json
+++ b/test/postman/03_Onboard_VSP_part2.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "cbb6c6d5-bcfb-4867-b6a3-36c2b56325bb",
+		"_postman_id": "4779261e-f678-4383-b3a9-dfe63f080371",
 		"name": "03_Onboard_VSP_part2",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
diff --git a/test/postman/04_Onboard_VSP_part3.postman_collection.json b/test/postman/04_Onboard_VSP_part3.postman_collection.json
index edc4204..3f65148 100644
--- a/test/postman/04_Onboard_VSP_part3.postman_collection.json
+++ b/test/postman/04_Onboard_VSP_part3.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "77a97519-f40d-4adf-a77b-19d680615689",
+		"_postman_id": "458aefd8-1c13-4d22-859b-38757f935cca",
 		"name": "04_Onboard_VSP_part3",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
diff --git a/test/postman/05_Onboard_VF.postman_collection.json b/test/postman/05_Onboard_VF.postman_collection.json
index c267705..50ae5f8 100644
--- a/test/postman/05_Onboard_VF.postman_collection.json
+++ b/test/postman/05_Onboard_VF.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "64f5d392-0346-402f-ab22-cdd46b13aa04",
+		"_postman_id": "8f0c4ff0-c762-4289-8547-daa0def307c1",
 		"name": "05_Onboard_VF",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -16,7 +16,7 @@
 							"",
 							"var vf_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"vf_name\")+\" does not exists\"] = true;",
+							"    tests[pm.environment.get(\"vf_name\")+\" does not exists\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -24,18 +24,18 @@
 							"        }",
 							"    var jsonData = pm.response.json();",
 							"    for (var i = 0; i < jsonData.length; i++) { ",
-							"       if (jsonData[i].name === pm.globals.get(\"vf_name\")) {",
+							"       if (jsonData[i].name === pm.environment.get(\"vf_name\")) {",
 							"           vf_found = true;",
-							"           pm.globals.set(\"auto_vf_uuid\", \"\"+jsonData[i].uuid+\"\");",
-							"           pm.globals.set(\"auto_vf_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
+							"           pm.environment.set(\"auto_vf_uuid\", \"\"+jsonData[i].uuid+\"\");",
+							"           pm.environment.set(\"auto_vf_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
 							"       }",
 							"    }",
 							"    if (vf_found === false) {",
-							"        tests[pm.globals.get(\"vf_name\")+\" does not yet exists, we continue the run\"] = true;",
+							"        tests[pm.environment.get(\"vf_name\")+\" does not yet exists, we continue the run\"] = true;",
 							"    }",
 							"    ",
 							"    else {",
-							"        tests[pm.globals.get(\"vf_name\")+\" already exists, stop the run\"] = false;",
+							"        tests[pm.environment.get(\"vf_name\")+\" already exists, stop the run\"] = false;",
 							"        postman.setNextRequest(null);",
 							"    }",
 							"}"
@@ -116,19 +116,19 @@
 							"var jsonData = pm.response.json();",
 							"var vsp_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vsp_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vsp_name\")) {",
 							"       vsp_found = true;",
-							"       pm.globals.set(\"auto_vsp_id\", \"\"+jsonData.results[i].id+\"\");",
+							"       pm.environment.set(\"auto_vsp_id\", \"\"+jsonData.results[i].id+\"\");",
 							"",
 							"   }",
 							"}",
 							"if (vsp_found === false) {",
-							"    tests[\"VSP \"+pm.globals.get(\"vsp_name\")+\" does not exists, we stop the run\"] = false;",
+							"    tests[\"VSP \"+pm.environment.get(\"vsp_name\")+\" does not exists, we stop the run\"] = false;",
 							"    postman.setNextRequest(null);    ",
 							"}",
 							"",
 							"else {",
-							"    tests[\"VSP \"+pm.globals.get(\"vsp_name\")+\" exists, we can continue\"] = true;",
+							"    tests[\"VSP \"+pm.environment.get(\"vsp_name\")+\" exists, we can continue\"] = true;",
 							"}"
 						],
 						"type": "text/javascript"
@@ -194,10 +194,10 @@
 							"var jsonData = pm.response.json();",
 							"var vsp_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i].name === pm.globals.get(\"vsp_name\")) {",
+							"   if (jsonData.results[i].name === pm.environment.get(\"vsp_name\")) {",
 							"       vsp_found = true;",
-							"       pm.globals.set(\"auto_vsp_version_id\", \"\"+jsonData.results[i].id+\"\");",
-							"       pm.globals.set(\"auto_vsp_version_name\", \"\"+jsonData.results[i].name+\"\");",
+							"       pm.environment.set(\"auto_vsp_version_id\", \"\"+jsonData.results[i].id+\"\");",
+							"       pm.environment.set(\"auto_vsp_version_name\", \"\"+jsonData.results[i].name+\"\");",
 							"   }",
 							"}"
 						],
@@ -266,18 +266,18 @@
 							"var jsonData = pm.response.json();",
 							"var vendor_found = false;",
 							"for (var i = 0; i < jsonData.results.length; i++) { ",
-							"   if (jsonData.results[i][\"name\"] === pm.globals.get(\"vendor_name\")) {",
+							"   if (jsonData.results[i][\"name\"] === pm.environment.get(\"vendor_name\")) {",
 							"       vendor_found = true;",
-							"       pm.globals.set(\"auto_vendor_id\", \"\"+jsonData.results[i][\"id\"]+\"\");",
+							"       pm.environment.set(\"auto_vendor_id\", \"\"+jsonData.results[i][\"id\"]+\"\");",
 							"   }",
 							"}",
 							"if (vendor_found === false) {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" does not exists : we stop the run\"] = false;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" does not exists : we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"vendor_name\")+\" exists\"] = true;",
+							"    tests[pm.environment.get(\"vendor_name\")+\" exists\"] = true;",
 							"}",
 							"",
 							"",
@@ -344,9 +344,9 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_vf_invariant_uuid\", \"\"+jsonData.invariantUUID+\"\");",
-							"pm.globals.set(\"auto_vf_uuid\", \"\"+jsonData.uuid+\"\");",
-							"pm.globals.set(\"auto_vf_unique_id\", \"\"+jsonData.uniqueId+\"\");",
+							"pm.environment.set(\"auto_vf_invariant_uuid\", \"\"+jsonData.invariantUUID+\"\");",
+							"pm.environment.set(\"auto_vf_uuid\", \"\"+jsonData.uuid+\"\");",
+							"pm.environment.set(\"auto_vf_unique_id\", \"\"+jsonData.uniqueId+\"\");",
 							"",
 							"tests[\"VF status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"NOT_CERTIFIED_CHECKOUT\";"
 						],
@@ -560,7 +560,7 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_vf_new_unique_id\", \"\"+jsonData[\"metadata\"][\"allVersions\"][\"1.0\"]+\"\");",
+							"pm.environment.set(\"auto_vf_new_unique_id\", \"\"+jsonData[\"metadata\"][\"allVersions\"][\"1.0\"]+\"\");",
 							""
 						],
 						"type": "text/javascript"
diff --git a/test/postman/06_Onboard_Service.postman_collection.json b/test/postman/06_Onboard_Service.postman_collection.json
index 91ac556..eb4724c 100644
--- a/test/postman/06_Onboard_Service.postman_collection.json
+++ b/test/postman/06_Onboard_Service.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "4421ffe4-0af9-4957-949a-a183a02ad0c9",
+		"_postman_id": "dcfc4671-1cb4-453a-8fef-97a0ba533daa",
 		"name": "06_Onboard_Service",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -20,18 +20,18 @@
 							"var jsonData = pm.response.json();",
 							"var service_found = false;",
 							"for (var i = 0; i < jsonData.length; i++) { ",
-							"   if (jsonData[i].name === pm.globals.get(\"service\")) {",
+							"   if (jsonData[i].name === pm.environment.get(\"service\")) {",
 							"       service_found = true;",
-							"       pm.globals.set(\"auto_service_uuid\", \"\"+jsonData[i].uuid+\"\");",
-							"       pm.globals.set(\"auto_service_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
+							"       pm.environment.set(\"auto_service_uuid\", \"\"+jsonData[i].uuid+\"\");",
+							"       pm.environment.set(\"auto_service_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
 							"   }",
 							"}",
 							"if (service_found === false) {",
-							"    tests[pm.globals.get(\"service\")+\" does not exist yet, we continue the run\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" does not exist yet, we continue the run\"] = true;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" already exists, stop the run\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" already exists, stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}"
 						],
@@ -103,9 +103,9 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_service_invariant_uuid\", \"\"+jsonData[\"invariantUUID\"]+\"\");",
-							"pm.globals.set(\"auto_service_uuid\", \"\"+jsonData[\"uuid\"]+\"\");",
-							"pm.globals.set(\"auto_service_unique_id\", \"\"+jsonData[\"uniqueId\"]+\"\");",
+							"pm.environment.set(\"auto_service_invariant_uuid\", \"\"+jsonData[\"invariantUUID\"]+\"\");",
+							"pm.environment.set(\"auto_service_uuid\", \"\"+jsonData[\"uuid\"]+\"\");",
+							"pm.environment.set(\"auto_service_unique_id\", \"\"+jsonData[\"uniqueId\"]+\"\");",
 							"",
 							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"NOT_CERTIFIED_CHECKOUT\";"
 						],
@@ -180,21 +180,21 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"var vf_found = false;",
-							"if (jsonData.name === pm.globals.get(\"vf_name\")) {",
+							"if (jsonData.name === pm.environment.get(\"vf_name\")) {",
 							"    vf_found = true;",
-							"    pm.globals.set(\"auto_vf_uuid\", \"\"+jsonData.uuid+\"\");",
-							"    pm.globals.set(\"auto_vf_invariant_uuid\", \"\"+jsonData.invariantUUID+\"\");",
+							"    pm.environment.set(\"auto_vf_uuid\", \"\"+jsonData.uuid+\"\");",
+							"    pm.environment.set(\"auto_vf_invariant_uuid\", \"\"+jsonData.invariantUUID+\"\");",
 							"    ",
 							"}",
 							"",
 							"if (vf_found === false) {",
-							"    tests[\"VF \"+pm.globals.get(\"vf_name\")+\" does not exists, we stop the run\"] = false;",
+							"    tests[\"VF \"+pm.environment.get(\"vf_name\")+\" does not exists, we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"",
 							"}",
 							"",
 							"else {",
-							"    tests[\"VF \"+pm.globals.get(\"vf_name\")+\" exists, we continue the run\"] = true;",
+							"    tests[\"VF \"+pm.environment.get(\"vf_name\")+\" exists, we continue the run\"] = true;",
 							"}"
 						],
 						"type": "text/javascript"
@@ -268,9 +268,9 @@
 							"var jsonData = pm.response.json();",
 							"var vf_found = false;",
 							"for (var i = 0; i < jsonData.resources.length; i++) { ",
-							"   if (jsonData.resources[i].name === pm.globals.get(\"vf_name\")) {",
+							"   if (jsonData.resources[i].name === pm.environment.get(\"vf_name\")) {",
 							"       vf_found = true;",
-							"       pm.globals.set(\"auto_vf_unique_id\", \"\"+jsonData.resources[i].uniqueId+\"\");",
+							"       pm.environment.set(\"auto_vf_unique_id\", \"\"+jsonData.resources[i].uniqueId+\"\");",
 							"   }",
 							"}",
 							""
@@ -353,8 +353,8 @@
 							"    pm.response.to.have.status(201);",
 							"});",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_vf_customization_uuid\", \"\"+jsonData.customizationUUID+\"\");",
-							"pm.globals.set(\"auto_vf_name_for_model\", \"\"+jsonData.name+\"\");",
+							"pm.environment.set(\"auto_vf_customization_uuid\", \"\"+jsonData.customizationUUID+\"\");",
+							"pm.environment.set(\"auto_vf_name_for_model\", \"\"+jsonData.name+\"\");",
 							"",
 							""
 						],
@@ -427,7 +427,7 @@
 						"exec": [
 							"var vl_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"virtual_link_type\")+\" does not exists\"] = true;",
+							"    tests[pm.environment.get(\"virtual_link_type\")+\" does not exists\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -435,19 +435,19 @@
 							"        }",
 							"    var jsonData = pm.response.json();",
 							"    for (var i = 0; i < jsonData.length; i++) { ",
-							"       if (jsonData[i].name === pm.globals.get(\"virtual_link_type\")) {",
+							"       if (jsonData[i].name === pm.environment.get(\"virtual_link_type\")) {",
 							"           vl_found = true;",
-							"           pm.globals.set(\"auto_virtual_link_uuid\", \"\"+jsonData[i].uuid+\"\");",
-							"           pm.globals.set(\"auto_virtual_link_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
+							"           pm.environment.set(\"auto_virtual_link_uuid\", \"\"+jsonData[i].uuid+\"\");",
+							"           pm.environment.set(\"auto_virtual_link_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
 							"       }",
 							"    }",
 							"    if (vl_found === false) {",
-							"        tests[pm.globals.get(\"virtual_link_type\")+\" does not exists, we stop the run\"] = false;",
+							"        tests[pm.environment.get(\"virtual_link_type\")+\" does not exists, we stop the run\"] = false;",
 							"        postman.setNextRequest(null);",
 							"    }",
 							"    ",
 							"    else {",
-							"        tests[pm.globals.get(\"virtual_link_type\")+\" exists, we continue the run\"] = true;",
+							"        tests[pm.environment.get(\"virtual_link_type\")+\" exists, we continue the run\"] = true;",
 							"    }",
 							"}"
 						],
@@ -527,10 +527,10 @@
 							"var jsonData = pm.response.json();",
 							"var vl_found = false;",
 							"for (var i = 0; i < jsonData.resources.length; i++) { ",
-							"   if (jsonData.resources[i].name === pm.globals.get(\"virtual_link_type\")) {",
+							"   if (jsonData.resources[i].name === pm.environment.get(\"virtual_link_type\")) {",
 							"       vl_found = true;",
-							"       pm.globals.set(\"auto_virtual_link_unique_id\", \"\"+jsonData.resources[i].uniqueId+\"\");",
-							"       tests[\"Virtual Link : \"+pm.globals.get(\"virtual_link_type\")+\" found in SDC catalog with uniqueId = \"+pm.globals.get(\"auto_virtual_link_unique_id\")] = true;",
+							"       pm.environment.set(\"auto_virtual_link_unique_id\", \"\"+jsonData.resources[i].uniqueId+\"\");",
+							"       tests[\"Virtual Link : \"+pm.environment.get(\"virtual_link_type\")+\" found in SDC catalog with uniqueId = \"+pm.environment.get(\"auto_virtual_link_unique_id\")] = true;",
 							"   }",
 							"}",
 							""
@@ -614,8 +614,8 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_virtual_link_customization_uuid\", \"\"+jsonData.customizationUUID+\"\");",
-							"pm.globals.set(\"auto_virtual_link_name_for_model\", \"\"+jsonData.name+\"\");",
+							"pm.environment.set(\"auto_virtual_link_customization_uuid\", \"\"+jsonData.customizationUUID+\"\");",
+							"pm.environment.set(\"auto_virtual_link_name_for_model\", \"\"+jsonData.name+\"\");",
 							"",
 							""
 						],
@@ -846,7 +846,7 @@
 							"",
 							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"CERTIFIED\";",
 							"",
-							"pm.globals.set(\"auto_service_new_unique_id\", \"\"+jsonData.uniqueId+\"\");",
+							"pm.environment.set(\"auto_service_new_unique_id\", \"\"+jsonData.uniqueId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -922,7 +922,7 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_service_new_unique_id\", \"\"+jsonData[\"metadata\"][\"allVersions\"][\"1.0\"]+\"\");",
+							"pm.environment.set(\"auto_service_new_unique_id\", \"\"+jsonData[\"metadata\"][\"allVersions\"][\"1.0\"]+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -1083,12 +1083,12 @@
 							"",
 							"tests[\"Distribution status is : \"+jsonData.distributionStatus] = jsonData.distributionStatus === \"DISTRIBUTED\";",
 							"",
-							"pm.globals.set(\"auto_vf_module_model_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
-							"pm.globals.set(\"auto_vf_module_model_customization_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
-							"pm.globals.set(\"auto_vf_module_model_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupUUID+\"\");",
-							"pm.globals.set(\"auto_vf_module_model_invariant_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].invariantUUID+\"\");",
-							"pm.globals.set(\"auto_vf_module_model_customization_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].customizationUUID+\"\");",
-							"pm.globals.set(\"auto_virtual_link_model_customization_uuid\", \"\"+jsonData.componentInstances[1].customizationUUID+\"\");"
+							"pm.environment.set(\"auto_vf_module_model_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_customization_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupUUID+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_invariant_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].invariantUUID+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_customization_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].customizationUUID+\"\");",
+							"pm.environment.set(\"auto_virtual_link_model_customization_uuid\", \"\"+jsonData.componentInstances[1].customizationUUID+\"\");"
 						],
 						"type": "text/javascript"
 					}
@@ -1168,17 +1168,17 @@
 							"for (var i = 0; i < jsonData.distributionStatusOfServiceList.length; i++) { ",
 							"   if (jsonData.distributionStatusOfServiceList[i].deployementStatus === \"Distributed\") {",
 							"       distrib_done = true;",
-							"       pm.globals.set(\"auto_distribution_id\", \"\"+jsonData.distributionStatusOfServiceList[i].distributionID+\"\");",
+							"       pm.environment.set(\"auto_distribution_id\", \"\"+jsonData.distributionStatusOfServiceList[i].distributionID+\"\");",
 							"",
 							"   }",
 							"}",
 							"if (distrib_done === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed, we stop the run\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed, we stop the run\"] = false;",
 							"    postman.setNextRequest(null);",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed\"] = true;",
 							"}"
 						],
 						"type": "text/javascript"
@@ -1291,44 +1291,44 @@
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to SO\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to SO\"] = true;",
 							"}",
 							"",
 							"if (distrib_AAI === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed to AAI\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to AAI\"] = false;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to AAI\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to AAI\"] = true;",
 							"}",
 							"",
 							"if (distrib_SDNC === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed to SDNC\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to SDNC\"] = false;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to SDNC\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to SDNC\"] = true;",
 							"}",
 							"if (distrib_MultiCloud === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed to MultiCloud\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to MultiCloud\"] = false;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to MultiCloud\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to MultiCloud\"] = true;",
 							"}",
 							"if (distrib_CDS === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed to CDS\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to CDS\"] = false;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to CDS\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to CDS\"] = true;",
 							"}",
 							"if (distrib_policy === false) {",
-							"    tests[pm.globals.get(\"service\")+\" not distributed to Policy\"] = false;",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to Policy\"] = false;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"service\")+\" distributed to Policy\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" distributed to Policy\"] = true;",
 							"}",
 							""
 						],
diff --git a/test/postman/06_Onboard_Service_Macro.postman_collection.json b/test/postman/06_Onboard_Service_Macro.postman_collection.json
new file mode 100644
index 0000000..0514a72
--- /dev/null
+++ b/test/postman/06_Onboard_Service_Macro.postman_collection.json
@@ -0,0 +1,1149 @@
+{
+	"info": {
+		"_postman_id": "aa0955ae-1dd8-48b8-ac63-01117a1c6c2e",
+		"name": "06_Onboard_Service_Macro",
+		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
+	},
+	"item": [
+		{
+			"name": "check  service exists and get infos",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "4f27b99e-23ac-4e7c-a1dc-c42ad63d6f65",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"var service_found = false;",
+							"for (var i = 0; i < jsonData.length; i++) { ",
+							"   if (jsonData[i].name === pm.environment.get(\"service_name_macro\")) {",
+							"       service_found = true;",
+							"       pm.environment.set(\"auto_service_uuid\", \"\"+jsonData[i].uuid+\"\");",
+							"       pm.environment.set(\"auto_service_invariant_uuid\", \"\"+jsonData[i].invariantUUID+\"\");",
+							"   }",
+							"}",
+							"if (service_found === false) {",
+							"    tests[pm.environment.get(\"service_name_macro\")+\" does not exist yet, we continue the run\"] = true;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service_name_macro\")+\" already exists, stop the run\"] = false;",
+							"    postman.setNextRequest(null);",
+							"}"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc}}/sdc/v1/catalog/services",
+					"host": [
+						"{{url-sdc}}"
+					],
+					"path": [
+						"sdc",
+						"v1",
+						"catalog",
+						"services"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Declare a Service in Macro mode",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "e6118e78-e476-4049-8e81-f81b53ba625a",
+						"exec": [
+							"pm.test(\"Status code is 201\", function () {",
+							"    pm.response.to.have.status(201);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"pm.environment.set(\"auto_service_invariant_uuid\", \"\"+jsonData[\"invariantUUID\"]+\"\");",
+							"pm.environment.set(\"auto_service_uuid\", \"\"+jsonData[\"uuid\"]+\"\");",
+							"pm.environment.set(\"auto_service_unique_id\", \"\"+jsonData[\"uniqueId\"]+\"\");",
+							"",
+							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"NOT_CERTIFIED_CHECKOUT\";"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\r\n\t\"artifacts\": {},\r\n\t\"toscaArtifacts\": {},\r\n\t\"contactId\": \"cs0008\",\r\n\t\"categories\": [{\r\n\t\t\"name\": \"Network Service\",\r\n\t\t\"normalizedName\": \"network service\",\r\n\t\t\"uniqueId\": \"serviceNewCategory.network service\",\r\n\t\t\"icons\": [\"network_l_1-3\"],\r\n\t\t\"subcategories\": null,\r\n\t\t\"version\": null,\r\n\t\t\"ownerId\": null,\r\n\t\t\"empty\": false,\r\n\t\t\"type\": null\r\n\t}],\r\n\t\"description\": \"Service {{service_name_macro}}\",\r\n\t\"icon\": \"defaulticon\",\r\n\t\"componentInstancesProperties\": {},\r\n\t\"componentInstancesAttributes\": {},\r\n\t\"name\": \"{{service_name_macro}}\",\r\n\t\"tags\": [\"{{service_name_macro}}\"],\r\n\t\"capabilities\": {},\r\n\t\"requirements\": {},\r\n\t\"deploymentArtifacts\": {},\r\n\t\"componentType\": \"SERVICE\",\r\n\t\"projectCode\": \"123456\",\r\n\t\"componentInstances\": [],\r\n\t\"properties\": [],\r\n\t\"attributes\": [],\r\n\t\"forwardingPaths\": {},\r\n\t\"ecompGeneratedNaming\": true,\r\n\t\"serviceApiArtifacts\": {},\r\n\t\"instantiationType\": \"Macro\",\r\n\t\"environmentContext\": \"General_Revenue-Bearing\"\r\n}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "check VF exists and get uuid",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "87b90661-aefb-4ec9-94fc-fb5277f8c283",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"var vf_found = false;",
+							"if (jsonData.name === pm.environment.get(\"vf_name\")) {",
+							"    vf_found = true;",
+							"    pm.environment.set(\"auto_vf_uuid\", \"\"+jsonData.uuid+\"\");",
+							"    pm.environment.set(\"auto_vf_invariant_uuid\", \"\"+jsonData.invariantUUID+\"\");",
+							"    ",
+							"}",
+							"",
+							"if (vf_found === false) {",
+							"    tests[\"VF \"+pm.environment.get(\"vf_name\")+\" does not exists, we stop the run\"] = false;",
+							"    postman.setNextRequest(null);",
+							"",
+							"}",
+							"",
+							"else {",
+							"    tests[\"VF \"+pm.environment.get(\"vf_name\")+\" exists, we continue the run\"] = true;",
+							"}"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc}}/sdc/v1/catalog/resources/{{auto_vf_uuid}}/metadata",
+					"host": [
+						"{{url-sdc}}"
+					],
+					"path": [
+						"sdc",
+						"v1",
+						"catalog",
+						"resources",
+						"{{auto_vf_uuid}}",
+						"metadata"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Get  VF uniqueId",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "16c73747-c973-40d9-ba3f-6061199386ec",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"var jsonData = pm.response.json();",
+							"var vf_found = false;",
+							"for (var i = 0; i < jsonData.resources.length; i++) { ",
+							"   if (jsonData.resources[i].name === pm.environment.get(\"vf_name\")) {",
+							"       vf_found = true;",
+							"       pm.environment.set(\"auto_vf_unique_id\", \"\"+jsonData.resources[i].uniqueId+\"\");",
+							"   }",
+							"}",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/screen?excludeTypes=VFCMT&excludeTypes=Configuration",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"screen"
+					],
+					"query": [
+						{
+							"key": "excludeTypes",
+							"value": "VFCMT"
+						},
+						{
+							"key": "excludeTypes",
+							"value": "Configuration"
+						}
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Add VF to Service",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "897b4588-b2e6-4af6-b469-09ae6ea3b797",
+						"exec": [
+							"pm.test(\"Status code is 201\", function () {",
+							"    pm.response.to.have.status(201);",
+							"});",
+							"var jsonData = pm.response.json();",
+							"pm.environment.set(\"auto_vf_customization_uuid\", \"\"+jsonData.customizationUUID+\"\");",
+							"pm.environment.set(\"auto_vf_name_for_model\", \"\"+jsonData.name+\"\");",
+							"",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\r\n\t\"name\": \"{{vf_name}}\",\r\n\t\"componentVersion\": \"1.0\",\r\n\t\"posY\": 100,\r\n\t\"posX\": 200,\r\n\t\"uniqueId\": \"{{auto_vf_unique_id}}\",\r\n\t\"originType\": \"VF\",\r\n\t\"componentUid\": \"{{auto_vf_unique_id}}\",\r\n\t\"icon\": \"defaulticon\"\r\n}\r\n"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_unique_id}}/resourceInstance",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_unique_id}}",
+						"resourceInstance"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Submit for testing",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "f3215da0-5a6c-474c-9cc2-6733b36f1347",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"",
+							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"READY_FOR_CERTIFICATION\";",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\"userRemarks\":\"please test\"}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_unique_id}}/lifecycleState/certificationRequest",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_unique_id}}",
+						"lifecycleState",
+						"certificationRequest"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Start Certification",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "e9143951-e32e-4d93-b970-20b54ea64fd4",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"CERTIFICATION_IN_PROGRESS\";"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "jm0007"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_unique_id}}/lifecycleState/startCertification",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_unique_id}}",
+						"lifecycleState",
+						"startCertification"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Certify",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "2ca11efa-040f-4927-b30f-e58912f0db83",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"",
+							"tests[\"Service status is : \"+jsonData.lifecycleState] = jsonData.lifecycleState === \"CERTIFIED\";",
+							"",
+							"pm.environment.set(\"auto_service_new_unique_id\", \"\"+jsonData.uniqueId+\"\");",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "jm0007"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\"userRemarks\":\"ok\"}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_unique_id}}/lifecycleState/certify",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_unique_id}}",
+						"lifecycleState",
+						"certify"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Get Service infos by uniqueID to get new_service_unique_id",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "cecdbf68-2176-4dc1-8321-6285d57a2e8f",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"pm.environment.set(\"auto_service_new_unique_id\", \"\"+jsonData[\"metadata\"][\"allVersions\"][\"1.0\"]+\"\");",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "cs0008"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_unique_id}}/filteredDataByParams?include=metadata",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_unique_id}}",
+						"filteredDataByParams"
+					],
+					"query": [
+						{
+							"key": "include",
+							"value": "metadata"
+						}
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Approve distribution",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "ef5105ec-e9ea-454a-954a-3398364ecb89",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"",
+							"tests[\"Distribution status is : \"+jsonData.distributionStatus] = jsonData.distributionStatus === \"DISTRIBUTION_APPROVED\";",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "gv0001"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\"userRemarks\":\"ok\"}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_new_unique_id}}/distribution-state/approve",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_new_unique_id}}",
+						"distribution-state",
+						"approve"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Distribute service",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "cf7fe737-3858-4235-88b8-73640775d871",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"",
+							"tests[\"Distribution status is : \"+jsonData.distributionStatus] = jsonData.distributionStatus === \"DISTRIBUTED\";",
+							"",
+							"pm.environment.set(\"auto_vf_module_model_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_customization_name\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupName+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].groupUUID+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_invariant_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].invariantUUID+\"\");",
+							"pm.environment.set(\"auto_vf_module_model_customization_uuid\", \"\"+jsonData.componentInstances[0].groupInstances[0].customizationUUID+\"\");",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "POST",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "op0001"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU="
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{}"
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_new_unique_id}}/distribution/PROD/activate",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_new_unique_id}}",
+						"distribution",
+						"PROD",
+						"activate"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "check distribution",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "401f90b3-649f-4f3f-a2bd-ef996a54e47b",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"var distrib_done = false;",
+							"for (var i = 0; i < jsonData.distributionStatusOfServiceList.length; i++) { ",
+							"   if (jsonData.distributionStatusOfServiceList[i].deployementStatus === \"Distributed\") {",
+							"       distrib_done = true;",
+							"       pm.environment.set(\"auto_distribution_id\", \"\"+jsonData.distributionStatusOfServiceList[i].distributionID+\"\");",
+							"",
+							"   }",
+							"}",
+							"if (distrib_done === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed, we stop the run\"] = false;",
+							"    postman.setNextRequest(null);",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed\"] = true;",
+							"}"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "op0001"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YmVlcDpib29w"
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/{{auto_service_uuid}}/distribution",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"{{auto_service_uuid}}",
+						"distribution"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "check distribution fully completed after 60s",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "86932912-3b35-409d-bdbf-003550969f10",
+						"exec": [
+							"tests[\"Status code is 200\"] = responseCode.code === 200;",
+							"",
+							"var jsonData = pm.response.json();",
+							"var distrib_SO = false;",
+							"var distrib_AAI = false;",
+							"var distrib_SDNC = false;",
+							"var distrib_MultiCloud = false;",
+							"var distrib_CDS = false;",
+							"var distrib_policy = false;",
+							"",
+							"for (var i = 0; i < jsonData.distributionStatusList.length; i++) { ",
+							"   if ((jsonData.distributionStatusList[i].omfComponentID === \"SO-COpenSource-Env11\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_SO = true;",
+							"   }",
+							"   if ((jsonData.distributionStatusList[i].omfComponentID === \"aai-ml\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_AAI = true;",
+							"   }",
+							"   if ((jsonData.distributionStatusList[i].omfComponentID === \"sdc-COpenSource-Env11-sdnc-dockero\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_SDNC = true;",
+							"   }",
+							"   if ((jsonData.distributionStatusList[i].omfComponentID === \"multicloud-k8s-id\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_MultiCloud = true;",
+							"   }",
+							"    if ((jsonData.distributionStatusList[i].omfComponentID === \"cds\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_CDS = true;",
+							"   }",
+							"    if ((jsonData.distributionStatusList[i].omfComponentID === \"policy-id\") && (jsonData.distributionStatusList[i].status === \"DOWNLOAD_OK\"))",
+							"   {",
+							"       distrib_policy = true;",
+							"   } ",
+							"}",
+							"",
+							"",
+							"if (distrib_SO === false) {",
+							"    tests[pm.globals.get(\"service\")+\" not distributed to SO\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to SO\"] = true;",
+							"}",
+							"",
+							"if (distrib_AAI === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to AAI\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to AAI\"] = true;",
+							"}",
+							"",
+							"if (distrib_SDNC === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to SDNC\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to SDNC\"] = true;",
+							"}",
+							"if (distrib_MultiCloud === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to MultiCloud\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to MultiCloud\"] = true;",
+							"}",
+							"if (distrib_CDS === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to CDS\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to CDS\"] = true;",
+							"}",
+							"if (distrib_policy === false) {",
+							"    tests[pm.environment.get(\"service\")+\" not distributed to Policy\"] = false;",
+							"}",
+							"",
+							"else {",
+							"    tests[pm.environment.get(\"service\")+\" distributed to Policy\"] = true;",
+							"}",
+							""
+						],
+						"type": "text/javascript"
+					}
+				},
+				{
+					"listen": "prerequest",
+					"script": {
+						"id": "9a1093c2-5c2d-47f6-892e-1a049cff8931",
+						"exec": [
+							"  var date = new Date();",
+							"  var curDate = null;",
+							"  do {",
+							"    curDate = new Date();",
+							"  }",
+							"  while (curDate - date < 10000);"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "USER_ID",
+						"value": "op0001"
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "ONAP-Test"
+					},
+					{
+						"key": "Authorization",
+						"value": "Basic YmVlcDpib29w"
+					},
+					{
+						"key": "x-ecomp-instanceid",
+						"value": "ONAP-Test"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-sdc2}}/sdc1/feProxy/rest/v1/catalog/services/distribution/{{auto_distribution_id}}",
+					"host": [
+						"{{url-sdc2}}"
+					],
+					"path": [
+						"sdc1",
+						"feProxy",
+						"rest",
+						"v1",
+						"catalog",
+						"services",
+						"distribution",
+						"{{auto_distribution_id}}"
+					]
+				}
+			},
+			"response": []
+		}
+	]
+}
\ No newline at end of file
diff --git a/test/postman/07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json b/test/postman/07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json
index cbf373c..8406935 100644
--- a/test/postman/07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json
+++ b/test/postman/07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json
@@ -1,12 +1,12 @@
 {
 	"info": {
-		"_postman_id": "ba79b08d-2a04-4a00-8f30-e805efc2e636",
+		"_postman_id": "4d04e8e7-d495-4dcc-a800-1cf4ab643403",
 		"name": "07_Declare_owningEntity_LineOfBusiness_project_platform",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
 	"item": [
 		{
-			"name": "Declare owningEntity",
+			"name": "Declare owningEntity in VID",
 			"event": [
 				{
 					"listen": "test",
@@ -36,7 +36,7 @@
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n    \"options\": [\"{{owning_entity}}\"]\n}"
+					"raw": "{\n    \"options\": [\"{{owning_entity_name}}\"]\n}"
 				},
 				"url": {
 					"raw": "{{url-vid}}/vid/maintenance/category_parameter/owningEntity",
@@ -54,6 +54,122 @@
 			"response": []
 		},
 		{
+			"name": "declare Owning-Entity in AAI",
+			"request": {
+				"method": "PUT",
+				"header": [
+					{
+						"key": "Authorization",
+						"value": "Basic QUFJOkFBSQ=="
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "AAI"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "get_aai_subscr"
+					},
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\n    \"owning-entity-name\": \"{{owning_entity_name}}\",\n    \"owning-entity-id\": \"{{owning_entity_id}}\"\n}"
+				},
+				"url": {
+					"raw": "{{url-aai}}/aai/v13/business/owning-entities/owning-entity/{{owning_entity_id}}",
+					"host": [
+						"{{url-aai}}"
+					],
+					"path": [
+						"aai",
+						"v13",
+						"business",
+						"owning-entities",
+						"owning-entity",
+						"{{owning_entity_id}}"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Get owning-entities",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "294b8cb1-67a3-435d-817f-7fd5497183db",
+						"exec": [
+							"pm.test(\"Status code is 200\", function () {",
+							"    pm.response.to.have.status(200);",
+							"});",
+							"",
+							"var jsonData = pm.response.json();",
+							"var oe_found = false;",
+							"for (var i = 0; i < jsonData[\"owning-entity\"].length; i++) { ",
+							"   if (jsonData[\"owning-entity\"][i][\"owning-entity-name\"] === pm.environment.get(\"owning_entity\")) {",
+							"       oe_found = true;",
+							"       pm.environment.set(\"auto_owning_entity_id\", \"\"+jsonData[\"owning-entity\"][i][\"owning-entity-id\"]+\"\");",
+							"   }",
+							"}",
+							"tests[\"Owning-Entity \"+pm.environment.get(\"owning_entity\")+\" found and id saved\"] = oe_found === true;"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Authorization",
+						"value": "Basic QUFJOkFBSQ=="
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "AAI"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "get_aai_subscr"
+					},
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-aai}}/aai/v16/business/owning-entities",
+					"host": [
+						"{{url-aai}}"
+					],
+					"path": [
+						"aai",
+						"v16",
+						"business",
+						"owning-entities"
+					]
+				}
+			},
+			"response": []
+		},
+		{
 			"name": "Declare platform",
 			"event": [
 				{
diff --git a/test/postman/08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json b/test/postman/08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json
index aac2f00..d5e3bbf 100644
--- a/test/postman/08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json
+++ b/test/postman/08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "f60d6e53-cb99-447c-b35d-37912228ee5e",
+		"_postman_id": "4e86ffd4-736b-441d-8ff2-56a584a96573",
 		"name": "08_Declare_Customer_Service_Subscription_Cloud",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -15,7 +15,7 @@
 						"exec": [
 							"var customer_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"customer_name\")+\" does not exists\"] = true;",
+							"    tests[pm.environment.get(\"customer_name\")+\" does not exists\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -23,17 +23,17 @@
 							"        }",
 							"    var jsonData = pm.response.json();",
 							"    for (var i = 0; i < jsonData.customer.length; i++) { ",
-							"       if (jsonData.customer[i][\"global-customer-id\"] === pm.globals.get(\"customer_name\")) {",
+							"       if (jsonData.customer[i][\"global-customer-id\"] === pm.environment.get(\"customer_name\")) {",
 							"           customer_found = true;",
-							"           pm.globals.set(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
+							"           pm.environment.set(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
 							"       }",
 							"    }",
 							"    if (customer_found === false) {",
-							"        tests[pm.globals.get(\"customer_name\")+\" does not exists\"] = true;",
+							"        tests[pm.environment.get(\"customer_name\")+\" does not exists\"] = true;",
 							"    }",
 							"    ",
 							"    else {",
-							"        tests[pm.globals.get(\"customer_name\")+\" already exists, we skip creation\"] = true;",
+							"        tests[pm.environment.get(\"customer_name\")+\" already exists, we skip creation\"] = true;",
 							"        postman.setNextRequest(\"List Services from SDC catalog\");",
 							"    }",
 							"}"
@@ -161,12 +161,12 @@
 							"var jsonData = pm.response.json();",
 							"var customer_found = false;",
 							"for (var i = 0; i < jsonData.customer.length; i++) { ",
-							"   if (jsonData.customer[i][\"global-customer-id\"] === pm.globals.get(\"customer_name\")) {",
+							"   if (jsonData.customer[i][\"global-customer-id\"] === pm.environment.get(\"customer_name\")) {",
 							"       customer_found = true;",
-							"       pm.globals.set(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
+							"       pm.environment.set(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
 							"   }",
 							"}",
-							"tests[pm.globals.get(\"customer_name\")+\" found\"] = customer_found === true;"
+							"tests[pm.environment.get(\"customer_name\")+\" found\"] = customer_found === true;"
 						],
 						"type": "text/javascript"
 					}
@@ -230,19 +230,19 @@
 							"var jsonData = pm.response.json();",
 							"var service_found = false;",
 							"for (var i = 0; i < jsonData.length; i++) { ",
-							"   if (jsonData[i].name === pm.globals.get(\"service\")) {",
+							"   if (jsonData[i].name === pm.environment.get(\"service\")) {",
 							"       service_found = true;",
-							"       pm.globals.set(\"auto_service_invariantUUID\", \"\"+jsonData[i].invariantUUID+\"\");",
+							"       pm.environment.set(\"auto_service_invariantUUID\", \"\"+jsonData[i].invariantUUID+\"\");",
 							"   }",
 							"}",
 							"",
 							"if (service_found === false) {",
-							"    tests[\"Service : \"+pm.globals.get(\"service\")+\" does not exist in SDC catalog, we stop the run\"] = true;",
+							"    tests[\"Service : \"+pm.environment.get(\"service\")+\" does not exist in SDC catalog, we stop the run\"] = true;",
 							"    postman.setNextRequest(null);",
 							"}",
 							"",
 							"else {",
-							"    tests[\"Service : \"+pm.globals.get(\"service\")+\" exists in SDC catalog, we can continue the run\"] = true;",
+							"    tests[\"Service : \"+pm.environment.get(\"service\")+\" exists in SDC catalog, we can continue the run\"] = true;",
 							"}"
 						],
 						"type": "text/javascript"
@@ -310,7 +310,7 @@
 						"exec": [
 							"var service_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"service\")+\" does not exists in AAI\"] = true;",
+							"    tests[pm.environment.get(\"service\")+\" does not exists in AAI\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -318,17 +318,17 @@
 							"        }",
 							"    var jsonData = pm.response.json();",
 							"    for (var i = 0; i < jsonData.service.length; i++) { ",
-							"       if (jsonData.service[i][\"service-description\"] === pm.globals.get(\"service\")) {",
+							"       if (jsonData.service[i][\"service-description\"] === pm.environment.get(\"service\")) {",
 							"           service_found = true;",
 							"       }",
 							"    }",
 							"    ",
 							"    if (service_found === false) {",
-							"        tests[\"Service subscription : \"+pm.globals.get(\"service\")+\" does not exists in AAI\"] = true;",
+							"        tests[\"Service subscription : \"+pm.environment.get(\"service\")+\" does not exists in AAI\"] = true;",
 							"    }",
 							"    ",
 							"    else {",
-							"        tests[\"Service subscription : \"+pm.globals.get(\"service\")+\" already exists in AAI, we skip creation\"] = true;",
+							"        tests[\"Service subscription : \"+pm.environment.get(\"service\")+\" already exists in AAI, we skip creation\"] = true;",
 							"        postman.setNextRequest(\"check cloud-region exists\");",
 							"    }",
 							"}"
@@ -455,12 +455,12 @@
 							"var jsonData = pm.response.json();",
 							"var service_found = false;",
 							"for (var i = 0; i < jsonData.service.length; i++) { ",
-							"   if (jsonData.service[i][\"service-description\"] === pm.globals.get(\"service\")) {",
+							"   if (jsonData.service[i][\"service-description\"] === pm.environment.get(\"service\")) {",
 							"       service_found = true;",
-							"       pm.globals.set(\"auto_service_resource_version\", \"\"+jsonData.service[i][\"resource-version\"]+\"\");",
+							"       pm.environment.set(\"auto_service_resource_version\", \"\"+jsonData.service[i][\"resource-version\"]+\"\");",
 							"   }",
 							"}",
-							"tests[\"Service subscription : \"+pm.globals.get(\"service\")+\" found in AAI\"] = service_found === true;"
+							"tests[\"Service subscription : \"+pm.environment.get(\"service\")+\" found in AAI\"] = service_found === true;"
 						],
 						"type": "text/javascript"
 					}
@@ -519,7 +519,7 @@
 						"exec": [
 							"var complex_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"complex_name\")+\" does not exists in AAI\"] = true;",
+							"    tests[pm.environment.get(\"complex_name\")+\" does not exists in AAI\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -527,16 +527,16 @@
 							"        }",
 							"var jsonData = pm.response.json();",
 							"for (var i = 0; i < jsonData[\"complex\"].length; i++) { ",
-							"   if (jsonData[\"complex\"][i][\"complex-name\"] === pm.globals.get(\"complex_name\")) {",
+							"   if (jsonData[\"complex\"][i][\"complex-name\"] === pm.environment.get(\"complex_name\")) {",
 							"       complex_found = true;",
 							"   }",
 							"}",
 							"",
 							"if (complex_found === false) {",
-							"    tests[pm.globals.get(\"complex_name\")+\" does not exist yet\"] = true;",
+							"    tests[pm.environment.get(\"complex_name\")+\" does not exist yet\"] = true;",
 							"}",
 							"else {",
-							"    tests[pm.globals.get(\"complex_name\")+\" already exists, we skip creation\"] = true;",
+							"    tests[pm.environment.get(\"complex_name\")+\" already exists, we skip creation\"] = true;",
 							"    postman.setNextRequest(\"check cloud-region exists\");",
 							"}",
 							"}"
@@ -660,11 +660,11 @@
 							"var jsonData = pm.response.json();",
 							"var complex_found = false;",
 							"for (var i = 0; i < jsonData[\"complex\"].length; i++) { ",
-							"   if (jsonData[\"complex\"][i][\"complex-name\"] === pm.globals.get(\"complex_name\")) {",
+							"   if (jsonData[\"complex\"][i][\"complex-name\"] === pm.environment.get(\"complex_name\")) {",
 							"       complex_found = true;",
 							"   }",
 							"}",
-							"tests[\"Complex : \"+pm.globals.get(\"complex_name\")+\" found\"] = complex_found === true;",
+							"tests[\"Complex : \"+pm.environment.get(\"complex_name\")+\" found\"] = complex_found === true;",
 							""
 						],
 						"type": "text/javascript"
@@ -720,7 +720,7 @@
 						"exec": [
 							"var region_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"onap_cloud_region_id\")+\" does not exists in AAI\"] = true;",
+							"    tests[pm.environment.get(\"onap_cloud_region_id\")+\" does not exists in AAI\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -728,16 +728,16 @@
 							"        }",
 							"var jsonData = pm.response.json();",
 							"for (var i = 0; i < jsonData[\"cloud-region\"].length; i++) { ",
-							"   if ((jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === pm.globals.get(\"onap_cloud_region_id\")) && (jsonData[\"cloud-region\"][i][\"cloud-owner\"] === pm.globals.get(\"cloud_owner_name\"))) {",
+							"   if ((jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === pm.environment.get(\"onap_cloud_region_id\")) && (jsonData[\"cloud-region\"][i][\"cloud-owner\"] === pm.environment.get(\"cloud_owner_name\"))) {",
 							"       region_found = true;",
 							"   }",
 							"}",
 							"",
 							"if (region_found === false) {",
-							"    tests[pm.globals.get(\"onap_cloud_region_id\")+\" does not exist yet for cloudOwner \"+pm.globals.get(\"cloud_owner_name\")] = true;",
+							"    tests[pm.environment.get(\"onap_cloud_region_id\")+\" does not exist yet for cloudOwner \"+pm.environment.get(\"cloud_owner_name\")] = true;",
 							"}",
 							"else {",
-							"    tests[pm.globals.get(\"onap_cloud_region_id\")+\" already exists, we skip creation\"] = true;",
+							"    tests[pm.environment.get(\"onap_cloud_region_id\")+\" already exists, we skip creation\"] = true;",
 							"    postman.setNextRequest(\"check tenant in cloud region\");",
 							"}",
 							"}"
@@ -861,11 +861,11 @@
 							"var jsonData = pm.response.json();",
 							"var region_found = false;",
 							"for (var i = 0; i < jsonData[\"cloud-region\"].length; i++) { ",
-							"   if (jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === pm.globals.get(\"onap_cloud_region_id\")) {",
+							"   if (jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === pm.environment.get(\"onap_cloud_region_id\")) {",
 							"       region_found = true;",
 							"   }",
 							"}",
-							"tests[\"Cloud-Region : \"+pm.globals.get(\"onap_cloud_region_id\")+\" found\"] = region_found === true;",
+							"tests[\"Cloud-Region : \"+pm.environment.get(\"onap_cloud_region_id\")+\" found\"] = region_found === true;",
 							""
 						],
 						"type": "text/javascript"
@@ -975,6 +975,151 @@
 			"response": []
 		},
 		{
+			"name": "check availability-zone in cloud region",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "4367f5c4-0bf0-4e09-bc58-9a8bd6578685",
+						"exec": [
+							"var availability_zone_found = false;",
+							"if (pm.response.code === 404) {",
+							"    tests[pm.environment.get(\"availability_zone_name\")+\" does not exists\"] = true;",
+							"}",
+							"else {",
+							"    if (pm.response.code === 200) {",
+							"        tests[\"Status code is 200\"] = pm.response.code === 200;",
+							"        }",
+							"    var jsonData = pm.response.json();",
+							"    for (var i = 0; i < jsonData[\"availability-zone\"].length; i++) { ",
+							"        if (jsonData[\"availability-zone\"][i][\"availability-zone-name\"] === pm.environment.get(\"availability_zone_name\")) {",
+							"            availability_zone_found = true;",
+							"        }",
+							"    }   ",
+							"    tests[\"Availability Zone : \"+pm.environment.get(\"availability_zone_name\")+\" found\"] = availability_zone_found === true;",
+							"}",
+							"",
+							"",
+							"",
+							""
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "GET",
+				"header": [
+					{
+						"key": "Authorization",
+						"value": "Basic QUFJOkFBSQ=="
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "AAI"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f"
+					},
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": ""
+				},
+				"url": {
+					"raw": "{{url-aai}}/aai/v16/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{onap_cloud_region_id}}/availability-zones",
+					"host": [
+						"{{url-aai}}"
+					],
+					"path": [
+						"aai",
+						"v16",
+						"cloud-infrastructure",
+						"cloud-regions",
+						"cloud-region",
+						"{{cloud_owner_name}}",
+						"{{onap_cloud_region_id}}",
+						"availability-zones"
+					]
+				}
+			},
+			"response": []
+		},
+		{
+			"name": "Add availability-zone in cloud region",
+			"event": [
+				{
+					"listen": "test",
+					"script": {
+						"id": "4d1eee0e-6afd-44e8-b1cc-269a1249232d",
+						"exec": [
+							"pm.test(\"Status code is 201\", function () {",
+							"    pm.response.to.have.status(201);",
+							"});"
+						],
+						"type": "text/javascript"
+					}
+				}
+			],
+			"request": {
+				"method": "PUT",
+				"header": [
+					{
+						"key": "Authorization",
+						"value": "Basic QUFJOkFBSQ=="
+					},
+					{
+						"key": "X-FromAppId",
+						"value": "AAI"
+					},
+					{
+						"key": "Accept",
+						"value": "application/json"
+					},
+					{
+						"key": "X-TransactionId",
+						"value": "get_aai_subscr"
+					},
+					{
+						"key": "Content-Type",
+						"value": "application/json"
+					}
+				],
+				"body": {
+					"mode": "raw",
+					"raw": "{\n    \"availability-zone-name\": \"{{availability_zone_name}}\",\n    \"hypervisor-type\": \"{{hypervisor_type}}\"\n}"
+				},
+				"url": {
+					"raw": "{{url-aai}}/aai/v16/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{onap_cloud_region_id}}/availability-zones/availability-zone/{{availability_zone_name}}",
+					"host": [
+						"{{url-aai}}"
+					],
+					"path": [
+						"aai",
+						"v16",
+						"cloud-infrastructure",
+						"cloud-regions",
+						"cloud-region",
+						"{{cloud_owner_name}}",
+						"{{onap_cloud_region_id}}",
+						"availability-zones",
+						"availability-zone",
+						"{{availability_zone_name}}"
+					]
+				}
+			},
+			"response": []
+		},
+		{
 			"name": "check tenant in cloud region",
 			"event": [
 				{
@@ -984,7 +1129,7 @@
 						"exec": [
 							"var tenant_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"tenant_name\")+\" does not exists in AAI\"] = true;",
+							"    tests[pm.environment.get(\"tenant_name\")+\" does not exists in AAI\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -996,20 +1141,20 @@
 							"    {",
 							"    for (var i = 0; i < jsonData.tenant.length; i++) ",
 							"        { ",
-							"        if (jsonData.tenant[i]['tenant-id'] === pm.globals.get(\"tenant_id\")) ",
+							"        if (jsonData.tenant[i]['tenant-id'] === pm.environment.get(\"tenant_id\")) ",
 							"            {",
 							"            tenant_found = true;",
 							"            }",
 							"        }",
 							"    if (tenant_found === true) ",
 							"        {",
-							"        tests[pm.globals.get(\"tenant_name\")+\" already exists, we skip creation\"] = true;",
+							"        tests[pm.environment.get(\"tenant_name\")+\" already exists, we skip creation\"] = true;",
 							"        postman.setNextRequest(\"check customer-service-tenant relations\");",
 							"        }",
 							"",
 							"if (tenant_found === false)",
 							"    {",
-							"    tests[pm.globals.get(\"tenant_name\")+\" does not exists\"] = true;",
+							"    tests[pm.environment.get(\"tenant_name\")+\" does not exists\"] = true;",
 							"    }",
 							"}",
 							"}"
@@ -1144,11 +1289,11 @@
 							"var jsonData = pm.response.json();",
 							"var tenant_found = false;",
 							"for (var i = 0; i < jsonData.tenant.length; i++) { ",
-							"   if (jsonData.tenant[i][\"tenant-id\"] === pm.globals.get(\"tenant_id\")) {",
+							"   if (jsonData.tenant[i][\"tenant-id\"] === pm.environment.get(\"tenant_id\")) {",
 							"       tenant_found = true;",
 							"   }",
 							"}",
-							"tests[pm.globals.get(\"tenant_name\")+\" found\"] = tenant_found === true;",
+							"tests[pm.environment.get(\"tenant_name\")+\" found\"] = tenant_found === true;",
 							""
 						],
 						"type": "text/javascript"
@@ -1212,7 +1357,7 @@
 						"exec": [
 							"var relation_found = false;",
 							"if (pm.response.code === 404) {",
-							"    tests[pm.globals.get(\"tenant_name\")+\" / \"+pm.globals.get(\"service\")+ \" relation does not exists\"] = true;",
+							"    tests[pm.environment.get(\"tenant_name\")+\" / \"+pm.environment.get(\"service\")+ \" relation does not exists\"] = true;",
 							"}",
 							"else {",
 							"    if (pm.response.code === 200) {",
@@ -1221,17 +1366,17 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"for (var i = 0; i < jsonData[\"service-subscription\"].length; i++) { ",
-							"   if (jsonData[\"service-subscription\"][i][\"service-type\"] === pm.globals.get(\"service\")) {",
+							"   if (jsonData[\"service-subscription\"][i][\"service-type\"] === pm.environment.get(\"service\")) {",
 							"       relation_found = true;",
 							"   }",
 							"}",
 							"",
 							"if (relation_found === false) {",
-							"    tests[pm.globals.get(\"tenant_name\")+\" / \"+pm.globals.get(\"service\")+ \" relation does not exists\"] = true;",
+							"    tests[pm.environment.get(\"tenant_name\")+\" / \"+pm.environment.get(\"service\")+ \" relation does not exists\"] = true;",
 							"}",
 							"",
 							"else {",
-							"    tests[pm.globals.get(\"tenant_name\")+\" / \"+pm.globals.get(\"service\")+ \" already exists, we skip relation creation\"] = true;",
+							"    tests[pm.environment.get(\"tenant_name\")+\" / \"+pm.environment.get(\"service\")+ \" already exists, we skip relation creation\"] = true;",
 							"    postman.setNextRequest(\"check customer-service-tenant relation creation\");",
 							"}",
 							"}"
@@ -1364,7 +1509,7 @@
 					"script": {
 						"id": "9a9da50d-49ce-4f9e-ae18-6131dce516eb",
 						"exec": [
-							"pm.test(\"Status code is 201\", function () {",
+							"pm.test(\"Status code is 200\", function () {",
 							"    pm.response.to.have.status(201);",
 							"});"
 						],
@@ -1435,11 +1580,11 @@
 							"var jsonData = pm.response.json();",
 							"var service_found = false;",
 							"for (var i = 0; i < jsonData[\"service-subscription\"].length; i++) { ",
-							"   if (jsonData[\"service-subscription\"][i][\"service-type\"] === pm.globals.get(\"service\")) {",
+							"   if (jsonData[\"service-subscription\"][i][\"service-type\"] === pm.environment.get(\"service\")) {",
 							"       service_found = true;",
 							"   }",
 							"}",
-							"tests[\"Service subscription : \"+pm.globals.get(\"service\")+\" found for customer : \"+pm.globals.get(\"customer_name\")] = service_found === true;",
+							"tests[\"Service subscription : \"+pm.environment.get(\"service\")+\" found for customer : \"+pm.environment.get(\"customer_name\")] = service_found === true;",
 							""
 						],
 						"type": "text/javascript"
diff --git a/test/postman/10_instantiate_service_vnf_vfmodule.postman_collection.json b/test/postman/10_instantiate_service_vnf_vfmodule.postman_collection.json
index e90fed4..ff2a040 100644
--- a/test/postman/10_instantiate_service_vnf_vfmodule.postman_collection.json
+++ b/test/postman/10_instantiate_service_vnf_vfmodule.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "e89df100-56db-4922-9a58-c92465f0cb9e",
+		"_postman_id": "200601a1-b07a-4a07-ba56-a3fc357e9f55",
 		"name": "10_instantiate_service_vnf_vfmodule",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -65,12 +65,12 @@
 							"var jsonData = pm.response.json();",
 							"var service_found = false;",
 							"for (var i = 0; i < jsonData.length; i++) { ",
-							"   if (jsonData[i].name === pm.globals.get(\"service\")) {",
+							"   if (jsonData[i].name === pm.environment.get(\"service\")) {",
 							"       service_found = true;",
-							"       pm.globals.set(\"auto_service_id\", \"\"+jsonData[i].id+\"\");",
+							"       pm.environment.set(\"auto_service_id\", \"\"+jsonData[i].id+\"\");",
 							"   }",
 							"}",
-							"tests[\"Service : \"+pm.globals.get(\"service\")+\" exists\"] = service_found === true;",
+							"tests[\"Service : \"+pm.environment.get(\"service\")+\" exists\"] = service_found === true;",
 							""
 						],
 						"type": "text/javascript"
@@ -113,11 +113,11 @@
 							"var jsonData = pm.response.json();",
 							"var service_instance_found = false;",
 							"for (var i = 0; i < jsonData.length; i++) { ",
-							"   if (jsonData[i].name === pm.globals.get(\"service_instance_name\")) {",
+							"   if (jsonData[i].name === pm.environment.get(\"service_instance_name\")) {",
 							"       service_instance_found = true;",
 							"   }",
 							"}",
-							"tests[\"Service instance : \"+pm.globals.get(\"service_instance_name\")+\" does not exist\"] = service_instance_found === false;"
+							"tests[\"Service instance : \"+pm.environment.get(\"service_instance_name\")+\" does not exist\"] = service_instance_found === false;"
 						],
 						"type": "text/javascript"
 					}
@@ -164,9 +164,9 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"tests[pm.globals.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.globals.get(\"externalId\");",
+							"tests[pm.environment.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.environment.get(\"externalId\");",
 							"",
-							"pm.globals.set(\"auto_service_order_id\", jsonData.id);",
+							"pm.environment.set(\"auto_service_order_id\", jsonData.id);",
 							"    "
 						],
 						"type": "text/javascript"
@@ -218,18 +218,18 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"tests[pm.globals.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.globals.get(\"externalId\");",
-							"tests[\"service_order_id exists\"] = jsonData.id === pm.globals.get(\"auto_service_order_id\");",
+							"tests[pm.environment.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.environment.get(\"externalId\");",
+							"tests[\"service_order_id exists\"] = jsonData.id === pm.environment.get(\"auto_service_order_id\");",
 							"tests[\"service Order state is : \"+jsonData.state] = jsonData.state === \"completed\";",
 							"tests[\"Service Instance state is : \"+jsonData.orderItem[0].service.serviceState] = jsonData.orderItem[0].service.serviceState === \"active\";",
 							"",
 							"",
 							"if(jsonData.state == \"completed\"){",
-							"    pm.globals.set(\"auto_service_instance_id\", \"\"+jsonData.orderItem[0].service.id+\"\");",
+							"    pm.environment.set(\"auto_service_instance_id\", \"\"+jsonData.orderItem[0].service.id+\"\");",
 							"}",
 							"if (jsonData.orderMessage !== null){",
 							"    tests[\"order message is : \" +jsonData.orderMessage[0].messageInformation] = jsonData.orderMessage[0].messageInformation === \"\";",
-							"    pm.globals.set(\"auto_service_messageInformation\", \"\"+jsonData.orderMessage[0].messageInformation+\"\");",
+							"    pm.environment.set(\"auto_service_messageInformation\", \"\"+jsonData.orderMessage[0].messageInformation+\"\");",
 							"    }",
 							""
 						],
@@ -367,7 +367,7 @@
 					"script": {
 						"id": "f1cbf2f1-1ed2-4d21-9483-46602241705d",
 						"exec": [
-							"tests[\"Service Instance : \"+ pm.globals.get(\"service_instance_name\") +\" exists in AAI inventory\"] = pm.response.code === 200;",
+							"tests[\"Service Instance : \"+ pm.environment.get(\"service_instance_name\") +\" exists in AAI inventory\"] = pm.response.code === 200;",
 							""
 						],
 						"type": "text/javascript"
@@ -421,8 +421,8 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
-							"pm.globals.set(\"auto_vnf_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
+							"pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"pm.environment.set(\"auto_vnf_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -434,31 +434,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n  \"requestDetails\": {\n    \"requestInfo\": {\n      \"productFamilyId\": \"{{auto_service_uuid}}\",\n      \"instanceName\": \"{{vnf_instance_name}}\",\n      \"source\": \"VID\",\n      \"suppressRollback\": false,\n      \"requestorId\": \"test\"\n    },\n\t\"modelInfo\": {\n\t\t\"modelType\": \"vnf\",\n\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_uuid}}\",\n\t\t\t\"modelCustomizationName\": \"{{auto_vf_name_for_model}}\"\n\t\t},\n    \"requestParameters\": {\n      \"userParams\": [],\n      \"aLaCarte\": true,\n\t  \"testApi\": \"VNF_API\"\n    },\n    \"cloudConfiguration\": {\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"lineOfBusiness\": {\n\t\t\t\"lineOfBusinessName\": \"{{lineofbusiness}}\"\n\t\t},\n\t\t\"platform\": {\n\t\t\t\"platformName\": \"{{platform}}\"\n\t\t},\n\t\t\"relatedInstanceList\": [{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"service\",\n\t\t\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t}]\n  }\n}\n\n"
+					"raw": "{\n  \"requestDetails\": {\n    \"requestInfo\": {\n      \"instanceName\": \"{{vnf_instance_name}}\",\n      \"source\": \"VID\",\n      \"suppressRollback\": false,\n      \"requestorId\": \"test\",\n\t  \"productFamilyId\": \"1234\"\n    },\n\t\"modelInfo\": {\n\t\t\"modelType\": \"vnf\",\n\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_uuid}}\",\n\t\t\t\"modelCustomizationName\": \"{{auto_vf_name_for_model}}\"\n\t\t},\n    \"requestParameters\": {\n      \"userParams\": [],\n      \"aLaCarte\": true,\n\t  \"testApi\": \"VNF_API\"\n    },\n    \"cloudConfiguration\": {\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"cloudOwner\": \"{{cloud_owner_name}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"lineOfBusiness\": {\n\t\t\t\"lineOfBusinessName\": \"{{lineofbusiness}}\"\n\t\t},\n\t\t\"platform\": {\n\t\t\t\"platformName\": \"{{platform}}\"\n\t\t},\n\t\t\"relatedInstanceList\": [{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"service\",\n\t\t\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t}]\n  }\n}\n\n"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/vnfs",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/vnfs",
 					"host": [
 						"{{url-so}}"
 					],
@@ -466,8 +466,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"vnfs"
 					]
@@ -488,7 +489,7 @@
 							"});",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_vnf_instance_id\", \"\"+jsonData.request.instanceReferences.vnfInstanceId+\"\");",
+							"pm.environment.set(\"auto_vnf_instance_id\", \"\"+jsonData.request.instanceReferences.vnfInstanceId+\"\");",
 							"tests[\"requestState is : \"+jsonData.request.requestStatus.requestState] = jsonData.request.requestStatus.requestState === \"COMPLETE\";",
 							"tests[\"statusMessage is : \"+jsonData.request.requestStatus.statusMessage] = jsonData.request.requestStatus.statusMessage === \"Vnf has been created successfully.\";",
 							""
@@ -571,11 +572,11 @@
 							"var jsonData = pm.response.json();",
 							"var vnf_instance_found = false;",
 							"for (var i = 0; i < jsonData[\"generic-vnf\"].length; i++) { ",
-							"   if (jsonData[\"generic-vnf\"][i][\"vnf-name\"] === pm.globals.get(\"vnf_instance_name\")) {",
+							"   if (jsonData[\"generic-vnf\"][i][\"vnf-name\"] === pm.environment.get(\"vnf_instance_name\")) {",
 							"       vnf_instance_found = true;",
 							"   }",
 							"}",
-							"tests[\"VNF Instance : \"+ pm.globals.get(\"vnf_instance_name\") +\" exists in AAI inventory\"] = vnf_instance_found === true;"
+							"tests[\"VNF Instance : \"+ pm.environment.get(\"vnf_instance_name\") +\" exists in AAI inventory\"] = vnf_instance_found === true;"
 						],
 						"type": "text/javascript"
 					}
@@ -696,8 +697,8 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"if (responseCode.code === 202){",
-							"    pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
-							"    pm.globals.set(\"auto_vfmodule_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
+							"    pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"    pm.environment.set(\"auto_vfmodule_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
 							"}"
 						],
 						"type": "text/javascript"
@@ -709,31 +710,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n  \"requestDetails\": {\n    \"requestInfo\": {\n      \"instanceName\": \"{{vfmodule_instance_name}}\",\n      \"source\": \"VID\",\n      \"suppressRollback\": false,\n      \"requestorId\": \"test\"\n    },\n\t\"modelInfo\": {\n\t\t\"modelType\": \"vfModule\",\n\t\t\"modelInvariantId\": \"{{auto_vf_module_model_invariant_uuid}}\",\n\t\t\"modelVersionId\": \"{{auto_vf_module_model_uuid}}\",\n\t\t\"modelName\": \"{{auto_vf_module_model_name}}\",\n\t\t\"modelVersion\": \"1\",\n\t\t\"modelCustomizationId\": \"{{auto_vf_module_model_customization_uuid}}\",\n\t\t\"modelCustomizationName\": \"{{auto_vf_module_model_name}}\"\n\t},\n \t\"requestParameters\": {\n \t\t\"userParams\": [],\n \t\t\"testApi\": \"VNF_API\",\n \t\t\"usePreload\": true\n \t},\n    \"cloudConfiguration\": {\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"relatedInstanceList\": [{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"service\",\n\t\t\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_vnf_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"vnf\",\n\t\t\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_uuid}}\",\n\t\t\t\t\t\"modelCustomizationName\": \"{{auto_vf_name_for_model}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t}]\n  }\n}\n\n"
+					"raw": "{\n  \"requestDetails\": {\n    \"requestInfo\": {\n      \"instanceName\": \"{{vfmodule_instance_name}}\",\n      \"source\": \"VID\",\n      \"suppressRollback\": false,\n      \"requestorId\": \"test\"\n    },\n\t\"modelInfo\": {\n\t\t\"modelType\": \"vfModule\",\n\t\t\"modelInvariantId\": \"{{auto_vf_module_model_invariant_uuid}}\",\n\t\t\"modelVersionId\": \"{{auto_vf_module_model_uuid}}\",\n\t\t\"modelName\": \"{{auto_vf_module_model_name}}\",\n\t\t\"modelVersion\": \"1\",\n\t\t\"modelCustomizationId\": \"{{auto_vf_module_model_customization_uuid}}\",\n\t\t\"modelCustomizationName\": \"{{auto_vf_module_model_name}}\"\n\t},\n \t\"requestParameters\": {\n \t\t\"userParams\": [],\n \t\t\"testApi\": \"VNF_API\",\n \t\t\"usePreload\": true\n \t},\n    \"cloudConfiguration\": {\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"cloudOwner\": \"{{cloud_owner_name}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"relatedInstanceList\": [{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"service\",\n\t\t\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"relatedInstance\": {\n\t\t\t\t\"instanceId\": \"{{auto_vnf_instance_id}}\",\n\t\t\t\t\"modelInfo\": {\n\t\t\t\t\t\"modelType\": \"vnf\",\n\t\t\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_uuid}}\",\n\t\t\t\t\t\"modelCustomizationName\": \"{{auto_vf_name_for_model}}\"\n\t\t\t\t}\n\t\t\t}\n\t\t}]\n  }\n}\n\n"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}/vfModules",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}/vfModules",
 					"host": [
 						"{{url-so}}"
 					],
@@ -741,8 +742,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"vnfs",
 						"{{auto_vnf_instance_id}}",
@@ -765,7 +767,7 @@
 							"});",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_vfmodule_instance_id\", \"\"+jsonData.request.instanceReferences.vfModuleInstanceId+\"\");",
+							"pm.environment.set(\"auto_vfmodule_instance_id\", \"\"+jsonData.request.instanceReferences.vfModuleInstanceId+\"\");",
 							"tests[\"requestState is : \"+jsonData.request.requestStatus.requestState] = jsonData.request.requestStatus.requestState === \"COMPLETE\";",
 							"tests[\"statusMessage is : \"+jsonData.request.requestStatus.statusMessage] = jsonData.request.requestStatus.statusMessage === \"Vf Module has been created successfully.\";"
 						],
@@ -847,11 +849,11 @@
 							"var jsonData = pm.response.json();",
 							"var vfmodule_instance_found = false;",
 							"for (var i = 0; i < jsonData[\"vf-module\"].length; i++) { ",
-							"   if (jsonData[\"vf-module\"][i][\"vf-module-name\"] === pm.globals.get(\"vfmodule_instance_name\")) {",
+							"   if (jsonData[\"vf-module\"][i][\"vf-module-name\"] === pm.environment.get(\"vfmodule_instance_name\")) {",
 							"       vfmodule_instance_found = true;",
 							"   }",
 							"}",
-							"tests[\"vfmodule Instance : \"+ pm.globals.get(\"vfmodule_instance_name\") +\" exists in AAI inventory\"] = vfmodule_instance_found === true;"
+							"tests[\"vfmodule Instance : \"+ pm.environment.get(\"vfmodule_instance_name\") +\" exists in AAI inventory\"] = vfmodule_instance_found === true;"
 						],
 						"type": "text/javascript"
 					}
@@ -975,8 +977,8 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
-							"pm.globals.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
+							"pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"pm.environment.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -988,31 +990,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"instanceName\": \"{{virtual_link_instance_name}}\",\n\t\t\t\"source\": \"VID\",\n\t\t\t\"suppressRollback\": false,\n\t\t\t\"requestorId\": \"demo\",\n \t\t\t\"productFamilyId\": \"b9ac88f7-0e1b-462d-84ac-74c3c533217c\"\n\t\t},\n \t\t\"modelInfo\": {\n \t\t\t\"modelType\": \"network\",\n \t\t\t\"modelInvariantId\": \"{{auto_virtual_link_invariant_uuid}}\",\n \t\t\t\"modelVersionId\": \"{{auto_virtual_link_uuid}}\",\n \t\t\t\"modelName\": \"Generic NeutronNet\",\n \t\t\t\"modelVersion\": \"1.0\",\n \t\t\t\"modelCustomizationId\": \"{{auto_virtual_link_customization_uuid}}\",\n \t\t\t\"modelCustomizationName\": \"Generic NeutronNet 0\"\n \t\t},\n    \"requestParameters\": {\n      \"userParams\": [],\n      \"aLaCarte\": true,\n\t  \"testApi\": \"VNF_API\"\n    },\n    \"cloudConfiguration\": {\n      \"cloudOwner\": \"{{cloud_owner_name}}\",\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"lineOfBusiness\": {\n\t\t\t\"lineOfBusinessName\": \"{{lineofbusiness}}\"\n\t\t},\n\t\t\"platform\": {\n\t\t\t\"platformName\": \"{{platform}}\"\n\t\t},\n \t\t\"relatedInstanceList\": [{\n \t\t\t\"relatedInstance\": {\n \t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n \t\t\t\t\"modelInfo\": {\n \t\t\t\t\t\"modelType\": \"service\",\n \t\t\t\t\t\"modelName\": \"{{service}}\",\n \t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n \t\t\t\t\t\"modelVersion\": \"1.0\",\n \t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n \t\t\t\t}\n \t\t\t}\n \t\t}]\n  }\n}\n\n"
+					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"instanceName\": \"{{virtual_link_instance_name}}\",\n\t\t\t\"source\": \"VID\",\n\t\t\t\"suppressRollback\": false,\n\t\t\t\"requestorId\": \"demo\"\n\t\t},\n \t\t\"modelInfo\": {\n \t\t\t\"modelType\": \"network\",\n \t\t\t\"modelInvariantId\": \"{{auto_virtual_link_invariant_uuid}}\",\n \t\t\t\"modelVersionId\": \"{{auto_virtual_link_uuid}}\",\n \t\t\t\"modelName\": \"Generic NeutronNet\",\n \t\t\t\"modelVersion\": \"1.0\",\n \t\t\t\"modelCustomizationId\": \"{{auto_virtual_link_customization_uuid}}\",\n \t\t\t\"modelCustomizationName\": \"Generic NeutronNet 0\"\n \t\t},\n    \"requestParameters\": {\n      \"userParams\": [],\n      \"aLaCarte\": true,\n\t  \"testApi\": \"VNF_API\"\n    },\n    \"cloudConfiguration\": {\n      \"cloudOwner\": \"{{cloud_owner_name}}\",\n      \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n      \"tenantId\": \"{{tenant_id}}\"\n    },\n\t\t\"lineOfBusiness\": {\n\t\t\t\"lineOfBusinessName\": \"{{lineofbusiness}}\"\n\t\t},\n\t\t\"platform\": {\n\t\t\t\"platformName\": \"{{platform}}\"\n\t\t},\n \t\t\"relatedInstanceList\": [{\n \t\t\t\"relatedInstance\": {\n \t\t\t\t\"instanceId\": \"{{auto_service_instance_id}}\",\n \t\t\t\t\"modelInfo\": {\n \t\t\t\t\t\"modelType\": \"service\",\n \t\t\t\t\t\"modelName\": \"{{service}}\",\n \t\t\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n \t\t\t\t\t\"modelVersion\": \"1.0\",\n \t\t\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\"\n \t\t\t\t}\n \t\t\t}\n \t\t}]\n  }\n}\n\n"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/networks",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/networks",
 					"host": [
 						"{{url-so}}"
 					],
@@ -1020,8 +1022,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"networks"
 					]
@@ -1042,7 +1045,7 @@
 							"});",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.request.instanceReferences.networkInstanceId+\"\");",
+							"pm.environment.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.request.instanceReferences.networkInstanceId+\"\");",
 							"tests[\"requestState is : \"+jsonData.request.requestStatus.requestState] = jsonData.request.requestStatus.requestState === \"COMPLETE\";",
 							"tests[\"statusMessage is : \"+jsonData.request.requestStatus.statusMessage] = jsonData.request.requestStatus.statusMessage === \"Network has been created successfully.\";"
 						],
@@ -1219,8 +1222,8 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
-							"pm.globals.set(\"auto_service_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
+							"pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"pm.environment.set(\"auto_service_instance_id\", \"\"+jsonData.requestReferences.instanceId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -1232,31 +1235,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"instanceName\": \"{{service_instance_name}}\",\n\t\t\t\"source\": \"VID\",\n\t\t\t\"suppressRollback\": false,\n\t\t\t\"requestorId\": \"demo\"\n\t\t},\n\t\t\"modelInfo\": {\n\t\t\t\"modelType\": \"service\",\n\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\",\n\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\"modelVersion\": \"1.0\"\n\t\t},\n        \"cloudConfiguration\": {\n            \"tenantId\": \"3e3b55ca4c9948d1a9fa68715831c6bd\",\n            \"cloudOwner\": \"OPNFV\",\n            \"lcpCloudRegionId\": \"RegionOne\"\n        },\n\t\t\"requestParameters\": {\n\t\t\t\"userParams\": [],\n\t\t\t\"testApi\": \"VNF_API\",\n\t\t\t\"subscriptionServiceType\": \"{{service}}\",\n\t\t\t\"aLaCarte\": true\n\t\t},\n\t\t\"subscriberInfo\": {\n\t\t\t\"globalSubscriberId\": \"{{customer_name}}\"\n\t\t},\n\t\t\"project\": {\n\t\t\t\"projectName\": \"{{project}}\"\n\t\t},\n\t\t\"owningEntity\": {\n\t\t\t\"owningEntityId\": \"6b5b6b70-4e9a-4f6f-8b7b-cbd7cf990c6e\",\n\t\t\t\"owningEntityName\": \"{{owning_entity}}\"\n\t\t}\n\t}\n}"
+					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"instanceName\": \"{{service_instance_name}}\",\n\t\t\t\"source\": \"VID\",\n\t\t\t\"suppressRollback\": false,\n\t\t\t\"requestorId\": \"demo\"\n\t\t},\n\t\t\"modelInfo\": {\n\t\t\t\"modelType\": \"service\",\n\t\t\t\"modelInvariantId\": \"{{auto_service_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_service_uuid}}\",\n\t\t\t\"modelName\": \"{{service}}\",\n\t\t\t\"modelVersion\": \"1.0\"\n\t\t},\n        \"cloudConfiguration\": {\n            \"tenantId\": \"{{tenant_id}}\",\n            \"cloudOwner\": \"{{cloud_owner_name}}\",\n            \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\"\n        },\n\t\t\"requestParameters\": {\n\t\t\t\"userParams\": [],\n\t\t\t\"testApi\": \"VNF_API\",\n\t\t\t\"subscriptionServiceType\": \"{{service}}\",\n\t\t\t\"aLaCarte\": true\n\t\t},\n\t\t\"subscriberInfo\": {\n\t\t\t\"globalSubscriberId\": \"{{customer_name}}\"\n\t\t},\n\t\t\"project\": {\n\t\t\t\"projectName\": \"{{project}}\"\n\t\t},\n\t\t\"owningEntity\": {\n\t\t\t\"owningEntityId\": \"{{auto_owning_entity_id}}\",\n\t\t\t\"owningEntityName\": \"{{owning_entity}}\"\n\t\t}\n\t}\n}"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/serviceInstances",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances",
 					"host": [
 						"{{url-so}}"
 					],
@@ -1264,7 +1267,7 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
 						"serviceInstances"
 					]
@@ -1285,7 +1288,7 @@
 							"});",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.request.instanceReferences.networkInstanceId+\"\");",
+							"pm.environment.set(\"auto_virtual_link_instance_id\", \"\"+jsonData.request.instanceReferences.networkInstanceId+\"\");",
 							"tests[\"requestState is : \"+jsonData.request.requestStatus.requestState] = jsonData.request.requestStatus.requestState === \"COMPLETE\";",
 							"tests[\"statusMessage is : \"+jsonData.request.requestStatus.statusMessage] = jsonData.request.requestStatus.statusMessage === \"Network has been created successfully.\";"
 						],
diff --git a/test/postman/11_delete_instances.postman_collection.json b/test/postman/11_delete_instances.postman_collection.json
index b0a0d8c..9fc09b6 100644
--- a/test/postman/11_delete_instances.postman_collection.json
+++ b/test/postman/11_delete_instances.postman_collection.json
@@ -1,6 +1,6 @@
 {
 	"info": {
-		"_postman_id": "45694934-9bf1-485a-8b98-53f3da0b5bb8",
+		"_postman_id": "7e53b9c4-273b-4012-81f3-0634173626c2",
 		"name": "11_delete_instances",
 		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
 	},
@@ -19,7 +19,7 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -31,31 +31,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"source\": \"VID\",\n\t\t\t\"requestorId\": \"test\"\n\t\t},\n\t\t\"modelInfo\": {\n\t\t\"modelType\": \"vfModule\",\n\t\t\"modelInvariantId\": \"{{auto_vf_module_model_invariant_uuid}}\",\n\t\t\"modelVersionId\": \"{{auto_vf_module_model_uuid}}\",\n\t\t\"modelName\": \"{{auto_vf_module_model_name}}\",\n\t\t\"modelVersion\": \"1\",\n\t\t\"modelCustomizationId\": \"{{auto_vf_module_model_customization_uuid}}\",\n\t\t\"modelCustomizationName\": \"{{auto_vf_module_model_name}}\"\n\t\t},\n\t\t\"requestParameters\": {\n\t\t\t\"testApi\": \"VNF_API\"\n\t\t},\n\t\t\"cloudConfiguration\": {\n\t\t\t\"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n\t\t\t\"tenantId\": \"{{tenant_id}}\"\n\t\t}\n\t}\n}\n\n"
+					"raw": "{\n    \"requestDetails\": {\n        \"requestInfo\": {\n            \"source\": \"VID\",\n            \"requestorId\": \"test\"\n        },\n        \"modelInfo\": {\n            \"modelType\": \"vfModule\",\n            \"modelInvariantId\": \"{{auto_vf_module_model_invariant_uuid}}\",\n            \"modelVersionId\": \"{{auto_vf_module_model_uuid}}\",\n            \"modelName\": \"{{auto_vf_module_model_name}}\",\n            \"modelVersion\": \"1\",\n            \"modelCustomizationId\": \"{{auto_vf_module_model_customization_uuid}}\",\n            \"modelCustomizationName\": \"{{auto_vf_module_model_name}}\"\n        },\n        \"requestParameters\": {\n            \"testApi\": \"VNF_API\"\n        },\n        \"cloudConfiguration\": {\n            \"cloudOwner\": \"{{cloud_owner_name}}\",\n            \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n            \"tenantId\": \"{{tenant_id}}\"\n        }\n    }\n}"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}/vfModules/{{auto_vfmodule_instance_id}}",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}/vfModules/{{auto_vfmodule_instance_id}}",
 					"host": [
 						"{{url-so}}"
 					],
@@ -63,8 +63,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"vnfs",
 						"{{auto_vnf_instance_id}}",
@@ -173,14 +174,14 @@
 							"",
 							"if (pm.response.code === 200){",
 							"    for (var i = 0; i < jsonData[\"vf-module\"].length; i++) { ",
-							"        if (jsonData[\"vf-module\"][i][\"vf-module-name\"] === pm.globals.get(\"vfmodule_instance_name\")) {",
+							"        if (jsonData[\"vf-module\"][i][\"vf-module-name\"] === pm.environment.get(\"vfmodule_instance_name\")) {",
 							"            vfmodule_instance_found = true;",
 							"        }",
 							"    }",
 							"}",
 							"",
 							"",
-							"tests[\"vfmodule Instance : \"+ pm.globals.get(\"vfmodule_instance_name\") +\" no longer exists in AAI inventory\"] = vfmodule_instance_found === false;"
+							"tests[\"vfmodule Instance : \"+ pm.environment.get(\"vfmodule_instance_name\") +\" no longer exists in AAI inventory\"] = vfmodule_instance_found === false;"
 						],
 						"type": "text/javascript"
 					}
@@ -245,7 +246,7 @@
 							"});",
 							"var jsonData = pm.response.json();",
 							"",
-							"pm.globals.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
+							"pm.environment.set(\"auto_so_request_id\", \"\"+jsonData.requestReferences.requestId+\"\");",
 							""
 						],
 						"type": "text/javascript"
@@ -257,31 +258,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"source\": \"VID\",\n\t\t\t\"requestorId\": \"test\"\n\t\t},\n\t\t\"modelInfo\": {\n\t\t\t\"modelType\": \"vnf\",\n\t\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_id}}\",\n\t\t\t\"modelCustomizationName\": \"{{vf_name}} 0\"\n\t\t},\n\t\t\"requestParameters\": {\n\t\t\t\"testApi\": \"VNF_API\"\n\t\t},\n\t\t\"cloudConfiguration\": {\n\t\t\t\"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n\t\t\t\"tenantId\": \"{{tenant_id}}\"\n\t\t}\n\t}\n}\n\n"
+					"raw": "{\n\t\"requestDetails\": {\n\t\t\"requestInfo\": {\n\t\t\t\"source\": \"VID\",\n\t\t\t\"requestorId\": \"test\"\n\t\t},\n\t\t\"modelInfo\": {\n\t\t\t\"modelType\": \"vnf\",\n\t\t\t\"modelInvariantId\": \"{{auto_vf_invariant_uuid}}\",\n\t\t\t\"modelVersionId\": \"{{auto_vf_uuid}}\",\n\t\t\t\"modelName\": \"{{vf_name}}\",\n\t\t\t\"modelVersion\": \"1.0\",\n\t\t\t\"modelCustomizationId\": \"{{auto_vf_customization_id}}\",\n\t\t\t\"modelCustomizationName\": \"{{vf_name}} 0\"\n\t\t},\n\t\t\"requestParameters\": {\n\t\t\t\"testApi\": \"VNF_API\"\n\t\t},\n        \"cloudConfiguration\": {\n            \"cloudOwner\": \"{{cloud_owner_name}}\",\n            \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n            \"tenantId\": \"{{tenant_id}}\"\n        }\n\t}\n}\n\n"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/vnfs/{{auto_vnf_instance_id}}",
 					"host": [
 						"{{url-so}}"
 					],
@@ -289,8 +290,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"vnfs",
 						"{{auto_vnf_instance_id}}"
@@ -318,31 +320,31 @@
 				"header": [
 					{
 						"key": "Accept",
-						"value": "application/json"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Content-Type",
-						"value": "application/json"
-					},
-					{
-						"key": "X-FromAppId",
-						"value": "AAI"
-					},
-					{
-						"key": "X-TransactionId",
-						"value": "get_aai_subscr"
+						"value": "application/json",
+						"type": "text"
 					},
 					{
 						"key": "Authorization",
-						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA=="
+						"value": "Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==",
+						"type": "text"
+					},
+					{
+						"key": "X-ONAP-PartnerName",
+						"value": "NBI",
+						"type": "text"
 					}
 				],
 				"body": {
 					"mode": "raw",
-					"raw": "   {\n \t\"requestDetails\": {\n \t\t\"modelInfo\": {\n \t\t\t\"modelType\": \"network\"\n \t\t},\n \t\t\"requestInfo\": {\n \t\t\t\"source\": \"VID\",\n \t\t\t\"requestorId\": \"demo\"\n \t\t},\n \t\t\"requestParameters\": {\n \t\t\t\"testApi\": \"VNF_API\"\n \t\t},\n\t\t\"cloudConfiguration\": {\n\t\t\t\"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n\t\t\t\"tenantId\": \"{{tenant_id}}\"\n\t\t}\n\t}\n}\n\n"
+					"raw": "   {\n \t\"requestDetails\": {\n \t\t\"modelInfo\": {\n \t\t\t\"modelType\": \"network\"\n \t\t},\n \t\t\"requestInfo\": {\n \t\t\t\"source\": \"VID\",\n \t\t\t\"requestorId\": \"demo\"\n \t\t},\n \t\t\"requestParameters\": {\n \t\t\t\"testApi\": \"VNF_API\"\n \t\t},\n        \"cloudConfiguration\": {\n            \"cloudOwner\": \"{{cloud_owner_name}}\",\n            \"lcpCloudRegionId\": \"{{onap_cloud_region_id}}\",\n            \"tenantId\": \"{{tenant_id}}\"\n        }\n\t}\n}\n\n"
 				},
 				"url": {
-					"raw": "{{url-so}}/onap/so/infra/serviceInstances/v7/{{auto_service_instance_id}}/networks/{{auto_virtual_link_instance_id}}",
+					"raw": "{{url-so}}/onap/so/infra/serviceInstantiation/v7/serviceInstances/{{auto_service_instance_id}}/networks/{{auto_virtual_link_instance_id}}",
 					"host": [
 						"{{url-so}}"
 					],
@@ -350,8 +352,9 @@
 						"onap",
 						"so",
 						"infra",
-						"serviceInstances",
+						"serviceInstantiation",
 						"v7",
+						"serviceInstances",
 						"{{auto_service_instance_id}}",
 						"networks",
 						"{{auto_virtual_link_instance_id}}"
@@ -457,12 +460,12 @@
 							"",
 							"if (pm.response.code === 200){",
 							"for (var i = 0; i < jsonData[\"generic-vnf\"].length; i++) { ",
-							"   if (jsonData[\"generic-vnf\"][i][\"vnf-name\"] === pm.globals.get(\"vnf_instance_name\")) {",
+							"   if (jsonData[\"generic-vnf\"][i][\"vnf-name\"] === pm.environment.get(\"vnf_instance_name\")) {",
 							"       vnf_instance_found = true;",
 							"   }",
 							"}",
 							"}",
-							"tests[\"VNF Instance : \"+ pm.globals.get(\"vnf_instance_name\") +\" no longer exists in AAI inventory\"] = vnf_instance_found === false;"
+							"tests[\"VNF Instance : \"+ pm.environment.get(\"vnf_instance_name\") +\" no longer exists in AAI inventory\"] = vnf_instance_found === false;"
 						],
 						"type": "text/javascript"
 					}
@@ -524,7 +527,7 @@
 							"});",
 							"",
 							"var jsonData = pm.response.json();",
-							"pm.globals.set(\"auto_service_order_id\", jsonData.id);",
+							"pm.environment.set(\"auto_service_order_id\", jsonData.id);",
 							"",
 							"",
 							"",
@@ -579,18 +582,18 @@
 							"",
 							"var jsonData = pm.response.json();",
 							"",
-							"tests[pm.globals.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.globals.get(\"externalId\");",
-							"tests[\"service_order_id exists\"] = jsonData.id === pm.globals.get(\"auto_service_order_id\");",
+							"tests[pm.environment.get(\"externalId\")+\" exists\"] = jsonData.externalId === pm.environment.get(\"externalId\");",
+							"tests[\"service_order_id exists\"] = jsonData.id === pm.environment.get(\"auto_service_order_id\");",
 							"tests[\"service Order state is : \"+jsonData.state] = jsonData.state === \"completed\";",
 							"tests[\"Service Instance state is : \"+jsonData.orderItem[0].service.serviceState] = jsonData.orderItem[0].service.serviceState === \"active\";",
 							"",
 							"",
 							"if(jsonData.state == \"completed\"){",
-							"    pm.globals.set(\"auto_service_instance_id\", \"\"+jsonData.orderItem[0].service.id+\"\");",
+							"    pm.environment.set(\"auto_service_instance_id\", \"\"+jsonData.orderItem[0].service.id+\"\");",
 							"}",
 							"if (jsonData.orderMessage !== null){",
 							"    tests[\"order message is : \" +jsonData.orderMessage[0].messageInformation] = jsonData.orderMessage[0].messageInformation === \"\";",
-							"    pm.globals.set(\"auto_service_messageInformation\", \"\"+jsonData.orderMessage[0].messageInformation+\"\");",
+							"    pm.environment.set(\"auto_service_messageInformation\", \"\"+jsonData.orderMessage[0].messageInformation+\"\");",
 							"    }",
 							"",
 							""
@@ -660,12 +663,12 @@
 							"",
 							"if (pm.response.code === 200){",
 							"for (var i = 0; i < jsonData.length; i++) { ",
-							"   if (jsonData[i].name === pm.globals.get(\"service_instance_name\")) {",
+							"   if (jsonData[i].name === pm.environment.get(\"service_instance_name\")) {",
 							"       service_instance_found = true;",
 							"   }",
 							"}",
 							"}",
-							"tests[pm.globals.get(\"service_instance_name\")+\" no longer in list\"] = service_instance_found === false;"
+							"tests[pm.environment.get(\"service_instance_name\")+\" no longer in list\"] = service_instance_found === false;"
 						],
 						"type": "text/javascript"
 					}
diff --git a/test/postman/README.md b/test/postman/README.md
deleted file mode 100644
index 649c5ed..0000000
--- a/test/postman/README.md
+++ /dev/null
@@ -1,98 +0,0 @@
-# Postman Collections
-
-## Using Postman
-
-That repository contains several Postman collections and 2 environment files.
-
-They have been tested with Onap Dublin (they are not compatible with
-  Casablanca, and there is not guaranty about ONAP "master" as API definition
-  can change)
-
-You first need to import all those files into your Postman.
-![postman](./images/import.png)
-
-And you should see all the collections
-![postman](./images/collections.png)
-
-Each collection is made of several API operations
-![postman](./images/collection-detail.png)
-
-Running all those collections, in the order, from 1 to 10 will create a lot of
-objects in ONAP components :
-
-- SDC : vendor, VSP, zip file upload, VF from VSP, Service, add VF to Service
-- VID : OwningEntity, LineOfBusiness, Project, Platform
-- AAI : customer, subscription, cloud region, tenant
-- NBI : serviceOrder to add a service instance, serviceOrder to delete a service
- instance
-
-The order is very important because a lot of API requests will need the API
- response from the previous operation.
-![postman](./images/collection-detail-test.png)
-
-It is possible to run the complete collection using Postman
-![postman](./images/run.png)
-
-You need, a zip file that contains Heat files for a VNF.
-
-Collection 3 is about uploading that file into ONAP SDC.
-![postman](./images/zipfile.png)
-
-Before running those collections, once in Postman, you need to have a look
-at "globals" environment parameters.
-![postman](./images/globals.png)
-
-All variables that begin by "auto_" must NOT be changed (they will be modified
- using API response)
-All other variables must be adapted to your needs.
-In particular, you need to put your own values for cloud_region_id, tenant_name
- and tenant_id to fit with the place where you will instantiate the VNF
-
-```yaml
- service:freeradius
- vf_name:integration_test_VF_freeradius
- vsp_name:integration_test_VSP
- vendor_name:onap_integration_vendor
- owning_entity:integration_test_OE
- platform:integration_test_platform
- project:integration_test_project
- lineofbusiness:integration_test_LOB
- customer_name:generic
- cloud_owner_name:OPNFV
- cloud_region_id:RegionOne
- tenant_name:openlab-vnfs
- tenant_id:234a9a2dc4b643be9812915b214cdbbb
- externalId:integration_test_BSS-001
- service_instance_name:integration_test_freeradius_instance_001
- listener_url:http://10.4.2.65:8080/externalapi/listener/v1/listener
-```
-
-## Using Newman
-
-Newman is a tool that allow to run postman collections via CLI
-
-Using a Linux server, just run those lines:
-
-```shell
-git clone https://gitlab.com/Orange-OpenSource/lfn/onap/onap-tests.git
-cd onap-tests/postman
-sudo apt-get -y install zip
-USECASE=$'ubuntu16'
-zip -j $USECASE.zip ../onap_tests/templates/heat_files/$USECASE/*
-TAB=$'\t\t\t\t\t\t\t'
-sed -i -e "s/.*src.*/$TAB\"src\": \"$USECASE.zip\"/" 03_Onboard_VSP_part2.postman_collection.json
-docker pull postman/newman:alpine
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 01_Onboard_Vendor.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json --reporters cli,json --reporter-cli-no-assertions --reporter-cli-no-console
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 02_Onboard_VSP_part1.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 03_Onboard_VSP_part2.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 04_Onboard_VSP_part3.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 05_Onboard_VF.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 06_Onboard_Service.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json --insecure --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json
-docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 10_Service_Order.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-globals globals.postman_globals.json --reporters cli,json --reporter-cli-no-assertions --reporter-cli-no-console
-```
-
-All collections are processed, then you can see results and you will also obtain result json files in the onap-tests/postamn/newman directory
-
-Of course you can adapt globals variables in globals.postman_globals.json or change the USECASE=$'ubuntu16' value to onboard any heat template located in onap_tests/templates/heat_files directory
diff --git a/test/postman/globals.postman_globals.json b/test/postman/globals.postman_globals.json
index 91c3845..adf368f 100644
--- a/test/postman/globals.postman_globals.json
+++ b/test/postman/globals.postman_globals.json
@@ -1,233 +1,8 @@
 {
-  "id": "eefacaa7-254c-3fc7-f946-b7d87508e343",
-  "name": "Postman Globals",
-  "values": [
-    {
-      "key": "service",
-      "value": "integration_test_freeradius",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "vf_name",
-      "value": "integration_test_VF_freeradius",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "vsp_name",
-      "value": "integration_test_VSP",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "vendor_name",
-      "value": "onap_integration_vendor",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "owning_entity",
-      "value": "integration_test_OE",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "platform",
-      "value": "integration_test_platform",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "project",
-      "value": "integration_test_project",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "lineofbusiness",
-      "value": "integration_test_LOB",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "customer_name",
-      "value": "integration_test_customer",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "cloud_owner_name",
-      "value": "OPNFV",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "cloud_region_id",
-      "value": "RegionOne",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "tenant_name",
-      "value": "openlab-vnfs",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "tenant_id",
-      "value": "900c4b62bccf4b11a21e3ac92ff8fc65",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "externalId",
-      "value": "integration_test_BSS-001",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "service_instance_name",
-      "value": "integration_test_freeradius_instance_001",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "listener_url",
-      "value": "http://10.4.2.65:8080/externalapi/listener/v1/listener",
-      "description": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vendor_version_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vendor_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vsp_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vsp_version_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vsp_version_name",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vf_invariant_uuid",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vf_uuid",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vf_unique_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_vf_new_unique_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_uuid",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_unique_id",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_invariant_uuid",
-      "value": "",
-      "type": "text",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_invariantUUID",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_resource_version",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_distribution_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_customer_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_new_unique_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_order_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    },
-    {
-      "key": "auto_service_instance_id",
-      "type": "text",
-      "value": "",
-      "enabled": true
-    }
-  ],
-  "_postman_variable_scope": "globals",
-  "_postman_exported_at": "2019-01-25T07:54:33.611Z",
-  "_postman_exported_using": "Postman/5.5.4"
+	"id": "146e52f0-fd32-4814-8e58-8a3c0f4d5eb7",
+	"values": [],
+	"name": "My Workspace Globals",
+	"_postman_variable_scope": "globals",
+	"_postman_exported_at": "2019-10-22T09:09:26.620Z",
+	"_postman_exported_using": "Postman/6.7.5"
 }
\ No newline at end of file
diff --git a/test/postman/integration_test_urls.postman_environment.json b/test/postman/integration_test_urls.postman_environment.json
index 5b3841c..1a134cb 100644
--- a/test/postman/integration_test_urls.postman_environment.json
+++ b/test/postman/integration_test_urls.postman_environment.json
@@ -1,52 +1,410 @@
 {
-  "id": "271086b7-3875-26c5-08c0-3ad9b521c3f7",
-  "name": "integration_test_urls",
-  "values": [
-    {
-      "enabled": true,
-      "key": "url-sdc",
-      "value": "http://sdc.api.fe.simpledemo.onap.org:30205",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-sdc2",
-      "value": "http://sdc.api.fe.simpledemo.onap.org:30206",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-vid",
-      "value": "http://vid.api.simpledemo.onap.org:30238",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-aai",
-      "value": "https://aai.api.sparky.simpledemo.onap.org:30233",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-sdnc",
-      "value": "https://sdnc.api.simpledemo.onap.org:30267",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-nbi",
-      "value": "http://nbi.api.simpledemo.onap.org:30274/nbi/api/v4",
-      "type": "text"
-    },
-    {
-      "enabled": true,
-      "key": "url-so",
-      "value": "http://so.api.simpledemo.onap.org:30277",
-      "type": "text"
-    }
-  ],
-  "timestamp": 1548341543962,
-  "_postman_variable_scope": "environment",
-  "_postman_exported_at": "2019-01-24T16:48:43.039Z",
-  "_postman_exported_using": "Postman/5.5.4"
+	"id": "0ab0cae5-3627-447a-a322-aca5a6e764b0",
+	"name": "integration_test_urls",
+	"values": [
+		{
+			"key": "url-sdc",
+			"value": "http://sdc.api.fe.simpledemo.onap.org:30205",
+			"enabled": true
+		},
+		{
+			"key": "url-sdc2",
+			"value": "http://sdc.api.fe.simpledemo.onap.org:30206",
+			"enabled": true
+		},
+		{
+			"key": "url-vid",
+			"value": "http://vid.api.simpledemo.onap.org:30238",
+			"enabled": true
+		},
+		{
+			"key": "url-aai",
+			"value": "https://aai.api.sparky.simpledemo.onap.org:30233",
+			"enabled": true
+		},
+		{
+			"key": "url-sdnc",
+			"value": "https://sdnc.api.simpledemo.onap.org:30267",
+			"enabled": true
+		},
+		{
+			"key": "url-nbi",
+			"value": "http://nbi.api.simpledemo.onap.org:30274/nbi/api/v4",
+			"enabled": true
+		},
+		{
+			"key": "url-so",
+			"value": "http://so.api.simpledemo.onap.org:30277",
+			"enabled": true
+		},
+		{
+			"key": "vendor_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "vsp_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "vf_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "service",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "virtual_link_type",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "owning_entity_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "customer_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "complex_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "cloud_owner_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "onap_cloud_region_id",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "tenant_id",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "service_instance_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "vnf_instance_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "vfmodule_instance_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "availability_zone_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "hypervisor_type",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "platform",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "project",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "lineofbusiness",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "tenant_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "externalId",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "openstack_region_id",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "cloud_type",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "cloud_region_version",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "keystone_url",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "user_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "keystone_password",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "random_uuid",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "virtual_link_instance_name",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "service_name_macro",
+			"value": "",
+			"description": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vendor_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vendor_version_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vsp_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vsp_version_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vsp_version_name",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_invariant_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_unique_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_new_unique_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_invariant_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_unique_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_customization_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_name_for_model",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_invariant_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_unique_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_customization_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_name_for_model",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_new_unique_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_module_model_customization_name",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_module_model_customization_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_module_model_invariant_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_module_model_name",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vf_module_model_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_model_customization_uuid",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_distribution_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_customer_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_invariantUUID",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_resource_version",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_owning_entity_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_service_instance_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_so_request_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_virtual_link_instance_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vnf_instance_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "auto_vfmodule_instance_id",
+			"value": "",
+			"enabled": true
+		},
+		{
+			"key": "owning_entity_id",
+			"value": "",
+			"description": "",
+			"enabled": true
+		}
+	],
+	"_postman_variable_scope": "environment",
+	"_postman_exported_at": "2019-10-22T15:18:32.148Z",
+	"_postman_exported_using": "Postman/6.7.5"
 }
\ No newline at end of file
