@metarouter/ajs-starter-kit 1.0.136 → 1.0.138

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 (130) hide show
  1. package/.dist/actioniq/kit.etag.json +1 -1
  2. package/.dist/actioniq/metadata.json +4 -0
  3. package/.dist/actioniq/playbook.etag.json +1 -1
  4. package/.dist/actioniq/playbook.json +2 -2
  5. package/.dist/adobe-experience-platform-interact/kit.etag.json +1 -1
  6. package/.dist/adobe-experience-platform-interact/metadata.json +4 -0
  7. package/.dist/adobe-experience-platform-interact/playbook.etag.json +1 -1
  8. package/.dist/adobe-experience-platform-interact/playbook.json +2 -2
  9. package/.dist/amazon-dsp-capi/kit.etag.json +1 -1
  10. package/.dist/amazon-dsp-capi/metadata.json +9 -1
  11. package/.dist/amazon-dsp-capi/playbook.etag.json +1 -1
  12. package/.dist/amazon-dsp-capi/playbook.json +6 -118
  13. package/.dist/blueshift/kit.etag.json +1 -1
  14. package/.dist/blueshift/metadata.json +4 -0
  15. package/.dist/blueshift/playbook.etag.json +1 -1
  16. package/.dist/blueshift/playbook.json +2 -2
  17. package/.dist/button/kit.etag.json +1 -1
  18. package/.dist/button/metadata.json +4 -0
  19. package/.dist/button/playbook.etag.json +1 -1
  20. package/.dist/button/playbook.json +2 -2
  21. package/.dist/clinch/kit.etag.json +1 -1
  22. package/.dist/clinch/metadata.json +4 -0
  23. package/.dist/clinch/playbook.etag.json +1 -1
  24. package/.dist/clinch/playbook.json +2 -2
  25. package/.dist/commission-junction/kit.etag.json +1 -1
  26. package/.dist/commission-junction/metadata.json +4 -0
  27. package/.dist/commission-junction/playbook.etag.json +1 -1
  28. package/.dist/commission-junction/playbook.json +3 -3
  29. package/.dist/criteo/connection.etag.json +1 -1
  30. package/.dist/criteo/connection.json +1 -1
  31. package/.dist/criteo/kit.etag.json +1 -1
  32. package/.dist/criteo/metadata.json +4 -0
  33. package/.dist/criteo/playbook.etag.json +1 -1
  34. package/.dist/criteo/playbook.json +7 -7
  35. package/.dist/facebook-pixel/kit.etag.json +1 -1
  36. package/.dist/facebook-pixel/metadata.json +8 -0
  37. package/.dist/facebook-pixel/playbook.etag.json +1 -1
  38. package/.dist/facebook-pixel/playbook.json +14 -8
  39. package/.dist/google-cm360/kit.etag.json +1 -1
  40. package/.dist/hubspot-event/kit.etag.json +1 -1
  41. package/.dist/hubspot-event/metadata.json +4 -0
  42. package/.dist/hubspot-event/playbook.etag.json +1 -1
  43. package/.dist/hubspot-event/playbook.json +2 -2
  44. package/.dist/linkedin-conversions/connection.etag.json +1 -1
  45. package/.dist/linkedin-conversions/connection.json +1 -1
  46. package/.dist/linkedin-conversions/kit.etag.json +1 -1
  47. package/.dist/linkedin-conversions/metadata.json +8 -0
  48. package/.dist/linkedin-conversions/playbook.etag.json +1 -1
  49. package/.dist/linkedin-conversions/playbook.json +109 -45
  50. package/.dist/magellan-ai/kit.etag.json +1 -1
  51. package/.dist/magellan-ai/metadata.json +4 -0
  52. package/.dist/magellan-ai/playbook.etag.json +1 -1
  53. package/.dist/magellan-ai/playbook.json +2 -2
  54. package/.dist/merkle/kit.etag.json +1 -1
  55. package/.dist/merkle/metadata.json +4 -0
  56. package/.dist/merkle/playbook.etag.json +1 -1
  57. package/.dist/merkle/playbook.json +3 -11
  58. package/.dist/microsoft-ads/kit.etag.json +1 -1
  59. package/.dist/microsoft-ads/metadata.json +4 -0
  60. package/.dist/microsoft-ads/playbook.etag.json +1 -1
  61. package/.dist/microsoft-ads/playbook.json +2 -2
  62. package/.dist/nextdoor-capi/kit.etag.json +1 -1
  63. package/.dist/nextdoor-capi/metadata.json +4 -0
  64. package/.dist/nextdoor-capi/playbook.etag.json +1 -1
  65. package/.dist/nextdoor-capi/playbook.json +11 -11
  66. package/.dist/podscribe/kit.etag.json +1 -1
  67. package/.dist/podscribe/metadata.json +8 -0
  68. package/.dist/podscribe/playbook.etag.json +1 -1
  69. package/.dist/podscribe/playbook.json +3 -3
  70. package/.dist/rakuten-conversions/connection.etag.json +1 -0
  71. package/.dist/rakuten-conversions/connection.json +24 -0
  72. package/.dist/rakuten-conversions/kit.etag.json +1 -0
  73. package/.dist/rakuten-conversions/metadata.json +21 -0
  74. package/.dist/rakuten-conversions/playbook.etag.json +1 -0
  75. package/.dist/rakuten-conversions/playbook.json +279 -0
  76. package/.dist/rasp/kit.etag.json +1 -1
  77. package/.dist/rasp/metadata.json +4 -0
  78. package/.dist/rasp/playbook.etag.json +1 -1
  79. package/.dist/rasp/playbook.json +2 -2
  80. package/.dist/reddit-ads/kit.etag.json +1 -1
  81. package/.dist/reddit-ads/metadata.json +4 -0
  82. package/.dist/reddit-ads/playbook.etag.json +1 -1
  83. package/.dist/reddit-ads/playbook.json +3 -3
  84. package/.dist/ringier-axel-springer-poland/kit.etag.json +1 -1
  85. package/.dist/ringier-axel-springer-poland/metadata.json +4 -0
  86. package/.dist/ringier-axel-springer-poland/playbook.etag.json +1 -1
  87. package/.dist/ringier-axel-springer-poland/playbook.json +2 -2
  88. package/.dist/roku/kit.etag.json +1 -1
  89. package/.dist/roku/metadata.json +4 -0
  90. package/.dist/roku/playbook.etag.json +1 -1
  91. package/.dist/roku/playbook.json +2 -2
  92. package/.dist/rtb-house/kit.etag.json +1 -1
  93. package/.dist/rtb-house/metadata.json +4 -0
  94. package/.dist/rtb-house/playbook.etag.json +1 -1
  95. package/.dist/rtb-house/playbook.json +2 -2
  96. package/.dist/salesforce-cdp/kit.etag.json +1 -1
  97. package/.dist/salesforce-cdp/metadata.json +4 -0
  98. package/.dist/salesforce-cdp/playbook.etag.json +1 -1
  99. package/.dist/salesforce-cdp/playbook.json +2 -2
  100. package/.dist/snapchat-capi/kit.etag.json +1 -1
  101. package/.dist/snapchat-capi/metadata.json +4 -0
  102. package/.dist/snapchat-capi/playbook.etag.json +1 -1
  103. package/.dist/snapchat-capi/playbook.json +10 -10
  104. package/.dist/thetradedesk-conversion-events/kit.etag.json +1 -1
  105. package/.dist/thetradedesk-conversion-events/metadata.json +4 -0
  106. package/.dist/thetradedesk-conversion-events/playbook.etag.json +1 -1
  107. package/.dist/thetradedesk-conversion-events/playbook.json +2 -2
  108. package/.dist/thetradedesk-data-advertiser-firstparty/kit.etag.json +1 -1
  109. package/.dist/thetradedesk-data-advertiser-firstparty/metadata.json +4 -0
  110. package/.dist/thetradedesk-data-advertiser-firstparty/playbook.etag.json +1 -1
  111. package/.dist/thetradedesk-data-advertiser-firstparty/playbook.json +2 -2
  112. package/.dist/tiktok/kit.etag.json +1 -1
  113. package/.dist/tiktok/metadata.json +4 -0
  114. package/.dist/tiktok/playbook.etag.json +1 -1
  115. package/.dist/tiktok/playbook.json +3 -3
  116. package/.dist/ttd-conversions/kit.etag.json +1 -1
  117. package/.dist/ttd-conversions/metadata.json +9 -1
  118. package/.dist/ttd-conversions/playbook.etag.json +1 -1
  119. package/.dist/ttd-conversions/playbook.json +9 -41
  120. package/.dist/twitter-conversions/kit.etag.json +1 -1
  121. package/.dist/twitter-conversions/metadata.json +4 -0
  122. package/.dist/twitter-conversions/playbook.etag.json +1 -1
  123. package/.dist/twitter-conversions/playbook.json +3 -3
  124. package/.dist/x-ads/kit.etag.json +1 -1
  125. package/.dist/x-ads/metadata.json +4 -0
  126. package/.dist/x-ads/playbook.etag.json +1 -1
  127. package/.dist/x-ads/playbook.json +2 -2
  128. package/README.md +60 -56
  129. package/index.js +11 -0
  130. package/package.json +1 -1
