@segment/action-destinations 3.80.0 → 3.80.1-alpha.2

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 (103) hide show
  1. package/dist/destinations/1plusx/index.js +1 -0
  2. package/dist/destinations/1plusx/index.js.map +1 -1
  3. package/dist/destinations/amplitude/index.js +11 -2
  4. package/dist/destinations/amplitude/index.js.map +1 -1
  5. package/dist/destinations/amplitude/logEvent/generated-types.d.ts +1 -1
  6. package/dist/destinations/amplitude/logEvent/index.d.ts +1 -1
  7. package/dist/destinations/amplitude/logEvent/index.js +22 -31
  8. package/dist/destinations/amplitude/logEvent/index.js.map +1 -1
  9. package/dist/destinations/amplitude/logPurchase/generated-types.d.ts +65 -0
  10. package/dist/destinations/amplitude/logPurchase/generated-types.js +3 -0
  11. package/dist/destinations/amplitude/logPurchase/generated-types.js.map +1 -0
  12. package/dist/destinations/amplitude/logPurchase/index.d.ts +13 -0
  13. package/dist/destinations/amplitude/logPurchase/index.js +217 -0
  14. package/dist/destinations/amplitude/logPurchase/index.js.map +1 -0
  15. package/dist/destinations/customerio/index.js +1 -0
  16. package/dist/destinations/customerio/index.js.map +1 -1
  17. package/dist/destinations/google-analytics-4/addPaymentInfo/index.js +25 -1
  18. package/dist/destinations/google-analytics-4/addPaymentInfo/index.js.map +1 -1
  19. package/dist/destinations/google-analytics-4/addToCart/index.js +23 -1
  20. package/dist/destinations/google-analytics-4/addToCart/index.js.map +1 -1
  21. package/dist/destinations/google-analytics-4/addToWishlist/index.js +23 -1
  22. package/dist/destinations/google-analytics-4/addToWishlist/index.js.map +1 -1
  23. package/dist/destinations/google-analytics-4/beginCheckout/index.js +24 -1
  24. package/dist/destinations/google-analytics-4/beginCheckout/index.js.map +1 -1
  25. package/dist/destinations/google-analytics-4/customEvent/index.js +21 -1
  26. package/dist/destinations/google-analytics-4/customEvent/index.js.map +1 -1
  27. package/dist/destinations/google-analytics-4/ga4-functions.d.ts +1 -0
  28. package/dist/destinations/google-analytics-4/ga4-functions.js +13 -1
  29. package/dist/destinations/google-analytics-4/ga4-functions.js.map +1 -1
  30. package/dist/destinations/google-analytics-4/ga4-properties.js +4 -0
  31. package/dist/destinations/google-analytics-4/ga4-properties.js.map +1 -1
  32. package/dist/destinations/google-analytics-4/generateLead/index.js +22 -1
  33. package/dist/destinations/google-analytics-4/generateLead/index.js.map +1 -1
  34. package/dist/destinations/google-analytics-4/index.js +1 -0
  35. package/dist/destinations/google-analytics-4/index.js.map +1 -1
  36. package/dist/destinations/google-analytics-4/login/index.js +22 -1
  37. package/dist/destinations/google-analytics-4/login/index.js.map +1 -1
  38. package/dist/destinations/google-analytics-4/pageView/index.js +24 -1
  39. package/dist/destinations/google-analytics-4/pageView/index.js.map +1 -1
  40. package/dist/destinations/google-analytics-4/purchase/index.js +28 -1
  41. package/dist/destinations/google-analytics-4/purchase/index.js.map +1 -1
  42. package/dist/destinations/google-analytics-4/refund/index.js +28 -1
  43. package/dist/destinations/google-analytics-4/refund/index.js.map +1 -1
  44. package/dist/destinations/google-analytics-4/removeFromCart/index.js +23 -1
  45. package/dist/destinations/google-analytics-4/removeFromCart/index.js.map +1 -1
  46. package/dist/destinations/google-analytics-4/search/index.js +22 -1
  47. package/dist/destinations/google-analytics-4/search/index.js.map +1 -1
  48. package/dist/destinations/google-analytics-4/selectItem/index.js +23 -1
  49. package/dist/destinations/google-analytics-4/selectItem/index.js.map +1 -1
  50. package/dist/destinations/google-analytics-4/selectPromotion/index.js +26 -1
  51. package/dist/destinations/google-analytics-4/selectPromotion/index.js.map +1 -1
  52. package/dist/destinations/google-analytics-4/signUp/index.js +22 -1
  53. package/dist/destinations/google-analytics-4/signUp/index.js.map +1 -1
  54. package/dist/destinations/google-analytics-4/viewCart/index.js +23 -1
  55. package/dist/destinations/google-analytics-4/viewCart/index.js.map +1 -1
  56. package/dist/destinations/google-analytics-4/viewItem/index.js +23 -1
  57. package/dist/destinations/google-analytics-4/viewItem/index.js.map +1 -1
  58. package/dist/destinations/google-analytics-4/viewItemList/index.js +23 -1
  59. package/dist/destinations/google-analytics-4/viewItemList/index.js.map +1 -1
  60. package/dist/destinations/google-analytics-4/viewPromotion/index.js +26 -1
  61. package/dist/destinations/google-analytics-4/viewPromotion/index.js.map +1 -1
  62. package/dist/destinations/google-enhanced-conversions/index.js +1 -0
  63. package/dist/destinations/google-enhanced-conversions/index.js.map +1 -1
  64. package/dist/destinations/personas-messaging-sendgrid/index.js +1 -0
  65. package/dist/destinations/personas-messaging-sendgrid/index.js.map +1 -1
  66. package/dist/destinations/personas-messaging-twilio/index.js +1 -0
  67. package/dist/destinations/personas-messaging-twilio/index.js.map +1 -1
  68. package/dist/destinations/pipedrive/index.js +1 -0
  69. package/dist/destinations/pipedrive/index.js.map +1 -1
  70. package/dist/destinations/salesforce/account/generated-types.d.ts +1 -0
  71. package/dist/destinations/salesforce/account/index.js +2 -1
  72. package/dist/destinations/salesforce/account/index.js.map +1 -1
  73. package/dist/destinations/salesforce/cases/generated-types.d.ts +1 -0
  74. package/dist/destinations/salesforce/cases/index.js +1 -0
  75. package/dist/destinations/salesforce/cases/index.js.map +1 -1
  76. package/dist/destinations/salesforce/contact/generated-types.d.ts +1 -0
  77. package/dist/destinations/salesforce/contact/index.js +2 -1
  78. package/dist/destinations/salesforce/contact/index.js.map +1 -1
  79. package/dist/destinations/salesforce/customObject/generated-types.d.ts +1 -0
  80. package/dist/destinations/salesforce/customObject/index.js +1 -0
  81. package/dist/destinations/salesforce/customObject/index.js.map +1 -1
  82. package/dist/destinations/salesforce/lead/generated-types.d.ts +1 -0
  83. package/dist/destinations/salesforce/lead/index.js +2 -1
  84. package/dist/destinations/salesforce/lead/index.js.map +1 -1
  85. package/dist/destinations/salesforce/opportunity/generated-types.d.ts +1 -0
  86. package/dist/destinations/salesforce/opportunity/index.js +2 -1
  87. package/dist/destinations/salesforce/opportunity/index.js.map +1 -1
  88. package/dist/destinations/salesforce/sf-operations.d.ts +1 -1
  89. package/dist/destinations/salesforce/sf-operations.js +3 -9
  90. package/dist/destinations/salesforce/sf-operations.js.map +1 -1
  91. package/dist/destinations/salesforce/sf-properties.d.ts +1 -0
  92. package/dist/destinations/salesforce/sf-properties.js +8 -4
  93. package/dist/destinations/salesforce/sf-properties.js.map +1 -1
  94. package/dist/destinations/salesforce/sf-utils.js +5 -3
  95. package/dist/destinations/salesforce/sf-utils.js.map +1 -1
  96. package/dist/destinations/slack/index.js +1 -0
  97. package/dist/destinations/slack/index.js.map +1 -1
  98. package/dist/destinations/twilio/index.js +1 -0
  99. package/dist/destinations/twilio/index.js.map +1 -1
  100. package/dist/destinations/webhook/send/generated-types.d.ts +1 -0
  101. package/dist/destinations/webhook/send/index.js +11 -3
  102. package/dist/destinations/webhook/send/index.js.map +1 -1
  103. package/package.json +4 -4
