@segment/action-destinations 3.494.0 → 3.494.1-staging-f466f04ea.0

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 (226) hide show
  1. package/dist/destinations/acoustic/generated-types.d.ts +0 -1
  2. package/dist/destinations/acoustic/index.js +0 -10
  3. package/dist/destinations/acoustic/index.js.map +1 -1
  4. package/dist/destinations/braze/ecommerce/constants.d.ts +1 -0
  5. package/dist/destinations/braze/ecommerce/constants.js +1 -0
  6. package/dist/destinations/braze/ecommerce/constants.js.map +1 -1
  7. package/dist/destinations/braze/ecommerce/fields.d.ts +6 -0
  8. package/dist/destinations/braze/ecommerce/fields.js +173 -2
  9. package/dist/destinations/braze/ecommerce/fields.js.map +1 -1
  10. package/dist/destinations/braze/ecommerce/functions.js +35 -8
  11. package/dist/destinations/braze/ecommerce/functions.js.map +1 -1
  12. package/dist/destinations/braze/ecommerce/generated-types.d.ts +4 -0
  13. package/dist/destinations/braze/ecommerce/types.d.ts +25 -3
  14. package/dist/destinations/braze/ecommerceSingleProduct/generated-types.d.ts +5 -0
  15. package/dist/destinations/braze/ecommerceSingleProduct/index.js +1 -0
  16. package/dist/destinations/braze/ecommerceSingleProduct/index.js.map +1 -1
  17. package/dist/destinations/braze/index.js +48 -2
  18. package/dist/destinations/braze/index.js.map +1 -1
  19. package/dist/destinations/braze/mergeUsers/functions.d.ts +12 -0
  20. package/dist/destinations/braze/mergeUsers/functions.js +142 -0
  21. package/dist/destinations/braze/mergeUsers/functions.js.map +1 -0
  22. package/dist/destinations/braze/mergeUsers/generated-types.d.ts +17 -0
  23. package/dist/destinations/braze/mergeUsers/generated-types.js +3 -0
  24. package/dist/destinations/braze/mergeUsers/generated-types.js.map +1 -0
  25. package/dist/destinations/braze/mergeUsers/index.d.ts +5 -0
  26. package/dist/destinations/braze/mergeUsers/index.js +216 -0
  27. package/dist/destinations/braze/mergeUsers/index.js.map +1 -0
  28. package/dist/destinations/braze/mergeUsers/types.d.ts +27 -0
  29. package/dist/destinations/braze/mergeUsers/types.js +3 -0
  30. package/dist/destinations/braze/mergeUsers/types.js.map +1 -0
  31. package/dist/destinations/braze/userAlias.d.ts +1 -2
  32. package/dist/destinations/customerio/createUpdateObject/index.js +33 -11
  33. package/dist/destinations/customerio/createUpdateObject/index.js.map +1 -1
  34. package/dist/destinations/customerio/types.d.ts +9 -0
  35. package/dist/destinations/customerio/types.js +3 -0
  36. package/dist/destinations/customerio/types.js.map +1 -0
  37. package/dist/destinations/customerio/utils.d.ts +4 -1
  38. package/dist/destinations/customerio/utils.js +52 -7
  39. package/dist/destinations/customerio/utils.js.map +1 -1
  40. package/dist/destinations/display-video-360/index.js +7 -0
  41. package/dist/destinations/display-video-360/index.js.map +1 -1
  42. package/dist/destinations/facebook-conversions-api/addToCart/generated-types.d.ts +1 -0
  43. package/dist/destinations/facebook-conversions-api/addToCart2/generated-types.d.ts +1 -0
  44. package/dist/destinations/facebook-conversions-api/custom/generated-types.d.ts +9 -0
  45. package/dist/destinations/facebook-conversions-api/custom2/generated-types.d.ts +9 -0
  46. package/dist/destinations/facebook-conversions-api/initiateCheckout/generated-types.d.ts +1 -0
  47. package/dist/destinations/facebook-conversions-api/initiateCheckout2/generated-types.d.ts +1 -0
  48. package/dist/destinations/facebook-conversions-api/pageView/generated-types.d.ts +1 -0
  49. package/dist/destinations/facebook-conversions-api/pageView2/generated-types.d.ts +1 -0
  50. package/dist/destinations/facebook-conversions-api/purchase/generated-types.d.ts +11 -0
  51. package/dist/destinations/facebook-conversions-api/purchase2/generated-types.d.ts +11 -0
  52. package/dist/destinations/facebook-conversions-api/search/generated-types.d.ts +1 -0
  53. package/dist/destinations/facebook-conversions-api/search2/generated-types.d.ts +1 -0
  54. package/dist/destinations/facebook-conversions-api/shared/constants.d.ts +1 -0
  55. package/dist/destinations/facebook-conversions-api/shared/constants.js +2 -1
  56. package/dist/destinations/facebook-conversions-api/shared/constants.js.map +1 -1
  57. package/dist/destinations/facebook-conversions-api/shared/fields.d.ts +3 -0
  58. package/dist/destinations/facebook-conversions-api/shared/fields.js +109 -2
  59. package/dist/destinations/facebook-conversions-api/shared/fields.js.map +1 -1
  60. package/dist/destinations/facebook-conversions-api/shared/functions.d.ts +5 -4
  61. package/dist/destinations/facebook-conversions-api/shared/functions.js +90 -16
  62. package/dist/destinations/facebook-conversions-api/shared/functions.js.map +1 -1
  63. package/dist/destinations/facebook-conversions-api/shared/types.d.ts +23 -1
  64. package/dist/destinations/facebook-conversions-api/viewContent/generated-types.d.ts +1 -0
  65. package/dist/destinations/facebook-conversions-api/viewContent2/generated-types.d.ts +1 -0
  66. package/dist/destinations/facebook-custom-audiences/presets.js +7 -0
  67. package/dist/destinations/facebook-custom-audiences/presets.js.map +1 -1
  68. package/dist/destinations/facebook-custom-audiences/sync/functions.js +5 -5
  69. package/dist/destinations/facebook-custom-audiences/sync/functions.js.map +1 -1
  70. package/dist/destinations/first-party-dv360/properties.js +30 -6
  71. package/dist/destinations/first-party-dv360/properties.js.map +1 -1
  72. package/dist/destinations/google-enhanced-conversions/functions.d.ts +12 -7
  73. package/dist/destinations/google-enhanced-conversions/functions.js +163 -103
  74. package/dist/destinations/google-enhanced-conversions/functions.js.map +1 -1
  75. package/dist/destinations/google-enhanced-conversions/index.js +22 -20
  76. package/dist/destinations/google-enhanced-conversions/index.js.map +1 -1
  77. package/dist/destinations/google-enhanced-conversions/types.d.ts +20 -0
  78. package/dist/destinations/google-enhanced-conversions/userList/index.js +20 -24
  79. package/dist/destinations/google-enhanced-conversions/userList/index.js.map +1 -1
  80. package/dist/destinations/hubspot/index.js +3 -2
  81. package/dist/destinations/hubspot/index.js.map +1 -1
  82. package/dist/destinations/hubspot/versioning-info.d.ts +1 -0
  83. package/dist/destinations/hubspot/versioning-info.js +2 -1
  84. package/dist/destinations/hubspot/versioning-info.js.map +1 -1
  85. package/dist/destinations/intercom/identifyContact/index.js +2 -2
  86. package/dist/destinations/intercom/identifyContact/index.js.map +1 -1
  87. package/dist/destinations/iterable/index.js +3 -1
  88. package/dist/destinations/iterable/index.js.map +1 -1
  89. package/dist/destinations/iterable/updateSubscriptions/constants.d.ts +3 -0
  90. package/dist/destinations/iterable/updateSubscriptions/constants.js +7 -0
  91. package/dist/destinations/iterable/updateSubscriptions/constants.js.map +1 -0
  92. package/dist/destinations/iterable/updateSubscriptions/dynamic-fields.d.ts +9 -0
  93. package/dist/destinations/iterable/updateSubscriptions/dynamic-fields.js +60 -0
  94. package/dist/destinations/iterable/updateSubscriptions/dynamic-fields.js.map +1 -0
  95. package/dist/destinations/iterable/updateSubscriptions/functions.d.ts +9 -0
  96. package/dist/destinations/iterable/updateSubscriptions/functions.js +168 -0
  97. package/dist/destinations/iterable/updateSubscriptions/functions.js.map +1 -0
  98. package/dist/destinations/iterable/updateSubscriptions/generated-types.d.ts +15 -0
  99. package/dist/destinations/iterable/updateSubscriptions/generated-types.js +3 -0
  100. package/dist/destinations/iterable/updateSubscriptions/generated-types.js.map +1 -0
  101. package/dist/destinations/iterable/updateSubscriptions/index.d.ts +5 -0
  102. package/dist/destinations/iterable/updateSubscriptions/index.js +129 -0
  103. package/dist/destinations/iterable/updateSubscriptions/index.js.map +1 -0
  104. package/dist/destinations/iterable/updateSubscriptions/types.d.ts +39 -0
  105. package/dist/destinations/iterable/updateSubscriptions/types.js +3 -0
  106. package/dist/destinations/iterable/updateSubscriptions/types.js.map +1 -0
  107. package/dist/destinations/iterable/updateUser/generated-types.d.ts +1 -0
  108. package/dist/destinations/iterable/updateUser/index.js +35 -5
  109. package/dist/destinations/iterable/updateUser/index.js.map +1 -1
  110. package/dist/destinations/iterable/utils.d.ts +5 -0
  111. package/dist/destinations/iterable/utils.js +9 -1
  112. package/dist/destinations/iterable/utils.js.map +1 -1
  113. package/dist/destinations/linkedin-conversions/api/index.js +14 -2
  114. package/dist/destinations/linkedin-conversions/api/index.js.map +1 -1
  115. package/dist/destinations/linkedin-conversions/streamConversion/generated-types.d.ts +2 -0
  116. package/dist/destinations/linkedin-conversions/streamConversion/index.js +19 -6
  117. package/dist/destinations/linkedin-conversions/streamConversion/index.js.map +1 -1
  118. package/dist/destinations/mixpanel/__test__/multistatus.test.js +0 -1
  119. package/dist/destinations/mixpanel/__test__/multistatus.test.js.map +1 -1
  120. package/dist/destinations/mixpanel/generated-types.d.ts +0 -1
  121. package/dist/destinations/mixpanel/incrementProperties/__test__/index.test.js +0 -6
  122. package/dist/destinations/mixpanel/incrementProperties/__test__/index.test.js.map +1 -1
  123. package/dist/destinations/mixpanel/index.js +0 -7
  124. package/dist/destinations/mixpanel/index.js.map +1 -1
  125. package/dist/destinations/mixpanel/trackEvent/index.js +1 -1
  126. package/dist/destinations/mixpanel/trackEvent/index.js.map +1 -1
  127. package/dist/destinations/mixpanel/trackPurchase/index.js +1 -1
  128. package/dist/destinations/mixpanel/trackPurchase/index.js.map +1 -1
  129. package/dist/destinations/ms-bing-ads-audiences/index.js +19 -5
  130. package/dist/destinations/ms-bing-ads-audiences/index.js.map +1 -1
  131. package/dist/destinations/ms-bing-ads-audiences/syncAudiences/index.js +68 -5
  132. package/dist/destinations/ms-bing-ads-audiences/syncAudiences/index.js.map +1 -1
  133. package/dist/destinations/ms-bing-ads-audiences/utils.d.ts +2 -0
  134. package/dist/destinations/ms-bing-ads-audiences/utils.js +43 -1
  135. package/dist/destinations/ms-bing-ads-audiences/utils.js.map +1 -1
  136. package/dist/destinations/pinterest-conversions/constants.d.ts +13 -0
  137. package/dist/destinations/pinterest-conversions/constants.js +14 -1
  138. package/dist/destinations/pinterest-conversions/constants.js.map +1 -1
  139. package/dist/destinations/pinterest-conversions/index.js +88 -8
  140. package/dist/destinations/pinterest-conversions/index.js.map +1 -1
  141. package/dist/destinations/pinterest-conversions/pinterest-capi-custom-data.d.ts +4 -2
  142. package/dist/destinations/pinterest-conversions/pinterest-capi-custom-data.js +185 -8
  143. package/dist/destinations/pinterest-conversions/pinterest-capi-custom-data.js.map +1 -1
  144. package/dist/destinations/pinterest-conversions/reportConversionEvent/generated-types.d.ts +70 -1
  145. package/dist/destinations/pinterest-conversions/reportConversionEvent/index.js +355 -43
  146. package/dist/destinations/pinterest-conversions/reportConversionEvent/index.js.map +1 -1
  147. package/dist/destinations/pinterest-conversions/types.d.ts +117 -0
  148. package/dist/destinations/reddit-conversions-api/customEvent/generated-types.d.ts +5 -0
  149. package/dist/destinations/reddit-conversions-api/customEvent/index.js +8 -5
  150. package/dist/destinations/reddit-conversions-api/customEvent/index.js.map +1 -1
  151. package/dist/destinations/reddit-conversions-api/fields.d.ts +3 -0
  152. package/dist/destinations/reddit-conversions-api/fields.js +42 -2
  153. package/dist/destinations/reddit-conversions-api/fields.js.map +1 -1
  154. package/dist/destinations/reddit-conversions-api/index.js.map +1 -1
  155. package/dist/destinations/reddit-conversions-api/shared.d.ts +20 -0
  156. package/dist/destinations/reddit-conversions-api/shared.js +66 -0
  157. package/dist/destinations/reddit-conversions-api/shared.js.map +1 -0
  158. package/dist/destinations/reddit-conversions-api/standardEvent/generated-types.d.ts +5 -0
  159. package/dist/destinations/reddit-conversions-api/standardEvent/index.js +8 -5
  160. package/dist/destinations/reddit-conversions-api/standardEvent/index.js.map +1 -1
  161. package/dist/destinations/reddit-conversions-api/types.d.ts +50 -0
  162. package/dist/destinations/reddit-conversions-api/utils.d.ts +6 -2
  163. package/dist/destinations/reddit-conversions-api/utils.js +12 -137
  164. package/dist/destinations/reddit-conversions-api/utils.js.map +1 -1
  165. package/dist/destinations/reddit-conversions-api/v2.d.ts +5 -0
  166. package/dist/destinations/reddit-conversions-api/v2.js +87 -0
  167. package/dist/destinations/reddit-conversions-api/v2.js.map +1 -0
  168. package/dist/destinations/reddit-conversions-api/v3.d.ts +6 -0
  169. package/dist/destinations/reddit-conversions-api/v3.js +118 -0
  170. package/dist/destinations/reddit-conversions-api/v3.js.map +1 -0
  171. package/dist/destinations/reddit-conversions-api/versioning-info.d.ts +1 -0
  172. package/dist/destinations/reddit-conversions-api/versioning-info.js +2 -1
  173. package/dist/destinations/reddit-conversions-api/versioning-info.js.map +1 -1
  174. package/dist/destinations/rokt-capi/send/functions.js +37 -16
  175. package/dist/destinations/rokt-capi/send/functions.js.map +1 -1
  176. package/dist/destinations/s3/constants.d.ts +1 -0
  177. package/dist/destinations/s3/constants.js +5 -0
  178. package/dist/destinations/s3/constants.js.map +1 -0
  179. package/dist/destinations/s3/syncToS3/fields.js +28 -0
  180. package/dist/destinations/s3/syncToS3/fields.js.map +1 -1
  181. package/dist/destinations/s3/syncToS3/functions.d.ts +5 -3
  182. package/dist/destinations/s3/syncToS3/functions.js +47 -9
  183. package/dist/destinations/s3/syncToS3/functions.js.map +1 -1
  184. package/dist/destinations/s3/syncToS3/generated-types.d.ts +4 -0
  185. package/dist/destinations/s3/syncToS3/index.js +4 -4
  186. package/dist/destinations/s3/syncToS3/index.js.map +1 -1
  187. package/dist/destinations/s3/syncToS3/types.d.ts +2 -0
  188. package/dist/destinations/salesforce-marketing-cloud/_tests_/asyncDataExtension.async.test.d.ts +1 -0
  189. package/dist/destinations/salesforce-marketing-cloud/_tests_/asyncDataExtension.async.test.js +656 -0
  190. package/dist/destinations/salesforce-marketing-cloud/_tests_/asyncDataExtension.async.test.js.map +1 -0
  191. package/dist/destinations/salesforce-marketing-cloud/_tests_/getCategoryList.test.js +88 -0
  192. package/dist/destinations/salesforce-marketing-cloud/_tests_/getCategoryList.test.js.map +1 -1
  193. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/fields.d.ts +140 -0
  194. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/fields.js +69 -0
  195. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/fields.js.map +1 -0
  196. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/generated-types.d.ts +1 -0
  197. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/index.async.d.ts +5 -0
  198. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/index.async.js +145 -0
  199. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/index.async.js.map +1 -0
  200. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/index.js +5 -55
  201. package/dist/destinations/salesforce-marketing-cloud/asyncDataExtension/index.js.map +1 -1
  202. package/dist/destinations/salesforce-marketing-cloud/index.js +6 -2
  203. package/dist/destinations/salesforce-marketing-cloud/index.js.map +1 -1
  204. package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.d.ts +13 -3
  205. package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.js +11 -6
  206. package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.js.map +1 -1
  207. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js +3 -3
  208. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js.map +1 -1
  209. package/dist/destinations/salesforce-marketing-cloud/versioning-info.d.ts +1 -0
  210. package/dist/destinations/salesforce-marketing-cloud/versioning-info.js +2 -1
  211. package/dist/destinations/salesforce-marketing-cloud/versioning-info.js.map +1 -1
  212. package/dist/destinations/sendgrid/sendEmail/fields.js +1 -1
  213. package/dist/destinations/sendgrid/sendEmail/fields.js.map +1 -1
  214. package/dist/destinations/tiktok-audiences/index.js +7 -0
  215. package/dist/destinations/tiktok-audiences/index.js.map +1 -1
  216. package/dist/destinations/webhook/send/index.js +7 -0
  217. package/dist/destinations/webhook/send/index.js.map +1 -1
  218. package/dist/destinations/webhook/ssrf-utils.d.ts +1 -0
  219. package/dist/destinations/webhook/ssrf-utils.js +74 -0
  220. package/dist/destinations/webhook/ssrf-utils.js.map +1 -0
  221. package/dist/destinations/webhook-extensible/send/index.js +7 -0
  222. package/dist/destinations/webhook-extensible/send/index.js.map +1 -1
  223. package/dist/destinations/webhook-extensible/ssrf-utils.d.ts +1 -0
  224. package/dist/destinations/webhook-extensible/ssrf-utils.js +74 -0
  225. package/dist/destinations/webhook-extensible/ssrf-utils.js.map +1 -0
  226. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-custom-audiences/sync/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-custom-audiences/sync/functions.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,11 @@ exports.emails = {
24
24
  description: `A list of the user's emails. If not already hashed, the system will hash them before use.`,
25
25
  type: 'string',
26
26
  default: {
27
- '@path': '$.context.traits.emails'
27
+ '@if': {
28
+ exists: { '@path': '$.context.traits.email' },
29
+ then: { '@path': '$.context.traits.email' },
30
+ else: { '@path': '$.traits.email' }
31
+ }
28
32
  },
29
33
  category: 'hashedPII'
30
34
  };