@@ -1 +1 @@
1
- "5b0173db6395d9349964ab8afbceedce"
1
+ "1f958e4d89af55a7441bafe2a5b54810"
@@ -52,6 +52,10 @@
52
52
  {
53
53
  "date": "2024-10-23T00:00:00.000Z",
54
54
  "note": "Version: 1.2.0\nAdded header `Accept-Encoding: application/json`"
55
+ },
56
+ {
57
+ "date": "2025-07-30T00:00:00.000Z",
58
+ "note": "Version: 1.3.0\nUpdated Lua timestamp fallback logic to use input.timestamp"
55
59
  }
56
60
  ]
57
61
  }
@@ -1 +1 @@
1
- "aa014b37c8ba03b634617cae75a0514b"
1
+ "935847964978ff5189d543a6d4e9fbf4"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.2.0",
2
+ "version": "1.3.0",
3
3
  "global": {
4
4
  "mappings": [
5
5
  {
@@ -25,7 +25,7 @@
25
25
  {
26
26
  "expression": {
27
27
  "lang": "lua",
28
- "body": "local date = input.originalTimestamp or input.sentAt\nreturn MILLISECONDS_SINCE_EPOCH_FROM_RFC3999(TO_DATE_TIME(date, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }))"
28
+ "body": "local date = input.timestamp or input.originalTimestamp or input.sentAt\nreturn MILLISECONDS_SINCE_EPOCH_FROM_RFC3999(TO_DATE_TIME(date, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }))"
29
29
  }
30
30
  }
31
31
  ]
@@ -1 +1 @@
1
- "f8661a9bed3d80f87858dbb0e36ebec8"
1
+ "e4cdf959b907295ea5ce3bfc6ff9b228"
@@ -44,6 +44,10 @@
44
44
  {
45
45
  "date": "2025-03-19T00:00:00.000Z",
46
46
  "note": "Version: 0.7.0\nUpdated friendlyName\nUpdated kit name"
47
+ },
48
+ {
49
+ "date": "2025-07-30T00:00:00.000Z",
50
+ "note": "Version: 0.8.0\nReplaced context.traits with traits."
47
51
  }
48
52
  ]
49
53
  }
