@metarouter/ajs-starter-kit 1.0.139 → 1.0.141

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.
@@ -0,0 +1 @@
1
+ "05e6daa7211475858660edab2afb94fd"
@@ -0,0 +1,42 @@
1
+ {
2
+ "params": [
3
+ {
4
+ "name": "ADJUST_AUTH_TOKEN",
5
+ "exampleValue": "my-adjust-auth-token"
6
+ }
7
+ ],
8
+ "default": {
9
+ "endpoint": "https://s2s.adjust.com/event",
10
+ "method": "GET",
11
+ "headers": [
12
+ {
13
+ "key": "Content-Type",
14
+ "value": "application/x-www-form-urlencoded"
15
+ },
16
+ {
17
+ "key": "Authorization",
18
+ "value": "Bearer $$ADJUST_AUTH_TOKEN$$"
19
+ }
20
+ ]
21
+ },
22
+ "eventSpecific": {
23
+ "session_started": {
24
+ "endpoint": "https://s2s.adjust.com/session",
25
+ "method": "GET",
26
+ "headers": [
27
+ {
28
+ "key": "Content-Type",
29
+ "value": "application/x-www-form-urlencoded"
30
+ },
31
+ {
32
+ "key": "X-Adjust-Forwarded-For",
33
+ "fromEventKey": "context.ip"
34
+ },
35
+ {
36
+ "key": "Authorization",
37
+ "value": "Bearer $$ADJUST_AUTH_TOKEN$$"
38
+ }
39
+ ]
40
+ }
41
+ }
42
+ }
@@ -0,0 +1 @@
1
+ "8e44d08a921572d79cb14d12ebc79db0"
@@ -0,0 +1,21 @@
1
+ {
2
+ "isDraft": false,
3
+ "isDeprecated": false,
4
+ "isBeta": true,
5
+ "friendlyName": "Adjust",
6
+ "description": "Adjust is a mobile marketing analytics and attribution platform that helps businesses measure and optimize their app performance across campaigns and channels.",
7
+ "logo": "https://cdn.metarouter.io/adjust.png",
8
+ "color": "#0096FF",
9
+ "eventSource": {
10
+ "isAndroidApp": true,
11
+ "isIosApp": true,
12
+ "isWebApp": false
13
+ },
14
+ "inputSchema": "analytics_js",
15
+ "releaseNotes": [
16
+ {
17
+ "date": "2025-09-10T21:00:00.000Z",
18
+ "note": "Version: 0.1.0\nBeta Version\nAdjust initial release"
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1 @@
1
+ "bd0b0a2b7e1419512aad1a07a00098e6"
@@ -0,0 +1,420 @@
1
+ {
2
+ "version": "0.1.0",
3
+ "params": [
4
+ {
5
+ "name": "APP_TOKEN",
6
+ "exampleValue": "my-app-token"
7
+ }
8
+ ],
9
+ "global": {
10
+ "enrichments": [
11
+ {
12
+ "staticString": "1",
13
+ "outputKey": "s2s"
14
+ },
15
+ {
16
+ "staticString": "$$APP_TOKEN$$",
17
+ "outputKey": "app_token"
18
+ }
19
+ ],
20
+ "mappings": [
21
+ {
22
+ "inputKey": "context.ip",
23
+ "outputKey": "ip_address"
24
+ },
25
+ {
26
+ "inputKey": "input",
27
+ "outputKey": "created_at_unix",
28
+ "transforms": [
29
+ {
30
+ "expression": {
31
+ "lang": "lua",
32
+ "body": "return SECONDS_SINCE_EPOCH_FROM_RFC3999(input.timestamp or input.originalTimestamp or input.sentAt)"
33
+ }
34
+ }
35
+ ]
36
+ },
37
+ {
38
+ "inputKey": "context.userAgent",
39
+ "outputKey": "user_agent"
40
+ }
41
+ ],
42
+ "expressions": [
43
+ {
44
+ "lang": "lua",
45
+ "body": "local result = {}\n\n-- Device ID / advertisingId respectively\nif input.context.device.type == 'ios' then\n result.idfv = UPPER(input.context.device.id)\n result.idfa = input.context.device.advertisingId\nelseif input.context.device.type == 'android' then\n result.android_id = LOWER(REPLACE(input.context.device.id, \"-\", \"\"))\n result.gps_adid = input.context.device.advertisingId\nend\n\nreturn result"
46
+ }
47
+ ]
48
+ },
49
+ "default": {
50
+ "filters": [
51
+ {
52
+ "byEventNames": {
53
+ "action": "allow",
54
+ "events": [
55
+ ""
56
+ ]
57
+ }
58
+ }
59
+ ]
60
+ },
61
+ "eventSpecific": {
62
+ "page": {
63
+ "enrichments": [
64
+ {
65
+ "staticString": "ADD_EVENT_TOKEN_HERE",
66
+ "outputKey": "event_token"
67
+ }
68
+ ],
69
+ "mappings": [
70
+ {
71
+ "inputKey": "properties.url",
72
+ "outputKey": "callback_params.url"
73
+ },
74
+ {
75
+ "inputKey": "properties.path",
76
+ "outputKey": "callback_params.path"
77
+ },
78
+ {
79
+ "inputKey": "properties.referrer",
80
+ "outputKey": "callback_params.referrer"
81
+ },
82
+ {
83
+ "inputKey": "properties.title",
84
+ "outputKey": "callback_params.title"
85
+ }
86
+ ]
87
+ },
88
+ "product_viewed": {
89
+ "enrichments": [
90
+ {
91
+ "staticString": "ADD_EVENT_TOKEN_HERE",
92
+ "outputKey": "event_token"
93
+ }
94
+ ],
95
+ "mappings": [
96
+ {
97
+ "inputKey": "properties.product_id",
98
+ "outputKey": "callback_params.product_id"
99
+ },
100
+ {
101
+ "inputKey": "properties.sku",
102
+ "outputKey": "callback_params.sku"
103
+ },
104
+ {
105
+ "inputKey": "properties.name",
106
+ "outputKey": "callback_params.name"
107
+ },
108
+ {
109
+ "inputKey": "properties.category",
110
+ "outputKey": "callback_params.category"
111
+ },
112
+ {
113
+ "inputKey": "properties.price",
114
+ "outputKey": "callback_params.price",
115
+ "transforms": [
116
+ {
117
+ "toScalar": "string"
118
+ }
119
+ ]
120
+ },
121
+ {
122
+ "inputKey": "properties.currency",
123
+ "outputKey": "callback_params.currency",
124
+ "transforms": [
125
+ {
126
+ "modifyString": "uppercase"
127
+ }
128
+ ]
129
+ }
130
+ ]
131
+ },
132
+ "product_added": {
133
+ "enrichments": [
134
+ {
135
+ "staticString": "ADD_EVENT_TOKEN_HERE",
136
+ "outputKey": "event_token"
137
+ }
138
+ ],
139
+ "mappings": [
140
+ {
141
+ "inputKey": "properties.product_id",
142
+ "outputKey": "callback_params.product_id"
143
+ },
144
+ {
145
+ "inputKey": "properties.sku",
146
+ "outputKey": "callback_params.sku"
147
+ },
148
+ {
149
+ "inputKey": "properties.category",
150
+ "outputKey": "callback_params.category"
151
+ },
152
+ {
153
+ "inputKey": "properties.price",
154
+ "outputKey": "callback_params.price",
155
+ "transforms": [
156
+ {
157
+ "toScalar": "string"
158
+ }
159
+ ]
160
+ },
161
+ {
162
+ "inputKey": "properties.quantity",
163
+ "outputKey": "callback_params.quantity",
164
+ "transforms": [
165
+ {
166
+ "toScalar": "string"
167
+ }
168
+ ]
169
+ },
170
+ {
171
+ "inputKey": "properties.cart_id",
172
+ "outputKey": "callback_params.cart_id"
173
+ },
174
+ {
175
+ "inputKey": "properties.currency",
176
+ "outputKey": "callback_params.currency",
177
+ "transforms": [
178
+ {
179
+ "modifyString": "uppercase"
180
+ }
181
+ ]
182
+ }
183
+ ]
184
+ },
185
+ "cart_viewed": {
186
+ "enrichments": [
187
+ {
188
+ "staticString": "ADD_EVENT_TOKEN_HERE",
189
+ "outputKey": "event_token"
190
+ }
191
+ ],
192
+ "mappings": [
193
+ {
194
+ "inputKey": "properties.cart_id",
195
+ "outputKey": "callback_params.cart_id"
196
+ },
197
+ {
198
+ "inputKey": "properties.currency",
199
+ "outputKey": "callback_params.currency",
200
+ "transforms": [
201
+ {
202
+ "modifyString": "uppercase"
203
+ }
204
+ ]
205
+ },
206
+ {
207
+ "inputKey": "input",
208
+ "outputKey": "callback_params.total",
209
+ "transforms": [
210
+ {
211
+ "expression": {
212
+ "lang": "lua",
213
+ "body": "return TO_STRING(TOTAL_VALUE(input.properties.products))"
214
+ }
215
+ }
216
+ ]
217
+ },
218
+ {
219
+ "inputKey": "input",
220
+ "outputKey": "callback_params.products",
221
+ "transforms": [
222
+ {
223
+ "expression": {
224
+ "lang": "lua",
225
+ "body": "local product_ids = JOIN(MAP(input.properties.products, function (p) return p.sku or p.product_id or \"\" end), \",\")\nreturn product_ids"
226
+ }
227
+ }
228
+ ]
229
+ }
230
+ ]
231
+ },
232
+ "order_completed": {
233
+ "enrichments": [
234
+ {
235
+ "staticString": "ADD_EVENT_TOKEN_HERE",
236
+ "outputKey": "event_token"
237
+ }
238
+ ],
239
+ "mappings": [
240
+ {
241
+ "inputKey": "properties.revenue",
242
+ "outputKey": "revenue"
243
+ },
244
+ {
245
+ "inputKey": "properties.currency",
246
+ "outputKey": "currency",
247
+ "transforms": [
248
+ {
249
+ "modifyString": "uppercase"
250
+ }
251
+ ]
252
+ },
253
+ {
254
+ "inputKey": "properties.order_id",
255
+ "outputKey": "callback_params.order_id"
256
+ },
257
+ {
258
+ "inputKey": "properties.checkout_id",
259
+ "outputKey": "callback_params.checkout_id"
260
+ },
261
+ {
262
+ "inputKey": "properties.total",
263
+ "outputKey": "callback_params.total",
264
+ "transforms": [
265
+ {
266
+ "toScalar": "string"
267
+ }
268
+ ]
269
+ },
270
+ {
271
+ "inputKey": "properties.discount",
272
+ "outputKey": "callback_params.discount",
273
+ "transforms": [
274
+ {
275
+ "toScalar": "string"
276
+ }
277
+ ]
278
+ },
279
+ {
280
+ "inputKey": "properties.shipping",
281
+ "outputKey": "callback_params.shipping",
282
+ "transforms": [
283
+ {
284
+ "toScalar": "string"
285
+ }
286
+ ]
287
+ },
288
+ {
289
+ "inputKey": "properties.tax",
290
+ "outputKey": "callback_params.tax",
291
+ "transforms": [
292
+ {
293
+ "toScalar": "string"
294
+ }
295
+ ]
296
+ },
297
+ {
298
+ "inputKey": "input",
299
+ "outputKey": "callback_params.products",
300
+ "transforms": [
301
+ {
302
+ "expression": {
303
+ "lang": "lua",
304
+ "body": "local product_ids = JOIN(MAP(input.properties.products, function (p) return p.sku or p.product_id or \"\" end), \",\")\nreturn product_ids"
305
+ }
306
+ }
307
+ ]
308
+ }
309
+ ]
310
+ },
311
+ "products_searched": {
312
+ "enrichments": [
313
+ {
314
+ "staticString": "ADD_EVENT_TOKEN_HERE",
315
+ "outputKey": "event_token"
316
+ }
317
+ ],
318
+ "mappings": [
319
+ {
320
+ "inputKey": "properties.query",
321
+ "outputKey": "callback_params.query"
322
+ }
323
+ ]
324
+ },
325
+ "checkout_started": {
326
+ "enrichments": [
327
+ {
328
+ "staticString": "ADD_EVENT_TOKEN_HERE",
329
+ "outputKey": "event_token"
330
+ }
331
+ ],
332
+ "mappings": [
333
+ {
334
+ "inputKey": "properties.order_id",
335
+ "outputKey": "callback_params.order_id"
336
+ },
337
+ {
338
+ "inputKey": "properties.currency",
339
+ "outputKey": "callback_params.currency",
340
+ "transforms": [
341
+ {
342
+ "modifyString": "uppercase"
343
+ }
344
+ ]
345
+ },
346
+ {
347
+ "inputKey": "input",
348
+ "outputKey": "callback_params.total",
349
+ "transforms": [
350
+ {
351
+ "expression": {
352
+ "lang": "lua",
353
+ "body": "return TO_STRING(TOTAL_VALUE(input.properties.products))"
354
+ }
355
+ }
356
+ ]
357
+ },
358
+ {
359
+ "inputKey": "input",
360
+ "outputKey": "callback_params.products",
361
+ "transforms": [
362
+ {
363
+ "expression": {
364
+ "lang": "lua",
365
+ "body": "local product_ids = JOIN(MAP(input.properties.products, function (p) return p.sku or p.product_id or \"\" end), \",\")\nreturn product_ids"
366
+ }
367
+ }
368
+ ]
369
+ }
370
+ ]
371
+ },
372
+ "session_started": {
373
+ "enrichments": [
374
+ {
375
+ "staticString": "production",
376
+ "outputKey": "environment"
377
+ }
378
+ ],
379
+ "mappings": [
380
+ {
381
+ "inputKey": "context.app.version",
382
+ "outputKey": "app_version"
383
+ },
384
+ {
385
+ "inputKey": "context.os.version",
386
+ "outputKey": "os_version"
387
+ },
388
+ {
389
+ "inputKey": "context.os.name",
390
+ "outputKey": "os_name",
391
+ "transforms": [
392
+ {
393
+ "modifyString": "lowercase"
394
+ }
395
+ ]
396
+ },
397
+ {
398
+ "inputKey": "context.device.type",
399
+ "outputKey": "device_type"
400
+ },
401
+ {
402
+ "inputKey": "context.device.name",
403
+ "outputKey": "device_name"
404
+ },
405
+ {
406
+ "inputKey": "input",
407
+ "outputKey": "language",
408
+ "transforms": [
409
+ {
410
+ "expression": {
411
+ "lang": "lua",
412
+ "body": "return SUBSTRING(input.context.locale, 0, 2)"
413
+ }
414
+ }
415
+ ]
416
+ }
417
+ ]
418
+ }
419
+ }
420
+ }
@@ -1 +1 @@
1
- "7ca4f2a6ef360610ebc39a0f0ed49f76"
1
+ "247cb32da33c45b9903d8927754991d9"
@@ -40,6 +40,10 @@
40
40
  {
41
41
  "date": "2025-07-30T00:00:00.000Z",
42
42
  "note": "Version: 1.3.0\nReplaced originalTimestamp with timestamp"
43
+ },
44
+ {
45
+ "date": "2025-08-27T00:00:00.000Z",
46
+ "note": "Version: 1.4.0\nRemoved sid and customerStatus mappings\nChanged actionTrackerId scope from eventSpecific to global"
43
47
  }
44
48
  ]
45
49
  }
@@ -1 +1 @@
1
- "07bf9475c016b928d272bfba77ff9db8"
1
+ "32e96f8d90ddef19d8a1e6b51b04e6a1"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.3.0",
2
+ "version": "1.4.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "ENTERPRISE_ID",
@@ -19,8 +19,16 @@
19
19
  ],