@@ -8,6 +8,7 @@ const sendPageview_1 = __importDefault(require("./sendPageview"));
8
8
  const sendUserData_1 = __importDefault(require("./sendUserData"));
9
9
  const destination = {
10
10
  name: '1plusX',
11
+ slug: 'actions-1plusx',
11
12
  mode: 'cloud',
12
13
  authentication: {
13
14
  scheme: 'custom',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/1plusx/index.ts"],"names":[],"mappings":";;;;;AAEA,4DAAmC;AACnC,kEAAyC;AACzC,kEAAyC;AAEzC,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,SAAS,EAAE;gBACT,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,wBAAwB;gBACrC,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,iBAAiB,EAAE;gBACjB,KAAK,EAAE,mBAAmB;gBAC1B,WAAW,EACT,yGAAyG;gBAC3G,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACf;SACF;KACF;IACD,OAAO,EAAE;QACP,SAAS,EAAT,mBAAS;QACT,YAAY,EAAZ,sBAAY;QACZ,YAAY,EAAZ,sBAAY;KACb;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/1plusx/index.ts"],"names":[],"mappings":";;;;;AAEA,4DAAmC;AACnC,kEAAyC;AACzC,kEAAyC;AAEzC,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,SAAS,EAAE;gBACT,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,wBAAwB;gBACrC,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,iBAAiB,EAAE;gBACjB,KAAK,EAAE,mBAAmB;gBAC1B,WAAW,EACT,yGAAyG;gBAC3G,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACf;SACF;KACF;IACD,OAAO,EAAE;QACP,SAAS,EAAT,mBAAS;QACT,YAAY,EAAZ,sBAAY;QACZ,YAAY,EAAZ,sBAAY;KACb;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -8,14 +8,21 @@ const identifyUser_1 = __importDefault(require("./identifyUser"));
8
8
  const logEvent_1 = __importDefault(require("./logEvent"));
9
9
  const mapUser_1 = __importDefault(require("./mapUser"));
10
10
  const groupIdentifyUser_1 = __importDefault(require("./groupIdentifyUser"));
11
+ const logPurchase_1 = __importDefault(require("./logPurchase"));
11
12
  const regional_endpoints_1 = require("./regional-endpoints");
12
13
  const presets = [
13
14
  {
14
15
  name: 'Track Calls',
15
- subscribe: 'type = "track"',
16
+ subscribe: 'type = "track" and event != "Order Completed"',
16
17
  partnerAction: 'logEvent',
17
18
  mapping: actions_core_1.defaultValues(logEvent_1.default.fields)
18
19
  },
20
+ {
21
+ name: 'Order Completed Calls',
22
+ subscribe: 'type = "track" and event = "Order Completed"',
23
+ partnerAction: 'logPurchase',
24
+ mapping: actions_core_1.defaultValues(logPurchase_1.default.fields)
25
+ },
19
26
  {
20
27
  name: 'Page Calls',
21
28
  subscribe: 'type = "page"',
@@ -53,6 +60,7 @@ const presets = [
53
60
  ];
54
61
  const destination = {
55
62
  name: 'Actions Amplitude',
63
+ slug: 'actions-amplitude',
56
64
  mode: 'cloud',
57
65
  authentication: {
58
66
  scheme: 'custom',
@@ -111,7 +119,8 @@ const destination = {
111
119
  logEvent: logEvent_1.default,
112
120
  identifyUser: identifyUser_1.default,
113
121
  mapUser: mapUser_1.default,
114
- groupIdentifyUser: groupIdentifyUser_1.default
122
+ groupIdentifyUser: groupIdentifyUser_1.default,
123
+ logPurchase: logPurchase_1.default
115
124
  }
116
125
  };
117
126
  exports.default = destination;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/amplitude/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/amplitude/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  export interface Payload {
2
- trackRevenuePerProduct?: boolean;
3
2
  user_id?: string | null;
4
3
  device_id?: string;
5
4
  event_type: string;
@@ -48,6 +47,7 @@ export interface Payload {
48
47
  revenue?: number;
49
48
  productId?: string;
50
49
  revenueType?: string;
50
+ [k: string]: unknown;
51
51
  }[];
52
52
  use_batch_endpoint?: boolean;
53
53
  userAgent?: string;
@@ -1,7 +1,7 @@
1
1
  import type { ActionDefinition } from '@segment/actions-core';
2
2
  import type { Settings } from '../generated-types';
3
3
  import type { Payload } from './generated-types';
4
- export interface AmplitudeEvent extends Omit<Payload, 'products' | 'trackRevenuePerProduct' | 'time' | 'session_id'> {
4
+ export interface AmplitudeEvent extends Omit<Payload, 'products' | 'time' | 'session_id'> {
5
5
  library?: string;
6
6
  time?: number;
7
7
  session_id?: number;
@@ -12,35 +12,18 @@ const merge_user_properties_1 = require("../merge-user-properties");
12
12
  const user_agent_1 = require("../user-agent");
13
13
  const regional_endpoints_1 = require("../regional-endpoints");
14
14
  const revenueKeys = ['revenue', 'price', 'productId', 'quantity', 'revenueType'];
15
- function getRevenueProperties(payload) {
16
- if (typeof payload.revenue !== 'number') {
17
- return {};
18
- }
19
- return {
20
- revenue: payload.revenue,
21
- revenueType: payload.revenueType ?? 'Purchase',
22
- quantity: typeof payload.quantity === 'number' ? Math.round(payload.quantity) : undefined,
23
- price: payload.price,
24
- productId: payload.productId
25
- };
26
- }
27
15
  const action = {
28
16
  title: 'Log Event',
29
17
  description: 'Send an event to Amplitude.',
30
18
  defaultSubscription: 'type = "track"',
31
19
  fields: {
32
- trackRevenuePerProduct: {
33
- label: 'Track Revenue Per Product',
34
- description: 'When enabled, track revenue with each product within the event. When disabled, track total revenue once for the event.',
35
- type: 'boolean',
36
- default: false
37
- },
38
20
  ...event_schema_1.eventSchema,
39
21
  products: {
40
22
  label: 'Products',
41
23
  description: 'The list of products purchased.',
42
24
  type: 'object',
43
25
  multiple: true,
26
+ additionalProperties: true,
44
27
  properties: {
45
28
  price: {
46
29
  label: 'Price',
@@ -69,7 +52,26 @@ const action = {
69
52
  }
70
53
  },
71
54
  default: {
72
- '@path': '$.properties.products'
55
+ '@arrayPath': [
56
+ '$.properties.products',
57
+ {
58
+ price: {
59
+ '@path': 'price'
60
+ },
61
+ revenue: {
62
+ '@path': 'revenue'
63
+ },
64
+ quantity: {
65
+ '@path': 'quantity'
66
+ },
67
+ productId: {
68
+ '@path': 'productId'
69
+ },
70
+ revenueType: {
71
+ '@path': 'revenueType'
72
+ }
73
+ }
74
+ ]
73
75
  }
74
76
  },
75
77
  use_batch_endpoint: {
@@ -142,7 +144,7 @@ const action = {
142
144
  }
143
145
  },
144
146
  perform: (request, { payload, settings }) => {
145
- const { products = [], trackRevenuePerProduct, time, session_id, userAgent, userAgentParsing, utm_properties, referrer, min_id_length, library, ...rest } = actions_core_1.omit(payload, revenueKeys);
147
+ const { time, session_id, userAgent, userAgentParsing, utm_properties, referrer, min_id_length, library, ...rest } = actions_core_1.omit(payload, revenueKeys);
146
148
  const properties = rest;
147
149
  let options;
148
150
  if (properties.platform) {
@@ -168,20 +170,9 @@ const action = {
168
170
  {
169
171
  ...(userAgentParsing && user_agent_1.parseUserAgentProperties(userAgent)),
170
172
  ...actions_core_1.removeUndefined(properties),
171
- ...(products.length && trackRevenuePerProduct ? {} : getRevenueProperties(payload)),
172
173
  library: 'segment'
173
174
  }
174
175
  ];
175
- for (const product of products) {
176
- events.push({
177
- ...properties,
178
- ...(trackRevenuePerProduct ? getRevenueProperties(product) : {}),
179
- event_properties: product,
180
- event_type: 'Product Purchased',
181
- insert_id: properties.insert_id ? `${properties.insert_id}-${events.length + 1}` : undefined,
182
- library: 'segment'
183
- });
184
- }
185
176
  const endpoint = regional_endpoints_1.getEndpointByRegion(payload.use_batch_endpoint ? 'batch' : 'httpapi', settings.endpoint);
186
177
  return request(endpoint, {
187
178
  method: 'post',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/amplitude/logEvent/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/amplitude/logEvent/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ export interface Payload {
2
+ trackRevenuePerProduct?: boolean;
3
+ user_id?: string | null;
4
+ device_id?: string;
5
+ event_type: string;
6
+ session_id?: string | number;
7
+ time?: string | number;
8
+ event_properties?: {
9
+ [k: string]: unknown;
10
+ };
11
+ user_properties?: {
12
+ [k: string]: unknown;
13
+ };
14
+ groups?: {
15
+ [k: string]: unknown;
16
+ };
17
+ app_version?: string;
18
+ platform?: string;
19
+ os_name?: string;
20
+ os_version?: string;
21
+ device_brand?: string;
22
+ device_manufacturer?: string;
23
+ device_model?: string;
24
+ carrier?: string;
25
+ country?: string;
26
+ region?: string;
27
+ city?: string;
28
+ dma?: string;
29
+ language?: string;
30
+ price?: number;
31
+ quantity?: number;
32
+ revenue?: number;
33
+ productId?: string;
34
+ revenueType?: string;
35
+ location_lat?: number;
36
+ location_lng?: number;
37
+ ip?: string;
38
+ idfa?: string;
39
+ idfv?: string;
40
+ adid?: string;
41
+ android_id?: string;
42
+ event_id?: number;
43
+ insert_id?: string;
44
+ library?: string;
45
+ products?: {
46
+ price?: number;
47
+ quantity?: number;
48
+ revenue?: number;
49
+ productId?: string;
50
+ revenueType?: string;
51
+ [k: string]: unknown;
52
+ }[];
53
+ use_batch_endpoint?: boolean;
54
+ userAgent?: string;
55
+ userAgentParsing?: boolean;
56
+ utm_properties?: {
57
+ utm_source?: string;
58
+ utm_medium?: string;
59
+ utm_campaign?: string;
60
+ utm_term?: string;
61
+ utm_content?: string;
62
+ };
63
+ referrer?: string;
64
+ min_id_length?: number | null;
65
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/amplitude/logPurchase/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import type { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ export interface AmplitudeEvent extends Omit<Payload, 'products' | 'trackRevenuePerProduct' | 'time' | 'session_id'> {
5
+ library?: string;
6
+ time?: number;
7
+ session_id?: number;
8
+ options?: {
9
+ min_id_length: number;
10
+ };
11
+ }
12
+ declare const action: ActionDefinition<Settings, Payload>;
13
+ export default action;
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const actions_core_1 = require("@segment/actions-core");
7
+ const dayjs_1 = __importDefault(require("../../../lib/dayjs"));
8
+ const event_schema_1 = require("../event-schema");
9
+ const utm_1 = require("../utm");
10
+ const referrer_1 = require("../referrer");
11
+ const merge_user_properties_1 = require("../merge-user-properties");
12
+ const user_agent_1 = require("../user-agent");
13
+ const regional_endpoints_1 = require("../regional-endpoints");
14
+ const revenueKeys = ['revenue', 'price', 'productId', 'quantity', 'revenueType'];
15
+ function getRevenueProperties(payload) {
16
+ if (typeof payload.revenue !== 'number') {
17
+ return {};
18
+ }
19
+ return {
20
+ revenue: payload.revenue,
21
+ revenueType: payload.revenueType ?? 'Purchase',
22
+ quantity: typeof payload.quantity === 'number' ? Math.round(payload.quantity) : undefined,
23
+ price: payload.price,
24
+ productId: payload.productId
25
+ };
26
+ }
27
+ const action = {
28
+ title: 'Log Purchase',
29
+ description: 'Send an event to Amplitude.',
30
+ defaultSubscription: 'type = "track"',
31
+ fields: {
32
+ trackRevenuePerProduct: {
33
+ label: 'Track Revenue Per Product',
34
+ description: 'When enabled, track revenue with each product within the event. When disabled, track total revenue once for the event.',
35
+ type: 'boolean',
36
+ default: false
37
+ },
38
+ ...event_schema_1.eventSchema,
39
+ products: {
40
+ label: 'Products',
41
+ description: 'The list of products purchased.',
42
+ type: 'object',
43
+ multiple: true,
44
+ additionalProperties: true,
45
+ properties: {
46
+ price: {
47
+ label: 'Price',
48
+ type: 'number',
49
+ description: 'The price of the item purchased. Required for revenue data if the revenue field is not sent. You can use negative values to indicate refunds.'
50
+ },
51
+ quantity: {
52
+ label: 'Quantity',
53
+ type: 'integer',
54
+ description: 'The quantity of the item purchased. Defaults to 1 if not specified.'
55
+ },
56
+ revenue: {
57
+ label: 'Revenue',
58
+ type: 'number',
59
+ description: 'Revenue = price * quantity. If you send all 3 fields of price, quantity, and revenue, then (price * quantity) will be used as the revenue value. You can use negative values to indicate refunds.'
60
+ },
61
+ productId: {
62
+ label: 'Product ID',
63
+ type: 'string',
64
+ description: 'An identifier for the item purchased. You must send a price and quantity or revenue with this field.'
65
+ },
66
+ revenueType: {
67
+ label: 'Revenue Type',
68
+ type: 'string',
69
+ description: 'The type of revenue for the item purchased. You must send a price and quantity or revenue with this field.'
70
+ }
71
+ },
72
+ default: {
73
+ '@arrayPath': [
74
+ '$.properties.products',
75
+ {
76
+ price: {
77
+ '@path': 'price'
78
+ },
79
+ revenue: {
80
+ '@path': 'revenue'
81
+ },
82
+ quantity: {
83
+ '@path': 'quantity'
84
+ },
85
+ productId: {
86
+ '@path': 'productId'
87
+ },
88
+ revenueType: {
89
+ '@path': 'revenueType'
90
+ }
91
+ }
92
+ ]
93
+ }
94
+ },
95
+ use_batch_endpoint: {
96
+ label: 'Use Batch Endpoint',
97
+ description: "If true, events are sent to Amplitude's `batch` endpoint rather than their `httpapi` events endpoint. Enabling this setting may help reduce 429s – or throttling errors – from Amplitude. More information about Amplitude's throttling is available in [their docs](https://developers.amplitude.com/docs/batch-event-upload-api#429s-in-depth).",
98
+ type: 'boolean',
99
+ default: false
100
+ },
101
+ userAgent: {
102
+ label: 'User Agent',
103
+ type: 'string',
104
+ description: 'The user agent of the device sending the event.',
105
+ default: {
106
+ '@path': '$.context.userAgent'
107
+ }
108
+ },
109
+ userAgentParsing: {
110
+ label: 'User Agent Parsing',
111
+ type: 'boolean',
112
+ description: 'Enabling this setting will set the Device manufacturer, Device Model and OS Name properties based on the user agent string provided in the userAgent field',
113
+ default: true
114
+ },
115
+ utm_properties: {
116
+ label: 'UTM Properties',
117
+ type: 'object',
118
+ description: 'UTM Tracking Properties',
119
+ properties: {
120
+ utm_source: {
121
+ label: 'UTM Source',
122
+ type: 'string'
123
+ },
124
+ utm_medium: {
125
+ label: 'UTM Medium',
126
+ type: 'string'
127
+ },
128
+ utm_campaign: {
129
+ label: 'UTM Campaign',
130
+ type: 'string'
131
+ },
132
+ utm_term: {
133
+ label: 'UTM Term',
134
+ type: 'string'
135
+ },
136
+ utm_content: {
137
+ label: 'UTM Content',
138
+ type: 'string'
139
+ }
140
+ },
141
+ default: {
142
+ utm_source: { '@path': '$.context.campaign.source' },
143
+ utm_medium: { '@path': '$.context.campaign.medium' },
144
+ utm_campaign: { '@path': '$.context.campaign.name' },
145
+ utm_term: { '@path': '$.context.campaign.term' },
146
+ utm_content: { '@path': '$.context.campaign.content' }
147
+ }
148
+ },
149
+ referrer: {
150
+ label: 'Referrer',
151
+ type: 'string',
152
+ description: 'The referrer of the web request. Sent to Amplitude as both last touch “referrer” and first touch “initial_referrer”',
153
+ default: {
154
+ '@path': '$.context.page.referrer'
155
+ }
156
+ },
157
+ min_id_length: {
158
+ label: 'Minimum ID Length',
159
+ description: 'Amplitude has a default minimum id lenght of 5 characters for user_id and device_id fields. This field allows the minimum to be overridden to allow shorter id lengths.',
160
+ allowNull: true,
161
+ type: 'integer'
162
+ }
163
+ },
164
+ perform: (request, { payload, settings }) => {
165
+ const { products = [], trackRevenuePerProduct, time, session_id, userAgent, userAgentParsing, utm_properties, referrer, min_id_length, library, ...rest } = actions_core_1.omit(payload, revenueKeys);
166
+ const properties = rest;
167
+ let options;
168
+ if (properties.platform) {
169
+ properties.platform = properties.platform.replace(/ios/i, 'iOS').replace(/android/i, 'Android');
170
+ }
171
+ if (library) {
172
+ if (library === 'analytics.js')
173
+ properties.platform = 'Web';
174
+ }
175
+ if (time && dayjs_1.default.utc(time).isValid()) {
176
+ properties.time = dayjs_1.default.utc(time).valueOf();
177
+ }
178
+ if (session_id && dayjs_1.default.utc(session_id).isValid()) {
179
+ properties.session_id = dayjs_1.default.utc(session_id).valueOf();
180
+ }
181
+ if (Object.keys(payload.utm_properties ?? {}).length || payload.referrer) {
182
+ properties.user_properties = merge_user_properties_1.mergeUserProperties(utm_1.convertUTMProperties({ utm_properties }), referrer_1.convertReferrerProperty({ referrer }), actions_core_1.omit(properties.user_properties ?? {}, ['utm_properties', 'referrer']));
183
+ }
184
+ if (min_id_length && min_id_length > 0) {
185
+ options = { min_id_length };
186
+ }
187
+ const events = [
188
+ {
189
+ ...(userAgentParsing && user_agent_1.parseUserAgentProperties(userAgent)),
190
+ ...actions_core_1.removeUndefined(properties),
191
+ ...(products.length && trackRevenuePerProduct ? {} : getRevenueProperties(payload)),
192
+ library: 'segment'
193
+ }
194
+ ];
195
+ for (const product of products) {
196
+ events.push({
197
+ ...properties,
198
+ ...(trackRevenuePerProduct ? getRevenueProperties(product) : {}),
199
+ event_properties: product,
200
+ event_type: 'Product Purchased',
201
+ insert_id: properties.insert_id ? `${properties.insert_id}-${events.length + 1}` : undefined,
202
+ library: 'segment'
203
+ });
204
+ }
205
+ const endpoint = regional_endpoints_1.getEndpointByRegion(payload.use_batch_endpoint ? 'batch' : 'httpapi', settings.endpoint);
206
+ return request(endpoint, {
207
+ method: 'post',
208
+ json: {
209
+ api_key: settings.apiKey,
210
+ events,
211
+ options
212
+ }
213
+ });
214
+ }
215
+ };
216
+ exports.default = action;
217
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/amplitude/logPurchase/index.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ const trackScreenView_1 = __importDefault(require("./trackScreenView"));
13
13
  const utils_1 = require("./utils");
14
14
  const destination = {
15
15
  name: 'Actions Customerio',
16
+ slug: 'actions-customerio',
16
17
  mode: 'cloud',
17
18
  authentication: {
18
19
  scheme: 'basic',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/customerio/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/customerio/index.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ const action = {
22
22
  engagement_time_msec: ga4_properties_1.engagement_time_msec,
23
23
  params: ga4_properties_1.params
24
24
  },
25
- perform: (request, { payload }) => {
25
+ perform: (request, { payload, features }) => {
26
26
  if (payload.items && !payload.items.length) {
27
27
  throw new actions_core_1.IntegrationError('Google requires one or more products in add_payment_info events.', 'Misconfigured required field', 400);
28
28
  }
@@ -47,6 +47,30 @@ const action = {
47
47
  return product;
48
48
  });
49
49
  }
50
+ if (features && features['actions-google-analytics-4-verify-params-feature']) {
51
+ return request('https://www.google-analytics.com/mp/collect', {
52
+ method: 'POST',
53
+ json: {
54
+ client_id: payload.client_id,
55
+ user_id: payload.user_id,
56
+ events: [
57
+ {
58
+ name: 'add_payment_info',
59
+ params: {
60
+ currency: payload.currency,
61
+ value: payload.value,
62
+ coupon: payload.coupon,
63
+ payment_type: payload.payment_type,
64
+ items: googleItems,
65
+ engagement_time_msec: payload.engagement_time_msec,
66
+ ...ga4_functions_1.verifyParams(payload.params)
67
+ }
68
+ }
69
+ ],
70
+ ...ga4_properties_1.formatUserProperties(payload.user_properties)
71
+ }
72
+ });
73
+ }
50
74
  return request('https://www.google-analytics.com/mp/collect', {
51
75
  method: 'POST',
52
76
  json: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-analytics-4/addPaymentInfo/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-analytics-4/addPaymentInfo/index.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ const action = {
20
20
  engagement_time_msec: ga4_properties_1.engagement_time_msec,
21
21
  params: ga4_properties_1.params
22
22
  },
23
- perform: (request, { payload }) => {
23
+ perform: (request, { payload, features }) => {
24
24
  let googleItems = [];
25
25
  if (payload.currency) {
26
26
  ga4_functions_1.verifyCurrency(payload.currency);
@@ -36,6 +36,28 @@ const action = {
36
36
  return product;
37
37
  });
38
38
  }
39
+ if (features && features['actions-google-analytics-4-verify-params-feature']) {
40
+ return request('https://www.google-analytics.com/mp/collect', {
41
+ method: 'POST',
42
+ json: {
43
+ client_id: payload.client_id,
44
+ user_id: payload.user_id,
45
+ events: [
46
+ {
47
+ name: 'add_to_cart',
48
+ params: {
49
+ currency: payload.currency,
50
+ items: googleItems,
51
+ value: payload.value,
52
+ engagement_time_msec: payload.engagement_time_msec,
53
+ ...ga4_functions_1.verifyParams(payload.params)
54
+ }
55
+ }
56
+ ],
57
+ ...ga4_properties_1.formatUserProperties(payload.user_properties)
58
+ }
59
+ });
60
+ }
39
61
  return request('https://www.google-analytics.com/mp/collect', {
40
62
  method: 'POST',
41
63
  json: {