@@ -1 +1 @@
1
- "1702b3931431788967234fae6759d010"
1
+ "55ef91877f85dc05ecdb9a403e1690b9"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.7.0",
2
+ "version": "0.8.0",
3
3
  "default": {
4
4
  "filters": [
5
5
  {
@@ -32,7 +32,7 @@
32
32
  "transforms": [
33
33
  {
34
34
  "expression": {
35
- "body": "local email = input.traits.email or input.context.traits.email\nif email then\n return {{ id = TO_SHA256_HASH(LOWER(TRIM(email))), primary = false }}\nend\nreturn",
35
+ "body": "local email = input.traits.email\nif email then\n return {{ id = TO_SHA256_HASH(LOWER(TRIM(email))), primary = false }}\nend\nreturn",
36
36
  "lang": "lua"
37
37
  }
38
38
  }
@@ -1 +1 @@
1
- "291e3d5ad426fc7197fd479d23e83adf"
1
+ "aad74f62245d125e040dd16dcaaa0790"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "isDraft": false,
3
3
  "isDeprecated": false,
4
- "isBeta": true,
4
+ "isBeta": false,
5
5
  "friendlyName": "Amazon DSP CAPI",
6
6
  "description": "Amazon DSP is a programmatic advertising solution that allows advertisers to purchase video, audio, and display ad placements both on Amazon-owned properties and across a network of third-party sites and apps.",
7
7
  "logo": "https://cdn.metarouter.io/amazon-dsp-capi.png",
@@ -20,6 +20,14 @@
20
20
  {
21
21
  "date": "2025-07-02T00:00:00.000Z",
22
22
  "note": "Version: 0.2.0\nAdding oauth2Auth and updating headers."
23
+ },
24
+ {
25
+ "date": "2025-07-30T00:00:00.000Z",
26
+ "note": "Version: 0.3.0\nRely on traits.email or userId for getting user\\'s email\nKeep the value and currencyCode mappings only for order_completed events."
27
+ },
28
+ {
29
+ "date": "2025-08-13T21:00:00.000Z",
30
+ "note": "Version: 1.0.0\nStable Release"
23
31
  }
24
32
  ]
25
33
  }
@@ -1 +1 @@
1
- "2cd3cfb66504e8568b62cc19b43d191a"
1
+ "e9d5bdeffd8acb0cf49fa6014838d3b4"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.2.0",
2
+ "version": "1.0.0",
3
3
  "global": {
4
4
  "filters": [
5
5
  {
@@ -15,7 +15,7 @@
15
15
  },
16
16
  {
17
17
  "inputPathExists": {
18
- "inputPath": "context.traits.email"
18
+ "inputPath": "userId"
19
19
  }
20
20
  }
21
21
  ]
@@ -49,7 +49,7 @@
49
49
  "transforms": [
50
50
  {
51
51
  "expression": {
52
- "body": "local email = input.traits.email or input.context.traits.email\nif email then return {{ values = {TO_SHA256_HASH(LOWER(TRIM(email)))}, type = \"EMAIL\" }} end",
52
+ "body": "local email = input.traits.email or input.userId\nif email then return {{ values = {TO_SHA256_HASH(LOWER(TRIM(email)))}, type = \"EMAIL\" }} end",
53
53
  "lang": "lua"
54
54
  }
55
55
  }
@@ -60,16 +60,8 @@
60
60
  "outputKey": "clientDedupeId"
61
61
  },
62
62
  {
63
- "inputKey": "input",
64
- "outputKey": "timestamp",
65
- "transforms": [
66
- {
67
- "expression": {
68
- "body": "return input.timestamp or input.originalTimestamp or input.sentAt",
69
- "lang": "lua"
70
- }
71
- }
72
- ]
63
+ "inputKey": "timestamp",
64
+ "outputKey": "timestamp"
73
65
  }
74
66
  ]
75
67
  },
@@ -104,22 +96,6 @@
104
96
  "staticString": "ADD_CONVERSION_DEFINITION_ID_HERE",
105
97
  "outputKey": "conversionDefinitionId"
106
98
  }