20
20
  "mappings": [
21
21
  {
22
- "inputKey": "properties.sid",
23
- "outputKey": "sid"
22
+ "inputKey": "input",
23
+ "outputKey": "actionTrackerId",
24
+ "transforms": [
25
+ {
26
+ "expression": {
27
+ "lang": "lua",
28
+ "body": "return TO_TRUNCATED_INT($$ACTION_TRACKER_ID$$)"
29
+ }
30
+ }
31
+ ]
24
32
  },
25
33
  {
26
34
  "inputKey": "properties.order_id",
@@ -48,18 +56,6 @@
48
56
  "eventSpecific": {
49
57
  "order_completed": {
50
58
  "mappings": [
51
- {
52
- "inputKey": "input",
53
- "outputKey": "actionTrackerId",
54
- "transforms": [
55
- {
56
- "expression": {
57
- "lang": "lua",
58
- "body": "return TO_TRUNCATED_INT($$ACTION_TRACKER_ID$$)"
59
- }
60
- }
61
- ]
62
- },
63
59
  {
64
60
  "inputKey": "context.providers.commissionJunction.cjevent",
65
61
  "outputKey": "cjEvent"
@@ -85,15 +81,6 @@
85
81
  }
86
82
  ]
87
83
  },
88
- {
89
- "inputKey": "properties.customerStatus",
90
- "outputKey": "customerStatus",
91
- "transforms": [
92
- {
93
- "toScalar": "string"
94
- }
95
- ]
96
- },
97
84
  {
98
85
  "inputKey": "properties.revenue",
99
86
  "outputKey": "verticalParameters.orderSubtotal",
@@ -132,18 +119,6 @@
132
119
  },
133
120
  "order_updated": {
134
121
  "mappings": [
135
- {
136
- "inputKey": "input",
137
- "outputKey": "actionTrackerId",
138
- "transforms": [
139
- {
140
- "expression": {
141
- "lang": "lua",
142
- "body": "return TO_TRUNCATED_INT($$ACTION_TRACKER_ID$$)"
143
- }
144
- }
145
- ]
146
- },
147
122
  {
148
123
  "inputKey": "properties.revenue",
149
124
  "outputKey": "amount"
@@ -165,15 +140,6 @@
165
140
  }
166
141
  ]
167
142
  },
168
- {
169
- "inputKey": "properties.customerStatus",
170
- "outputKey": "customerStatus",
171
- "transforms": [
172
- {
173
- "toScalar": "string"
174
- }
175
- ]
176
- },
177
143
  {
178
144
  "inputKey": "properties.revenue",
179
145
  "outputKey": "verticalParameters.orderSubtotal",
@@ -212,18 +178,6 @@
212
178
  },
213
179
  "order_canceled": {
214
180
  "mappings": [
215
- {
216
- "inputKey": "input",
217
- "outputKey": "actionTrackerId",
218
- "transforms": [
219
- {
220
- "expression": {
221
- "lang": "lua",
222
- "body": "return TO_TRUNCATED_INT($$ACTION_TRACKER_ID$$)"
223
- }
224
- }
225
- ]
226
- },
227
181
  {
228
182
  "inputKey": "timestamp",
229
183
  "outputKey": "updateTime"
@@ -1 +1 @@
1
- "879bd06a0a416c3d84daaa260fe2d70a"
1
+ "bfa6cada883394c1344e53a55110e24f"
@@ -39,7 +39,11 @@
39
39
  },
40
40
  {
41
41
  "date": "2025-07-30T00:00:00.000Z",
42
- "note": "Endpoint updated to `https://sslwidget.criteo.com/s2s/v2/event`"
42
+ "note": "Version: 2.0.0\nEndpoint updated to `https://sslwidget.criteo.com/s2s/v2/event`"
43
+ },
44
+ {
45
+ "date": "2025-09-03T00:00:00.000Z",
46
+ "note": "Version: 2.1.0\nRemoved id node and added alternate_ids array in playbook.yaml"
43
47
  }
44
48
  ]
45
49
  }
@@ -1 +1 @@
1
- "f1a7eeb6e468f679c88e82bf00969b9e"
1
+ "99ca1b962294230b240498fc701a4a47"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.0.0",
2
+ "version": "2.1.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "PARTNER_ID",
@@ -42,48 +42,12 @@
42
42
  },
43
43
  {
44
44
  "inputKey": "input",
45
- "outputKey": "id.email.raw",
45
+ "outputKey": "alternate_ids",
46
46
  "transforms": [
47
47
  {
48
48
  "expression": {
49
49
  "lang": "lua",
50
- "body": "return LOWER(TRIM(input.traits.email))"
51
- }
52
- }
53
- ]
54
- },
55
- {
56
- "inputKey": "traits.email",
57
- "outputKey": "id.email.sha256_md5",
58
- "transforms": [
59
- {
60
- "expression": {
61
- "lang": "lua",
62
- "body": "return TO_SHA256_HASH(TO_MD5_HASH(LOWER(TRIM(input.traits.email))))"
63
- }
64
- }
65
- ]
66
- },
67
- {
68
- "inputKey": "input",
69
- "outputKey": "id.email.md5",
70
- "transforms": [
71
- {
72
- "expression": {
73
- "lang": "lua",
74
- "body": "return TO_MD5_HASH(LOWER(TRIM(input.traits.email)))"
75
- }
76
- }
77
- ]
78
- },
79
- {
80
- "inputKey": "input",
81
- "outputKey": "id.email.sha256",
82
- "transforms": [
83
- {
84
- "expression": {
85
- "lang": "lua",
86
- "body": "return TO_SHA256_HASH(LOWER(TRIM(input.traits.email)))"
50
+ "body": "local email = input.traits and input.traits.email\nif not email or TRIM(email) == \"\" then\n return {}\nend\n\nlocal cleaned = LOWER(TRIM(email))\nreturn {\n {\n type = \"email\",\n hash_method = \"sha256\",\n value = TO_SHA256_HASH(cleaned)\n },\n {\n type = \"email\",\n hash_method = \"md5\",\n value = TO_MD5_HASH(cleaned)\n },\n {\n type = \"email\",\n hash_method = \"sha256_md5\",\n value = TO_SHA256_HASH(TO_MD5_HASH(cleaned))\n },\n {\n type = \"email\",\n hash_method = \"none\",\n value = cleaned\n }\n}"
87
51
  }
88
52
  }
89
53
  ]
@@ -1 +1 @@
1
- "57b309d84cec67f8c5324a4ac40b6bf0"
1
+ "3aaa38f433868b00be9986f1811301b7"
@@ -1 +1 @@
1
- "111e9389d8e18508f5ac309705cca5b5"
1
+ "74b9820f5f9c3be92f5bd5cfe1b71791"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "isDraft": false,
3
3
  "isDeprecated": false,
4
- "isBeta": true,
4
+ "isBeta": false,
5
5
  "friendlyName": "Iterable",
6
6
  "description": "Iterable is a customer engagement platform that enables brands to create, execute, and optimize cross-channel marketing campaigns.",
7
7
  "logo": "https://cdn.metarouter.io/iterable.png",
@@ -28,6 +28,10 @@
28
28
  {
29
29
  "date": "2025-01-22T21:00:00.000Z",
30
30
  "note": "Version: 0.4.0\nAdd user agent and ip to default and order_completed stanzas\nRemove redundant properties-dataFields mapping from identify events"
31
+ },
32
+ {
33
+ "date": "2025-09-10T00:00:00.000Z",
34
+ "note": "Version: 1.0.0\nStable Release"
31
35
  }
32
36
  ]
33
37
  }
@@ -1 +1 @@
1
- "ae50453124fca003c7ffe3ece6f2a46a"
1
+ "30940578815775da8b8923c692a67ef3"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.4.0",
2
+ "version": "1.0.0",
3
3
  "global": {
4
4
  "enrichments": [
5
5
  {
@@ -1 +1 @@
1
- "a61afd69a0c1387f2bd92d286467984d"
1
+ "21fe14ecbba65c79bfc1f4d8458c5f3b"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "isDraft": false,
3
3
  "isDeprecated": false,
4
- "isBeta": true,
4
+ "isBeta": false,
5
5
  "friendlyName": "Linkedin Ads - Conversions",
6
6
  "description": "LinkedIn Ads is LinkedIn’s advertising platform that allows businesses to target professionals based on attributes like job title, industry, company size, and seniority.",
7
7
  "logo": "https://cdn.metarouter.io/linkedin-conversions.svg",
@@ -24,6 +24,10 @@
24
24
  {
25
25
  "date": "2025-08-13T00:00:00.000Z",
26
26
  "note": "Version: 0.3.0\nReplaced enrichment with Lua mapping, defaulted currency to 'USD'."
27
+ },
28
+ {
29
+ "date": "2025-09-03T00:00:00.000Z",
30
+ "note": "Version: 1.0.0\nStable Release"
27
31
  }
28
32
  ]
29
33
  }
@@ -1 +1 @@
1
- "e8d652e89e98a774b038de7c7d0212e8"
1
+ "b39fec9be8901634d8310379b49f4458"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.3.0",
2
+ "version": "1.0.0",
3
3
  "default": {
4
4
  "filters": [
5
5
  {
@@ -1 +1 @@
1
- "a5b619b7bb0cd50c0138cd38c4673c19"
1
+ "6a3531db79153c29b73ab541c156d9b0"
@@ -1 +1 @@
1
- "98491ef4042eecbc4503c1e4fdb466a3"
1
+ "1b79ef41075ef8ac9c3d7d51c6faf702"
@@ -16,6 +16,10 @@
16
16
  {
17
17
  "date": "2025-07-30T21:00:00.000Z",
18
18
  "note": "Version: 0.1.0\nBeta Version\nRakuten Conversions initial release"
19
+ },
20
+ {
21
+ "date": "2025-09-03T21:00:00.000Z",
22
+ "note": "Version: 0.2.0\nAdding namelist field to order_canceled and order_completed events"
19
23
  }
20
24
  ]
21
25
  }
@@ -1 +1 @@
1
- "fdcfa4bfb54a1e7df3be2c279610ebf0"
1
+ "8669607097e71ffda520c6672b1a10cb"
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.0",
2
+ "version": "0.2.0",
3
3
  "params": [
4
4
  {
5
5
  "name": "MERCHANT_ID",
@@ -128,6 +128,18 @@
128
128
  "inputKey": "properties.checkout_id",
129
129
  "outputKey": "altord"
130
130
  },
131
+ {
132
+ "inputKey": "input",
133
+ "outputKey": "namelist",
134
+ "transforms": [
135
+ {
136
+ "expression": {
137
+ "lang": "lua",
138
+ "body": "local namelist = JOIN(MAP(input.properties.products, function (p) return p.name or \"\" end), \"|\")\nif input.properties.discount then namelist = namelist .. \"|Discount\" end\nreturn namelist"
139
+ }
140
+ }
141
+ ]
142
+ },
131
143
  {
132
144
  "inputKey": "input",
133
145
  "outputKey": "brandlist",
@@ -229,6 +241,18 @@
229
241
  "inputKey": "properties.checkout_id",
230
242
  "outputKey": "altord"
231
243
  },
244
+ {
245
+ "inputKey": "input",
246
+ "outputKey": "namelist",
247
+ "transforms": [
248
+ {
249
+ "expression": {
250
+ "lang": "lua",
251
+ "body": "local namelist = JOIN(MAP(input.properties.products, function (p) return p.name or \"\" end), \"|\")\nif input.properties.discount then namelist = namelist .. \"|Discount\" end\nreturn namelist"
252
+ }
253
+ }
254
+ ]
255
+ },
232
256
  {
233
257
  "inputKey": "input",
234
258
  "outputKey": "brandlist",
package/README.md CHANGED
@@ -5,15 +5,22 @@ event methods, you will create a rich, actionable data set from your website, mo
5
5
  server, and other sources. It is particularly useful for tracking the pages or screens your
6
6
  users visit, the actions they take on your property, and whether the user has been identified
7
7
  previously.
8
+ ## 2025-09
9
+ - Adjust (BETA)
10
+ - Criteo
11
+ - Iterable
12
+ - Linkedin Ads - Conversions
13
+ - Rakuten Conversions (BETA)
14
+
8
15
  ## 2025-08
9
16
  - Adobe Experience Platform - Interact
10
17
  - Amazon DSP CAPI
11
18
  - Amperity
19
+ - Commission Junction
12
20
  - Meta CAPI
13
21
  - Google Analytics 4 (Collect)
14
22
  - CM360 - Floodlights
15
23
  - Kochava
16
- - Linkedin Ads - Conversions (BETA)
17
24
  - Treasure Data
18
25
  - Zeotap
19
26
 
@@ -23,8 +30,6 @@ previously.
23
30
  - Blueshift
24
31
  - Button
25
32
  - Clinch
26
- - Commission Junction
27
- - Criteo
28
33
  - HubSpot (BETA)
29
34
  - Magellan AI
30
35
  - Merkle
@@ -33,7 +38,6 @@ previously.
33
38
  - Nextdoor - CAPI
34
39
  - Perion
35
40
  - Podscribe
36
- - Rakuten Conversions (BETA)
37
41
  - Ringier Axel Springer Poland (BETA)
38
42
  - Reddit Ads
39
43
  - Ringier Axel Springer Poland
@@ -67,7 +71,6 @@ previously.
67
71
 
68
72
  ## 2025-01
69
73
  - Google BigQuery
70
- - Iterable (BETA)
71
74
 
72
75
  ## 2024-11
73
76
  - Convert (BETA)
@@ -126,14 +129,19 @@ previously.
126
129
 
127
130
  | Kit Name | Date | Latest Note |
128
131
  |----------|------|-------------|
132
+ | Adjust (BETA) | 2025-09 | Version: 0.1.0 Beta Version Adjust initial release |
133
+ | Criteo | 2025-09 | Version: 2.1.0 Removed id node and added alternate_ids array in playbook.yaml |
134
+ | Iterable | 2025-09 | Version: 1.0.0 Stable Release |
135
+ | Linkedin Ads - Conversions | 2025-09 | Version: 1.0.0 Stable Release |
136
+ | Rakuten Conversions (BETA) | 2025-09 | Version: 0.2.0 Adding namelist field to order_canceled and order_completed events |
129
137
  | Adobe Experience Platform - Interact | 2025-08 | Version: 1.0.0 Stable Release |
130
138
  | Amazon DSP CAPI | 2025-08 | Version: 1.0.0 Stable Release |
131
139
  | Amperity | 2025-08 | Version: 1.0.0 Stable Release |
140
+ | Commission Junction | 2025-08 | Version: 1.4.0 Removed sid and customerStatus mappings Changed actionTrackerId scope from eventSpecific to global |
132
141
  | Meta CAPI | 2025-08 | Version: 1.7.0 Updated event_time key mapping |
133
142
  | Google Analytics 4 (Collect) | 2025-08 | Version: 1.0.0 Stable Release |
134
143
  | CM360 - Floodlights | 2025-08 | Version: 1.0.0 Stable Release |
135
144
  | Kochava | 2025-08 | Version: 1.0.0 Stable Release |
136
- | Linkedin Ads - Conversions (BETA) | 2025-08 | Version: 0.3.0 Replaced enrichment with Lua mapping, defaulted currency to 'USD'. |
137
145
  | Treasure Data | 2025-08 | Version: 1.0.0 Stable Release |
138
146
  | Zeotap | 2025-08 | Version: 1.0.0 Stable Release |
139
147
  | ActionIQ | 2025-07 | Version: 1.3.0 Updated Lua timestamp fallback logic to use input.timestamp |
@@ -141,8 +149,6 @@ previously.
141
149
  | Blueshift | 2025-07 | Version: 1.1.0 Replaced context.traits with traits. |
142
150
  | Button | 2025-07 | Version: 1.1.0 Replaced context.traits with traits. |
143
151
  | Clinch | 2025-07 | Version: 1.3.0 Replaced context.traits with traits. |
144
- | Commission Junction | 2025-07 | Version: 1.3.0 Replaced originalTimestamp with timestamp |
145
- | Criteo | 2025-07 | Endpoint updated to `https://sslwidget.criteo.com/s2s/v2/event` |
146
152
  | HubSpot (BETA) | 2025-07 | Version: 0.4.0 Replaced context.traits with traits. |
147
153
  | Magellan AI | 2025-07 | Version: 1.2.0 Replaced context.traits with traits. |
148
154
  | Merkle | 2025-07 | Version: 1.3.0 Replaced context.traits with traits. |
@@ -151,7 +157,6 @@ previously.
151
157
  | Nextdoor - CAPI | 2025-07 | Version: 1.3.0 Replaced context.traits with traits. |
152
158
  | Perion | 2025-07 | Version: 1.0.0 Stable Release |
153
159
  | Podscribe | 2025-07 | Version: 1.1.0 Replaced context.traits with traits. |
154
- | Rakuten Conversions (BETA) | 2025-07 | Version: 0.1.0 Beta Version Rakuten Conversions initial release |
155
160
  | Ringier Axel Springer Poland (BETA) | 2025-07 | Version: 0.2.0 Replaced context.traits with traits. |
156
161
  | Reddit Ads | 2025-07 | Version: 1.5.0 Replaced context.traits with traits. |
157
162
  | Ringier Axel Springer Poland | 2025-07 | Version: 1.1.0 Replaced context.traits with traits. |
@@ -173,7 +178,6 @@ previously.
173
178
  | AWIN | 2025-02 | Version: 1.0.0 Stable release |
174
179
  | Moloco Commerce Media | 2025-02 | Version: 1.0.0 New Event: session_started -> Mapped to Moloco's LAND event (web) New Event: application_open -> Mapped to Moloco's LAND event (mobile) Updated Event: screen -> Mapped to Moloco's PAGE_VIEW or HOME event based on input.name and/or input.properties.name (mobile) Updated Event: order_completed -> Added mapping for Moloco's shipping_charge field using MetaRouter's properties.shipping (web & mobile) Stable release |
175
180
  | Google BigQuery | 2025-01 | Version: 1.1.0 Adding support for table overrides |
176
- | Iterable (BETA) | 2025-01 | Version: 0.4.0 Add user agent and ip to default and order_completed stanzas Remove redundant properties-dataFields mapping from identify events |
177
181
  | Convert (BETA) | 2024-11 | Version: 0.3.0 Added new deduplication parameter for all events, `tid` |
178
182
  | Innervate | 2024-11 | Version: 1.0.0 Updated friendly name Stable release |
179
183
  | Acuity Ads | 2024-10 | Version: 1.1.0 Added header `Accept-Encoding: application/json` |
package/index.js CHANGED
@@ -94,6 +94,12 @@ exports['acuity-ads'] = {
94
94
  metadata: require('./.dist/acuity-ads/metadata.json')
95
95
  }
96
96
 
97
+ exports['adjust'] = {
98
+ endpointSchema: require('./.dist/adjust/connection.json'),
99
+ playbook: require('./.dist/adjust/playbook.json'),
100
+ metadata: require('./.dist/adjust/metadata.json')
101
+ }
102
+
97
103
  exports['adobe-experience-platform-interact'] = {
98
104
  endpointSchema: require('./.dist/adobe-experience-platform-interact/connection.json'),
99
105
  playbook: require('./.dist/adobe-experience-platform-interact/playbook.json'),
@@ -615,6 +621,11 @@ exports.etags = {
615
621
  playbook: require('./.dist/acuity-ads/playbook.etag.json'),
616
622
  kit: require('./.dist/acuity-ads/kit.etag.json')
617
623
  },
624
+ 'adjust': {
625
+ endpointSchema: require('./.dist/adjust/connection.etag.json'),
626
+ playbook: require('./.dist/adjust/playbook.etag.json'),
627
+ kit: require('./.dist/adjust/kit.etag.json')
628
+ },
618
629
  'adobe-experience-platform-interact': {
619
630
  endpointSchema: require('./.dist/adobe-experience-platform-interact/connection.etag.json'),
620
631
  playbook: require('./.dist/adobe-experience-platform-interact/playbook.etag.json'),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metarouter/ajs-starter-kit",
3
- "version": "1.0.139",
3
+ "version": "1.0.141",
4
4
  "description": "MetaRouter analytics.js starter kit",
5
5
  "main": "index.js",
6
6
  "scripts": {