@@ -33,7 +37,11 @@ exports.phoneNumbers = {
33
37
  description: `A list of the user's phone numbers. If not already hashed, the system will hash them before use.`,
34
38
  type: 'string',
35
39
  default: {
36
- '@path': '$.context.traits.phoneNumbers'
40
+ '@if': {
41
+ exists: { '@path': '$.traits.phone' },
42
+ then: { '@path': '$.traits.phone' },
43
+ else: { '@path': '$.properties.phone' }
44
+ }
37
45
  },
38
46
  category: 'hashedPII'
39
47
  };
@@ -42,7 +50,11 @@ exports.zipCodes = {
42
50
  description: `A list of the user's zip codes.`,
43
51
  type: 'string',
44
52
  default: {
45
- '@path': '$.context.traits.zipCodes'
53
+ '@if': {
54
+ exists: { '@path': '$.traits.zipCodes' },
55
+ then: { '@path': '$.traits.zipCodes' },
56
+ else: { '@path': '$.properties.zipCodes' }
57
+ }
46
58
  }
47
59
  };
48
60
  exports.firstName = {
@@ -50,7 +62,11 @@ exports.firstName = {
50
62
  description: `The user's first name. If not already hashed, the system will hash it before use.`,
51
63
  type: 'string',
52
64
  default: {
53
- '@path': '$.context.traits.firstName'
65
+ '@if': {
66
+ exists: { '@path': '$.traits.firstName' },
67
+ then: { '@path': '$.traits.firstName' },
68
+ else: { '@path': '$.properties.firstName' }
69
+ }
54
70
  },
55
71
  category: 'hashedPII'
56
72
  };
@@ -59,7 +75,11 @@ exports.lastName = {
59
75
  description: `The user's last name. If not already hashed, the system will hash it before use.`,
60
76
  type: 'string',
61
77
  default: {
62
- '@path': '$.context.traits.lastName'
78
+ '@if': {
79
+ exists: { '@path': '$.traits.lastName' },
80
+ then: { '@path': '$.traits.lastName' },
81
+ else: { '@path': '$.properties.lastName' }
82
+ }
63
83
  },
64
84
  category: 'hashedPII'
65
85
  };
@@ -68,7 +88,11 @@ exports.countryCode = {
68
88
  description: `The country code of the user.`,
69
89
  type: 'string',
70
90
  default: {
71
- '@path': '$.context.traits..countryCode'
91
+ '@if': {
92
+ exists: { '@path': '$.traits.countryCode' },
93
+ then: { '@path': '$.traits.countryCode' },
94
+ else: { '@path': '$.properties.countryCode' }
95
+ }
72
96
  }
73
97
  };
74
98
  exports.mobileDeviceIds = {
@@ -1 +1 @@
1
- {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/first-party-dv360/properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,yCAAyC;KACnD;IACD,aAAa,EAAE,IAAI;CACpB,CAAA;AAEY,QAAA,aAAa,GAAe;IACvC,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,uDAAuD;IACpE,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,mDAAmD;KAC7D;IACD,aAAa,EAAE,IAAI;CACpB,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,QAAQ;IACf,WAAW,EAAE,2FAA2F;IACxG,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,yBAAyB;KACnC;IACD,QAAQ,EAAE,WAAW;CACtB,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,kGAAkG;IAC/G,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,+BAA+B;KACzC;IACD,QAAQ,EAAE,WAAW;CACtB,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,iCAAiC;IAC9C,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,2BAA2B;KACrC;CACF,CAAA;AAEY,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,mFAAmF;IAChG,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,4BAA4B;KACtC;IACD,QAAQ,EAAE,WAAW;CACtB,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,kFAAkF;IAC/F,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,2BAA2B;KACrC;IACD,QAAQ,EAAE,WAAW;CACtB,CAAA;AAEY,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,+BAA+B;KACzC;CACF,CAAA;AAEY,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EAAE,oIAAoI;IACjJ,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,kCAAkC;KAC5C;CACF,CAAA;AAEY,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,8BAA8B;IAC3C,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,IAAI;CACf,CAAA;AAGY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,IAAI;CACf,CAAA"}
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/first-party-dv360/properties.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ConversionCustomVariable, PartialErrorResponse, QueryResponse, CustomVariableInterface, CreateAudienceInput, UserListResponse, KeyValuePairList } from './types';
2
- import { ModifiedResponse, RequestClient, DynamicFieldResponse, Features, MultiStatusResponse } from '@segment/actions-core';
3
- import { StatsContext } from '@segment/actions-core/destination-kit';
1
+ import { ConversionCustomVariable, PartialErrorResponse, QueryResponse, CustomVariableInterface, CreateAudienceInput, UserListResponse, KeyValuePairList, DataManagerUserList, PartnerLinkResponse } from './types';
2
+ import { ModifiedResponse, RequestClient, DynamicFieldResponse, Features, MultiStatusResponse, AudienceMembership } from '@segment/actions-core';
3
+ import { StatsContext, Personas } from '@segment/actions-core/destination-kit';
4
4
  import { HTTPError } from '@segment/actions-core';
5
5
  import type { Payload as UserListPayload } from './userList/generated-types';
6
6
  import type { Payload as ClickConversionPayload } from './uploadClickConversion/generated-types';
@@ -38,6 +38,11 @@ export declare class GoogleAdsError extends HTTPError {
38
38
  }
39
39
  export declare function formatCustomVariables(customVariables: object, customVariableIdsResults: Array<ConversionCustomVariable>): CustomVariableInterface[];
40
40
  export declare const hash: (value: string | undefined) => string | undefined;
41
+ export declare const DATA_MANAGER_BASE_URL = "https://datamanager.googleapis.com/v1";
42
+ export declare function exchangeForAccessToken(request: RequestClient, refreshToken: string): Promise<string>;
43
+ export declare function createDataManagerPartnerLink(request: RequestClient, customerId: string, customerAccessToken: string, loginCustomerId?: string): Promise<PartnerLinkResponse>;
44
+ export declare function createDataManagerUserList(request: RequestClient, customerId: string, listName: string, uploadKeyType: string, segmentAccessToken: string, appId?: string): Promise<DataManagerUserList>;
45
+ export declare function getDataManagerUserList(request: RequestClient, customerId: string, userListId: string, segmentAccessToken: string): Promise<DataManagerUserList>;
41
46
  export declare function getCustomVariables(customerId: string, auth: any, request: RequestClient, features: Features | undefined, statsContext: StatsContext | undefined): Promise<ModifiedResponse<QueryResponse[]>>;
42
47
  export declare function memoizedGetCustomVariables(): (customerId: string, auth: any, request: RequestClient, features: Features | undefined, statsContext: StatsContext | undefined) => Promise<ModifiedResponse<QueryResponse[]> | undefined>;
43
48
  export declare function getConversionActionId(customerId: string | undefined, auth: any, request: RequestClient, features: Features | undefined, statsContext: StatsContext | undefined): Promise<ModifiedResponse<QueryResponse[]>>;
@@ -63,12 +68,12 @@ export declare function getListIds(request: RequestClient, settings: CreateAudie
63
68
  code: string;
64
69
  };
65
70
  }>;
66
- export declare function createGoogleAudience(request: RequestClient, input: CreateAudienceInput, auth: CreateAudienceInput['settings']['oauth'], features?: Features | undefined, statsContext?: StatsContext): Promise<string>;
67
- export declare function getGoogleAudience(request: RequestClient, settings: CreateAudienceInput['settings'], externalId: string, auth: CreateAudienceInput['settings']['oauth'], features?: Features | undefined, statsContext?: StatsContext): Promise<UserListResponse>;
71
+ export declare function createGoogleAudience(request: RequestClient, input: CreateAudienceInput, segmentAccessToken: string, statsContext?: StatsContext): Promise<string>;
72
+ export declare function getGoogleAudience(request: RequestClient, settings: CreateAudienceInput['settings'], externalId: string, segmentAccessToken: string, statsContext?: StatsContext): Promise<UserListResponse>;
68
73
  export declare function formatToE164(phoneNumber: string, countryCode: string): string;
69
74
  export declare const formatPhone: (phone: string, countryCode?: string, features?: Features, statsContext?: StatsContext) => string;
70
75
  export declare const validateAndFormatToE164: (phoneNumber: string, countryCode?: string, statsContext?: StatsContext) => string;
71
- export declare const handleUpdate: (request: RequestClient, settings: CreateAudienceInput["settings"], audienceSettings: CreateAudienceInput["audienceSettings"], payloads: UserListPayload[], hookListId: string, hookListType: string, syncMode?: string, features?: Features | undefined, statsContext?: StatsContext) => Promise<unknown>;
76
+ export declare const handleUpdate: (request: RequestClient, settings: CreateAudienceInput["settings"], audienceSettings: CreateAudienceInput["audienceSettings"], payloads: UserListPayload[], hookListId: string, hookListType: string, syncMode?: string, features?: Features | undefined, statsContext?: StatsContext, audienceMembership?: AudienceMembership, personasContext?: Personas) => Promise<unknown>;
72
77
  export declare const verifyCustomerId: (customerId: string | undefined) => string;
73
78
  export declare const handlePartialFailureResponse: (partialFailureError: any, validPayloadIndicesBitmap: number[], multiStatusResponse: MultiStatusResponse, userIdentifiers: any[], failedPayloadIndices: Set<number>) => void;
74
79
  export declare const createIdentifierExtractors: (features?: Features) => {
@@ -97,7 +102,7 @@ export declare const createIdentifierExtractors: (features?: Features) => {
97
102
  hashedPhoneNumber?: undefined;
98
103
  })[] | null;
99
104
  };