107
- ],
108
- "mappings": [
109
- {
110
- "inputKey": "properties.price",
111
- "outputKey": "value"
112
- },
113
- {
114
- "inputKey": "properties.currency",
115
- "outputKey": "currencyCode",
116
- "transforms": [
117
- {
118
- "modifyString": "uppercase"
119
- }
120
- ],
121
- "defaultString": "USD"
122
- }
123
99
  ]
124
100
  },
125
101
  "product_viewed": {
@@ -128,22 +104,6 @@
128
104
  "staticString": "ADD_CONVERSION_DEFINITION_ID_HERE",
129
105
  "outputKey": "conversionDefinitionId"
130
106
  }
131
- ],
132
- "mappings": [
133
- {
134
- "inputKey": "properties.price",
135
- "outputKey": "value"
136
- },
137
- {
138
- "inputKey": "properties.currency",
139
- "outputKey": "currencyCode",
140
- "transforms": [
141
- {
142
- "modifyString": "uppercase"
143
- }
144
- ],
145
- "defaultString": "USD"
146
- }
147
107
  ]
148
108
  },
149
109
  "product_added": {
@@ -152,30 +112,6 @@
152
112
  "staticString": "ADD_CONVERSION_DEFINITION_ID_HERE",
153
113
  "outputKey": "conversionDefinitionId"
154
114
  }
155
- ],
156
- "mappings": [
157
- {
158
- "inputKey": "input",
159
- "outputKey": "value",
160
- "transforms": [
161
- {
162
- "expression": {
163
- "lang": "lua",
164
- "body": "return tonumber(string.format(\"%.2f\", input.properties.price * (input.properties.quantity or 1)))"
165
- }
166
- }
167
- ]
168
- },
169
- {
170
- "inputKey": "properties.currency",
171
- "outputKey": "currencyCode",
172
- "transforms": [
173
- {
174
- "modifyString": "uppercase"
175
- }
176
- ],
177
- "defaultString": "USD"
178
- }
179
115
  ]
180
116
  },
