diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml
index 42a86a2ea..8ace7394b 100644
--- a/.github/ISSUE_TEMPLATE/bug.yml
+++ b/.github/ISSUE_TEMPLATE/bug.yml
@@ -39,6 +39,7 @@ body:
           label: Version
           description: What version of our software are you running? (mcdev --version)
           options:
+              - 7.1.1
               - 7.1.0
               - 7.0.4
               - 7.0.3
diff --git a/@types/lib/Deployer.d.ts.map b/@types/lib/Deployer.d.ts.map
index 4a70ba7a5..dd157c537 100644
--- a/@types/lib/Deployer.d.ts.map
+++ b/@types/lib/Deployer.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Deployer.d.ts","sourceRoot":"","sources":["../../lib/Deployer.js"],"names":[],"mappings":";uBAYa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;mCACzC,OAAO,qBAAqB,EAAE,oBAAoB;2BAClD,OAAO,qBAAqB,EAAE,YAAY;sBAE1C,OAAO,qBAAqB,EAAE,OAAO;AAhBlD;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;GAGG;AACH;IAwBI;;;;;;;OAOG;IACH,4BALW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE;YAAQ,MAAM,GAAE,oBAAoB;KAAC,CAAC,CA2J3D;IACD;;;;;;;;;OASG;IACH,uBAPW,MAAM,MACN,MAAM,cACN,OAAO,YACP,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAmB1C;IAmHD;;;;;;;OAOG;IACH,iCALW,MAAM,YACN,MAAM,EAAE,gBACR,OAAO,GACL,OAAO,CAAE,oBAAoB,CAAC,CA4B1C;IAED;;;;;;;OAOG;IACH,0CALW,MAAM,YACN,oBAAoB,mBACpB,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CA8G5B;IA/dD;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAkBlB;IAfG,iDAAwB;IACxB,kDAA4B;IAC5B,kBAIE;IACF,oBAIE;IAoMN;;;;;;OAMG;IACH,gBAJW,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CA0G1C;IAlGO,mCAAmC;IACnC,UADW,oBAAoB,CACuC;CA4PjF"}
\ No newline at end of file
+{"version":3,"file":"Deployer.d.ts","sourceRoot":"","sources":["../../lib/Deployer.js"],"names":[],"mappings":";uBAYa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;gCACnD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;mCACzC,OAAO,qBAAqB,EAAE,oBAAoB;2BAClD,OAAO,qBAAqB,EAAE,YAAY;sBAE1C,OAAO,qBAAqB,EAAE,OAAO;AAhBlD;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;GAGG;AACH;IAwBI;;;;;;;OAOG;IACH,4BALW,MAAM,qBACN,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE;YAAQ,MAAM,GAAE,oBAAoB;KAAC,CAAC,CA2J3D;IACD;;;;;;;;;OASG;IACH,uBAPW,MAAM,MACN,MAAM,cACN,OAAO,YACP,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CAsB1C;IAmHD;;;;;;;OAOG;IACH,iCALW,MAAM,YACN,MAAM,EAAE,gBACR,OAAO,GACL,OAAO,CAAE,oBAAoB,CAAC,CA4B1C;IAED;;;;;;;OAOG;IACH,0CALW,MAAM,YACN,oBAAoB,mBACpB,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,CAAC,CA8G5B;IAleD;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAkBlB;IAfG,iDAAwB;IACxB,kDAA4B;IAC5B,kBAIE;IACF,oBAIE;IAuMN;;;;;;OAMG;IACH,gBAJW,MAAM,EAAE,GAAG,YAAY,WACvB,MAAM,EAAE,GACN,OAAO,CAAE,oBAAoB,CAAC,CA0G1C;IAlGO,mCAAmC;IACnC,UADW,oBAAoB,CACuC;CA4PjF"}
\ No newline at end of file
diff --git a/@types/lib/Retriever.d.ts.map b/@types/lib/Retriever.d.ts.map
index d346a8d0c..9e4516a49 100644
--- a/@types/lib/Retriever.d.ts.map
+++ b/@types/lib/Retriever.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Retriever.d.ts","sourceRoot":"","sources":["../../lib/Retriever.js"],"names":[],"mappings":";uBAUa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;mCACnD,OAAO,qBAAqB,EAAE,oBAAoB;gCAClD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;2BACzC,OAAO,qBAAqB,EAAE,YAAY;AAdvD;;;;;;;;;;;;;;;GAeG;AAEH;;GAEG;AACH;IACI;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAYlB;IATG,iDAAwB;IACxB,kDAA4B;IAC5B,oBAAkD;IAClD,oBAAkD;IAClD,iBAIE;IAGN;;;;;;;;OAQG;IACH,wBANW,MAAM,EAAE,gBACR,MAAM,EAAE,GAAG,YAAY,sBACvB,WAAW,kBACX,OAAO,GACL,OAAO,CAAE,qBAAqB,CAAC,CA+I3C;IAED;;;;;OAKG;IACH,oCAHW,MAAM,EAAE,GACN,MAAM,EAAE,CAepB;CACJ"}
\ No newline at end of file
+{"version":3,"file":"Retriever.d.ts","sourceRoot":"","sources":["../../lib/Retriever.js"],"names":[],"mappings":";uBAUa,OAAO,qBAAqB,EAAE,QAAQ;0BACtC,OAAO,qBAAqB,EAAE,WAAW;8BACzC,OAAO,qBAAqB,EAAE,eAAe;sBAC7C,OAAO,qBAAqB,EAAE,OAAO;+BACrC,OAAO,qBAAqB,EAAE,gBAAgB;mCAC9C,OAAO,qBAAqB,EAAE,oBAAoB;kCAClD,OAAO,qBAAqB,EAAE,mBAAmB;8BACjD,OAAO,qBAAqB,EAAE,eAAe;iCAC7C,OAAO,qBAAqB,EAAE,kBAAkB;oCAChD,OAAO,qBAAqB,EAAE,qBAAqB;mCACnD,OAAO,qBAAqB,EAAE,oBAAoB;gCAClD,OAAO,qBAAqB,EAAE,iBAAiB;0BAC/C,OAAO,qBAAqB,EAAE,WAAW;2BACzC,OAAO,qBAAqB,EAAE,YAAY;AAdvD;;;;;;;;;;;;;;;GAeG;AAEH;;GAEG;AACH;IACI;;;;;OAKG;IACH,wBAHW,OAAO,YACP,QAAQ,EAYlB;IATG,iDAAwB;IACxB,kDAA4B;IAC5B,oBAAkD;IAClD,oBAAkD;IAClD,iBAIE;IAGN;;;;;;;;OAQG;IACH,wBANW,MAAM,EAAE,gBACR,MAAM,EAAE,GAAG,YAAY,sBACvB,WAAW,kBACX,OAAO,GACL,OAAO,CAAE,qBAAqB,CAAC,CA0J3C;IAED;;;;;OAKG;IACH,oCAHW,MAAM,EAAE,GACN,MAAM,EAAE,CAepB;CACJ"}
\ No newline at end of file
diff --git a/@types/lib/index.d.ts.map b/@types/lib/index.d.ts.map
index c83cc7cde..e7542667a 100644
--- a/@types/lib/index.d.ts.map
+++ b/@types/lib/index.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.js"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/Asset.d.ts b/@types/lib/metadataTypes/Asset.d.ts
index 18c4379d4..0cb9d83a7 100644
--- a/@types/lib/metadataTypes/Asset.d.ts
+++ b/@types/lib/metadataTypes/Asset.d.ts
@@ -475,6 +475,42 @@ declare namespace Asset {
                 retrieving: boolean;
                 template: boolean;
             };