100
- export declare const processBatchPayload: (request: RequestClient, settings: CreateAudienceInput["settings"], audienceSettings: CreateAudienceInput["audienceSettings"], payloads: UserListPayload[], hookListId: string, hookListType: string, syncMode?: string, features?: Features | undefined, statsContext?: StatsContext) => Promise<MultiStatusResponse>;
105
+ export declare const processBatchPayload: (request: RequestClient, settings: CreateAudienceInput["settings"], audienceSettings: CreateAudienceInput["audienceSettings"], payloads: UserListPayload[], hookListId: string, hookListType: string, syncMode?: string, features?: Features | undefined, statsContext?: StatsContext, audienceMemberships?: AudienceMembership[], personasContext?: Personas) => Promise<MultiStatusResponse>;
101
106
  export declare const handleJobExecutionError: (executedJob: any, validPayloadIndicesBitmap: number[], multiStatusResponse: MultiStatusResponse, sentBody: string, failedPayloadIndices: Set<number>) => void;
102
107
  export declare function getSessionAttributesKeyValuePairs(payload: ClickConversionPayload | ClickConversionPayload2): {
103
108
  sessionAttributesKeyValuePairs: {
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleJobExecutionError = exports.processBatchPayload = exports.createIdentifierExtractors = exports.handlePartialFailureResponse = exports.verifyCustomerId = exports.handleUpdate = exports.validateAndFormatToE164 = exports.formatPhone = exports.commonEmailValidation = exports.isHashedInformation = exports.hash = exports.GoogleAdsError = exports.FLAGON_NAME_PHONE_VALIDATION_CHECK = exports.FLAGON_NAME = exports.CANARY_API_VERSION = exports.API_VERSION = void 0;
3
+ exports.handleJobExecutionError = exports.processBatchPayload = exports.createIdentifierExtractors = exports.handlePartialFailureResponse = exports.verifyCustomerId = exports.handleUpdate = exports.validateAndFormatToE164 = exports.formatPhone = exports.commonEmailValidation = exports.isHashedInformation = exports.DATA_MANAGER_BASE_URL = exports.hash = exports.GoogleAdsError = exports.FLAGON_NAME_PHONE_VALIDATION_CHECK = exports.FLAGON_NAME = exports.CANARY_API_VERSION = exports.API_VERSION = void 0;
4
4
  exports.formatCustomVariables = formatCustomVariables;
5
+ exports.exchangeForAccessToken = exchangeForAccessToken;
6
+ exports.createDataManagerPartnerLink = createDataManagerPartnerLink;
7
+ exports.createDataManagerUserList = createDataManagerUserList;
8
+ exports.getDataManagerUserList = getDataManagerUserList;
5
9
  exports.getCustomVariables = getCustomVariables;
6
10
  exports.memoizedGetCustomVariables = memoizedGetCustomVariables;
7
11
  exports.getConversionActionId = getConversionActionId;
@@ -58,6 +62,76 @@ const hash = (value) => {
58
62
  return hash.digest('hex');
59
63
  };
60
64
  exports.hash = hash;
65
+ exports.DATA_MANAGER_BASE_URL = 'https://datamanager.googleapis.com/v1';
66
+ const UPLOAD_KEY_TYPE_MAP = {
67
+ CONTACT_INFO: 'CONTACT_ID',
68
+ CRM_ID: 'USER_ID',
69
+ MOBILE_ADVERTISING_ID: 'MOBILE_ID'
70
+ };
71
+ async function exchangeForAccessToken(request, refreshToken) {
72
+ if (!process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID || !process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET) {
73
+ throw new actions_core_1.PayloadValidationError('OAuth client credentials (client ID / client secret) are not configured.');
74
+ }
75
+ const res = await request('https://www.googleapis.com/oauth2/v4/token', {
76
+ method: 'POST',
77
+ body: new URLSearchParams({
78
+ refresh_token: refreshToken,
79
+ client_id: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID,
80
+ client_secret: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET,
81
+ grant_type: 'refresh_token'
82
+ })
83
+ });
84
+ return res.data.access_token;
85
+ }
86
+ async function createDataManagerPartnerLink(request, customerId, customerAccessToken, loginCustomerId) {
87
+ const partnerAccountId = '1663649500';
88
+ if (!partnerAccountId) {
89
+ throw new actions_core_1.IntegrationError('GOOGLE_DATA_MANAGER_PARTNER_ACCOUNT_ID environment variable is not set.', 'MISSING_PARTNER_ACCOUNT_ID', 400);
90
+ }
91
+ const owningAccountId = loginCustomerId || customerId;
92
+ const url = `${exports.DATA_MANAGER_BASE_URL}/accountTypes/GOOGLE_ADS/accounts/${customerId}/partnerLinks`;
93
+ const response = await request(url, {
94
+ method: 'POST',
95
+ headers: {
96
+ authorization: `Bearer ${customerAccessToken}`,
97
+ 'login-account': `accountTypes/GOOGLE_ADS/accounts/${owningAccountId}`
98
+ },
99
+ json: {
100
+ owningAccount: { accountId: owningAccountId, accountType: 'GOOGLE_ADS' },
101
+ partnerAccount: { accountId: partnerAccountId, accountType: 'DATA_PARTNER' }
102
+ }
103
+ });
104
+ return response.data;
105
+ }
106
+ async function createDataManagerUserList(request, customerId, listName, uploadKeyType, segmentAccessToken, appId) {
107
+ const partnerAccountId = '1663649500';
108
+ const url = `${exports.DATA_MANAGER_BASE_URL}/accountTypes/GOOGLE_ADS/accounts/${customerId}/userLists`;
109
+ const response = await request(url, {
110
+ method: 'POST',
111
+ headers: {
112
+ authorization: `Bearer ${segmentAccessToken}`,
113
+ ...(partnerAccountId && { 'login-account': `accountTypes/DATA_PARTNER/accounts/${partnerAccountId}` })
114
+ },
115
+ json: {
116
+ displayName: listName,
117
+ uploadKeyType: UPLOAD_KEY_TYPE_MAP[uploadKeyType] ?? uploadKeyType,
118
+ ...(appId && { appId })
119
+ }
120
+ });
121
+ return response.data;
122
+ }
123
+ async function getDataManagerUserList(request, customerId, userListId, segmentAccessToken) {
124
+ const partnerAccountId = process.env.GOOGLE_DATA_MANAGER_PARTNER_ACCOUNT_ID;
125
+ const url = `${exports.DATA_MANAGER_BASE_URL}/accountTypes/GOOGLE_ADS/accounts/${customerId}/userLists/${userListId}`;
126
+ const response = await request(url, {
127
+ method: 'GET',
128
+ headers: {
129
+ authorization: `Bearer ${segmentAccessToken}`,
130
+ ...(partnerAccountId && { 'login-account': `accountTypes/DATA_PARTNER/accounts/${partnerAccountId}` })
131
+ }
132
+ });
133
+ return response.data;
134
+ }
61
135
  async function getCustomVariables(customerId, auth, request, features, statsContext) {
62
136
  return await request(`https://googleads.googleapis.com/${getApiVersion(features, statsContext)}/customers/${customerId}/googleAds:searchStream`, {
63
137
  method: 'post',
@@ -113,7 +187,7 @@ async function getConversionActionDynamicData(request, settings, auth, features,
113
187
  nextPage: '',
114
188
  error: {
115
189
  message: err.response?.statusText ?? 'Unknown error',
116
- code: err.response?.status + '' ?? '500'
190
+ code: String(err.response?.status ?? 500)
117
191
  }
118
192
  };
119
193
  }
@@ -189,98 +263,38 @@ async function getListIds(request, settings, auth, features, statsContext) {
189
263
  nextPage: '',
190
264
  error: {
191
265
  message: err.response?.statusText ?? 'Unknown error',
192
- code: err.response?.status + '' ?? '500'
266
+ code: String(err.response?.status ?? 500)
193
267
  }
194
268
  };
195
269
  }
196
270
  }
197
- async function createGoogleAudience(request, input, auth, features, statsContext) {
271
+ async function createGoogleAudience(request, input, segmentAccessToken, statsContext) {
198
272
  if (input.audienceSettings.external_id_type === 'MOBILE_ADVERTISING_ID' && !input.audienceSettings.app_id) {
199
273
  throw new actions_core_1.PayloadValidationError('App ID is required when external ID type is mobile advertising ID.');
200
274
  }
201
- if (!auth?.refresh_token ||
202
- !process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID ||
203
- !process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET) {
204
- throw new actions_core_1.PayloadValidationError('Oauth credentials missing.');
205
- }
206
- const res = await request('https://www.googleapis.com/oauth2/v4/token', {
207
- method: 'POST',
208
- body: new URLSearchParams({
209
- refresh_token: auth.refresh_token,
210
- client_id: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID,
211
- client_secret: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET,
212
- grant_type: 'refresh_token'
213
- })
214
- });
215
- const accessToken = res.data.access_token;
216
275
  const statsClient = statsContext?.statsClient;
217
276
  const statsTags = statsContext?.tags;
218
- const json = {
219
- operations: [
220
- {
221
- create: {
222
- crmBasedUserList: {
223
- uploadKeyType: input.audienceSettings.external_id_type,
224
- appId: input.audienceSettings.app_id
225
- },
226
- membershipLifeSpan: '540',
227
- name: `${input.audienceName}`
228
- }
229
- }
230
- ]
231
- };
232
- const response = await request(`https://googleads.googleapis.com/${getApiVersion(features, statsContext)}/customers/${input.settings.customerId}/userLists:mutate`, {
233
- method: 'post',
234
- headers: {
235
- 'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`,
236
- authorization: `Bearer ${accessToken}`
237
- },
238
- json
239
- });
240
- const name = response.data.results[0].resourceName;
241
- if (!name) {
277
+ const userList = await createDataManagerUserList(request, input.settings.customerId, input.audienceName, input.audienceSettings.external_id_type ?? 'CONTACT_INFO', segmentAccessToken, input.audienceSettings.app_id);
278
+ if (!userList?.id) {
242
279
  statsClient?.incr('createAudience.error', 1, statsTags);
243
280
  throw new actions_core_1.IntegrationError('Failed to receive a created customer list id.', 'INVALID_RESPONSE', 400);
244
281
  }
245
282
  statsClient?.incr('createAudience.success', 1, statsTags);
246
- return name.split('/')[3];
283
+ return userList.id;
247
284
  }
248
- async function getGoogleAudience(request, settings, externalId, auth, features, statsContext) {
249
- if (!auth?.refresh_token ||
250
- !process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID ||
251
- !process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET) {
252
- throw new actions_core_1.PayloadValidationError('Oauth credentials missing.');
253
- }
254
- const res = await request('https://www.googleapis.com/oauth2/v4/token', {
255
- method: 'POST',
256
- body: new URLSearchParams({
257
- refresh_token: auth.refresh_token,
258
- client_id: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_ID,
259
- client_secret: process.env.GOOGLE_ENHANCED_CONVERSIONS_CLIENT_SECRET,
260
- grant_type: 'refresh_token'
261
- })
262
- });
263
- const accessToken = res.data.access_token;
285
+ async function getGoogleAudience(request, settings, externalId, segmentAccessToken, statsContext) {
264
286
  const statsClient = statsContext?.statsClient;
265
287
  const statsTags = statsContext?.tags;
266
- const json = {
267
- query: `SELECT user_list.id, user_list.name FROM user_list where user_list.id = '${externalId}'`
268
- };
269
- const response = await request(`https://googleads.googleapis.com/${getApiVersion(features, statsContext)}/customers/${settings.customerId}/googleAds:search`, {
270
- method: 'post',
271
- headers: {
272
- 'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`,
273
- authorization: `Bearer ${accessToken}`
274
- },
275
- json
276
- });
277
- const id = response.data.results[0].userList.id;
278
- if (!id) {
288
+ const userList = await getDataManagerUserList(request, settings.customerId, externalId, segmentAccessToken);
289
+ if (!userList?.id) {
279
290
  statsClient?.incr('getAudience.error', 1, statsTags);
280
291
  throw new actions_core_1.IntegrationError('Failed to receive a customer list.', 'INVALID_RESPONSE', 400);
281
292
  }
282
293
  statsClient?.incr('getAudience.success', 1, statsTags);
283
- return response.data;
294
+ return {
295
+ results: [{ userList: { resourceName: userList.name, id: userList.id, name: userList.displayName } }],
296
+ fieldMask: ''
297
+ };
284
298
  }
285
299
  function formatToE164(phoneNumber, countryCode) {
286
300
  const numericPhoneNumber = phoneNumber.replace(/\D/g, '');
@@ -332,7 +346,7 @@ const validateAndFormatToE164 = (phoneNumber, countryCode, statsContext) => {
332
346
  }
333
347
  };
334
348
  exports.validateAndFormatToE164 = validateAndFormatToE164;
335
- const extractUserIdentifiers = (payloads, idType, syncMode, features, statsContext) => {
349
+ const extractUserIdentifiers = (payloads, idType, syncMode, features, statsContext, audienceMembership, personasContext) => {
336
350
  const removeUserIdentifiers = [];
337
351
  const addUserIdentifiers = [];
338
352
  const identifierFunctions = {
@@ -369,16 +383,39 @@ const extractUserIdentifiers = (payloads, idType, syncMode, features, statsConte
369
383
  return identifiers;
370
384
  }
371
385
  };
386
+ const { computation_class } = personasContext || {};
372
387
  for (const payload of payloads) {
373
- if (payload.event_name === 'Audience Entered' ||
374
- syncMode === 'add' ||
375
- (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated'))) {
376
- addUserIdentifiers.push({ create: { userIdentifiers: identifierFunctions[idType](payload) } });
388
+ if (features?.[actions_core_1.FLAGS.ACTIONS_GOOGLE_EC_AUDIENCE_MEMBERSHIP]) {
389
+ if (payload.event_name === 'Audience Entered' ||
390
+ syncMode === 'add' ||
391
+ (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated')) ||
392
+ audienceMembership === true) {
393
+ addUserIdentifiers.push({ create: { userIdentifiers: identifierFunctions[idType](payload) } });
394
+ }
395
+ else if (payload.event_name === 'Audience Exited' ||
396
+ syncMode === 'delete' ||
397
+ (syncMode === 'mirror' && payload.event_name === 'deleted') ||
398
+ audienceMembership === false) {
399
+ removeUserIdentifiers.push({ remove: { userIdentifiers: identifierFunctions[idType](payload) } });
400
+ }
401
+ else if (computation_class === 'journey_step') {
402
+ addUserIdentifiers.push({ create: { userIdentifiers: identifierFunctions[idType](payload) } });
403
+ }
377
404
  }
378
- else if (payload.event_name === 'Audience Exited' ||
379
- syncMode === 'delete' ||
380
- (syncMode === 'mirror' && payload.event_name === 'deleted')) {
381
- removeUserIdentifiers.push({ remove: { userIdentifiers: identifierFunctions[idType](payload) } });
405
+ else {
406
+ if (payload.event_name === 'Audience Entered' ||
407
+ syncMode === 'add' ||
408
+ (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated'))) {
409
+ addUserIdentifiers.push({ create: { userIdentifiers: identifierFunctions[idType](payload) } });
410
+ }
411
+ else if (payload.event_name === 'Audience Exited' ||
412
+ syncMode === 'delete' ||
413
+ (syncMode === 'mirror' && payload.event_name === 'deleted')) {
414
+ removeUserIdentifiers.push({ remove: { userIdentifiers: identifierFunctions[idType](payload) } });
415
+ }
416
+ else if (computation_class === 'journey_step') {
417
+ addUserIdentifiers.push({ create: { userIdentifiers: identifierFunctions[idType](payload) } });
418
+ }
382
419
  }
383
420
  }
384
421
  return [addUserIdentifiers, removeUserIdentifiers];
@@ -438,13 +475,13 @@ const processOperations = async (request, userIdentifiers, resourceName, validPa
438
475
  (0, exports.handlePartialFailureResponse)(partialFailureError, validPayloadIndicesBitmap, multiStatusResponse, userIdentifiers, failedPayloadIndices);
439
476
  }
440
477
  };
441
- const handleUpdate = async (request, settings, audienceSettings, payloads, hookListId, hookListType, syncMode, features, statsContext) => {
478
+ const handleUpdate = async (request, settings, audienceSettings, payloads, hookListId, hookListType, syncMode, features, statsContext, audienceMembership, personasContext) => {
442
479
  const externalAudienceId = hookListId || payloads[0]?.external_audience_id;
443
480
  if (!externalAudienceId) {
444
481
  throw new actions_core_1.PayloadValidationError('External Audience ID is required.');
445
482
  }
446
483
  const id_type = hookListType ?? audienceSettings.external_id_type;
447
- const [adduserIdentifiers, removeUserIdentifiers] = extractUserIdentifiers(payloads, id_type, syncMode, features, statsContext);
484
+ const [adduserIdentifiers, removeUserIdentifiers] = extractUserIdentifiers(payloads, id_type, syncMode, features, statsContext, audienceMembership, personasContext);
448
485
  const offlineUserJobPayload = createOfflineUserJobPayload(externalAudienceId, payloads[0], settings.customerId);
449
486
  const offlineUserJobResponse = await createOfflineUserJob(request, offlineUserJobPayload, settings, features, statsContext);
450
487
  if (!offlineUserJobResponse.success) {
@@ -585,7 +622,7 @@ const createIdentifierExtractors = (features) => ({
585
622
  }
586
623
  });
587
624
  exports.createIdentifierExtractors = createIdentifierExtractors;
588
- const extractBatchUserIdentifiers = (payloads, idType, multiStatusResponse, syncMode, features) => {
625
+ const extractBatchUserIdentifiers = (payloads, idType, multiStatusResponse, syncMode, features, audienceMemberships, personasContext) => {
589
626
  const removeUserIdentifiers = [];
590
627
  const addUserIdentifiers = [];
591
628
  const validPayloadIndicesBitmap = [];
@@ -613,8 +650,8 @@ const extractBatchUserIdentifiers = (payloads, idType, multiStatusResponse, sync
613
650
  });
614
651
  return;
615
652
  }
616
- const operationType = determineOperationType(payload, syncMode);
617
- if (!operationType) {
653
+ const operationType = determineOperationType(payload, syncMode, features, audienceMemberships?.[index], personasContext);
654
+ if (operationType === undefined) {
618
655
  multiStatusResponse.setErrorResponseAtIndex(index, {
619
656
  status: 400,
620
657
  errortype: 'PAYLOAD_VALIDATION_FAILED',
@@ -623,7 +660,7 @@ const extractBatchUserIdentifiers = (payloads, idType, multiStatusResponse, sync
623
660
  return;
624
661
  }
625
662
  validPayloadIndicesBitmap.push(index);
626
- if (operationType === 'add') {
663
+ if (operationType === true) {
627
664
  addUserIdentifiers.push({ create: { userIdentifiers } });
628
665
  }
629
666
  else {
@@ -632,18 +669,41 @@ const extractBatchUserIdentifiers = (payloads, idType, multiStatusResponse, sync
632
669
  });
633
670
  return { addUserIdentifiers, removeUserIdentifiers, validPayloadIndicesBitmap };
634
671
  };
635
- const determineOperationType = (payload, syncMode) => {
636
- if (payload.event_name === 'Audience Entered' ||
637
- syncMode === 'add' ||
638
- (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated'))) {
639
- return 'add';
640
- }
641
- else if (payload.event_name === 'Audience Exited' ||
642
- syncMode === 'delete' ||
643
- (syncMode === 'mirror' && payload.event_name === 'deleted')) {
644
- return 'remove';
645
- }
646
- return null;
672
+ const determineOperationType = (payload, syncMode, features, audienceMembership, personasContext) => {
673
+ const { computation_class } = personasContext || {};
674
+ if (features?.[actions_core_1.FLAGS.ACTIONS_GOOGLE_EC_AUDIENCE_MEMBERSHIP]) {
675
+ if (payload.event_name === 'Audience Entered' ||
676
+ syncMode === 'add' ||
677
+ (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated')) ||
678
+ audienceMembership === true) {
679
+ return true;
680
+ }
681
+ else if (payload.event_name === 'Audience Exited' ||
682
+ syncMode === 'delete' ||
683
+ (syncMode === 'mirror' && payload.event_name === 'deleted') ||
684
+ audienceMembership === false) {
685
+ return false;
686
+ }
687
+ else if (computation_class === 'journey_step') {
688
+ return true;
689
+ }
690
+ }
691
+ else {
692
+ if (payload.event_name === 'Audience Entered' ||
693
+ syncMode === 'add' ||
694
+ (syncMode === 'mirror' && (payload.event_name === 'new' || payload.event_name === 'updated'))) {
695
+ return true;
696
+ }
697
+ else if (payload.event_name === 'Audience Exited' ||
698
+ syncMode === 'delete' ||
699
+ (syncMode === 'mirror' && payload.event_name === 'deleted')) {
700
+ return false;
701
+ }
702
+ else if (computation_class === 'journey_step') {
703
+ return true;
704
+ }
705
+ }
706
+ return undefined;
647
707
  };
648
708
  const createOfflineUserJobPayload = (audienceId, payload, customerId) => ({
649
709
  job: {
@@ -657,14 +717,14 @@ const createOfflineUserJobPayload = (audienceId, payload, customerId) => ({
657
717
  }
658
718
  }
659
719
  });
660
- const processBatchPayload = async (request, settings, audienceSettings, payloads, hookListId, hookListType, syncMode, features, statsContext) => {
720
+ const processBatchPayload = async (request, settings, audienceSettings, payloads, hookListId, hookListType, syncMode, features, statsContext, audienceMemberships, personasContext) => {
661
721
  const externalAudienceId = hookListId || payloads[0]?.external_audience_id;
662
722
  if (!externalAudienceId) {
663
723
  throw new actions_core_1.PayloadValidationError('External Audience ID is required.');
664
724
  }
665
725
  const multiStatusResponse = new actions_core_1.MultiStatusResponse();
666
726
  const id_type = hookListType ?? audienceSettings.external_id_type;
667
- const { addUserIdentifiers, removeUserIdentifiers, validPayloadIndicesBitmap } = extractBatchUserIdentifiers(payloads, id_type, multiStatusResponse, syncMode, features);
727
+ const { addUserIdentifiers, removeUserIdentifiers, validPayloadIndicesBitmap } = extractBatchUserIdentifiers(payloads, id_type, multiStatusResponse, syncMode, features, audienceMemberships, personasContext);
668
728
  const offlineUserJobPayload = createOfflineUserJobPayload(externalAudienceId, payloads[0], settings.customerId);
669
729
  const { success, data: resourceName, error } = await createOfflineUserJob(request, offlineUserJobPayload, settings, features, statsContext);
670
730
  if (!success) {