181
117
  "product_removed": {
@@ -184,30 +120,6 @@
184
120
  "staticString": "ADD_CONVERSION_DEFINITION_ID_HERE",
185
121
  "outputKey": "conversionDefinitionId"
186
122
  }
187
- ],
188
- "mappings": [
189
- {
190
- "inputKey": "input",
191
- "outputKey": "value",
192
- "transforms": [
193
- {
194
- "expression": {
195
- "lang": "lua",
196
- "body": "return tonumber(string.format(\"%.2f\", input.properties.price * (input.properties.quantity or 1)))"
197
- }
198
- }
199
- ]
200
- },
201
- {
202
- "inputKey": "properties.currency",
203
- "outputKey": "currencyCode",
204
- "transforms": [
205
- {
206
- "modifyString": "uppercase"
207
- }
208
- ],
209
- "defaultString": "USD"
210
- }
211
123
  ]
212
124
  },
213
125
  "cart_viewed": {
@@ -216,30 +128,6 @@
216
128
  "staticString": "ADD_CONVERSION_DEFINITION_ID_HERE",
217
129
  "outputKey": "conversionDefinitionId"
218
130
  }
219
- ],
220
- "mappings": [
221
- {
222
- "inputKey": "input",
223
- "outputKey": "value",
224
- "transforms": [
225
- {
226
- "expression": {
227
- "lang": "lua",
228
- "body": "return tonumber(string.format(\"%.2f\", SUM(MAP(input.properties.products, function (p) return p.price * (p.quantity or 1) end))))"
229
- }
230
- }
231
- ]
232
- },
233
- {
234
- "inputKey": "properties.currency",
235
- "outputKey": "currencyCode",
236
- "transforms": [
237
- {
238
- "modifyString": "uppercase"
239
- }
240
- ],
241
- "defaultString": "USD"
242
- }
243
131
  ]
244
132
  },
245
133
  "order_completed": {
@@ -257,7 +145,7 @@
257
145
  {
258
146
  "expression": {
259
147
  "lang": "lua",
260
- "body": "return tonumber(string.format(\"%.2f\", SUM(MAP(input.properties.products, function (p) return p.price * (p.quantity or 1) end))))"
148
+ "body": "return TOTAL_VALUE(input.properties.products)"
261
149
  }
262
150
  }
263
151
  ]
@@ -1 +1 @@
1
- "2121b639d25907060a79328eb5339c33"
1
+ "4de2d2c7fc761c058d7f55df909a4224"
@@ -56,6 +56,10 @@
56
56
  {
57
57
  "date": "2025-01-22T00:00:00.000Z",
58
58
  "note": "Version: 1.0.0\nStable release"
59
+ },
60
+ {
61
+ "date": "2025-07-30T00:00:00.000Z",
62
+ "note": "Version: 1.1.0\nReplaced context.traits with traits."
59
63
  }
60
64
  ]
61
65
  }
@@ -1 +1 @@
1
- "f8d56376a9de75b065e3b7731d685445"
1
+ "975d6d47961a3c031d65d57fc5726e7e"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.0",
2
+ "version": "1.1.0",
3
3
  "global": {
4
4
  "enrichments": [
5
5
  {
@@ -138,7 +138,7 @@
138
138
  {
139
139
  "expression": {
140
140
  "lang": "lua",
141
- "body": "local birthday = input.traits.birthday or input.context.traits.birthday\nif birthday then\n birthday = string.sub(birthday, 1, 10)\n return birthday\nend"
141
+ "body": "local birthday = input.traits.birthday\nif birthday then\n birthday = string.sub(birthday, 1, 10)\n return birthday\nend"
142
142
  }
143
143
  }
144
144
  ]
@@ -1 +1 @@
1
- "43934769009955da88d1500232487bdb"
1
+ "8aefd6d6eeeacbb800ff7aff3332b1b5"
@@ -24,6 +24,10 @@
24
24
  {
25
25
  "date": "2025-03-12T22:00:00.000Z",
26
26
  "note": "Version: 1.0.0\nStable release"
27
+ },
28
+ {
29
+ "date": "2025-07-30T00:00:00.000Z",
30
+ "note": "Version: 1.1.0\nReplaced context.traits with traits."
27
31
  }
28
32
  ]
29
33
  }
