mcdev 3.1.3 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/.eslintrc.json +67 -7
  2. package/.github/ISSUE_TEMPLATE/bug.yml +2 -1
  3. package/.github/PULL_REQUEST_TEMPLATE.md +5 -3
  4. package/.github/dependabot.yml +14 -0
  5. package/.github/workflows/code-analysis.yml +57 -0
  6. package/.husky/commit-msg +10 -0
  7. package/.husky/post-checkout +5 -0
  8. package/.husky/pre-commit +2 -1
  9. package/.prettierrc +8 -0
  10. package/.vscode/settings.json +1 -1
  11. package/LICENSE +2 -2
  12. package/README.md +134 -45
  13. package/boilerplate/config.json +5 -11
  14. package/boilerplate/files/.prettierrc +8 -0
  15. package/boilerplate/files/.vscode/extensions.json +0 -1
  16. package/boilerplate/files/.vscode/settings.json +30 -2
  17. package/boilerplate/files/README.md +2 -2
  18. package/boilerplate/forcedUpdates.json +10 -0
  19. package/boilerplate/npm-dependencies.json +5 -5
  20. package/docs/dist/documentation.md +2807 -1730
  21. package/jsconfig.json +1 -1
  22. package/lib/Builder.js +171 -74
  23. package/lib/Deployer.js +244 -96
  24. package/lib/MetadataTypeDefinitions.js +2 -0
  25. package/lib/MetadataTypeInfo.js +2 -0
  26. package/lib/Retriever.js +61 -84
  27. package/lib/cli.js +116 -11
  28. package/lib/index.js +241 -561
  29. package/lib/metadataTypes/AccountUser.js +117 -103
  30. package/lib/metadataTypes/Asset.js +705 -255
  31. package/lib/metadataTypes/AttributeGroup.js +23 -12
  32. package/lib/metadataTypes/Automation.js +489 -392
  33. package/lib/metadataTypes/Campaign.js +33 -93
  34. package/lib/metadataTypes/ContentArea.js +31 -11
  35. package/lib/metadataTypes/DataExtension.js +387 -372
  36. package/lib/metadataTypes/DataExtensionField.js +131 -54
  37. package/lib/metadataTypes/DataExtensionTemplate.js +22 -4
  38. package/lib/metadataTypes/DataExtract.js +61 -48
  39. package/lib/metadataTypes/DataExtractType.js +14 -8
  40. package/lib/metadataTypes/Discovery.js +21 -16
  41. package/lib/metadataTypes/Email.js +32 -12
  42. package/lib/metadataTypes/EmailSendDefinition.js +85 -80
  43. package/lib/metadataTypes/EventDefinition.js +61 -43
  44. package/lib/metadataTypes/FileTransfer.js +72 -52
  45. package/lib/metadataTypes/Filter.js +11 -4
  46. package/lib/metadataTypes/Folder.js +149 -117
  47. package/lib/metadataTypes/FtpLocation.js +14 -8
  48. package/lib/metadataTypes/ImportFile.js +61 -64
  49. package/lib/metadataTypes/Interaction.js +19 -4
  50. package/lib/metadataTypes/List.js +54 -13
  51. package/lib/metadataTypes/MetadataType.js +664 -454
  52. package/lib/metadataTypes/MobileCode.js +46 -0
  53. package/lib/metadataTypes/MobileKeyword.js +114 -0
  54. package/lib/metadataTypes/Query.js +206 -105
  55. package/lib/metadataTypes/Role.js +76 -61
  56. package/lib/metadataTypes/Script.js +147 -83
  57. package/lib/metadataTypes/SetDefinition.js +20 -8
  58. package/lib/metadataTypes/TriggeredSendDefinition.js +78 -58
  59. package/lib/metadataTypes/definitions/Asset.definition.js +21 -10
  60. package/lib/metadataTypes/definitions/AttributeGroup.definition.js +12 -0
  61. package/lib/metadataTypes/definitions/Automation.definition.js +10 -5
  62. package/lib/metadataTypes/definitions/Campaign.definition.js +44 -1
  63. package/lib/metadataTypes/definitions/DataExtension.definition.js +4 -0
  64. package/lib/metadataTypes/definitions/DataExtensionTemplate.definition.js +6 -0
  65. package/lib/metadataTypes/definitions/DataExtract.definition.js +18 -14
  66. package/lib/metadataTypes/definitions/Discovery.definition.js +12 -0
  67. package/lib/metadataTypes/definitions/EmailSendDefinition.definition.js +4 -0
  68. package/lib/metadataTypes/definitions/EventDefinition.definition.js +22 -0
  69. package/lib/metadataTypes/definitions/FileTransfer.definition.js +4 -0
  70. package/lib/metadataTypes/definitions/Filter.definition.js +4 -0
  71. package/lib/metadataTypes/definitions/Folder.definition.js +6 -0
  72. package/lib/metadataTypes/definitions/FtpLocation.definition.js +4 -0
  73. package/lib/metadataTypes/definitions/ImportFile.definition.js +10 -5
  74. package/lib/metadataTypes/definitions/Interaction.definition.js +4 -0
  75. package/lib/metadataTypes/definitions/MobileCode.definition.js +163 -0
  76. package/lib/metadataTypes/definitions/MobileKeyword.definition.js +253 -0
  77. package/lib/metadataTypes/definitions/Query.definition.js +4 -0
  78. package/lib/metadataTypes/definitions/Role.definition.js +5 -0
  79. package/lib/metadataTypes/definitions/Script.definition.js +4 -0
  80. package/lib/metadataTypes/definitions/SetDefinition.definition.js +28 -0
  81. package/lib/metadataTypes/definitions/TriggeredSendDefinition.definition.js +4 -0
  82. package/lib/retrieveChangelog.js +7 -6
  83. package/lib/util/auth.js +117 -0
  84. package/lib/util/businessUnit.js +55 -66
  85. package/lib/util/cache.js +194 -0
  86. package/lib/util/cli.js +90 -116
  87. package/lib/util/config.js +302 -0
  88. package/lib/util/devops.js +250 -50
  89. package/lib/util/file.js +141 -201
  90. package/lib/util/init.config.js +208 -75
  91. package/lib/util/init.git.js +45 -50
  92. package/lib/util/init.js +72 -59
  93. package/lib/util/init.npm.js +48 -39
  94. package/lib/util/util.js +280 -564
  95. package/package.json +45 -34
  96. package/test/dataExtension.test.js +152 -0
  97. package/test/mockRoot/.mcdev-auth.json +8 -0
  98. package/test/mockRoot/.mcdevrc.json +67 -0
  99. package/test/mockRoot/deploy/testInstance/testBU/dataExtension/childBU_dataextension_test.dataExtension-meta.json +39 -0
  100. package/test/mockRoot/deploy/testInstance/testBU/dataExtension/testDataExtension.dataExtension-meta.json +23 -0
  101. package/test/mockRoot/deploy/testInstance/testBU/query/testExistingQuery.query-meta.json +11 -0
  102. package/test/mockRoot/deploy/testInstance/testBU/query/testExistingQuery.query-meta.sql +4 -0
  103. package/test/mockRoot/deploy/testInstance/testBU/query/testQuery.query-meta.json +11 -0
  104. package/test/mockRoot/deploy/testInstance/testBU/query/testQuery.query-meta.sql +4 -0
  105. package/test/query.test.js +149 -0
  106. package/test/resourceFactory.js +142 -0
  107. package/test/resources/1111111/dataFolder/retrieve-response.xml +43 -0
  108. package/test/resources/9999999/automation/v1/queries/549f0568-607c-4940-afef-437965094dat/patch-response.json +18 -0
  109. package/test/resources/9999999/automation/v1/queries/get-response.json +24 -0
  110. package/test/resources/9999999/automation/v1/queries/post-response.json +18 -0
  111. package/test/resources/9999999/dataExtension/build-expected.json +51 -0
  112. package/test/resources/9999999/dataExtension/create-expected.json +23 -0
  113. package/test/resources/9999999/dataExtension/create-response.xml +54 -0
  114. package/test/resources/9999999/dataExtension/retrieve-expected.json +51 -0
  115. package/test/resources/9999999/dataExtension/retrieve-response.xml +47 -0
  116. package/test/resources/9999999/dataExtension/template-expected.json +51 -0
  117. package/test/resources/9999999/dataExtension/update-expected.json +55 -0
  118. package/test/resources/9999999/dataExtension/update-response.xml +52 -0
  119. package/test/resources/9999999/dataExtensionField/retrieve-response.xml +93 -0
  120. package/test/resources/9999999/dataExtensionTemplate/retrieve-response.xml +303 -0
  121. package/test/resources/9999999/dataFolder/retrieve-response.xml +65 -0
  122. package/test/resources/9999999/query/build-expected.json +8 -0
  123. package/test/resources/9999999/query/get-expected.json +11 -0
  124. package/test/resources/9999999/query/patch-expected.json +11 -0
  125. package/test/resources/9999999/query/post-expected.json +11 -0
  126. package/test/resources/9999999/query/template-expected.json +8 -0
  127. package/test/resources/auth.json +32 -0
  128. package/test/resources/rest404-response.json +5 -0
  129. package/test/resources/retrieve-response.xml +21 -0
  130. package/test/utils.js +107 -0
  131. package/types/mcdev.d.js +301 -0
  132. package/CHANGELOG.md +0 -126
  133. package/PULL_REQUEST_TEMPLATE.md +0 -19
  134. package/test/util/file.js +0 -51