+            'businessUnitAvailability.%': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'businessUnitAvailability.%.view': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'businessUnitAvailability.%.update': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'businessUnitAvailability.%.delete': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'businessUnitAvailability.%.memberId': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'businessUnitAvailability.%.transferOwnership': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             category: {
                 isCreateable: boolean;
                 isUpdateable: boolean;
@@ -565,6 +601,12 @@ declare namespace Asset {
             'data.approvals': {
                 skipValidation: boolean;
             };
+            'data.email': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'data.email.attributes': {
                 skipValidation: boolean;
             };
@@ -781,6 +823,18 @@ declare namespace Asset {
                 retrieving: boolean;
                 template: boolean;
             };
+            'sharingProperties.sharedFrom': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'sharingProperties.sharedFromMID': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'sharingProperties.sharingType': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
diff --git a/@types/lib/metadataTypes/Asset.d.ts.map b/@types/lib/metadataTypes/Asset.d.ts.map
index f3da8f946..91df10f7c 100644
--- a/@types/lib/metadataTypes/Asset.d.ts.map
+++ b/@types/lib/metadataTypes/Asset.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Asset.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Asset.js"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAr+EwB,mBAAmB"}
\ No newline at end of file
+{"version":3,"file":"Asset.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Asset.js"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA3+EwB,mBAAmB"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/AttributeSet.d.ts b/@types/lib/metadataTypes/AttributeSet.d.ts
index 41a93245b..905fe8b03 100644
--- a/@types/lib/metadataTypes/AttributeSet.d.ts
+++ b/@types/lib/metadataTypes/AttributeSet.d.ts
@@ -476,6 +476,54 @@ declare namespace AttributeSet {
                 retrieving: boolean;
                 template: any;
             };
+            'relationships[].leftItem.cardinality': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].leftItem.relationshipType': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].leftItem.r__attributeSet_key': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].leftItem.r__attributeGroup_key': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].rightItem.cardinality': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].rightItem.relationshipType': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].rightItem.r__attributeSet_key': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'relationships[].rightItem.r__attributeGroup_key': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
             'relationships[].leftRelationshipIDs[].type': {
                 isCreateable: any;
                 isUpdateable: any;
@@ -920,12 +968,39 @@ declare namespace AttributeSet {
                 retrieving: boolean;
                 template: any;
             };
+            'valueDefinitions[].storageFieldValueID.type': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
+            'valueDefinitions[].storageFieldValueID.value': {
+                isCreateable: any;
+                isUpdateable: any;
+                retrieving: boolean;
+                template: any;
+            };
             'valueDefinitions[].storageName': {
                 isCreateable: any;
                 isUpdateable: any;
                 retrieving: boolean;
                 template: any;
             };
+            'valueDefinitions[].storageObjectFieldInformation': {
+                skipValidation: boolean;
+            };
+            'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldAPIName': {
+                skipValidation: boolean;
+            };
+            'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldDataTypeName': {
+                skipValidation: boolean;
+            };
+            'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldLength': {
+                skipValidation: boolean;
+            };
+            'valueDefinitions[].storageObjectFieldInformation.externalIsRowIdentifier': {
+                skipValidation: boolean;
+            };
             'valueDefinitions[].valueDefinitionID': {
                 isCreateable: any;
                 isUpdateable: any;
diff --git a/@types/lib/metadataTypes/AttributeSet.d.ts.map b/@types/lib/metadataTypes/AttributeSet.d.ts.map
index 923794d83..697a76d90 100644
--- a/@types/lib/metadataTypes/AttributeSet.d.ts.map
+++ b/@types/lib/metadataTypes/AttributeSet.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"AttributeSet.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/AttributeSet.js"],"names":[],"mappings":";+BAQa,OAAO,wBAAwB,EAAE,gBAAgB;8BACjD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;AAHhE;;;;GAIG;AAEH;;;;GAIG;AACH;IACI,mCAA8B;IAC9B;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAaxC;IACD;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IACD;;;;;;;OAOG;IACH,kDAJW;YAAQ,MAAM,GAAE,MAAM;KAAC,oBACvB,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,CAAC,CAiG9B;IAoBD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAwK5B;IAED;;;;OAIG;IACH,qCAFa,MAAM,EAAE,CAgBpB;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA3WwB,mBAAmB"}
\ No newline at end of file
+{"version":3,"file":"AttributeSet.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/AttributeSet.js"],"names":[],"mappings":";+BAQa,OAAO,wBAAwB,EAAE,gBAAgB;8BACjD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;AAHhE;;;;GAIG;AAEH;;;;GAIG;AACH;IACI,mCAA8B;IAC9B;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAaxC;IACD;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IACD;;;;;;;OAOG;IACH,kDAJW;YAAQ,MAAM,GAAE,MAAM;KAAC,oBACvB,MAAM,GACJ,OAAO,CAAE,MAAM,EAAE,CAAC,CAiG9B;IAoBD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAwK5B;IAED;;;;OAIG;IACH,qCAFa,MAAM,EAAE,CAgBpB;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA3WwB,mBAAmB"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/EmailSend.d.ts b/@types/lib/metadataTypes/EmailSend.d.ts
index a353517d3..fe5c8e476 100644
--- a/@types/lib/metadataTypes/EmailSend.d.ts
+++ b/@types/lib/metadataTypes/EmailSend.d.ts
@@ -530,7 +530,7 @@ declare namespace EmailSend {
             'SendDefinitionList[].Name': {
                 skipValidation: boolean;
             };
-            'SendDefinitionList[].r__dataExtension_Key': {
+            'SendDefinitionList[].r__dataExtension_key': {
                 skipValidation: boolean;
             };
             'SendDefinitionList[].List.ObjectID': {
diff --git a/@types/lib/metadataTypes/Event.d.ts b/@types/lib/metadataTypes/Event.d.ts
index 9b06c5244..5d4e69f96 100644
--- a/@types/lib/metadataTypes/Event.d.ts
+++ b/@types/lib/metadataTypes/Event.d.ts
@@ -279,12 +279,108 @@ declare namespace Event {
                 retrieving: boolean;
                 template: boolean;
             };
+            'configurationArguments.applicationExtensionKey': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.contactKey': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.contactPersonType': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.dataExtensionId': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.evaluationCriteriaSummary': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.eventDataConfig': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.eventDataSummary': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.objectAPIName': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.passThroughArgument': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.primaryObjectFilterCriteria': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.primaryObjectFilterSummary': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.relatedObjectFilterCriteria': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.relatedObjectFilterSummary': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.salesforceTriggerCriteria': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'configurationArguments.unconfigured': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
                 retrieving: boolean;
                 template: boolean;
             };
+            'configurationArguments.version': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'configurationArguments.whoToInject': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             createdBy: {
                 isCreateable: boolean;
                 isUpdateable: boolean;
diff --git a/@types/lib/metadataTypes/Event.d.ts.map b/@types/lib/metadataTypes/Event.d.ts.map
index 7fbd3a493..946b6e3e3 100644
--- a/@types/lib/metadataTypes/Event.d.ts.map
+++ b/@types/lib/metadataTypes/Event.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Event.js"],"names":[],"mappings":";uBASa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI,oCAAkC;IAClC;;;;;;;;;;OAUG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAwBxC;IAED;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE,mBAAmB,CAAC,CAiDzC;IA6BD;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,6BAHW,gBAAgB,gBAU1B;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,gBAAgB,CA+B5B;IAuLD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CA+B5B;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAjbwB,mBAAmB"}
\ No newline at end of file
+{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Event.js"],"names":[],"mappings":";uBASa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI,oCAAkC;IAClC;;;;;;;;;;OAUG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAwBxC;IAED;;;;OAIG;IACH,2BAFa,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE,mBAAmB,CAAC,CAiDzC;IA6BD;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,6BAHW,gBAAgB,gBAU1B;IAED;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,gBAAgB,CA+B5B;IAuLD;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CA+B5B;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAjbwB,mBAAmB"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/ImportFile.d.ts b/@types/lib/metadataTypes/ImportFile.d.ts
index 447e0a71b..798fc7b89 100644
--- a/@types/lib/metadataTypes/ImportFile.d.ts
+++ b/@types/lib/metadataTypes/ImportFile.d.ts
@@ -230,6 +230,12 @@ declare namespace ImportFile {
                 retrieving: boolean;
                 template: boolean;
             };
+            fileSpec: {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             fileTransferLocationId: {
                 isCreateable: boolean;
                 isUpdateable: boolean;
@@ -349,6 +355,18 @@ declare namespace ImportFile {
                 retrieving: boolean;
                 template: boolean;
             };
+            sourceCustomObjectId: {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            sourceDataExtensionName: {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             c__dataAction: {
                 isCreateable: boolean;
                 isUpdateable: boolean;
@@ -373,7 +391,13 @@ declare namespace ImportFile {
                 retrieving: boolean;
                 template: boolean;
             };
-            'destination.c__destinationType': {
+            'source.c__type': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'destination.c__type': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
                 retrieving: boolean;
diff --git a/@types/lib/metadataTypes/ImportFile.d.ts.map b/@types/lib/metadataTypes/ImportFile.d.ts.map
index 7d3135e54..ca0c9784e 100644
--- a/@types/lib/metadataTypes/ImportFile.d.ts.map
+++ b/@types/lib/metadataTypes/ImportFile.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"ImportFile.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/ImportFile.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;;;OAUG;IACH,8BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAiDxC;IAED;;;;;;;OAOG;IACH,4BALW,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE,mBAAmB,CAAC,CAuCzC;IACD;;;;;;OAMG;IACH,6CAeC;IAED;;;;;OAKG;IACH,0BAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,0BAHW,gBAAgB,gBAQ1B;IAgCD;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAuHtC;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAkH5B;CAiBJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA/dwB,mBAAmB"}
\ No newline at end of file
+{"version":3,"file":"ImportFile.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/ImportFile.js"],"names":[],"mappings":";uBAQa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AACH;IACI;;;;;;;;;;OAUG;IACH,8BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAiDxC;IAED;;;;;;;OAOG;IACH,4BALW,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CAIxC;IAED;;;;;;;OAOG;IACH,uCALW,MAAM,QACN,MAAM,qBACN,WAAW,GACT,OAAO,CAAE,mBAAmB,CAAC,CAuCzC;IACD;;;;;;OAMG;IACH,6CAeC;IAED;;;;;OAKG;IACH,0BAHW,gBAAgB,gBAK1B;IAED;;;;;OAKG;IACH,0BAHW,gBAAgB,gBAQ1B;IA+BD;;;;;OAKG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAuItC;IAED;;;;;OAKG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CA6I5B;CAiBJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAzgBwB,mBAAmB"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/Journey.d.ts b/@types/lib/metadataTypes/Journey.d.ts
index 05ba89340..45c8546cb 100644
--- a/@types/lib/metadataTypes/Journey.d.ts
+++ b/@types/lib/metadataTypes/Journey.d.ts
@@ -197,6 +197,9 @@ declare namespace Journey {
                 retrieving: any;
                 template: any;
             };
+            'defaults.properties': {
+                skipValidation: boolean;
+            };
             'defaults.properties.analyticsTracking.analyticsType': {
                 isCreateable: any;
                 isUpdateable: any;
@@ -377,6 +380,48 @@ declare namespace Journey {
                 retrieving: boolean;
                 template: boolean;
             };
+            'triggers[].arguments.serializedObjectType': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.eventDefinitionId': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.eventDefinitionKey': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.dataExtensionId': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.automationId': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.r__event_key': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].arguments.r__dataExtension_key': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'triggers[].configurationArguments': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
@@ -485,6 +530,24 @@ declare namespace Journey {
                 retrieving: boolean;
                 template: boolean;
             };
+            'triggers[].configurationArguments.whoToInject': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].configurationArguments.objectApiName': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].configurationArguments.additionalObjectFilterCriteria': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'triggers[].metaData': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
@@ -497,6 +560,24 @@ declare namespace Journey {
                 retrieving: boolean;
                 template: boolean;
             };
+            'triggers[].metaData.entrySourceGroupConfigUrl': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].metaData.r__event_key': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
+            'triggers[].metaData.category': {
+                isCreateable: boolean;
+                isUpdateable: boolean;
+                retrieving: boolean;
+                template: boolean;
+            };
             'triggers[].metaData.eventDefinitionId': {
                 isCreateable: boolean;
                 isUpdateable: boolean;
diff --git a/@types/lib/metadataTypes/Journey.d.ts.map b/@types/lib/metadataTypes/Journey.d.ts.map
index f1a23d285..6b798545c 100644
--- a/@types/lib/metadataTypes/Journey.d.ts.map
+++ b/@types/lib/metadataTypes/Journey.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":";uBAUa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;;;;;GAQG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA0IxC;IA6ED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAS1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAkBD;;;;OAIG;IACH,2CAFW,eAAe,iBAmBzB;IAED;;;;;;OAMG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CA6J5B;IACD;;;;;OAKG;IACH,6CAkXC;IAED;;;;;;OAMG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAiHtC;IAED;;;;;OAKG;IACH,0CA+LC;IAwLD;;;;OAIG;IACH,sCAFW,eAAe,iBAWzB;IACD;;;;;OAKG;IACH,uBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAmH9B;IACD;;;;;;;OAOG;IACH,sCALW,MAAM,OACN,MAAM,UACN,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAgC5B;IAED;;;;OAIG;IACH,2CAFW;QAAC,MAAM,EAAC,MAAM,CAAC;QAAC,MAAM,QAAO;QAAC,QAAQ,QAAM;KAAC,QAgCvD;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAjiDwB,mBAAmB"}
\ No newline at end of file
+{"version":3,"file":"Journey.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/Journey.js"],"names":[],"mappings":";uBAUa,OAAO,wBAAwB,EAAE,QAAQ;0BACzC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;+BAChD,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;gCACnD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;AAVzD;;;;;;;;;;;GAWG;AAEH;;;;;;;;GAQG;AACH;IACI;;;;;;;;OAQG;IACH,6BANW,MAAM,MACN,IAAI,GAAG,MAAM,EAAE,OACf,IAAI,GAAG,MAAM,EAAE,QACf,MAAM,GACJ,OAAO,CAAE,kBAAkB,CAAC,CA0IxC;IA6ED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAS1B;IAED;;;;;OAKG;IACH,wBAHW,gBAAgB,gBAK1B;IAkBD;;;;OAIG;IACH,2CAFW,eAAe,iBAmBzB;IAED;;;;;;OAMG;IACH,mCAHW,gBAAgB,GACd,gBAAgB,CAgL5B;IACD;;;;;OAKG;IACH,6CA2aC;IAED;;;;;;OAMG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAE,gBAAgB,CAAC,CAiItC;IAED;;;;;OAKG;IACH,0CA6MC;IAwLD;;;;OAIG;IACH,sCAFW,eAAe,iBAWzB;IACD;;;;;OAKG;IACH,uBAHW,MAAM,EAAE,GACN,OAAO,CAAE,MAAM,EAAE,CAAC,CAmH9B;IACD;;;;;;;OAOG;IACH,sCALW,MAAM,OACN,MAAM,UACN,MAAM,GACJ,OAAO,CAAE,MAAM,CAAC,CAgC5B;IAED;;;;OAIG;IACH,2CAFW;QAAC,MAAM,EAAC,MAAM,CAAC;QAAC,MAAM,QAAO;QAAC,QAAQ,QAAM;KAAC,QAgCvD;CACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA3oDwB,mBAAmB"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/MetadataType.d.ts.map b/@types/lib/metadataTypes/MetadataType.d.ts.map
index ac42931e1..a9524f615 100644
--- a/@types/lib/metadataTypes/MetadataType.d.ts.map
+++ b/@types/lib/metadataTypes/MetadataType.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"MetadataType.d.ts","sourceRoot":"","sources":["../../../lib/metadataTypes/MetadataType.js"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/@types/lib/metadataTypes/definitions/Asset.definition.d.ts b/@types/lib/metadataTypes/definitions/Asset.definition.d.ts
index 038aecc66..9bbdff2b1 100644
--- a/@types/lib/metadataTypes/definitions/Asset.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/Asset.definition.d.ts
@@ -82,6 +82,42 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'businessUnitAvailability.%': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'businessUnitAvailability.%.view': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'businessUnitAvailability.%.update': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'businessUnitAvailability.%.delete': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'businessUnitAvailability.%.memberId': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'businessUnitAvailability.%.transferOwnership': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         category: {
             isCreateable: boolean;
             isUpdateable: boolean;
@@ -172,6 +208,12 @@ declare namespace _default {
         'data.approvals': {
             skipValidation: boolean;
         };
+        'data.email': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'data.email.attributes': {
             skipValidation: boolean;
         };
@@ -388,6 +430,18 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'sharingProperties.sharedFrom': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'sharingProperties.sharedFromMID': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'sharingProperties.sharingType': {
             isCreateable: boolean;
             isUpdateable: boolean;
diff --git a/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts b/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts
index 85f06aec5..7c23a330c 100644
--- a/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/AttributeSet.definition.d.ts
@@ -418,6 +418,54 @@ declare namespace _default {
             retrieving: boolean;
             template: any;
         };
+        'relationships[].leftItem.cardinality': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].leftItem.relationshipType': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].leftItem.r__attributeSet_key': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].leftItem.r__attributeGroup_key': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].rightItem.cardinality': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].rightItem.relationshipType': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].rightItem.r__attributeSet_key': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'relationships[].rightItem.r__attributeGroup_key': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
         'relationships[].leftRelationshipIDs[].type': {
             isCreateable: any;
             isUpdateable: any;
@@ -862,12 +910,39 @@ declare namespace _default {
             retrieving: boolean;
             template: any;
         };
+        'valueDefinitions[].storageFieldValueID.type': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
+        'valueDefinitions[].storageFieldValueID.value': {
+            isCreateable: any;
+            isUpdateable: any;
+            retrieving: boolean;
+            template: any;
+        };
         'valueDefinitions[].storageName': {
             isCreateable: any;
             isUpdateable: any;
             retrieving: boolean;
             template: any;
         };
+        'valueDefinitions[].storageObjectFieldInformation': {
+            skipValidation: boolean;
+        };
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldAPIName': {
+            skipValidation: boolean;
+        };
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldDataTypeName': {
+            skipValidation: boolean;
+        };
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldLength': {
+            skipValidation: boolean;
+        };
+        'valueDefinitions[].storageObjectFieldInformation.externalIsRowIdentifier': {
+            skipValidation: boolean;
+        };
         'valueDefinitions[].valueDefinitionID': {
             isCreateable: any;
             isUpdateable: any;
diff --git a/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts b/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts
index 5bf9e3249..56e8ac4c6 100644
--- a/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/EmailSend.definition.d.ts
@@ -461,7 +461,7 @@ declare namespace _default {
         'SendDefinitionList[].Name': {
             skipValidation: boolean;
         };
-        'SendDefinitionList[].r__dataExtension_Key': {
+        'SendDefinitionList[].r__dataExtension_key': {
             skipValidation: boolean;
         };
         'SendDefinitionList[].List.ObjectID': {
diff --git a/@types/lib/metadataTypes/definitions/Event.definition.d.ts b/@types/lib/metadataTypes/definitions/Event.definition.d.ts
index ad629cbf9..41124c135 100644
--- a/@types/lib/metadataTypes/definitions/Event.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/Event.definition.d.ts
@@ -192,12 +192,108 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'configurationArguments.applicationExtensionKey': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.contactKey': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.contactPersonType': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.dataExtensionId': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.evaluationCriteriaSummary': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.eventDataConfig': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.eventDataSummary': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.objectAPIName': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.passThroughArgument': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.primaryObjectFilterCriteria': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.primaryObjectFilterSummary': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.relatedObjectFilterCriteria': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.relatedObjectFilterSummary': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.salesforceTriggerCriteria': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'configurationArguments.unconfigured': {
             isCreateable: boolean;
             isUpdateable: boolean;
             retrieving: boolean;
             template: boolean;
         };
+        'configurationArguments.version': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'configurationArguments.whoToInject': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         createdBy: {
             isCreateable: boolean;
             isUpdateable: boolean;
diff --git a/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts b/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts
index a08528fef..450745fe7 100644
--- a/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/ImportFile.definition.d.ts
@@ -132,6 +132,12 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        fileSpec: {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         fileTransferLocationId: {
             isCreateable: boolean;
             isUpdateable: boolean;
@@ -251,6 +257,18 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        sourceCustomObjectId: {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        sourceDataExtensionName: {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         c__dataAction: {
             isCreateable: boolean;
             isUpdateable: boolean;
@@ -275,7 +293,13 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
-        'destination.c__destinationType': {
+        'source.c__type': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'destination.c__type': {
             isCreateable: boolean;
             isUpdateable: boolean;
             retrieving: boolean;
diff --git a/@types/lib/metadataTypes/definitions/Journey.definition.d.ts b/@types/lib/metadataTypes/definitions/Journey.definition.d.ts
index 248240b1c..a3e6134e9 100644
--- a/@types/lib/metadataTypes/definitions/Journey.definition.d.ts
+++ b/@types/lib/metadataTypes/definitions/Journey.definition.d.ts
@@ -70,6 +70,9 @@ declare namespace _default {
             retrieving: any;
             template: any;
         };
+        'defaults.properties': {
+            skipValidation: boolean;
+        };
         'defaults.properties.analyticsTracking.analyticsType': {
             isCreateable: any;
             isUpdateable: any;
@@ -250,6 +253,48 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'triggers[].arguments.serializedObjectType': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.eventDefinitionId': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.eventDefinitionKey': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.dataExtensionId': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.automationId': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.r__event_key': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].arguments.r__dataExtension_key': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'triggers[].configurationArguments': {
             isCreateable: boolean;
             isUpdateable: boolean;
@@ -358,6 +403,24 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'triggers[].configurationArguments.whoToInject': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].configurationArguments.objectApiName': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].configurationArguments.additionalObjectFilterCriteria': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'triggers[].metaData': {
             isCreateable: boolean;
             isUpdateable: boolean;
@@ -370,6 +433,24 @@ declare namespace _default {
             retrieving: boolean;
             template: boolean;
         };
+        'triggers[].metaData.entrySourceGroupConfigUrl': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].metaData.r__event_key': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
+        'triggers[].metaData.category': {
+            isCreateable: boolean;
+            isUpdateable: boolean;
+            retrieving: boolean;
+            template: boolean;
+        };
         'triggers[].metaData.eventDefinitionId': {
             isCreateable: boolean;
             isUpdateable: boolean;
diff --git a/@types/lib/util/file.d.ts.map b/@types/lib/util/file.d.ts.map
index 12417b07b..94a591ec6 100644
--- a/@types/lib/util/file.d.ts.map
+++ b/@types/lib/util/file.d.ts.map
@@ -1 +1 @@
-{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../lib/util/file.js"],"names":[],"mappings":";yBAUa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;AAoiB1D;;;IAnhBI;;;;;;OAMG;yBAHQ,MAAM,MACN,MAAM,GACJ,OAAO,CAAE;QAAC,MAAM,EAAC,IAAI,GAAC,SAAS,GAAC,QAAQ,CAAC;QAAC,aAAa,EAAC,MAAM,CAAC;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,CAAC;IAiB1F;;;;;OAKG;iCAFQ,MAAM,GACJ,MAAM;IAiCnB;;;;;OAKG;qCAFQ,MAAM,GACJ,MAAM;IA2BnB;;;;;OAKG;4CAFQ,MAAM,GACJ,MAAM;IAMnB;;;;;OAKG;sCAFQ,MAAM,GAAC,MAAM,EAAE,KACb,MAAM;IAanB;;;;;;;OAOG;iCAJQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,WACN,MAAM;IAajB;;;;;;;;;;OAUG;mCANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,sBACN,WAAW,KACT,OAAO,CAAE,OAAO,CAAC;IAY9B;;;;;;OAMG;2CAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAU7B;;;;;;OAMG;kCAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAgB7B;;;;;;;;;OASG;oCALQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAgG7B;;;;;;;;;OASG;6BANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,OAAO,CAAC;IAoB9B;;;;;;;OAOG;8BAJQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,aACN,OAAO,KACL,OAAO,CAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAyB7C;;;;;;;;OAQG;sCALQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,YACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAa7B;;;;;;;;;;OAUG;iCALQ,MAAM,SACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,OAAO,CAAE,MAAM,EAAE,CAAC;IA6C/B;;;;;;;;;;;OAWG;qCALQ,MAAM,UACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,MAAM,EAAE,GAAG,IAAI;IA2C5B;;;;;OAKG;+BAFQ,OAAO,GACL,OAAO,CAAE,IAAI,CAAC;IAS3B;;;;;OAKG;4BAFQ,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC;EAgCK;eA7jBxB,UAAU"}
\ No newline at end of file
+{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../lib/util/file.js"],"names":[],"mappings":";yBAUa,OAAO,wBAAwB,EAAE,UAAU;uBAC3C,OAAO,wBAAwB,EAAE,QAAQ;oBACzC,OAAO,wBAAwB,EAAE,KAAK;0BACtC,OAAO,wBAAwB,EAAE,WAAW;8BAC5C,OAAO,wBAAwB,EAAE,eAAe;2BAChD,OAAO,wBAAwB,EAAE,YAAY;sBAC7C,OAAO,wBAAwB,EAAE,OAAO;+BACxC,OAAO,wBAAwB,EAAE,gBAAgB;mCACjD,OAAO,wBAAwB,EAAE,oBAAoB;kCACrD,OAAO,wBAAwB,EAAE,mBAAmB;8BACpD,OAAO,wBAAwB,EAAE,eAAe;iCAChD,OAAO,wBAAwB,EAAE,kBAAkB;oCACnD,OAAO,wBAAwB,EAAE,qBAAqB;mCACtD,OAAO,wBAAwB,EAAE,oBAAoB;gCACrD,OAAO,wBAAwB,EAAE,iBAAiB;0BAClD,OAAO,wBAAwB,EAAE,WAAW;2BAC5C,OAAO,wBAAwB,EAAE,YAAY;AAyhB1D;;;IAxgBI;;;;;;OAMG;yBAHQ,MAAM,MACN,MAAM,GACJ,OAAO,CAAE;QAAC,MAAM,EAAC,IAAI,GAAC,SAAS,GAAC,QAAQ,CAAC;QAAC,aAAa,EAAC,MAAM,CAAC;QAAC,IAAI,EAAC,MAAM,CAAA;KAAC,CAAC;IAiB1F;;;;;OAKG;iCAFQ,MAAM,GACJ,MAAM;IAiCnB;;;;;OAKG;qCAFQ,MAAM,GACJ,MAAM;IA2BnB;;;;;OAKG;4CAFQ,MAAM,GACJ,MAAM;IAMnB;;;;;OAKG;sCAFQ,MAAM,GAAC,MAAM,EAAE,KACb,MAAM;IAanB;;;;;;;OAOG;iCAJQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,WACN,MAAM;IAajB;;;;;;;;;;OAUG;mCANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,sBACN,WAAW,KACT,OAAO,CAAE,OAAO,CAAC;IAY9B;;;;;;OAMG;2CAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAU7B;;;;;;OAMG;kCAHQ,MAAM,eACN,OAAO,KACL,OAAO,CAAE,MAAM,CAAC;IAe7B;;;;;;;;;OASG;oCALQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAsF7B;;;;;;;;;OASG;6BANQ,MAAM,GAAC,MAAM,EAAE,YACf,MAAM,YACN,MAAM,WACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,OAAO,CAAC;IAoB9B;;;;;;;OAOG;8BAJQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,aACN,OAAO,KACL,OAAO,CAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAyB7C;;;;;;;;OAQG;sCALQ,MAAM,GAAG,MAAM,EAAE,YACjB,MAAM,YACN,MAAM,aACN,MAAM,KACJ,OAAO,CAAE,MAAM,CAAC;IAa7B;;;;;;;;;;OAUG;iCALQ,MAAM,SACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,OAAO,CAAE,MAAM,EAAE,CAAC;IA6C/B;;;;;;;;;;;OAWG;qCALQ,MAAM,UACN,MAAM,gBACN,OAAO,gBACP,MAAM,KACJ,MAAM,EAAE,GAAG,IAAI;IA2C5B;;;;;OAKG;+BAFQ,OAAO,GACL,OAAO,CAAE,IAAI,CAAC;IAS3B;;;;;OAKG;4BAFQ,MAAM,GACJ,OAAO,CAAE,OAAO,CAAC;EAgCK;eAljBxB,UAAU"}
\ No newline at end of file
diff --git a/lib/Deployer.js b/lib/Deployer.js
index 972c3357e..c43e216b6 100644
--- a/lib/Deployer.js
+++ b/lib/Deployer.js
@@ -229,6 +229,9 @@ class Deployer {
      * @returns {Promise.<MultiMetadataTypeMap>} ensure that BUs are worked on sequentially
      */
     static async _deployBU(cred, bu, properties, typeArr, keyArr) {
+        // ensure changes to the typeArr on one BU do not affect other BUs called in the same go
+        typeArr = structuredClone(typeArr);
+
         const buPath = `${cred}/${bu}`;
         Util.logger.info(`:: Deploying to ${buPath}`);
         const buObject = await Cli.getCredentialObject(properties, buPath, null, true);
diff --git a/lib/Retriever.js b/lib/Retriever.js
index 482e4bf71..89448bd68 100644
--- a/lib/Retriever.js
+++ b/lib/Retriever.js
@@ -124,7 +124,7 @@ class Retriever {
                     let cacheResult = null;
                     if (
                         (typeKeyMap[type].length > 1 || typeKeyMap[type][0] !== null) &&
-                        (dependencies.includes(type) || dependencies.includes(type))
+                        dependencies.includes(type)
                     ) {
                         // if we have a key-list and the type is a dependency, we need to cache the whole type
                         Util.logger.info(`Caching dependent Metadata: ${type}`);
@@ -133,6 +133,17 @@ class Retriever {
                             null,
                             subTypeArr
                         );
+                    } else if (
+                        dependencies.includes(type) &&
+                        Object.prototype.hasOwnProperty.call(
+                            MetadataTypeInfo[type],
+                            'retrieveSharedForCache'
+                        )
+                    ) {
+                        // some types exist locally and shared from other BUs (parent and siblings). those need to be put into the cache or else we wont find them when looking for dependencies
+                        const cacheSharedResult =
+                            await MetadataTypeInfo[type].retrieveSharedForCache();
+                        cache.mergeMetadata(type, cacheSharedResult.metadata);
                     }
                     Util.logger.info(
                         `Retrieving: ${type}` +
@@ -176,7 +187,7 @@ class Retriever {
                                 .map((element) => element.metadata);
                         }
                     } else {
-                        cache.setMetadata(type, result.metadata);
+                        cache.mergeMetadata(type, result.metadata);
                         if (metadataTypes.includes(type) || metadataTypes.includes(type)) {
                             retrieveChangelog[type] = result.metadata;
                         }
diff --git a/lib/index.js b/lib/index.js
index 52226b439..c285d95cd 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -370,6 +370,9 @@ class Mcdev {
      * @returns {Promise.<object>} ensure that BUs are worked on sequentially
      */
     static async #retrieveBU(cred, bu, selectedTypesArr, keys, changelogOnly) {
+        // ensure changes to the selectedTypesArr on one BU do not affect other BUs called in the same go
+        selectedTypesArr = structuredClone(selectedTypesArr);
+
         const properties = await config.getProperties();
         if (!(await config.checkProperties(properties))) {
             return null;
@@ -1242,6 +1245,7 @@ class Mcdev {
             );
             returnObj[type] = result[type];
         }
+        Util.logger.info('Done');
         return returnObj;
     }
 
@@ -1287,6 +1291,7 @@ class Mcdev {
             );
             returnObj[selectedType] = result;
         }
+        Util.logger.info('Done');
         return returnObj;
     }
     /**
diff --git a/lib/metadataTypes/Asset.js b/lib/metadataTypes/Asset.js
index 1d8000817..c1da1994b 100644
--- a/lib/metadataTypes/Asset.js
+++ b/lib/metadataTypes/Asset.js
@@ -83,16 +83,25 @@ class Asset extends MetadataType {
             cache.mergeMetadata('asset', resultShared.metadata);
         }
         if (retrieveDir) {
-            // loop through subtypes and return results of each subType for caching (saving is handled per subtype)
-            for (const subType of subTypeArr) {
-                // each subtype contains multiple different specific types (images contains jpg and png for example)
-                // we use await here to limit the risk of too many concurrent api requests at time
+            if (key) {
+                // retrieve by key/id/name
                 items.push(
-                    ...(await this.requestSubType(subType, retrieveDir, key, null, loadShared))
+                    ...(await this.requestSubType(null, retrieveDir, key, null, loadShared))
                 );
+            } else {
+                // retrieve all
+                // loop through subtypes and return results of each subType for caching (saving is handled per subtype)
+                for (const subType of subTypeArr) {
+                    // each subtype contains multiple different specific types (images contains jpg and png for example)
+                    // we use await here to limit the risk of too many concurrent api requests at time
+                    items.push(
+                        ...(await this.requestSubType(subType, retrieveDir, key, null, loadShared))
+                    );
+                }
             }
         } else {
-            items.push(...(await this.requestSubType(subTypeArr, null, key, null, loadShared)));
+            // caching
+            items.push(...(await this.requestSubType(subTypeArr, null, null, null, loadShared)));
         }
         const metadata = this.parseResponseBody({ items: items });
         if (retrieveDir) {
@@ -213,7 +222,7 @@ class Asset extends MetadataType {
                 throw new TypeError(
                     'requestSubType should not be called with multiple subtypes when retrieving to disk.'
                 );
-            } else {
+            } else if (!key) {
                 Util.logger.info(`- Retrieving Subtype: ${subType}`);
             }
         } else {
@@ -221,16 +230,18 @@ class Asset extends MetadataType {
             Util.logSubtypes(subTypeArr);
         }
         /** @type {AssetSubType[]} */
-        const extendedSubTypeArr = subTypeArr.flatMap(
-            (subType) => this.definition.extendedSubTypes[subType]
-        );
+        const extendedSubTypeArr = key
+            ? [null]
+            : subTypeArr.flatMap((subType) => this.definition.extendedSubTypes[subType]);
         // the API can only assetType.ids at a time or else will throw: "DbUtility.GetPagedCollection passing through non-timeout DB error (30001)"
-        const subtypeIdsList = Util.chunk(
-            extendedSubTypeArr?.map(
-                (subTypeItemName) => this.definition.typeMapping[subTypeItemName]
-            ),
-            50
-        );
+        const subtypeIdsList = key
+            ? [null]
+            : Util.chunk(
+                  extendedSubTypeArr?.map(
+                      (subTypeItemName) => this.definition.typeMapping[subTypeItemName]
+                  ),
+                  50
+              );
         const uri = '/asset/v1/content/assets/query' + (loadShared ? '?scope=shared' : '');
         /** @type {AssetRequestParams} */
         const payload = {
@@ -267,28 +278,20 @@ class Asset extends MetadataType {
 
         for (const subtypeIds of subtypeIdsList) {
             if (key) {
-                payload.query = {
-                    leftOperand: {
-                        property: 'assetType.id',
-                        simpleOperator: 'in',
-                        value: subtypeIds,
-                    },
-                    logicalOperator: 'AND',
-                };
                 if (key.startsWith('id:')) {
-                    payload.query.rightOperand = {
+                    payload.query = {
                         property: this.definition.idField,
                         simpleOperator: 'equal',
                         value: key.slice(3),
                     };
                 } else if (key.startsWith('name:')) {
-                    payload.query.rightOperand = {
+                    payload.query = {
                         property: this.definition.nameField,
                         simpleOperator: 'equal',
                         value: key.slice(5),
                     };
                 } else {
-                    payload.query.rightOperand = {
+                    payload.query = {
                         property: this.definition.keyField,
                         simpleOperator: 'equal',
                         value: key,
@@ -312,6 +315,9 @@ class Asset extends MetadataType {
                     // sometimes the api will return a payload without items
                     // --> ensure we only add proper items-arrays here
                     items = items.concat(response.items);
+                    if (key && subType === null) {
+                        subType = this.#getMainSubtype(response?.items[0].assetType.name);
+                    }
                 }
                 // check if any more records
                 if (response?.message?.includes('all shards failed')) {
diff --git a/lib/metadataTypes/DataExtension.js b/lib/metadataTypes/DataExtension.js
index a161defaf..ce2d897f7 100644
--- a/lib/metadataTypes/DataExtension.js
+++ b/lib/metadataTypes/DataExtension.js
@@ -855,7 +855,7 @@ class DataExtension extends MetadataType {
                 }
             } catch (ex) {
                 Util.logger.debug(
-                    `removing ${metadataEntry} because of error while retrieving r__folder_ContentType: ${ex.message}`
+                    `removing dataExtension ${metadataEntry} because of error while retrieving r__folder_ContentType: ${ex.message}`
                 );
                 delete metadataParentBu[metadataEntry];
             }
diff --git a/lib/metadataTypes/ImportFile.js b/lib/metadataTypes/ImportFile.js
index e2b40265c..d5efe22c9 100644
--- a/lib/metadataTypes/ImportFile.js
+++ b/lib/metadataTypes/ImportFile.js
@@ -198,9 +198,8 @@ class ImportFile extends MetadataType {
      */
     static async deploy(metadataMap, deployDir, retrieveDir) {
         if (
-            Object.values(metadataMap).filter(
-                (item) => item.destination.c__destinationType === 'SMS'
-            ).length > 0
+            Object.values(metadataMap).filter((item) => item.destination.c__type === 'SMS').length >
+            0
         ) {
             Util.logger.info(`Caching dependent Metadata: dataExtension (source for SMS imports)`);
 
@@ -235,7 +234,7 @@ class ImportFile extends MetadataType {
         metadata.fileTransferLocationTypeId = fileLocation.locationTypeId;
         delete metadata.source.r__fileLocation_name;
 
-        switch (metadata.destination.c__destinationType) {
+        switch (metadata.destination.c__type) {
             case 'DataExtension': {
                 if (metadata.destination.r__dataExtension_key) {
                     metadata.destinationObjectId = cache.searchForField(
@@ -248,6 +247,22 @@ class ImportFile extends MetadataType {
                 } else {
                     throw new Error('Import Destination DataExtension not defined');
                 }
+                if (metadata.source.c__type === 'DataExtension' && metadata.r__dataExtension_key) {
+                    // only happens for dataimport activities (summer24 release)
+                    metadata.source.sourceCustomObjectId = cache.searchForField(
+                        'dataExtension',
+                        metadata.r__dataExtension_key,
+                        'CustomerKey',
+                        'ObjectID'
+                    );
+                    metadata.source.sourceDataExtensionName = cache.searchForField(
+                        'dataExtension',
+                        metadata.r__dataExtension_key,
+                        'CustomerKey',
+                        'Name'
+                    );
+                    delete metadata.r__dataExtension_key;
+                }
                 break;
             }
             case 'List': {
@@ -314,7 +329,7 @@ class ImportFile extends MetadataType {
 
                 Util.logger.debug(
                     ` - importFile ${metadata[this.definition.keyField]}: Import Destination Type ${
-                        metadata.destination.c__destinationType
+                        metadata.destination.c__type
                     } not fully supported. Deploy might fail.`
                 );
                 break;
@@ -322,7 +337,7 @@ class ImportFile extends MetadataType {
             default: {
                 Util.logger.debug(
                     ` - importFile ${metadata[this.definition.keyField]}: Import Destination Type ${
-                        metadata.destination.c__destinationType
+                        metadata.destination.c__type
                     } not fully supported. Deploy might fail.`
                 );
             }
@@ -334,7 +349,7 @@ class ImportFile extends MetadataType {
         }
         // When the destinationObjectTypeId is 584 it refers to Mobile Connect which is not supported as an Import Type
         metadata.destinationObjectTypeId =
-            this.definition.destinationObjectTypeMapping[metadata.destination.c__destinationType];
+            this.definition.destinationObjectTypeMapping[metadata.destination.c__type];
         metadata.subscriberImportTypeId =
             this.definition.subscriberImportTypeMapping[metadata.c__subscriberImportType];
         metadata.updateTypeId = this.definition.updateTypeMapping[metadata.c__dataAction];
@@ -351,22 +366,31 @@ class ImportFile extends MetadataType {
      * @returns {MetadataTypeItem} parsed metadata
      */
     static postRetrieveTasks(metadata) {
-        metadata.destination = {};
-        metadata.source = {};
-        metadata.source.r__fileLocation_name = cache.searchForField(
-            'fileLocation',
-            metadata.fileTransferLocationId,
-            'id',
-            'name'
-        );
-        delete metadata.fileTransferLocationId;
+        metadata.destination = {
+            // * When the destinationObjectTypeId is 584 it refers to Mobile Connect which is not supported as an Import Type
+            c__type: Util.inverseGet(
+                this.definition.destinationObjectTypeMapping,
+                metadata.destinationObjectTypeId
+            ),
+        };
+        // destination.c__type SMS & DataExtension both set fileNamingPattern to _CustomObject and they both define a DE as source
+        metadata.source = {
+            c__type:
+                metadata.fileNamingPattern === '_CustomObject' ? 'DataExtension' : 'File Location',
+        };
+        try {
+            metadata.source.r__fileLocation_name = cache.searchForField(
+                'fileLocation',
+                metadata.fileTransferLocationId,
+                'id',
+                'name'
+            );
+            delete metadata.fileTransferLocationId;
+        } catch (ex) {
+            Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
+        }
 
-        // * When the destinationObjectTypeId is 584 it refers to Mobile Connect which is not supported as an Import Type
-        metadata.destination.c__destinationType = Util.inverseGet(
-            this.definition.destinationObjectTypeMapping,
-            metadata.destinationObjectTypeId
-        );
-        switch (metadata.destination.c__destinationType) {
+        switch (metadata.destination.c__type) {
             case 'DataExtension': {
                 try {
                     metadata.destination.r__dataExtension_key = cache.searchForField(
@@ -377,7 +401,25 @@ class ImportFile extends MetadataType {
                     );
                     delete metadata.destinationObjectId;
                 } catch (ex) {
-                    Util.logger.warn(` - ImportFile ${metadata.customerKey}: ${ex.message}`);
+                    Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
+                }
+                if (
+                    metadata.source.c__type === 'DataExtension' &&
+                    metadata.sourceCustomObjectId !== ''
+                ) {
+                    // only happens for dataimport activities (summer24 release)
+                    try {
+                        metadata.source.r__dataExtension_key = cache.searchForField(
+                            'dataExtension',
+                            metadata.sourceCustomObjectId,
+                            'ObjectID',
+                            'CustomerKey'
+                        );
+                        delete metadata.sourceCustomObjectId;
+                        delete metadata.sourceDataExtensionName;
+                    } catch (ex) {
+                        Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
+                    }
                 }
 
                 break;
@@ -390,7 +432,7 @@ class ImportFile extends MetadataType {
                     );
                     delete metadata.destinationObjectId;
                 } catch (ex) {
-                    Util.logger.warn(` - ImportFile ${metadata.customerKey}: ${ex.message}`);
+                    Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
                 }
 
                 break;
@@ -403,7 +445,7 @@ class ImportFile extends MetadataType {
                     try {
                         cache.searchForField('mobileCode', smsImport.code?.code, 'code', 'code');
                     } catch (ex) {
-                        Util.logger.warn(` - ImportFile ${metadata.customerKey}: ${ex.message}`);
+                        Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
                     }
                     // keyword
                     try {
@@ -414,7 +456,7 @@ class ImportFile extends MetadataType {
                             'c__codeKeyword'
                         );
                     } catch (ex) {
-                        Util.logger.warn(` - ImportFile ${metadata.customerKey}: ${ex.message}`);
+                        Util.logger.warn(` - importFile ${metadata.customerKey}: ${ex.message}`);
                     }
 
                     // code + keyword
@@ -426,7 +468,7 @@ class ImportFile extends MetadataType {
                     }
                 } else {
                     Util.logger.warn(
-                        ` - ImportFile ${metadata.customerKey}: Could not find mobile code and keyword nor source for this SMS import activity.`
+                        ` - importFile ${metadata.customerKey}: Could not find mobile code and keyword nor source for this SMS import activity.`
                     );
                 }
                 // remove empty desitination
@@ -436,7 +478,7 @@ class ImportFile extends MetadataType {
             }
             default: {
                 Util.logger.debug(
-                    ` - ImportFile ${metadata.customerKey}: Destination Type ${metadata.destinationObjectTypeId} not fully supported. Deploy might fail.`
+                    ` - importFile ${metadata.customerKey}: Destination Type ${metadata.destinationObjectTypeId} not fully supported. Deploy might fail.`
                 );
             }
         }
diff --git a/lib/metadataTypes/Journey.js b/lib/metadataTypes/Journey.js
index ae28aa2b1..026436d9a 100644
--- a/lib/metadataTypes/Journey.js
+++ b/lib/metadataTypes/Journey.js
@@ -336,36 +336,55 @@ class Journey extends MetadataType {
                 // Multi-Step Journey
                 // ~~~ TRIGGERS ~~~~
                 // event / definitionType==='Multistep' && channel==='' && triggers[].type === 'EmailAudience'|'APIEvent'
-                if (
-                    metadata.triggers?.length > 0 &&
-                    metadata.triggers[0].metaData?.eventDefinitionId
-                ) {
-                    // trigger found; there can only be one entry in this array
-                    try {
-                        const edKey = cache.searchForField(
-                            'event',
-                            metadata.triggers[0].metaData.eventDefinitionId,
-                            'id',
-                            'eventDefinitionKey'
-                        );
-                        if (metadata.triggers[0].metaData.eventDefinitionKey !== edKey) {
-                            Util.logger.debug(
-                                `eventDefinitionKey not matching eventDefinitionId. Overwriting '${metadata.triggers[0].metaData.eventDefinitionKey}' with the correct key '${edKey}'.`
-                            );
-                        }
-                        metadata.triggers[0].metaData.r__event_key = edKey;
+                if (metadata.triggers?.length > 0) {
+                    const search = ['arguments', 'metaData'];
+                    for (const area of search) {
+                        const config = metadata.triggers[0][area];
+                        if (config?.eventDefinitionId) {
+                            // trigger found; there can only be one entry in this array
+                            try {
+                                const edKey = cache.searchForField(
+                                    'event',
+                                    config.eventDefinitionId,
+                                    'id',
+                                    'eventDefinitionKey'
+                                );
+                                if (config.eventDefinitionKey !== edKey) {
+                                    Util.logger.debug(
+                                        `eventDefinitionKey not matching eventDefinitionId. Overwriting '${config.eventDefinitionKey}' with the correct key '${edKey}'.`
+                                    );
+                                }
+                                config.r__event_key = edKey;
 
-                        delete metadata.triggers[0].metaData.eventDefinitionKey;
-                        delete metadata.triggers[0].metaData.eventDefinitionId;
-                    } catch (ex) {
-                        Util.logger.warn(
-                            ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${
-                                metadata[this.definition.keyField]
-                            }): ${ex.message}.`
-                        );
+                                delete config.eventDefinitionKey;
+                                delete config.eventDefinitionId;
+                            } catch (ex) {
+                                Util.logger.warn(
+                                    ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${
+                                        metadata[this.definition.keyField]
+                                    }): ${ex.message}.`
+                                );
+                            }
+                        }
+                        if (config?.dataExtensionId) {
+                            try {
+                                config.r__dataExtension_key = cache.searchForField(
+                                    'dataExtension',
+                                    config.dataExtensionId,
+                                    'ObjectID',
+                                    'CustomerKey'
+                                );
+                                delete config.dataExtensionId;
+                            } catch (ex) {
+                                Util.logger.warn(
+                                    ` - ${this.definition.type} ${metadata[this.definition.nameField]} (${
+                                        metadata[this.definition.keyField]
+                                    }): ${ex.message}.`
+                                );
+                            }
+                        }
                     }
                 }
-
                 // ~~~ ACTIVITIES ~~~~
 
                 this._postRetrieveTasks_activities(metadata);
@@ -546,7 +565,64 @@ class Journey extends MetadataType {
                         // this section is likely only relevant for QuickSends and not for Multi-Step Journeys
 
                         // triggeredSend key
-                        if (triggeredSend.id) {
+                        if (configurationArguments.r__triggeredSend_key) {
+                            // if we have a key set outside of this detailed triggeredSend config then lets overwrite what we've got here with what we cached from the related TS as it will be more current; but we cannot retrieve all info unfortunately
+                            triggeredSend.r__triggeredSend_key =
+                                configurationArguments.r__triggeredSend_key;
+                            delete triggeredSend.id;
+                            delete triggeredSend.key;
+                            const linkedTS = cache.getByKey(
+                                'triggeredSend',
+                                triggeredSend.r__triggeredSend_key
+                            );
+                            triggeredSend.emailId = linkedTS?.Email?.ID;
+                            triggeredSend.dynamicEmailSubject = linkedTS.DynamicEmailSubject;
+                            triggeredSend.emailSubject = linkedTS.EmailSubject;
+                            triggeredSend.bccEmail = linkedTS.BccEmail;
+                            triggeredSend.isMultipart = linkedTS.IsMultipart;
+                            triggeredSend.autoAddSubscribers = linkedTS.AutoAddSubscribers;
+                            triggeredSend.autoUpdateSubscribers = linkedTS.AutoUpdateSubscribers;
+                            triggeredSend.isTrackingClicks = !linkedTS.SuppressTracking;
+                            // from name & email are set in the senderProfile, not in the triggeredSend
+                            // triggeredSend.fromName = linkedTS.FromName;
+                            // triggeredSend.fromAddress = linkedTS.FromAddress;
+
+                            if (linkedTS.SenderProfile?.CustomerKey) {
+                                try {
+                                    cache.searchForField(
+                                        'senderProfile',
+                                        linkedTS.SenderProfile.CustomerKey,
+                                        'CustomerKey',
+                                        'CustomerKey'
+                                    );
+                                    triggeredSend.r__senderProfile_key =
+                                        linkedTS.SenderProfile.CustomerKey;
+                                    delete triggeredSend.senderProfileId;
+                                } catch (ex) {
+                                    Util.logger.warn(
+                                        ` - ${this.definition.type} ${linkedTS.CustomerKey}: ${ex.message}`
+                                    );
+                                }
+                            }
+                            // send classification
+                            if (linkedTS.SendClassification?.CustomerKey) {
+                                try {
+                                    cache.searchForField(
+                                        'sendClassification',
+                                        linkedTS.SendClassification.CustomerKey,
+                                        'CustomerKey',
+                                        'CustomerKey'
+                                    );
+                                    triggeredSend.r__sendClassification_key =
+                                        linkedTS.SendClassification.CustomerKey;
+                                    delete triggeredSend.sendClassificationId;
+                                } catch (ex) {
+                                    Util.logger.warn(
+                                        ` - ${this.definition.type} ${linkedTS.CustomerKey}: ${ex.message}`
+                                    );
+                                }
+                            }
+                        } else if (triggeredSend.id) {
                             // triggeredSendKey is not always set but id is
                             const tsKey = cache.searchForField(
                                 'triggeredSend',
@@ -879,17 +955,33 @@ class Journey extends MetadataType {
                 // ~~~ TRIGGERS ~~~~
 
                 // event / definitionType==='Multistep' && channel==='' && triggers[].type === 'EmailAudience'|'APIEvent'
-                if (metadata.triggers?.length > 0 && metadata.triggers[0].metaData?.r__event_key) {
-                    // trigger found; there can only be one entry in this array
-                    metadata.triggers[0].metaData.eventDefinitionId = cache.searchForField(
-                        'event',
-                        metadata.triggers[0].metaData.r__event_key,
-                        'eventDefinitionKey',
-                        'id'
-                    );
-                    metadata.triggers[0].metaData.eventDefinitionKey =
-                        metadata.triggers[0].metaData.r__event_key;
-                    delete metadata.triggers[0].metaData.r__event_key;
+
+                if (metadata.triggers?.length > 0) {
+                    const search = ['arguments', 'metaData'];
+                    for (const area of search) {
+                        const config = metadata.triggers[0][area];
+                        if (config?.r__event_key) {
+                            // trigger found; there can only be one entry in this array
+                            config.eventDefinitionId = cache.searchForField(
+                                'event',
+                                config.r__event_key,
+                                'eventDefinitionKey',
+                                'id'
+                            );
+                            config.eventDefinitionKey = config.r__event_key;
+                            delete config.r__event_key;
+                        }
+                        if (config?.r__dataExtension_key) {
+                            // trigger found; there can only be one entry in this array
+                            config.dataExtensionId = cache.searchForField(
+                                'dataExtension',
+                                config.r__dataExtension_key,
+                                'CustomerKey',
+                                'ObjectID'
+                            );
+                            delete config.r__dataExtension_key;
+                        }
+                    }
                 }
 
                 // transactionalEmail / definitionType==='Transactional' && channel==='email' && triggers[].type === 'transactional-api'
@@ -988,32 +1080,46 @@ class Journey extends MetadataType {
             switch (activity.type) {
                 case 'EMAILV2': {
                     // triggeredSend + email+asset
-                    // TODO email / asset
                     const configurationArguments = activity.configurationArguments;
                     if (configurationArguments?.r__triggeredSend_key) {
                         // triggeredSendKey is not always set but triggeredSendId is
-                        configurationArguments.triggeredSendId = cache.searchForField(
-                            'triggeredSend',
-                            configurationArguments.r__triggeredSend_key,
-                            'CustomerKey',
-                            'ObjectID'
-                        );
-                        configurationArguments.triggeredSendKey =
-                            configurationArguments.r__triggeredSend_key;
-                        delete configurationArguments.r__triggeredSend_key;
-                    }
-                    const triggeredSend = configurationArguments?.triggeredSend;
-                    if (triggeredSend) {
-                        // triggeredSend key
-                        if (triggeredSend.r__triggeredSend_key) {
-                            // key is not always set but id is
-                            triggeredSend.id = cache.searchForField(
+                        try {
+                            configurationArguments.triggeredSendId = cache.searchForField(
                                 'triggeredSend',
-                                triggeredSend.r__triggeredSend_key,
+                                configurationArguments.r__triggeredSend_key,
                                 'CustomerKey',
                                 'ObjectID'
                             );
-                            triggeredSend.key = triggeredSend.r__triggeredSend_key;
+                            configurationArguments.triggeredSendKey =
+                                configurationArguments.r__triggeredSend_key;
+                            delete configurationArguments.r__triggeredSend_key;
+                        } catch {
+                            Util.logger.warn(
+                                ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): Could not find triggeredSend with key ${configurationArguments.r__triggeredSend_key}. Attempting to let the API auto-create it`
+                            );
+                        }
+                    }
+                    const triggeredSend = configurationArguments?.triggeredSend;
+                    if (triggeredSend) {
+                        // triggeredSend key
+                        if (
+                            !configurationArguments.r__triggeredSend_key &&
+                            triggeredSend.r__triggeredSend_key
+                        ) {
+                            try {
+                                // key is not always set but id is
+                                triggeredSend.id = cache.searchForField(
+                                    'triggeredSend',
+                                    triggeredSend.r__triggeredSend_key,
+                                    'CustomerKey',
+                                    'ObjectID'
+                                );
+                                triggeredSend.key = triggeredSend.r__triggeredSend_key;
+                            } catch {
+                                Util.logger.warn(
+                                    ` - ${this.definition.type} '${metadata[this.definition.nameField]}' (${metadata[this.definition.keyField]}): Could not find triggeredSend with key ${triggeredSend.r__triggeredSend_key}. Attempting to let the API auto-create it`
+                                );
+                            }
                             delete triggeredSend.r__triggeredSend_key;
                         }
 
diff --git a/lib/metadataTypes/MetadataType.js b/lib/metadataTypes/MetadataType.js
index 4b88df2fd..69efa357d 100644
--- a/lib/metadataTypes/MetadataType.js
+++ b/lib/metadataTypes/MetadataType.js
@@ -1507,7 +1507,14 @@ class MetadataType {
             return;
         }
         // revert back placeholder to dots
-        const originHelper = origin ? origin + '.' + fieldPath : fieldPath;
+        let originHelper;
+        if (origin) {
+            originHelper = this.definition.fields[origin + '.%']
+                ? origin + '.%'
+                : origin + '.' + fieldPath;
+        } else {
+            originHelper = fieldPath;
+        }
 
         if (this.definition.fields[originHelper]?.skipValidation || originHelper === '@_xsi:type') {
             // skip if current field should not be validated OR if field is internal helper field xsi:type
@@ -1538,10 +1545,10 @@ class MetadataType {
             // Recursive call of this method if there are nested fields
             for (const subField in fieldContent) {
                 this.deleteFieldByDefinition(
-                    metadataEntry,
-                    originHelper + '.' + subField,
+                    fieldContent,
+                    subField,
                     definitionProperty,
-                    null
+                    originHelper
                 );
             }
         } else if (!this.definition.fields[originHelper]) {
diff --git a/lib/metadataTypes/definitions/Asset.definition.js b/lib/metadataTypes/definitions/Asset.definition.js
index 524abd5b8..231b98324 100644
--- a/lib/metadataTypes/definitions/Asset.definition.js
+++ b/lib/metadataTypes/definitions/Asset.definition.js
@@ -81,6 +81,42 @@ export default {
             retrieving: true,
             template: false,
         },
+        'businessUnitAvailability.%': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
+        'businessUnitAvailability.%.view': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
+        'businessUnitAvailability.%.update': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
+        'businessUnitAvailability.%.delete': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
+        'businessUnitAvailability.%.memberId': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
+        'businessUnitAvailability.%.transferOwnership': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: false,
+        },
         category: {
             isCreateable: true,
             isUpdateable: true,
@@ -171,6 +207,12 @@ export default {
         'data.approvals': {
             skipValidation: true,
         },
+        'data.email': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
         'data.email.attributes': {
             skipValidation: true,
         },
@@ -389,13 +431,25 @@ export default {
             isCreateable: false,
             isUpdateable: false,
             retrieving: true,
-            template: true,
+            template: false,
+        },
+        'sharingProperties.sharedFrom': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: false,
+        },
+        'sharingProperties.sharedFromMID': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: false,
         },
         'sharingProperties.sharingType': {
             isCreateable: false,
             isUpdateable: false,
             retrieving: true,
-            template: true,
+            template: false,
         },
         slots: {
             skipValidation: true,
diff --git a/lib/metadataTypes/definitions/AttributeSet.definition.js b/lib/metadataTypes/definitions/AttributeSet.definition.js
index 69630de20..ee2a1ce8d 100644
--- a/lib/metadataTypes/definitions/AttributeSet.definition.js
+++ b/lib/metadataTypes/definitions/AttributeSet.definition.js
@@ -435,6 +435,54 @@ export default {
             retrieving: true,
             template: null,
         },
+        'relationships[].leftItem.cardinality': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].leftItem.relationshipType': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].leftItem.r__attributeSet_key': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].leftItem.r__attributeGroup_key': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].rightItem.cardinality': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].rightItem.relationshipType': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].rightItem.r__attributeSet_key': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'relationships[].rightItem.r__attributeGroup_key': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
         'relationships[].leftRelationshipIDs[].type': {
             isCreateable: null,
             isUpdateable: null,
@@ -890,6 +938,18 @@ export default {
             retrieving: true,
             template: null,
         },
+        'valueDefinitions[].storageFieldValueID.type': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
+        'valueDefinitions[].storageFieldValueID.value': {
+            isCreateable: null,
+            isUpdateable: null,
+            retrieving: true,
+            template: null,
+        },
         'valueDefinitions[].storageName': {
             // always equal valueDefinitions[].definitionKey, except for when that is CustomObjectKey - then this will be _CustomObjectKey (with an underscore)
             isCreateable: null,
@@ -897,6 +957,21 @@ export default {
             retrieving: false,
             template: null,
         },
+        'valueDefinitions[].storageObjectFieldInformation': {
+            skipValidation: true,
+        },
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldAPIName': {
+            skipValidation: true,
+        },
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldDataTypeName': {
+            skipValidation: true,
+        },
+        'valueDefinitions[].storageObjectFieldInformation.externalObjectFieldLength': {
+            skipValidation: true,
+        },
+        'valueDefinitions[].storageObjectFieldInformation.externalIsRowIdentifier': {
+            skipValidation: true,
+        },
         'valueDefinitions[].valueDefinitionID': {
             // equal to valueDefinitions[].definitionID
             isCreateable: null,
diff --git a/lib/metadataTypes/definitions/EmailSend.definition.js b/lib/metadataTypes/definitions/EmailSend.definition.js
index 53ee0c9d4..319d587a1 100644
--- a/lib/metadataTypes/definitions/EmailSend.definition.js
+++ b/lib/metadataTypes/definitions/EmailSend.definition.js
@@ -470,7 +470,7 @@ export default {
         'SendDefinitionList[].Name': {
             skipValidation: true, // cannot be asked for but will be retrieved
         },
-        'SendDefinitionList[].r__dataExtension_Key': {
+        'SendDefinitionList[].r__dataExtension_key': {
             skipValidation: true,
         },
         'SendDefinitionList[].List.ObjectID': {
diff --git a/lib/metadataTypes/definitions/Event.definition.js b/lib/metadataTypes/definitions/Event.definition.js
index 3f71095ad..7853cbeb4 100644
--- a/lib/metadataTypes/definitions/Event.definition.js
+++ b/lib/metadataTypes/definitions/Event.definition.js
@@ -196,108 +196,108 @@ export default {
             retrieving: true,
             template: true,
         },
-        // 'configurationArguments.applicationExtensionKey': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.contactKey': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.contactPersonType': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.dataExtensionId': {
-        //     isCreateable: false,
-        //     isUpdateable: true,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.evaluationCriteriaSummary': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.eventDataConfig': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.eventDataSummary': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.objectAPIName': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.passThroughArgument': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.primaryObjectFilterCriteria': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.primaryObjectFilterSummary': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.relatedObjectFilterCriteria': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.relatedObjectFilterSummary': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.salesforceTriggerCriteria': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
+        'configurationArguments.applicationExtensionKey': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.contactKey': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.contactPersonType': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.dataExtensionId': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: false,
+            template: false,
+        },
+        'configurationArguments.evaluationCriteriaSummary': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.eventDataConfig': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.eventDataSummary': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.objectAPIName': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.passThroughArgument': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.primaryObjectFilterCriteria': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.primaryObjectFilterSummary': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.relatedObjectFilterCriteria': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.relatedObjectFilterSummary': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.salesforceTriggerCriteria': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
         'configurationArguments.unconfigured': {
             isCreateable: false,
             isUpdateable: false,
             retrieving: false,
             template: false,
         },
-        // 'configurationArguments.version': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
-        // 'configurationArguments.whoToInject': {
-        //     isCreateable: false,
-        //     isUpdateable: false,
-        //     retrieving: false,
-        //     template: false,
-        // },
+        'configurationArguments.version': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'configurationArguments.whoToInject': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
         createdBy: {
             isCreateable: false,
             isUpdateable: false,
diff --git a/lib/metadataTypes/definitions/ImportFile.definition.js b/lib/metadataTypes/definitions/ImportFile.definition.js
index 677fef63c..cc1245944 100644
--- a/lib/metadataTypes/definitions/ImportFile.definition.js
+++ b/lib/metadataTypes/definitions/ImportFile.definition.js
@@ -131,6 +131,14 @@ export default {
             skipValidation: true,
         },
         fileNamingPattern: {
+            // for FTP-import: pattern to look for; for DE-import: "_CustomObject"
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        fileSpec: {
+            // same as fileNamingPattern
             isCreateable: true,
             isUpdateable: true,
             retrieving: true,
@@ -256,6 +264,20 @@ export default {
             retrieving: true,
             template: true,
         },
+        sourceCustomObjectId: {
+            // for FTP-import: empty string; for DE-import: dataExtension id
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        sourceDataExtensionName: {
+            // for FTP-import: empty string; for DE-import: dataExtension name
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
         c__dataAction: {
             isCreateable: false,
             isUpdateable: false,
@@ -280,7 +302,13 @@ export default {
             retrieving: true,
             template: true,
         },
-        'destination.c__destinationType': {
+        'source.c__type': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
+        'destination.c__type': {
             isCreateable: false,
             isUpdateable: false,
             retrieving: true,
diff --git a/lib/metadataTypes/definitions/Journey.definition.js b/lib/metadataTypes/definitions/Journey.definition.js
index b9871e140..5d1841cfb 100644
--- a/lib/metadataTypes/definitions/Journey.definition.js
+++ b/lib/metadataTypes/definitions/Journey.definition.js
@@ -103,6 +103,9 @@ export default {
             retrieving: null,
             template: null,
         },
+        'defaults.properties': {
+            skipValidation: true,
+        },
         'defaults.properties.analyticsTracking.analyticsType': {
             isCreateable: null,
             isUpdateable: null,
@@ -284,6 +287,48 @@ export default {
             retrieving: true,
             template: true,
         },
+        'triggers[].arguments.serializedObjectType': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.eventDefinitionId': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.eventDefinitionKey': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.dataExtensionId': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.automationId': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.r__event_key': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].arguments.r__dataExtension_key': {
+            isCreateable: false,
+            isUpdateable: false,
+            retrieving: true,
+            template: true,
+        },
         'triggers[].configurationArguments': {
             isCreateable: true,
             isUpdateable: true,
@@ -393,6 +438,24 @@ export default {
             retrieving: true,
             template: true,
         },
+        'triggers[].configurationArguments.whoToInject': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].configurationArguments.objectApiName': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].configurationArguments.additionalObjectFilterCriteria': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
         'triggers[].metaData': {
             isCreateable: true,
             isUpdateable: true,
@@ -400,10 +463,28 @@ export default {
             template: true,
         },
         'triggers[].metaData.sourceInteractionId': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].metaData.entrySourceGroupConfigUrl': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].metaData.r__event_key': {
             isCreateable: false,
             isUpdateable: false,
-            retrieving: false,
-            template: false,
+            retrieving: true,
+            template: true,
+        },
+        'triggers[].metaData.category': {
+            isCreateable: true,
+            isUpdateable: true,
+            retrieving: true,
+            template: true,
         },
         'triggers[].metaData.eventDefinitionId': {
             isCreateable: false,
diff --git a/lib/metadataTypes/definitions/TriggeredSend.definition.js b/lib/metadataTypes/definitions/TriggeredSend.definition.js
index af5843fcb..bd40e05b5 100644
--- a/lib/metadataTypes/definitions/TriggeredSend.definition.js
+++ b/lib/metadataTypes/definitions/TriggeredSend.definition.js
@@ -79,8 +79,8 @@ export default {
             templating: true,
         },
         CCEmail: {
-            isCreateable: false,
-            isUpdateable: false,
+            isCreateable: true,
+            isUpdateable: true,
             retrieving: false,
             templating: false,
         },
diff --git a/lib/util/file.js b/lib/util/file.js
index bb90253a7..31e7c5c72 100644
--- a/lib/util/file.js
+++ b/lib/util/file.js
@@ -228,8 +228,7 @@ const File = {
             beautyAmp.setup(null, null, logs);
             // Note: we need to trim the result as beautyAmp adds a leading new line; but we also want to ensure there is a single new line at the end to comply with standard linting rules
             return await this.beautify_beautyAmp_beautify(content, formatHTML);
-        } catch (ex) {
-            Util.logger.debug('File.beautify_beautyAmp:: error | ' + ex.message);
+        } catch {
             return content;
         }
     },
@@ -307,16 +306,6 @@ const File = {
             }
             formatted = await prettier.format(content, FileFs.prettierConfig);
         } catch (ex) {
-            const warnMsg = `Potential Code issue found in ${this.normalizePath([
-                ...directory,
-                filename + '.' + filetype,
-            ])}`;
-            Util.logger.debug(warnMsg);
-            if (Util.logger.level === 'debug') {
-                // useful when running test cases in which we cannot see .error files
-                Util.logger.debug(ex.message);
-            }
-
             // save prettier errror into log file
             // Note: we have to filter color codes from prettier's error message before saving it to file
             /* eslint-disable no-control-regex */
diff --git a/package-lock.json b/package-lock.json
index 158ac14a9..0c2853409 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
 {
     "name": "mcdev",
-    "version": "7.1.0",
+    "version": "7.1.1",
     "lockfileVersion": 3,
     "requires": true,
     "packages": {
         "": {
             "name": "mcdev",
-            "version": "7.1.0",
+            "version": "7.1.1",
             "license": "MIT",
             "dependencies": {
                 "beauty-amp-core2": "0.4.9",
diff --git a/package.json b/package.json
index 1943561ae..303d4639a 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
     "name": "mcdev",
-    "version": "7.1.0",
+    "version": "7.1.1",
     "description": "Accenture Salesforce Marketing Cloud DevTools",
     "author": "Accenture: joern.berkefeld, douglas.midgley, robert.zimmermann, maciej.barnas",
     "license": "MIT",
diff --git a/test/general.test.js b/test/general.test.js
index d0752a82e..70a1fdcb7 100644
--- a/test/general.test.js
+++ b/test/general.test.js
@@ -493,7 +493,7 @@ describe('GENERAL', () => {
                 );
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
-                    12,
+                    14,
                     'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
                 );
             });
@@ -703,7 +703,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU', ['automation', 'query']);
 
-                const expectedApiCallsRetrieve = 24;
+                const expectedApiCallsRetrieve = 25;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -808,7 +808,7 @@ describe('GENERAL', () => {
             });
 
             it('buildTemplate + buildDefinition for multiple types with keys and --retrieve', async () => {
-                const expectedApiCallsRetrieve = 27;
+                const expectedApiCallsRetrieve = 28;
 
                 // preparation
                 const argvMetadata = [
@@ -913,7 +913,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU');
 
-                const expectedApiCallsRetrieve = 74;
+                const expectedApiCallsRetrieve = 77;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -1041,7 +1041,7 @@ describe('GENERAL', () => {
             });
 
             it('buildTemplate + buildDefinition for multiple types with keys and --dependencies and --retrieve', async () => {
-                const expectedApiCallsRetrieve = 78;
+                const expectedApiCallsRetrieve = 81;
 
                 // preparation
                 const argvMetadata = [
@@ -1166,7 +1166,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU', ['automation', 'query']);
 
-                const expectedApiCallsRetrieve = 24;
+                const expectedApiCallsRetrieve = 25;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -1358,7 +1358,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU', ['automation', 'query']);
 
-                const expectedApiCallsRetrieve = 24;
+                const expectedApiCallsRetrieve = 25;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -1449,7 +1449,7 @@ describe('GENERAL', () => {
                 // download everything before we test buildTemplate
                 await handler.retrieve('testInstance/testBU');
 
-                const expectedApiCallsRetrieve = 74;
+                const expectedApiCallsRetrieve = 77;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -1559,7 +1559,7 @@ describe('GENERAL', () => {
             });
 
             it('build multiple type with keys and --dependencies and --retrieve', async () => {
-                const expectedApiCallsRetrieve = 78;
+                const expectedApiCallsRetrieve = 81;
 
                 // preparation
                 const argvMetadata = [
@@ -1666,7 +1666,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU', ['automation', 'query']);
 
-                const expectedApiCallsRetrieve = 24;
+                const expectedApiCallsRetrieve = 25;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
@@ -1844,7 +1844,7 @@ describe('GENERAL', () => {
                 // download first before we test buildTemplate
                 await handler.retrieve('testInstance/testBU');
 
-                const expectedApiCallsRetrieve = 74;
+                const expectedApiCallsRetrieve = 77;
                 assert.equal(
                     testUtils.getAPIHistoryLength(),
                     expectedApiCallsRetrieve,
diff --git a/test/mockRoot/.mcdevrc.json b/test/mockRoot/.mcdevrc.json
index dc3be9043..96963f3d4 100644
--- a/test/mockRoot/.mcdevrc.json
+++ b/test/mockRoot/.mcdevrc.json
@@ -100,5 +100,5 @@
             "verification"
         ]
     },
-    "version": "7.1.0"
+    "version": "7.1.1"
 }
diff --git a/test/resources/9999999/automation/v1/imports/d2474efb-a449-ef11-b876-f40343c95928/get-response.json b/test/resources/9999999/automation/v1/imports/d2474efb-a449-ef11-b876-f40343c95928/get-response.json
new file mode 100644
index 000000000..f88d4b83f
--- /dev/null
+++ b/test/resources/9999999/automation/v1/imports/d2474efb-a449-ef11-b876-f40343c95928/get-response.json
@@ -0,0 +1,37 @@
+{
+    "allowErrors": true,
+    "customerKey": "testExisting_importFileDataImport",
+    "createdDate": "2024-07-24T04:10:42.15",
+    "modifiedDate": "2024-07-24T04:10:42.15",
+    "dateFormatLocale": "en-US",
+    "deleteFile": false,
+    "destinationObjectId": "1c8064d5-6502-ef11-a5c8-5cba2c702db8",
+    "destinationId": 0,
+    "destinationObjectTypeId": 310,
+    "destinationName": "importFileTestB",
+    "encodingName": "utf-8",
+    "fieldMappings": [],
+    "fieldMappingType": "InferFromColumnHeadings",
+    "fileNamingPattern": "_CustomObject",
+    "fileSpec": "_CustomObject",
+    "fileTransferLocationId": "41a5ded7-0d98-4910-a15f-d09e7ab0af24",
+    "fileTransferLocationName": "ExactTarget Enhanced FTP",
+    "fileType": "CSV",
+    "filter": "",
+    "hasColumnHeader": true,
+    "importDefinitionId": "d2474efb-a449-ef11-b876-f40343c95928",
+    "isOrderedImport": true,
+    "isSequential": true,
+    "maxFileAgeHours": 0,
+    "maxImportFrequencyHours": 0,
+    "maxFileAgeScheduleOffsetHours": 0,
+    "name": "testExisting_importFileDataImport",
+    "sendEmailNotification": false,
+    "sourceCustomObjectId": "21711373-72c1-ec11-b83b-48df37d1deb7",
+    "sourceDataExtensionName": "testExisting_dataExtension",
+    "standardQuotedStrings": true,
+    "subscriberImportTypeId": 255,
+    "updateTypeId": 4,
+    "fileTransferLocationTypeId": 0,
+    "blankFileProcessingType": 0
+}
diff --git a/test/resources/9999999/automation/v1/imports/get-response.json b/test/resources/9999999/automation/v1/imports/get-response.json
index 6b60cf36b..1e44eb86d 100644
--- a/test/resources/9999999/automation/v1/imports/get-response.json
+++ b/test/resources/9999999/automation/v1/imports/get-response.json
@@ -1,7 +1,7 @@
 {
     "page": 1,
     "pageSize": 500,
-    "count": 2,
+    "count": 3,
     "items": [
         {
             "allowErrors": true,
@@ -110,6 +110,37 @@
             "subscriberImportTypeId": 255,
             "updateTypeId": 0,
             "fileTransferLocationTypeId": 0
+        },
+        {
+            "allowErrors": true,
+            "customerKey": "testExisting_importFileDataImport",
+            "createdDate": "2024-07-24T04:10:42.15",
+            "modifiedDate": "2024-07-24T04:10:42.15",
+            "dateFormatLocale": "en-US",
+            "deleteFile": false,
+            "destinationObjectId": "bf4f1d9b-a349-ef11-b876-f40343c95928",
+            "destinationId": 0,
+            "destinationObjectTypeId": 310,
+            "fieldMappings": [],
+            "fieldMappingType": "InferFromColumnHeadings",
+            "fileNamingPattern": "_CustomObject",
+            "fileSpec": "_CustomObject",
+            "fileTransferLocationId": "527eeab5-fd9e-4a2d-ad38-f3c856ea2031",
+            "fileType": "CSV",
+            "filter": "",
+            "hasColumnHeader": true,
+            "importDefinitionId": "d2474efb-a449-ef11-b876-f40343c95928",
+            "isOrderedImport": true,
+            "isSequential": true,
+            "maxFileAgeHours": 0,
+            "maxImportFrequencyHours": 0,
+            "maxFileAgeScheduleOffsetHours": 0,
+            "name": "testExisting_importFileDataImport",
+            "sendEmailNotification": false,
+            "standardQuotedStrings": true,
+            "subscriberImportTypeId": 255,
+            "updateTypeId": 4,
+            "fileTransferLocationTypeId": 0
         }
     ]
 }
diff --git a/test/resources/9999999/importFile/build-expected.json b/test/resources/9999999/importFile/build-expected.json
index a3efa21ec..0c61c5e77 100644
--- a/test/resources/9999999/importFile/build-expected.json
+++ b/test/resources/9999999/importFile/build-expected.json
@@ -23,10 +23,8 @@
     "sendEmailNotification": false,
     "standardQuotedStrings": true,
     "destination": {
-        "c__destinationType": "DataExtension",
+        "c__type": "DataExtension",
         "r__dataExtension_key": "testTemplated_dataExtension"
     },
-    "source": {
-        "r__fileLocation_name": "ExactTarget Enhanced FTP"
-    }
+    "source": { "c__type": "File Location", "r__fileLocation_name": "ExactTarget Enhanced FTP" }
 }
diff --git a/test/resources/9999999/importFile/get-dataImport-expected.json b/test/resources/9999999/importFile/get-dataImport-expected.json
new file mode 100644
index 000000000..970ed4f41
--- /dev/null
+++ b/test/resources/9999999/importFile/get-dataImport-expected.json
@@ -0,0 +1,36 @@
+{
+    "allowErrors": true,
+    "customerKey": "testExisting_importFileDataImport",
+    "createdDate": "2024-07-24T04:10:42.15",
+    "modifiedDate": "2024-07-24T04:10:42.15",
+    "dateFormatLocale": "en-US",
+    "deleteFile": false,
+    "fieldMappings": [],
+    "fieldMappingType": "InferFromColumnHeadings",
+    "fileNamingPattern": "_CustomObject",
+    "fileSpec": "_CustomObject",
+    "fileType": "CSV",
+    "filter": "",
+    "hasColumnHeader": true,
+    "isOrderedImport": true,
+    "isSequential": true,
+    "maxFileAgeHours": 0,
+    "maxImportFrequencyHours": 0,
+    "maxFileAgeScheduleOffsetHours": 0,
+    "name": "testExisting_importFileDataImport",
+    "sendEmailNotification": false,
+    "standardQuotedStrings": true,
+    "encodingName": "utf-8",
+    "blankFileProcessingType": 0,
+    "destination": {
+        "c__type": "DataExtension",
+        "r__dataExtension_key": "testExisting_journey_Quicksend"
+    },
+    "source": {
+        "c__type": "DataExtension",
+        "r__fileLocation_name": "ExactTarget Enhanced FTP",
+        "r__dataExtension_key": "testExisting_dataExtension"
+    },
+    "c__subscriberImportType": "DataExtension",
+    "c__dataAction": "Overwrite"
+}
diff --git a/test/resources/9999999/importFile/get-expected.json b/test/resources/9999999/importFile/get-expected.json
index 2598549d3..1669ef79e 100644
--- a/test/resources/9999999/importFile/get-expected.json
+++ b/test/resources/9999999/importFile/get-expected.json
@@ -26,10 +26,8 @@
     "sendEmailNotification": false,
     "standardQuotedStrings": true,
     "destination": {
-        "c__destinationType": "DataExtension",
+        "c__type": "DataExtension",
         "r__dataExtension_key": "testExisting_dataExtension"
     },
-    "source": {
-        "r__fileLocation_name": "ExactTarget Enhanced FTP"
-    }
+    "source": { "c__type": "File Location", "r__fileLocation_name": "ExactTarget Enhanced FTP" }
 }
diff --git a/test/resources/9999999/importFile/get-sms-expected.json b/test/resources/9999999/importFile/get-sms-expected.json
index 821a83a43..cfc89493c 100644
--- a/test/resources/9999999/importFile/get-sms-expected.json
+++ b/test/resources/9999999/importFile/get-sms-expected.json
@@ -69,10 +69,11 @@
     "sendEmailNotification": true,
     "standardQuotedStrings": false,
     "destination": {
-        "c__destinationType": "SMS",
+        "c__type": "SMS",
         "r__mobileKeyword_key": "4912312345678.TESTEXISTING_KEYWORD"
     },
     "source": {
+        "c__type": "DataExtension",
         "r__dataExtension_key": "testExisting_dataExtension",
         "r__fileLocation_name": "ExactTarget Enhanced FTP"
     }
diff --git a/test/resources/9999999/importFile/patch-expected.json b/test/resources/9999999/importFile/patch-expected.json
index de056d7c2..b84c1119b 100644
--- a/test/resources/9999999/importFile/patch-expected.json
+++ b/test/resources/9999999/importFile/patch-expected.json
@@ -25,10 +25,8 @@
     "sendEmailNotification": false,
     "standardQuotedStrings": true,
     "destination": {
-        "c__destinationType": "DataExtension",
+        "c__type": "DataExtension",
         "r__dataExtension_key": "testExisting_dataExtension"
     },
-    "source": {
-        "r__fileLocation_name": "ExactTarget Enhanced FTP"
-    }
+    "source": { "c__type": "File Location", "r__fileLocation_name": "ExactTarget Enhanced FTP" }
 }
diff --git a/test/resources/9999999/importFile/post-expected.json b/test/resources/9999999/importFile/post-expected.json
index 58a53c3b1..44bd0264f 100644
--- a/test/resources/9999999/importFile/post-expected.json
+++ b/test/resources/9999999/importFile/post-expected.json
@@ -23,10 +23,8 @@
     "sendEmailNotification": false,
     "standardQuotedStrings": true,
     "destination": {
-        "c__destinationType": "DataExtension",
+        "c__type": "DataExtension",
         "r__dataExtension_key": "testExisting_dataExtension"
     },
-    "source": {
-        "r__fileLocation_name": "ExactTarget Enhanced FTP"
-    }
+    "source": { "c__type": "File Location", "r__fileLocation_name": "ExactTarget Enhanced FTP" }
 }
diff --git a/test/resources/9999999/importFile/template-expected.json b/test/resources/9999999/importFile/template-expected.json
index 3139964b4..26ffed49a 100644
--- a/test/resources/9999999/importFile/template-expected.json
+++ b/test/resources/9999999/importFile/template-expected.json
@@ -23,10 +23,8 @@
     "sendEmailNotification": false,
     "standardQuotedStrings": true,
     "destination": {
-        "c__destinationType": "DataExtension",
+        "c__type": "DataExtension",
         "r__dataExtension_key": "{{{prefix}}}dataExtension"
     },
-    "source": {
-        "r__fileLocation_name": "ExactTarget Enhanced FTP"
-    }
+    "source": { "c__type": "File Location", "r__fileLocation_name": "ExactTarget Enhanced FTP" }
 }
diff --git a/test/type.asset.test.js b/test/type.asset.test.js
index 0fb4b961f..368dd5dfe 100644
--- a/test/type.asset.test.js
+++ b/test/type.asset.test.js
@@ -232,6 +232,49 @@ describe('type: asset', () => {
             );
             return;
         });
+
+        it('Should retrieve a asset by key', async () => {
+            // WHEN
+            const retrieve = await handler.retrieve(
+                'testInstance/testBU',
+                ['asset'],
+                ['testExisting_asset_htmlblock']
+            );
+
+            // THEN
+            assert.equal(process.exitCode, 0, 'retrieve should not have thrown an error');
+            assert.equal(
+                retrieve['testInstance/testBU'].asset
+                    ? Object.keys(retrieve['testInstance/testBU'].asset).length
+                    : 0,
+                1,
+                'Unexpected number of assets in retrieve response'
+            );
+            // get results from cache
+            const result = cache.getCache();
+            assert.equal(
+                result.asset ? Object.keys(result.asset).length : 0,
+                6,
+                'Unexpected number of assets in cache'
+            );
+
+            assert.deepEqual(
+                await getActualJson('testExisting_asset_htmlblock', 'asset', 'block'),
+                await testUtils.getExpectedJson(
+                    '9999999',
+                    'asset',
+                    'testExisting_asset_htmlblock-retrieve'
+                ),
+                'returned metadata was not equal expected'
+            );
+
+            assert.equal(
+                testUtils.getAPIHistoryLength(),
+                8,
+                'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
+            );
+            return;
+        });
     });
 
     describe('Deploy ================', () => {
diff --git a/test/type.automation.test.js b/test/type.automation.test.js
index 19966334d..163fb45b8 100644
--- a/test/type.automation.test.js
+++ b/test/type.automation.test.js
@@ -47,7 +47,7 @@ describe('type: automation', () => {
             );
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                21,
+                22,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -133,7 +133,7 @@ describe('type: automation', () => {
 
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                28,
+                29,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -162,12 +162,6 @@ describe('type: automation', () => {
                 'five cached automation expected'
             );
 
-            // const scheduleCalloutList = testUtils.getSoapCallouts('Schedule');
-            // const objectIds = {
-            //     testNew_automation: 'a8afb0e2-b00a-4c88-ad2e-1f7f8788c560',
-            //     testExisting_automation: '08afb0e2-b00a-4c88-ad2e-1f7f8788c560',
-            // };
-
             assert.equal(
                 deployed['testInstance/testBU'].automation
                     ? Object.keys(deployed['testInstance/testBU'].automation).length
@@ -190,32 +184,6 @@ describe('type: automation', () => {
                 'expected specific automation to have been deployed'
             );
 
-            // insert
-            // assert.equal(
-            //     scheduleCalloutList.find((item) => item.includes(objectIds['testNew_automation'])),
-            //     await testUtils.getExpectedFile(
-            //         '9999999',
-            //         'automation',
-            //         'schedule-callout-new',
-            //         'xml'
-            //     ),
-            //     'sent metadata was not equal expected for create'
-            // );
-
-            // update
-            // assert.deepEqual(
-            //     scheduleCalloutList.find((item) =>
-            //         item.includes(objectIds['testExisting_automation'])
-            //     ),
-            //     await testUtils.getExpectedFile(
-            //         '9999999',
-            //         'automation',
-            //         'schedule-callout-existing',
-            //         'xml'
-            //     ),
-            //     'sent metadata was not equal expected for create'
-            // );
-
             assert.deepEqual(
                 await testUtils.getActualJson('testExisting_automation', 'automation'),
                 await testUtils.getExpectedJson('9999999', 'automation', 'update'),
@@ -233,7 +201,7 @@ describe('type: automation', () => {
 
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                36,
+                37,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -300,7 +268,7 @@ describe('type: automation', () => {
 
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                32,
+                33,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -339,7 +307,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                21,
+                22,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -383,7 +351,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                46,
+                48,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -427,7 +395,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                48,
+                50,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -471,7 +439,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                49,
+                51,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -515,7 +483,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                41,
+                43,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -559,7 +527,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                47,
+                49,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -603,7 +571,7 @@ describe('type: automation', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                49,
+                51,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -647,7 +615,7 @@ describe('type: automation', () => {
             );
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                23,
+                24,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -691,7 +659,7 @@ describe('type: automation', () => {
             );
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                21,
+                22,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -700,7 +668,7 @@ describe('type: automation', () => {
         it('Should create a automation template via buildTemplate with --dependencies', async () => {
             // download first before we test buildTemplate
             await handler.retrieve('testInstance/testBU');
-            const expectedApiCallsRetrieve = 74;
+            const expectedApiCallsRetrieve = 77;
             assert.equal(
                 testUtils.getAPIHistoryLength(),
                 expectedApiCallsRetrieve,
diff --git a/test/type.importFile.test.js b/test/type.importFile.test.js
index 81335cd85..acb2075b9 100644
--- a/test/type.importFile.test.js
+++ b/test/type.importFile.test.js
@@ -26,8 +26,8 @@ describe('type: importFile', () => {
             const result = cache.getCache();
             assert.equal(
                 result.importFile ? Object.keys(result.importFile).length : 0,
-                2,
-                'only 2 importFile expected'
+                3,
+                'unexpected number of items retrieved'
             );
             assert.deepEqual(
                 await testUtils.getActualJson('testExisting_importFile', 'importFile'),
@@ -39,9 +39,14 @@ describe('type: importFile', () => {
                 await testUtils.getExpectedJson('9999999', 'importFile', 'get-sms'),
                 'returned JSON was not equal expected'
             );
+            assert.deepEqual(
+                await testUtils.getActualJson('testExisting_importFileDataImport', 'importFile'),
+                await testUtils.getExpectedJson('9999999', 'importFile', 'get-dataImport'),
+                'returned JSON was not equal expected'
+            );
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                14,
+                15,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -92,8 +97,8 @@ describe('type: importFile', () => {
             const result = cache.getCache();
             assert.equal(
                 result.importFile ? Object.keys(result.importFile).length : 0,
-                3,
-                '3 importFiles expected'
+                4,
+                'unexptected number of importFiles in cache'
             );
             // confirm created item
             assert.deepEqual(
@@ -110,7 +115,7 @@ describe('type: importFile', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                16,
+                17,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -194,7 +199,7 @@ describe('type: importFile', () => {
             );
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                14,
+                15,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
diff --git a/test/type.query.test.js b/test/type.query.test.js
index ad379fa50..1358d91fa 100644
--- a/test/type.query.test.js
+++ b/test/type.query.test.js
@@ -640,7 +640,7 @@ describe('type: query', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                35,
+                36,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;
@@ -682,7 +682,7 @@ describe('type: query', () => {
             // check number of API calls
             assert.equal(
                 testUtils.getAPIHistoryLength(),
-                37,
+                38,
                 'Unexpected number of requests made. Run testUtils.logAPIHistoryDebug() to see the requests'
             );
             return;