@@ -1 +1 @@
1
- "a26132d23cc3868990f71e20aaeadd82"
1
+ "5c72c9db0645bcb5c41cadeefb2ba2fc"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.0",
2
+ "version": "1.1.0",
3
3
  "default": {
4
4
  "filters": [
5
5
  {
@@ -28,7 +28,7 @@
28
28
  "transforms": [
29
29
  {
30
30
  "expression": {
31
- "body": "local email = input.traits.email or input.context.traits.email\nif email then return TO_SHA256_HASH(LOWER(TRIM(email))) end",
31
+ "body": "local email = input.traits.email\nif email then return TO_SHA256_HASH(LOWER(TRIM(email))) end",
32
32
  "lang": "lua"
33
33
  }
34
34
  }
@@ -1 +1 @@
1
- "d7c83400dbb2c11ece684d23d054e9c2"
1
+ "befdb846d80a88edf89444acf15909e8"
@@ -32,6 +32,10 @@
32
32
  {
33
33
  "date": "2024-10-23T00:00:00.000Z",
34
34
  "note": "Version: 1.2.0\nAdded header `Accept-Encoding: application/json`"
35
+ },
36
+ {
37
+ "date": "2025-07-30T00:00:00.000Z",
38
+ "note": "Version: 1.3.0\nReplaced context.traits with traits."
35
39
  }
36
40
  ]
37
41
  }
@@ -1 +1 @@
1
- "c02fc7982169ae2461fdaed6d6b32f11"
1
+ "761839ff7e5b9147e6e4653c6ad98149"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.2.0",
2
+ "version": "1.3.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "CLIENT_ID",
@@ -79,7 +79,7 @@
79
79
  "transforms": [
80
80
  {
81
81
  "expression": {
82
- "body": "local email = input.traits.email or input.context.traits.email\nif (email) then return TO_SHA256_HASH(LOWER(TRIM(email))) end",
82
+ "body": "local email = input.traits.email\nif (email) then return TO_SHA256_HASH(LOWER(TRIM(email))) end",
83
83
  "lang": "lua"
84
84
  }
85
85
  }
@@ -1 +1 @@
1
- "c0d30782d1b80791d4b65f088a07cfe8"
1
+ "7ca4f2a6ef360610ebc39a0f0ed49f76"
@@ -36,6 +36,10 @@
36
36
  {
37
37
  "date": "2024-10-23T00:00:00.000Z",
38
38
  "note": "Version: 1.2.0\nAdded header `Accept-Encoding: application/json`"
39
+ },
40
+ {
41
+ "date": "2025-07-30T00:00:00.000Z",
42
+ "note": "Version: 1.3.0\nReplaced originalTimestamp with timestamp"
39
43
  }
40
44
  ]
41
45
  }
@@ -1 +1 @@
1
- "fd1bd3211688b8a8930ee3c2da1719b0"
1
+ "07bf9475c016b928d272bfba77ff9db8"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.2.0",
2
+ "version": "1.3.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "ENTERPRISE_ID",
@@ -205,7 +205,7 @@
205
205
  ]
206
206
  },
207
207
  {
208
- "inputKey": "originalTimestamp",
208
+ "inputKey": "timestamp",
209
209
  "outputKey": "updateTime"
210
210
  }
211
211
  ]
@@ -225,7 +225,7 @@
225
225
  ]
226
226
  },
227
227
  {
228
- "inputKey": "originalTimestamp",
228
+ "inputKey": "timestamp",
229
229
  "outputKey": "updateTime"
230
230
  }
231
231
  ]
@@ -1 +1 @@
1
- "f91e4e9bfff2c0a109fd5b0f5359d382"
1
+ "6b62d9236c5436160acf8a4a4a847866"
@@ -20,7 +20,7 @@
20
20
  }
21
21
  ],
22
22
  "default": {
23
- "endpoint": "https://sslwidget.criteo.com/fpm/event",
23
+ "endpoint": "https://sslwidget.criteo.com/s2s/v2/event",
24
24
  "transform": {
25
25
  "lang": "lua",
26
26
  "body": "local retailer_visitor_id = batch[1].retailer_visitor_id\nrequest.url = request.url ..\"?first_party_id=\".. retailer_visitor_id\nrequest.url = request.url ..\"&first_party_domain=\" .. \"$$FIRST_PARTY_DOMAIN$$\"\nrequest.url = request.url ..\"&first_party_name=\" .. \"$$FIRST_PARTY_NAME$$\"\nrequest.url = request.url ..\"&p=\" .. \"$$PARTNER_ID$$\"\nreturn request"
@@ -1 +1 @@
1
- "256ea16eb4cf017b1a6a3b9b243bf4d9"
1
+ "879bd06a0a416c3d84daaa260fe2d70a"
@@ -36,6 +36,10 @@
36
36
  {
37
37
  "date": "2024-10-23T00:00:00.000Z",
38
38
  "note": "Version: 1.1.0\nAdded header `Accept-Encoding: application/json`"
39
+ },
40
+ {
41
+ "date": "2025-07-30T00:00:00.000Z",
42
+ "note": "Endpoint updated to `https://sslwidget.criteo.com/s2s/v2/event`"
39
43
  }
40
44
  ]
41
45
  }