@@ -7,6 +7,10 @@ module.exports = {
7
7
  keepId: true,
8
8
  keyField: 'CustomerKey',
9
9
  nameField: 'Name',
10
+ createdDateField: 'CreatedDate',
11
+ createdNameField: null,
12
+ lastmodDateField: 'ModifiedDate',
13
+ lastmodNameField: null,
10
14
  restPagination: null,
11
15
  type: 'emailSendDefinition',
12
16
  typeDescription: 'Mainly used in Automations as "Send Email Activity".',
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'id',
6
6
  keyField: 'eventDefinitionKey',
7
7
  nameField: 'name',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: 'createdBy',
10
+ lastmodDateField: 'modifiedDate',
11
+ lastmodNameField: 'modifiedBy',
8
12
  restPagination: true,
9
13
  type: 'eventDefinition',
10
14
  typeDescription: 'Used in Journeys (Interactions) to define Entry Events.',
@@ -282,6 +286,12 @@ module.exports = {
282
286
  retrieving: true,
283
287
  template: true,
284
288
  },
289
+ disableDEDataLogging: {
290
+ isCreateable: true,
291
+ isUpdateable: true,
292
+ retrieving: true,
293
+ template: true,
294
+ },
285
295
  eventDefinitionKey: {
286
296
  isCreateable: true,
287
297
  isUpdateable: true,
@@ -714,6 +724,18 @@ module.exports = {
714
724
  retrieving: true,
715
725
  template: false,
716
726
  },
727
+ 'schedule.scheduledDayOfWeek': {
728
+ isCreateable: true,
729
+ isUpdateable: true,
730
+ retrieving: true,
731
+ template: true,
732
+ },
733
+ 'schedule.scheduledWeek': {
734
+ isCreateable: true,
735
+ isUpdateable: true,
736
+ retrieving: true,
737
+ template: true,
738
+ },
717
739
  'schedule.endDateTime': {
718
740
  isCreateable: true,
719
741
  isUpdateable: true,
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'id',
6
6
  keyField: 'customerKey',
7
7
  nameField: 'name',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: null,
10
+ lastmodDateField: 'modifiedDate',
11
+ lastmodNameField: null,
8
12
  restPagination: true,
9
13
  type: 'fileTransfer',
10
14
  typeDescription:
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'id',
6
6
  keyField: 'customerKey',
7
7
  nameField: 'name',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: null,
10
+ lastmodDateField: 'modifiedDate',
11
+ lastmodNameField: null,
8
12
  restPagination: true,
9
13
  type: 'filter',
10
14
  typeDescription:
@@ -55,6 +55,12 @@ module.exports = {
55
55
  retrieving: false,
56
56
  template: false,
57
57
  },
58
+ '@_xsi:type': {
59
+ isCreateable: false,
60
+ isUpdateable: false,
61
+ retrieving: false,
62
+ template: false,
63
+ },
58
64
  ID: {
59
65
  isCreateable: true,
60
66
  isUpdateable: true,
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'id',
6
6
  keyField: 'name',
7
7
  nameField: 'name',
8
+ createdDateField: null,
9
+ createdNameField: null,
10
+ lastmodDateField: null,
11
+ lastmodNameField: null,
8
12
  restPagination: false,
9
13
  type: 'ftpLocation',
10
14
  typeDescription:
@@ -12,6 +12,10 @@ module.exports = {
12
12
  idField: 'importDefinitionId',
13
13
  keyField: 'customerKey',
14
14
  nameField: 'name',
15
+ createdDateField: 'createdDate',
16
+ createdNameField: null,
17
+ lastmodDateField: 'modifiedDate',
18
+ lastmodNameField: null,
15
19
  restPagination: false,
16
20
  subscriberImportTypeMapping: {
17
21
  DataExtension: 255,
@@ -32,7 +36,7 @@ module.exports = {
32
36
  isCreateable: true,
33
37
  isUpdateable: true,
34
38
  retrieving: true,
35
- template: false,
39
+ template: true,
36
40
  },
37
41
  createdDate: {
38
42
  isCreateable: false,
@@ -136,8 +140,8 @@ module.exports = {
136
140
  importDefinitionId: {
137
141
  isCreateable: false,
138
142
  isUpdateable: true,
139
- retrieving: true,
140
- template: true,
143
+ retrieving: false,
144
+ template: false,
141
145
  },
142
146
  isOrderedImport: {
143
147
  isCreateable: true,
@@ -217,9 +221,10 @@ module.exports = {
217
221
  template: true,
218
222
  },
219
223
  c__dataAction: { skipValidation: true },
220
- c__destinationType: { skipValidation: true },
221
- c__subscriberImportType: { skipValidation: true },
222
224
  r__dataExtension_CustomerKey: { skipValidation: true },
225
+ c__destinationType: { skipValidation: true },
226
+ r__list_PathName: { skipValidation: true },
223
227
  r__ftpLocation_name: { skipValidation: true },
228
+ c__subscriberImportType: { skipValidation: true },
224
229
  },
225
230
  };
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'id',
6
6
  keyField: 'key',
7
7
  nameField: 'name',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: null,
10
+ lastmodDateField: 'modifiedDate',
11
+ lastmodNameField: null,
8
12
  restPagination: false,
9
13
  type: 'interaction',
10
14
  typeDescription: 'Journey from Builder (internally called "Interaction").',
@@ -0,0 +1,163 @@
1
+ module.exports = {
2
+ bodyIteratorField: 'entry',
3
+ dependencies: [],
4
+ hasExtended: false,
5
+ idField: 'id',
6
+ keyField: 'code',
7
+ nameField: 'code',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: null,
10
+ lastmodDateField: 'lastUpdated',
11
+ lastmodNameField: null,
12
+ restPagination: false, // page size is 50, which should be sufficient in most cases
13
+ type: 'mobileCode',
14
+ typeDescription: 'Used to send SMS Messages',
15
+ typeRetrieveByDefault: true,
16
+ typeName: 'Mobile Code',
17
+ fields: {
18
+ id: {
19
+ isCreateable: false,
20
+ isUpdateable: false,
21
+ retrieving: false,
22
+ template: false,
23
+ },
24
+ createdDate: {
25
+ isCreateable: false,
26
+ isUpdateable: false,
27
+ retrieving: false,
28
+ template: false,
29
+ },
30
+ lastUpdated: {
31
+ isCreateable: false,
32
+ isUpdateable: false,
33
+ retrieving: false,
34
+ template: false,
35
+ },
36
+ startDate: {
37
+ isCreateable: false,
38
+ isUpdateable: false,
39
+ retrieving: false,
40
+ template: false,
41
+ },
42
+ endDate: {
43
+ isCreateable: false,
44
+ isUpdateable: false,
45
+ retrieving: false,
46
+ template: false,
47
+ },
48
+ keywordLimit: {
49
+ isCreateable: false,
50
+ isUpdateable: false,
51
+ retrieving: false,
52
+ template: false,
53
+ },
54
+ keywordsUsed: {
55
+ isCreateable: false,
56
+ isUpdateable: false,
57
+ retrieving: false,
58
+ template: false,
59
+ },
60
+ code: {
61
+ isCreateable: false,
62
+ isUpdateable: false,
63
+ retrieving: true,
64
+ template: true,
65
+ },
66
+ codeType: {
67
+ isCreateable: false,
68
+ isUpdateable: false,
69
+ retrieving: true,
70
+ template: true,
71
+ },
72
+ isShortCode: {
73
+ isCreateable: false,
74
+ isUpdateable: false,
75
+ retrieving: false,
76
+ template: false,
77
+ },
78
+ keywordsUsedOther: {
79
+ isCreateable: false,
80
+ isUpdateable: false,
81
+ retrieving: false,
82
+ template: false,
83
+ },
84
+ isGsmCharacterSetOnly: {
85
+ isCreateable: false,
86
+ isUpdateable: false,
87
+ retrieving: true,
88
+ template: false,
89
+ },
90
+ isMms: {
91
+ isCreateable: false,
92
+ isUpdateable: false,
93
+ retrieving: true,
94
+ template: false,
95
+ },
96
+ isStackIndependant: {
97
+ isCreateable: false,
98
+ isUpdateable: false,
99
+ retrieving: false,
100
+ template: false,
101
+ },
102
+ supportsConcatenation: {
103
+ isCreateable: false,
104
+ isUpdateable: false,
105
+ retrieving: true,
106
+ template: false,
107
+ },
108
+ isClientOwned: {
109
+ isCreateable: false,
110
+ isUpdateable: false,
111
+ retrieving: false,
112
+ template: false,
113
+ },
114
+ isOwner: {
115
+ isCreateable: false,
116
+ isUpdateable: false,
117
+ retrieving: false,
118
+ template: false,
119
+ },
120
+ dipSwitches: {
121
+ isCreateable: false,
122
+ isUpdateable: false,
123
+ retrieving: false,
124
+ template: false,
125
+ },
126
+ sendableCountries: {
127
+ isCreateable: false,
128
+ isUpdateable: false,
129
+ retrieving: true,
130
+ template: false,
131
+ },
132
+ 'sendableCountries[].countryCode': {
133
+ isCreateable: false,
134
+ isUpdateable: false,
135
+ retrieving: true,
136
+ template: false,
137
+ },
138
+ 'sendableCountries[].vendor': {
139
+ isCreateable: false,
140
+ isUpdateable: false,
141
+ retrieving: true,
142
+ template: false,
143
+ },
144
+ 'sendableCountries[].fromNameSupported': {
145
+ isCreateable: false,
146
+ isUpdateable: false,
147
+ retrieving: true,
148
+ template: false,
149
+ },
150
+ countryCode: {
151
+ isCreateable: false,
152
+ isUpdateable: false,
153
+ retrieving: true,
154
+ template: false,
155
+ },
156
+ moEngineVersion: {
157
+ isCreateable: false,
158
+ isUpdateable: false,
159
+ retrieving: false,
160
+ template: false,
161
+ },
162
+ },
163
+ };
@@ -0,0 +1,253 @@
1
+ module.exports = {
2
+ bodyIteratorField: 'entry',
3
+ dependencies: ['mobileCode'],
4
+ hasExtended: false,
5
+ idField: 'decodedId',
6
+ keyField: 'keyword',
7
+ nameField: 'keyword',
8
+ createdDateField: 'createdDate',
9
+ createdNameField: 'createdBy.name',
10
+ lastmodDateField: 'lastUpdated',
11
+ lastmodNameField: null,
12
+ restPagination: false, // page size is 50, which should be sufficient in most cases
13
+ type: 'mobileKeyword',
14
+ typeDescription: 'Used for managing subscriptions for Mobile numbers in Mobile Connect',
15
+ typeRetrieveByDefault: true,
16
+ typeName: 'Mobile Keyword',
17
+ fields: {
18
+ id: {
19
+ isCreateable: false,
20
+ isUpdateable: false,
21
+ retrieving: false,
22
+ template: false,
23
+ },
24
+ keyword: {
25
+ isCreateable: true,
26
+ isUpdateable: false,
27
+ retrieving: true,
28
+ template: true,
29
+ },
30
+ createdDate: {
31
+ isCreateable: false,
32
+ isUpdateable: false,
33
+ retrieving: true,
34
+ template: false,
35
+ },
36
+ lastUpdated: {
37
+ isCreateable: false,
38
+ isUpdateable: false,
39
+ retrieving: true,
40
+ template: false,
41
+ },
42
+ startDate: {
43
+ isCreateable: false,
44
+ isUpdateable: false,
45
+ retrieving: true,
46
+ template: false,
47
+ },
48
+ endDate: {
49
+ isCreateable: false,
50
+ isUpdateable: false,
51
+ retrieving: true,
52
+ template: false,
53
+ },
54
+ createdBy: {
55
+ isCreateable: false,
56
+ isUpdateable: false,
57
+ retrieving: true,
58
+ template: false,
59
+ },
60
+ 'createdBy.id': {
61
+ isCreateable: false,
62
+ isUpdateable: false,
63
+ retrieving: false,
64
+ template: false,
65
+ },
66
+ 'createdBy.name': {
67
+ isCreateable: false,
68
+ isUpdateable: false,
69
+ retrieving: true,
70
+ template: false,
71
+ },
72
+ dipSwitches: {
73
+ isCreateable: false,
74
+ isUpdateable: false,
75
+ retrieving: false,
76
+ template: false,
77
+ },
78
+ isInherited: {
79
+ isCreateable: false,
80
+ isUpdateable: false,
81
+ retrieving: true,
82
+ template: false,
83
+ },
84
+ decodedId: {
85
+ isCreateable: false,
86
+ isUpdateable: false,
87
+ retrieving: true,
88
+ template: false,
89
+ },
90
+ restriction: {
91
+ isCreateable: false,
92
+ isUpdateable: false,
93
+ retrieving: true,
94
+ template: false,
95
+ },
96
+ keywordType: {
97
+ isCreateable: true,
98
+ isUpdateable: true,
99
+ retrieving: true,
100
+ template: true,
101
+ },
102
+ companyName: {
103
+ isCreateable: true,
104
+ isUpdateable: true,
105
+ retrieving: true,
106
+ template: true,
107
+ },
108
+ responseMessage: {
109
+ isCreateable: true,
110
+ isUpdateable: true,
111
+ retrieving: true,
112
+ template: true,
113
+ },
114
+ status: {
115
+ isCreateable: false,
116
+ isUpdateable: false,
117
+ retrieving: true,
118
+ template: false,
119
+ },
120
+ 'code.code': {
121
+ isCreateable: false,
122
+ isUpdateable: false,
123
+ retrieving: true,
124
+ template: true,
125
+ },
126
+ messages: {
127
+ isCreateable: false,
128
+ isUpdateable: false,
129
+ retrieving: false,
130
+ template: false,
131
+ },
132
+ 'code.id': {
133
+ isCreateable: true,
134
+ isUpdateable: false,
135
+ retrieving: false,
136
+ template: false,
137
+ },
138
+ 'code.createdDate': {
139
+ isCreateable: false,
140
+ isUpdateable: false,
141
+ retrieving: false,
142
+ template: false,
143
+ },
144
+ 'code.lastUpdated': {
145
+ isCreateable: false,
146
+ isUpdateable: false,
147
+ retrieving: false,
148
+ template: false,
149
+ },
150
+ 'code.startDate': {
151
+ isCreateable: false,
152
+ isUpdateable: false,
153
+ retrieving: false,
154
+ template: false,
155
+ },
156
+ 'code.endDate': {
157
+ isCreateable: false,
158
+ isUpdateable: false,
159
+ retrieving: false,
160
+ template: false,
161
+ },
162
+ 'code.keywordLimit': {
163
+ isCreateable: false,
164
+ isUpdateable: false,
165
+ retrieving: false,
166
+ template: false,
167
+ },
168
+ 'code.keywordsUsed': {
169
+ isCreateable: false,
170
+ isUpdateable: false,
171
+ retrieving: false,
172
+ template: false,
173
+ },
174
+ 'code.codeType': {
175
+ isCreateable: false,
176
+ isUpdateable: false,
177
+ retrieving: false,
178
+ template: false,
179
+ },
180
+ 'code.isShortCode': {
181
+ isCreateable: false,
182
+ isUpdateable: false,
183
+ retrieving: false,
184
+ template: false,
185
+ },
186
+ 'code.keywordsUsedOther': {
187
+ isCreateable: false,
188
+ isUpdateable: false,
189
+ retrieving: false,
190
+ template: false,
191
+ },
192
+ 'code.isGsmCharacterSetOnly': {
193
+ isCreateable: false,
194
+ isUpdateable: false,
195
+ retrieving: false,
196
+ template: false,
197
+ },
198
+ 'code.isMms': {
199
+ isCreateable: false,
200
+ isUpdateable: false,
201
+ retrieving: false,
202
+ template: false,
203
+ },
204
+ 'code.isStackIndependant': {
205
+ isCreateable: false,
206
+ isUpdateable: false,
207
+ retrieving: false,
208
+ template: false,
209
+ },
210
+ 'code.supportsConcatenation': {
211
+ isCreateable: false,
212
+ isUpdateable: false,
213
+ retrieving: false,
214
+ template: false,
215
+ },
216
+ 'code.isClientOwned': {
217
+ isCreateable: false,
218
+ isUpdateable: false,
219
+ retrieving: false,
220
+ template: false,
221
+ },
222
+ 'code.isOwner': {
223
+ isCreateable: false,
224
+ isUpdateable: false,
225
+ retrieving: false,
226
+ template: false,
227
+ },
228
+ 'code.dipSwitches': {
229
+ isCreateable: false,
230
+ isUpdateable: false,
231
+ retrieving: false,
232
+ template: false,
233
+ },
234
+ 'code.sendableCountries': {
235
+ isCreateable: false,
236
+ isUpdateable: false,
237
+ retrieving: false,
238
+ template: false,
239
+ },
240
+ 'code.countryCode': {
241
+ isCreateable: false,
242
+ isUpdateable: false,
243
+ retrieving: false,
244
+ template: false,
245
+ },
246
+ 'code.moEngineVersion': {
247
+ isCreateable: false,
248
+ isUpdateable: false,
249
+ retrieving: false,
250
+ template: false,
251
+ },
252
+ },
253
+ };
@@ -9,6 +9,10 @@ module.exports = {
9
9
  idField: 'queryDefinitionId',
10
10
  keyField: 'key',
11
11
  nameField: 'name',
12
+ createdDateField: 'createdDate',
13
+ createdNameField: null,
14
+ lastmodDateField: 'modifiedDate',
15
+ lastmodNameField: null,
12
16
  restPagination: true,
13
17
  targetUpdateTypeMapping: {
14
18
  Append: 2,
@@ -13,10 +13,15 @@ module.exports = {
13
13
  'SYS_DEF_SECURITYADMIN',
14
14
  'SYS_DEF_VIEWER',
15
15
  ],
16
+ documentInOneFile: true,
16
17
  hasExtended: true,
17
18
  idField: 'ObjectID',
18
19
  keyField: 'CustomerKey',
19
20
  nameField: 'Name',
21
+ createdDateField: 'CreatedDate',
22
+ createdNameField: null,
23
+ lastmodDateField: 'ModifiedDate',
24
+ lastmodNameField: null,
20
25
  type: 'role',
21
26
  typeDescription:
22
27
  'User Roles define groups that are used to grant users access to SFMC systems.',
@@ -6,6 +6,10 @@ module.exports = {
6
6
  idField: 'ssjsActivityId',
7
7
  keyField: 'key',
8
8
  nameField: 'name',
9
+ createdDateField: 'createdDate',
10
+ createdNameField: 'createdBy',
11
+ lastmodDateField: 'modifiedDate',
12
+ lastmodNameField: 'modifiedBy',
9
13
  restPagination: true,
10
14
  type: 'script',
11
15
  typeDescription: 'Execute more complex tasks via SSJS or AMPScript.',
@@ -5,6 +5,10 @@ module.exports = {
5
5
  idField: 'definitionID',
6
6
  keyField: 'definitionKey',
7
7
  nameField: 'name',
8
+ createdDateField: 'createDate',
9
+ createdNameField: 'createdBy',
10
+ lastmodDateField: null,
11
+ lastmodNameField: null,
8
12
  restPagination: false,
9
13
  type: 'setDefinition',
10
14
  typeDescription: 'BETA: Data Extensions linked to Attribute Groups in Data Designer.',
@@ -257,6 +261,30 @@ module.exports = {
257
261
  retrieving: true,
258
262
  template: null,
259
263
  },
264
+ nonStandardAttributeGroupReferences: {
265
+ isCreateable: null,
266
+ isUpdateable: null,
267
+ retrieving: true,
268
+ template: null,
269
+ },
270
+ 'nonStandardAttributeGroupReferences[].attributeGroupType': {
271
+ isCreateable: null,
272
+ isUpdateable: null,
273
+ retrieving: true,
274
+ template: null,
275
+ },
276
+ 'nonStandardAttributeGroupReferences[].attributeGroupID': {
277
+ isCreateable: null,
278
+ isUpdateable: null,
279
+ retrieving: true,
280
+ template: null,
281
+ },
282
+ 'nonStandardAttributeGroupReferences[].definitionKey': {
283
+ isCreateable: null,
284
+ isUpdateable: null,
285
+ retrieving: true,
286
+ template: null,
287
+ },
260
288
  'obfuscationProperties.maskType': {
261
289
  isCreateable: null,
262
290
  isUpdateable: null,
@@ -7,6 +7,10 @@ module.exports = {
7
7
  keepId: true,
8
8
  keyField: 'CustomerKey',
9
9
  nameField: 'Name',
10
+ createdDateField: 'CreatedDate',
11
+ createdNameField: null,
12
+ lastmodDateField: 'ModifiedDate',
13
+ lastmodNameField: null,
10
14
  restPagination: null,
11
15
  type: 'triggeredSendDefinition',
12
16
  typeDescription: 'DEPRECATED: Sends emails via API or DataExtension Event.',