@@ -1 +1 @@
1
- "49767f7fabc7c6c4dd76fa9e59d03c9f"
1
+ "f1a7eeb6e468f679c88e82bf00969b9e"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.1.0",
2
+ "version": "2.0.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "PARTNER_ID",
@@ -112,7 +112,7 @@
112
112
  {
113
113
  "expression": {
114
114
  "lang": "lua",
115
- "body": "local event = {\n {\n event = \"viewList\",\n currency = UPPER(input.properties.currency),\n item = {}\n }\n}\n\n-- returns an array of the top 3 products on the listing page a user visited.\nfor i, product in ipairs(input.properties.products) do\n if i <= 3 then\n table.insert(event[1].item, {id = product.product_id})\n else\n break\n end\nend\nreturn event"
115
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {\n {\n event = \"viewList\",\n currency = UPPER(input.properties.currency),\n category = input.properties.category,\n item = {},\n timestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" })\n }\n}\n\n-- returns an array of the top 3 products on the listing page a user visited.\nfor i, product in ipairs(input.properties.products) do\n if i <= 3 then\n table.insert(event[1].item, product.product_id)\n else\n break\n end\nend\nreturn event"
116
116
  }
117
117
  }
118
118
  ]
@@ -128,7 +128,7 @@
128
128
  {
129
129
  "expression": {
130
130
  "lang": "lua",
131
- "body": "local event = {{\nevent = \"viewBasket\",\ncurrency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n category = p.category,\n quantity = p.quantity\n }\n end\n )\n}}\nreturn event"
131
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {{\nevent = \"viewBasket\",\ntimestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" }),\ncurrency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n category = p.category,\n quantity = p.quantity\n }\n end\n )\n}}\nreturn event"
132
132
  }
133
133
  }
134
134
  ]
@@ -157,7 +157,7 @@
157
157
  {
158
158
  "expression": {
159
159
  "lang": "lua",
160
- "body": "local event = {{\n event = \"trackTransaction\",\n timestamp = TO_DATE_TIME(input.timestamp, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }),\n id = input.properties.order_id,\n currency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n quantity = p.quantity\n }\n end\n )\n }}\n return event"
160
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {{\n event = \"trackTransaction\",\n timestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" }),\n id = input.properties.order_id,\n currency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n quantity = p.quantity\n }\n end\n )\n }}\n return event"
161
161
  }
162
162
  }
163
163
  ]
@@ -173,7 +173,7 @@
173
173
  {
174
174
  "expression": {
175
175
  "lang": "lua",
176
- "body": "local event = {{\nevent = \"addToCart\",\ntimestamp = TO_DATE_TIME(input.timestamp, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }),\ncurrency = UPPER(input.properties.currency),\n item ={{\n id=input.properties.product_id,\n price = input.properties.price,\n quantity = input.properties.quantity\n }}\n}}\nreturn event"
176
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {{\nevent = \"addToCart\",\ntimestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" }),\ncurrency = UPPER(input.properties.currency),\n item ={{\n id=input.properties.product_id,\n price = input.properties.price,\n quantity = input.properties.quantity\n }}\n}}\nreturn event"
177
177
  }
178
178
  }
179
179
  ]
@@ -215,7 +215,7 @@
215
215
  {
216
216
  "expression": {
217
217
  "lang": "lua",
218
- "body": "local event = {{\nevent = \"viewList\",\ntimestamp = TO_DATE_TIME(input.timestamp, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }),\ncategory = input.properties.category,\nkeyword = input.properties.query,\n item ={{\n id=input.properties.product_id,\n price = input.properties.price,\n quantity = input.properties.quantity\n }}\n}}\nreturn event"
218
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {{\nevent = \"viewList\",\ntimestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" }),\ncategory = input.properties.category,\nkeywords = input.properties.query,\n item = {\n input.properties.product_id,\n }\n}}\nreturn event"
219
219
  }
220
220
  }
221
221
  ]
@@ -252,7 +252,7 @@
252
252
  {
253
253
  "expression": {
254
254
  "lang": "lua",
255
- "body": "local event = {{\nevent = \"beginCheckout\",\ntimestamp = TO_DATE_TIME(input.timestamp, { inputFormat = \"2006-01-02T15:04:05Z07:00\" }),\ncurrency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n quantity = p.quantity\n }\n end\n )\n}}\nreturn event"
255
+ "body": "local ts = input.timestamp or input.originalTimestamp or input.sentAt\nlocal event = {{\nevent = \"beginCheckout\",\ntimestamp = TO_DATE_TIME(ts, { outputFormat = \"2006-01-02T15:04:05Z\" }),\ncurrency = UPPER(input.properties.currency),\n item = MAP(\n input.properties.products,\n function (p)\n return {\n id=p.product_id,\n price = p.price,\n quantity = p.quantity\n }\n end\n )\n}}\nreturn event"
256
256
  }
257
257
  }
258
258
  ]
@@ -1 +1 @@
1
- "4043255b2afdb2298a96bdeb03ef50ec"
1
+ "619ec2b58f0719be26031a692a1d12bc"
@@ -64,6 +64,14 @@
64
64
  {
65
65
  "date": "2025-04-09T00:00:00.000Z",
66
66
  "note": "Version: 1.5.0\nFriendly name updated"
67
+ },
68
+ {
69
+ "date": "2025-07-30T00:00:00.000Z",
70
+ "note": "Version: 1.6.0\nReplaced context.traits with traits."
71
+ },
72
+ {
73
+ "date": "2025-08-06T00:00:00.000Z",
74
+ "note": "Version: 1.7.0\nUpdated event_time key mapping"
67
75
  }
68
76
  ]
69
77
  }
@@ -1 +1 @@
1
- "1cc1115fe6da005e64cda63015785db8"
1
+ "dd864246e70be5a1140cc862ab0c9a40"
@@ -1,12 +1,6 @@
1
1
  {
2
- "version": "1.5.0",
2
+ "version": "1.7.0",
3
3
  "global": {
4
- "enrichments": [
5
- {
6
- "timestamp": "seconds",
7
- "outputKey": "event_time"
8
- }
9
- ],
10
4
  "mappings": [
11
5
  {
12
6
  "inputKey": "input",
@@ -20,6 +14,18 @@
20
14
  }
21
15
  ]
22
16
  },
17
+ {
18
+ "inputKey": "input",
19
+ "outputKey": "event_time",
20
+ "transforms": [
21
+ {
22
+ "expression": {
23
+ "body": "return SECONDS_SINCE_EPOCH_FROM_RFC3999(TO_DATE_TIME(input.timestamp or input.originalTimestamp or input.sentAt))",
24
+ "lang": "lua"
25
+ }
26
+ }
27
+ ]
28
+ },
23
29
  {
24
30
  "inputKey": "context.device.adTrackingEnabled",
25
31
  "outputKey": "app_data.advertiser_tracking_enabled"
@@ -47,7 +53,7 @@
47
53
  {
48
54
  "expression": {
49
55
  "lang": "lua",
50
- "body": "return TO_SHA256_HASH(LOWER(TRIM(input.context.traits.email)))"
56
+ "body": "return TO_SHA256_HASH(LOWER(TRIM(input.traits.email)))"
51
57
  }
52
58
  }
53
59
  ]
@@ -1 +1 @@
1
- "a8fa714b7e476eca7287ce1d5ac45420"
1
+ "37449feac351ed1f06a38a8ca0213f8a"
@@ -1 +1 @@
1
- "6fb8e3a7336e335b03bf372c3166f9cb"
1
+ "ed393ae74bea8ac473edb3852da5a232"
@@ -28,6 +28,10 @@
28
28
  {
29
29
  "date": "2024-10-23T00:00:00.000Z",
30
30
  "note": "Version: 0.3.0\nAdded header `Accept-Encoding: application/json`"
31
+ },
32
+ {
33
+ "date": "2025-07-30T00:00:00.000Z",
34
+ "note": "Version: 0.4.0\nReplaced context.traits with traits."
31
35
  }
32
36
  ]
33
37
  }
@@ -1 +1 @@
1
- "9fa1761de469bf837dc836b0e86adbd7"
1
+ "e3b51b92dc6fdad18d30ab03cab9784b"