@segment/action-destinations 3.100.0 → 3.100.1-alpha.10

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 (69) hide show
  1. package/dist/destinations/actions-pardot/prospects/index.js.map +1 -1
  2. package/dist/destinations/cordial/addProductToCart/index.js +1 -1
  3. package/dist/destinations/cordial/addProductToCart/index.js.map +1 -1
  4. package/dist/destinations/cordial/index.js +1 -1
  5. package/dist/destinations/cordial/index.js.map +1 -1
  6. package/dist/destinations/cordial/removeProductFromCart/index.js.map +1 -1
  7. package/dist/destinations/cordial/upsertOrder/index.js +8 -8
  8. package/dist/destinations/cordial/upsertOrder/index.js.map +1 -1
  9. package/dist/destinations/customerio/trackEvent/index.js.map +1 -1
  10. package/dist/destinations/engage-messaging-sendgrid/generated-types.d.ts +1 -0
  11. package/dist/destinations/engage-messaging-sendgrid/index.js +5 -0
  12. package/dist/destinations/engage-messaging-sendgrid/index.js.map +1 -1
  13. package/dist/destinations/engage-messaging-sendgrid/sendEmail/generated-types.d.ts +4 -0
  14. package/dist/destinations/engage-messaging-sendgrid/sendEmail/index.js +44 -0
  15. package/dist/destinations/engage-messaging-sendgrid/sendEmail/index.js.map +1 -1
  16. package/dist/destinations/engage-messaging-twilio/sendSms/index.js +1 -0
  17. package/dist/destinations/engage-messaging-twilio/sendSms/index.js.map +1 -1
  18. package/dist/destinations/google-enhanced-conversions/constants.d.ts +1 -0
  19. package/dist/destinations/google-enhanced-conversions/constants.js +185 -0
  20. package/dist/destinations/google-enhanced-conversions/constants.js.map +1 -0
  21. package/dist/destinations/google-enhanced-conversions/functions.d.ts +3 -0
  22. package/dist/destinations/google-enhanced-conversions/functions.js +36 -0
  23. package/dist/destinations/google-enhanced-conversions/functions.js.map +1 -0
  24. package/dist/destinations/google-enhanced-conversions/generated-types.d.ts +2 -1
  25. package/dist/destinations/google-enhanced-conversions/index.js +15 -8
  26. package/dist/destinations/google-enhanced-conversions/index.js.map +1 -1
  27. package/dist/destinations/google-enhanced-conversions/postConversion/index.js +7 -1
  28. package/dist/destinations/google-enhanced-conversions/postConversion/index.js.map +1 -1
  29. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.d.ts +11 -0
  30. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.js +3 -0
  31. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.js.map +1 -0
  32. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.d.ts +5 -0
  33. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.js +99 -0
  34. package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.js.map +1 -0
  35. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.d.ts +25 -0
  36. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.js +3 -0
  37. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.js.map +1 -0
  38. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.d.ts +5 -0
  39. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.js +238 -0
  40. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.js.map +1 -0
  41. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/types.d.ts +5 -0
  42. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/types.js +3 -0
  43. package/dist/destinations/google-enhanced-conversions/uploadClickConversion/types.js.map +1 -0
  44. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.d.ts +20 -0
  45. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.js +3 -0
  46. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.js.map +1 -0
  47. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.d.ts +5 -0
  48. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js +269 -0
  49. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js.map +1 -0
  50. package/dist/destinations/index.js +1 -0
  51. package/dist/destinations/index.js.map +1 -1
  52. package/dist/destinations/salesforce/lead/index.js +2 -1
  53. package/dist/destinations/salesforce/lead/index.js.map +1 -1
  54. package/dist/destinations/salesforce-marketing-cloud/contact/generated-types.d.ts +2 -0
  55. package/dist/destinations/salesforce-marketing-cloud/contact/generated-types.js +3 -0
  56. package/dist/destinations/salesforce-marketing-cloud/contact/generated-types.js.map +1 -0
  57. package/dist/destinations/salesforce-marketing-cloud/contact/index.d.ts +5 -0
  58. package/dist/destinations/salesforce-marketing-cloud/contact/index.js +11 -0
  59. package/dist/destinations/salesforce-marketing-cloud/contact/index.js.map +1 -0
  60. package/dist/destinations/salesforce-marketing-cloud/generated-types.d.ts +2 -0
  61. package/dist/destinations/salesforce-marketing-cloud/generated-types.js +3 -0
  62. package/dist/destinations/salesforce-marketing-cloud/generated-types.js.map +1 -0
  63. package/dist/destinations/salesforce-marketing-cloud/index.d.ts +4 -0
  64. package/dist/destinations/salesforce-marketing-cloud/index.js +27 -0
  65. package/dist/destinations/salesforce-marketing-cloud/index.js.map +1 -0
  66. package/package.json +4 -4
  67. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.d.ts +0 -0
  68. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js +0 -2
  69. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js.map +0 -1
@@ -4,6 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const postConversion_1 = __importDefault(require("./postConversion"));
7
+ const uploadClickConversion_1 = __importDefault(require("./uploadClickConversion"));
8
+ const uploadCallConversion_1 = __importDefault(require("./uploadCallConversion"));
9
+ const uploadConversionAdjustment_1 = __importDefault(require("./uploadConversionAdjustment"));
7
10
  const destination = {
8
11
  name: 'Google Enhanced Conversions',
9
12
  slug: 'actions-google-enhanced-conversions',
@@ -13,9 +16,13 @@ const destination = {
13
16
  fields: {
14
17
  conversionTrackingId: {
15
18
  label: 'Conversion ID',
16
- description: 'You will find this information in the event snippet for your conversion action, for example `send_to: AW-CONVERSION_ID/AW-CONVERSION_LABEL`. In the sample snippet, AW-CONVERSION_ID stands for the conversion ID unique to your account. Enter the conversion Id, without the AW- prefix.',
17
- type: 'string',
18
- required: true
19
+ description: 'You will find this information in the event snippet for your conversion action, for example `send_to: AW-CONVERSION_ID/AW-CONVERSION_LABEL`. In the sample snippet, AW-CONVERSION_ID stands for the conversion ID unique to your account. Enter the conversion Id, without the AW- prefix. **Required if you are using an Action that sends data to the legacy Google Enhanced Conversions API.**',
20
+ type: 'string'
21
+ },
22
+ customerId: {
23
+ label: 'Customer ID',
24
+ description: 'ID of your Google Ads Account. This should be 10-digits and in XXX-XXX-XXXX format. **Required if you are using an Action that sends data to the Google Ads API.**',
25
+ type: 'string'
19
26
  }
20
27
  },
21
28
  testAuthentication: async (_request) => {
@@ -34,18 +41,18 @@ const destination = {
34
41
  return { accessToken: res.data.access_token };
35
42
  }
36
43
  },
37
- extendRequest({ settings, auth }) {
44
+ extendRequest({ auth }) {
38
45
  return {
39
46
  headers: {
40
47
  authorization: `Bearer ${auth?.accessToken}`
41
- },
42
- searchParams: {
43
- conversion_tracking_id: settings.conversionTrackingId
44
48
  }
45
49
  };
46
50
  },
47
51
  actions: {
48
- postConversion: postConversion_1.default
52
+ postConversion: postConversion_1.default,
53
+ uploadClickConversion: uploadClickConversion_1.default,
54
+ uploadCallConversion: uploadCallConversion_1.default,
55
+ uploadConversionAdjustment: uploadConversionAdjustment_1.default
49
56
  }
50
57
  };
51
58
  exports.default = destination;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/index.ts"],"names":[],"mappings":";;;;;AAEA,sEAA6C;AAe7C,MAAM,WAAW,GAAoC;IAGnD,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,qCAAqC;IAC3C,IAAI,EAAE,OAAO;IACb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,oBAAoB,EAAE;gBACpB,KAAK,EAAE,eAAe;gBACtB,WAAW,EACT,4RAA4R;gBAC9R,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YAQrC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,4CAA4C,EAAE;gBAC5F,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,UAAU,EAAE,eAAe;iBAC5B,CAAC;aACH,CAAC,CAAA;YAEF,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/C,CAAC;KACF;IACD,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC9B,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;aAC7C;YACD,YAAY,EAAE;gBACZ,sBAAsB,EAAE,QAAQ,CAAC,oBAAoB;aACtD;SACF,CAAA;IACH,CAAC;IACD,OAAO,EAAE;QACP,cAAc,EAAd,wBAAc;KACf;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/index.ts"],"names":[],"mappings":";;;;;AAEA,sEAA6C;AAC7C,oFAA2D;AAC3D,kFAAyD;AACzD,8FAAqE;AAerE,MAAM,WAAW,GAAoC;IAGnD,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,qCAAqC;IAC3C,IAAI,EAAE,OAAO;IACb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,oBAAoB,EAAE;gBACpB,KAAK,EAAE,eAAe;gBACtB,WAAW,EACT,mYAAmY;gBACrY,IAAI,EAAE,QAAQ;aACf;YACD,UAAU,EAAE;gBACV,KAAK,EAAE,aAAa;gBACpB,WAAW,EACT,oKAAoK;gBACtK,IAAI,EAAE,QAAQ;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YAOrC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,4CAA4C,EAAE;gBAC5F,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,UAAU,EAAE,eAAe;iBAC5B,CAAC;aACH,CAAC,CAAA;YAEF,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/C,CAAC;KACF;IACD,aAAa,CAAC,EAAE,IAAI,EAAE;QACpB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;aAC7C;SACF,CAAA;IACH,CAAC;IACD,OAAO,EAAE;QACP,cAAc,EAAd,wBAAc;QACd,qBAAqB,EAArB,+BAAqB;QACrB,oBAAoB,EAApB,8BAAoB;QACpB,0BAA0B,EAA1B,oCAA0B;KAC3B;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -178,7 +178,10 @@ const action = {
178
178
  }
179
179
  }
180
180
  },
181
- perform: async (request, { payload }) => {
181
+ perform: async (request, { payload, settings }) => {
182
+ if (!settings.conversionTrackingId) {
183
+ throw new actions_core_1.IntegrationError('Conversion tracking id is required for this action. Please set it in destination settings.', 'Missing required fields.', 400);
184
+ }
182
185
  const conversionData = formatter_1.cleanData({
183
186
  oid: payload.transaction_id,
184
187
  user_agent: payload.user_agent,
@@ -208,6 +211,9 @@ const action = {
208
211
  try {
209
212
  return await request('https://www.google.com/ads/event/api/v1', {
210
213
  method: 'post',
214
+ searchParams: {
215
+ conversion_tracking_id: settings.conversionTrackingId
216
+ },
211
217
  json: {
212
218
  pii_data: { ...pii_data, address: [address] },
213
219
  ...conversionData
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/postConversion/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/postConversion/index.ts"],"names":[],"mappings":";;AAAA,wDAAqF;AAIrF,2CASoB;AAYpB,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,wCAAwC;IACrD,MAAM,EAAE;QAEN,gBAAgB,EAAE;YAChB,KAAK,EAAE,kBAAkB;YACzB,WAAW,EACT,yMAAyM;YAC3M,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,qEAAqE;YAClF,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;iBACpC;aACF;SACF;QACD,cAAc,EAAE;YACd,KAAK,EAAE,UAAU;YACjB,WAAW,EACT,gSAAgS;YAClS,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,sBAAsB;aAChC;SACF;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EACT,gTAAgT;YAClT,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,qBAAqB;aAC/B;SACF;QACD,eAAe,EAAE;YACf,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,oCAAoC;YACjD,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,aAAa;aACvB;SACF;QAED,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,wDAAwD;YACrE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,oBAAoB;aAC9B;SACF;QACD,aAAa,EAAE;YACb,KAAK,EAAE,eAAe;YACtB,WAAW,EACT,sGAAsG;YACxG,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,uBAAuB;aACjC;SACF;QACD,qBAAqB,EAAE;YACrB,KAAK,EAAE,yCAAyC;YAChD,WAAW,EAAE,uEAAuE;YACpF,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,eAAe;YACtB,WAAW,EACT,kHAAkH;YACpH,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;SACf;QAED,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,WAAW,EACT,iHAAiH;YACnH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;iBACpC;aACF;SACF;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,kEAAkE;YAC/E,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;oBAC7C,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;oBAC3C,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBACxC;aACF;SACF;QACD,SAAS,EAAE;YACT,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,iEAAiE;YAC9E,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC5C,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC1C,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;iBACvC;aACF;SACF;QACD,cAAc,EAAE;YACd,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,sEAAsE;YACnF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;oBAClD,IAAI,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;oBAChD,IAAI,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;iBAC7C;aACF;SACF;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,WAAW,EAAE,4DAA4D;YACzE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE;oBAChD,IAAI,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE;oBAC9C,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;iBAC3C;aACF;SACF;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,8DAA8D;YAC3E,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE;oBACjD,IAAI,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;iBAC5C;aACF;SACF;QACD,SAAS,EAAE;YACT,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,mEAAmE;YAChF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,iCAAiC,EAAE;oBACtD,IAAI,EAAE,EAAE,OAAO,EAAE,iCAAiC,EAAE;oBACpD,IAAI,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;iBACjD;aACF;SACF;QACD,OAAO,EAAE;YACP,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,+DAA+D;YAC5E,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE;oBACnD,IAAI,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE;oBACjD,IAAI,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE;iBAC9C;aACF;SACF;KACF;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE;YAClC,MAAM,IAAI,+BAAgB,CACxB,4FAA4F,EAC5F,0BAA0B,EAC1B,GAAG,CACJ,CAAA;SACF;QAED,MAAM,cAAc,GAAG,qBAAS,CAAC;YAC/B,GAAG,EAAE,OAAO,CAAC,cAAc;YAC3B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,eAAe,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;YAC1D,KAAK,EAAE,OAAO,CAAC,gBAAgB;YAC/B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnC,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG,qBAAS,CAAC;YACxB,iBAAiB,EAAE,2BAAe,CAAC,OAAO,CAAC,UAAU,CAAC;YACtD,gBAAgB,EAAE,0BAAc,CAAC,OAAO,CAAC,SAAS,CAAC;YACnD,qBAAqB,EAAE,wBAAY,CAAC,OAAO,CAAC,cAAc,CAAC;YAC3D,IAAI,EAAE,sBAAU,CAAC,OAAO,CAAC,IAAI,CAAC;YAC9B,MAAM,EAAE,wBAAY,CAAC,OAAO,CAAC,MAAM,CAAC;YACpC,QAAQ,EAAE,OAAO,CAAC,SAAS;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;YAClD,MAAM,IAAI,+BAAgB,CACxB,2KAA2K,EAC3K,0BAA0B,EAC1B,GAAG,CACJ,CAAA;SACF;QAED,MAAM,QAAQ,GAAG,qBAAS,CAAC;YACzB,YAAY,EAAE,uBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;YACxC,mBAAmB,EAAE,CAAC,uBAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;SACzD,CAAC,CAAA;QAEF,IAAI;YACF,OAAO,MAAM,OAAO,CAAC,yCAAyC,EAAE;gBAC9D,MAAM,EAAE,MAAM;gBACd,YAAY,EAAE;oBACZ,sBAAsB,EAAE,QAAQ,CAAC,oBAAoB;iBACtD;gBACD,IAAI,EAAE;oBACJ,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE;oBAC7C,GAAG,cAAc;iBAClB;aACF,CAAC,CAAA;SACH;QAAC,OAAO,GAAG,EAAE;YAIZ,IAAI,GAAG,YAAY,wBAAS,EAAE;gBAC5B,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAA;gBACtC,IAAI,UAAU,KAAK,GAAG,EAAE;oBACtB,MAAM,IAAI,GAAI,GAAG,CAAC,QAA6B,CAAC,IAAmB,CAAA;oBACnE,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,KAAK,qBAAqB,CAAC,CAAA;oBAC9F,IAAI,YAAY,EAAE;wBAChB,MAAM,IAAI,+BAAgB,CAAC,wCAAwC,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAA;qBACjG;iBACF;aACF;YAED,MAAM,GAAG,CAAA;SACV;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,11 @@
1
+ export interface Payload {
2
+ conversion_action: string;
3
+ caller_id: string;
4
+ call_timestamp?: string;
5
+ conversion_timestamp: string;
6
+ value?: number;
7
+ currency?: string;
8
+ custom_variables?: {
9
+ [k: string]: unknown;
10
+ };
11
+ }
@@ -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/google-enhanced-conversions/uploadCallConversion/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const actions_core_1 = require("@segment/actions-core");
4
+ const functions_1 = require("../functions");
5
+ const action = {
6
+ title: 'Upload Call Conversion',
7
+ description: 'Upload an offline call conversion to the Google Ads API.',
8
+ fields: {
9
+ conversion_action: {
10
+ label: 'Conversion Action ID',
11
+ description: 'The ID of the conversion action associated with this conversion. To find the Conversion Action ID, click on your conversion in Google Ads and get the value for ctId in the URL. For example, if the URL is https://ads.google.com/aw/conversions/detail?ocid=00000000&ctId=570000000, your Conversion Action ID is 570000000.',
12
+ type: 'string',
13
+ required: true,
14
+ default: ''
15
+ },
16
+ caller_id: {
17
+ label: 'Caller ID',
18
+ description: 'The caller id from which this call was placed. Caller id is expected to be in E.164 format with preceding + sign. e.g. "+16502531234".',
19
+ type: 'string',
20
+ required: true,
21
+ default: ''
22
+ },
23
+ call_timestamp: {
24
+ label: 'Call Timestamp',
25
+ description: 'The date time at which the call occurred. The timezone must be specified. The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00".',
26
+ type: 'string'
27
+ },
28
+ conversion_timestamp: {
29
+ label: 'Conversion Timestamp',
30
+ description: 'The date time at which the conversion occurred. Must be after the click time. The timezone must be specified. The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00".',
31
+ type: 'string',
32
+ required: true,
33
+ default: {
34
+ '@path': '$.timestamp'
35
+ }
36
+ },
37
+ value: {
38
+ label: 'Value',
39
+ description: 'The value of the conversion for the advertiser.',
40
+ type: 'number',
41
+ default: {
42
+ '@path': '$.properties.total'
43
+ }
44
+ },
45
+ currency: {
46
+ label: 'Currency',
47
+ description: 'Currency associated with the conversion value. This is the ISO 4217 3-character currency code.',
48
+ type: 'string',
49
+ default: {
50
+ '@path': '$.properties.currency'
51
+ }
52
+ },
53
+ custom_variables: {
54
+ label: 'Custom Variables',
55
+ description: 'The custom variables associated with this conversion. See Google’s documentation on how to create custom conversion variables.',
56
+ type: 'object',
57
+ additionalProperties: true,
58
+ defaultObjectUI: 'keyvalue'
59
+ }
60
+ },
61
+ perform: async (request, { settings, payload }) => {
62
+ if (!settings.customerId) {
63
+ throw new actions_core_1.IntegrationError('Customer id is required for this action. Please set it in destination settings.', 'Missing required fields.', 400);
64
+ }
65
+ settings.customerId = settings.customerId.replace(/[^0-9.]+/g, '');
66
+ if (payload.currency) {
67
+ functions_1.verifyCurrency(payload.currency);
68
+ }
69
+ const request_object = {
70
+ conversionAction: `customers/${settings.customerId}/conversionActions/${payload.conversion_action}`,
71
+ callerId: payload.caller_id,
72
+ callStartDateTime: payload.call_timestamp,
73
+ conversionDateTime: payload.conversion_timestamp.replace(/T/, ' ').replace(/\..+/, '+00:00'),
74
+ conversionValue: payload.value,
75
+ currencyCode: payload.currency,
76
+ customVariables: functions_1.formatCustomVariables(payload.custom_variables, settings.customerId)
77
+ };
78
+ const response = await request(`https://googleads.googleapis.com/v11/customers/${settings.customerId}:uploadCallConversions`, {
79
+ method: 'post',
80
+ headers: {
81
+ 'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`
82
+ },
83
+ json: {
84
+ conversions: [request_object],
85
+ partialFailure: true
86
+ }
87
+ });
88
+ if (typeof response.data === 'object' && response.data != null) {
89
+ Object.entries(response.data).forEach(([key, value]) => {
90
+ if (key === 'partialFailureError' && value.code !== 0) {
91
+ throw new actions_core_1.IntegrationError(value.message, 'INVALID_ARGUMENT', 400);
92
+ }
93
+ });
94
+ }
95
+ return response;
96
+ }
97
+ };
98
+ exports.default = action;
99
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadCallConversion/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ export interface Payload {
2
+ conversion_action: string;
3
+ gclid?: string;
4
+ gbraid?: string;
5
+ wbraid?: string;
6
+ conversion_timestamp: string;
7
+ email_address?: string;
8
+ phone_number?: string;
9
+ order_id?: string;
10
+ value?: number;
11
+ currency?: string;
12
+ conversion_environment?: string;
13
+ merchant_id?: string;
14
+ merchant_country_code?: string;
15
+ merchant_language_code?: string;
16
+ local_cost?: number & string;
17
+ items?: {
18
+ product_id?: string;
19
+ quantity?: number;
20
+ price?: number;
21
+ }[];
22
+ custom_variables?: {
23
+ [k: string]: unknown;
24
+ };
25
+ }
@@ -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/google-enhanced-conversions/uploadClickConversion/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const actions_core_1 = require("@segment/actions-core");
4
+ const functions_1 = require("../functions");
5
+ const action = {
6
+ title: 'Upload Click Conversion',
7
+ description: 'Upload an offline click conversion to the Google Ads API.',
8
+ fields: {
9
+ conversion_action: {
10
+ label: 'Conversion Action ID',
11
+ description: 'The ID of the conversion action associated with this conversion. To find the Conversion Action ID, click on your conversion in Google Ads and get the value for ctId in the URL. For example, if the URL is https://ads.google.com/aw/conversions/detail?ocid=00000000&ctId=570000000, your Conversion Action ID is 570000000.',
12
+ type: 'string',
13
+ required: true,
14
+ default: ''
15
+ },
16
+ gclid: {
17
+ label: 'GCLID',
18
+ description: 'The Google click ID (gclid) associated with this conversion.',
19
+ type: 'string',
20
+ default: ''
21
+ },
22
+ gbraid: {
23
+ label: 'GBRAID',
24
+ description: 'The click identifier for clicks associated with app conversions and originating from iOS devices starting with iOS14.',
25
+ type: 'string',
26
+ default: ''
27
+ },
28
+ wbraid: {
29
+ label: 'WBRAID',
30
+ description: 'The click identifier for clicks associated with web conversions and originating from iOS devices starting with iOS14.',
31
+ type: 'string',
32
+ default: ''
33
+ },
34
+ conversion_timestamp: {
35
+ label: 'Conversion Timestamp',
36
+ description: 'The date time at which the conversion occurred. Must be after the click time. The timezone must be specified. The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00".',
37
+ type: 'string',
38
+ required: true,
39
+ default: {
40
+ '@path': '$.timestamp'
41
+ }
42
+ },
43
+ email_address: {
44
+ label: 'Email Address',
45
+ description: 'Email address of the individual who triggered the conversion event. Segment will hash this value before sending to Google.',
46
+ type: 'string',
47
+ format: 'email',
48
+ default: {
49
+ '@if': {
50
+ exists: { '@path': '$.properties.email' },
51
+ then: { '@path': '$.properties.email' },
52
+ else: { '@path': '$context.traits.email' }
53
+ }
54
+ }
55
+ },
56
+ phone_number: {
57
+ label: 'Phone Number',
58
+ description: 'Phone number of the individual who triggered the conversion event, in E.164 standard format, e.g. +14150000000. Segment will hash this value before sending to Google.',
59
+ type: 'string',
60
+ default: {
61
+ '@if': {
62
+ exists: { '@path': '$.properties.phone' },
63
+ then: { '@path': '$.properties.phone' },
64
+ else: { '@path': '$context.traits.phone' }
65
+ }
66
+ }
67
+ },
68
+ order_id: {
69
+ label: 'Order ID',
70
+ description: 'The order ID associated with the conversion. An order id can only be used for one conversion per conversion action.',
71
+ type: 'string',
72
+ default: {
73
+ '@path': '$.properties.orderId'
74
+ }
75
+ },
76
+ value: {
77
+ label: 'Value',
78
+ description: 'The value of the conversion for the advertiser.',
79
+ type: 'number',
80
+ default: {
81
+ '@path': '$.properties.total'
82
+ }
83
+ },
84
+ currency: {
85
+ label: 'Currency',
86
+ description: 'Currency associated with the conversion value. This is the ISO 4217 3-character currency code.',
87
+ type: 'string',
88
+ default: {
89
+ '@path': '$.properties.currency'
90
+ }
91
+ },
92
+ conversion_environment: {
93
+ label: 'Conversion Environment',
94
+ description: 'The environment this conversion was recorded on. e.g. App or Web.',
95
+ type: 'string',
96
+ choices: [
97
+ { label: 'APP', value: 'APP' },
98
+ { label: 'WEB', value: 'WEB' },
99
+ { label: `UNSPECIFIED`, value: 'UNSPECIFIED' }
100
+ ]
101
+ },
102
+ merchant_id: {
103
+ label: 'Merchant Center ID',
104
+ description: 'The ID of the Merchant Center account where the items are uploaded.',
105
+ type: 'string',
106
+ default: ''
107
+ },
108
+ merchant_country_code: {
109
+ label: 'Merchant Center Feed Country Code',
110
+ description: 'The ISO 3166 two-character region code of the Merchant Center feed where the items are uploaded.',
111
+ type: 'string',
112
+ default: ''
113
+ },
114
+ merchant_language_code: {
115
+ label: 'Merchant Center Feed Language Code',
116
+ description: 'The ISO 639-1 language code of the Merchant Center feed where the items are uploaded.',
117
+ type: 'string',
118
+ default: ''
119
+ },
120
+ local_cost: {
121
+ label: 'Local Transaction Cost',
122
+ description: 'Sum of all transaction-level discounts, such as free shipping and coupon discounts for the whole cart.',
123
+ type: 'number',
124
+ default: ''
125
+ },
126
+ items: {
127
+ label: 'Items',
128
+ description: 'Data of the items purchased.',
129
+ type: 'object',
130
+ multiple: true,
131
+ properties: {
132
+ product_id: {
133
+ label: 'Product ID',
134
+ type: 'string',
135
+ description: 'The ID of the item sold.'
136
+ },
137
+ quantity: {
138
+ label: 'Quantity',
139
+ type: 'number',
140
+ description: 'Number of items sold.'
141
+ },
142
+ price: {
143
+ label: 'Price',
144
+ type: 'number',
145
+ description: 'Unit price excluding tax, shipping, and any transaction level discounts.'
146
+ }
147
+ },
148
+ default: {
149
+ '@arrayPath': [
150
+ '$.properties.products',
151
+ {
152
+ product_id: {
153
+ '@path': '$.product_id'
154
+ },
155
+ quantity: {
156
+ '@path': '$.quantity'
157
+ },
158
+ price: {
159
+ '@path': '$.price'
160
+ }
161
+ }
162
+ ]
163
+ }
164
+ },
165
+ custom_variables: {
166
+ label: 'Custom Variables',
167
+ description: 'The custom variables associated with this conversion. See Google’s documentation on how to create custom conversion variables.',
168
+ type: 'object',
169
+ additionalProperties: true,
170
+ defaultObjectUI: 'keyvalue'
171
+ }
172
+ },
173
+ perform: async (request, { settings, payload }) => {
174
+ if (!settings.customerId) {
175
+ throw new actions_core_1.IntegrationError('Customer id is required for this action. Please set it in destination settings.', 'Missing required fields.', 400);
176
+ }
177
+ settings.customerId = settings.customerId.replace(/[^0-9.]+/g, '');
178
+ let cartItems = [];
179
+ if (payload.items) {
180
+ cartItems = payload.items.map((product) => {
181
+ return {
182
+ productId: product.product_id,
183
+ quantity: product.quantity,
184
+ unitPrice: product.price
185
+ };
186
+ });
187
+ }
188
+ if (payload.currency) {
189
+ functions_1.verifyCurrency(payload.currency);
190
+ }
191
+ const request_object = {
192
+ conversionAction: `customers/${settings.customerId}/conversionActions/${payload.conversion_action}`,
193
+ conversionDateTime: payload.conversion_timestamp.replace(/T/, ' ').replace(/\..+/, '+00:00'),
194
+ gclid: payload.gclid,
195
+ gbraid: payload.gbraid,
196
+ wbraid: payload.wbraid,
197
+ orderId: payload.order_id,
198
+ conversionValue: payload.value,
199
+ currencyCode: payload.currency,
200
+ conversionEnvironment: payload.conversion_environment,
201
+ cartData: {
202
+ merchantId: payload.merchant_id,
203
+ feedCountryCode: payload.merchant_country_code,
204
+ feedLanguageCode: payload.merchant_language_code,
205
+ localTransactionCost: payload.local_cost,
206
+ items: cartItems
207
+ },
208
+ userIdentifiers: [],
209
+ customVariables: functions_1.formatCustomVariables(payload.custom_variables, settings.customerId)
210
+ };
211
+ if (payload.email_address) {
212
+ request_object.userIdentifiers.push({ hashedEmail: functions_1.hash(payload.email_address) });
213
+ }
214
+ if (payload.phone_number) {
215
+ request_object.userIdentifiers.push({ hashedPhoneNumber: functions_1.hash(payload.phone_number) });
216
+ }
217
+ const response = await request(`https://googleads.googleapis.com/v11/customers/${settings.customerId}:uploadClickConversions`, {
218
+ method: 'post',
219
+ headers: {
220
+ 'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`
221
+ },
222
+ json: {
223
+ conversions: [request_object],
224
+ partialFailure: true
225
+ }
226
+ });
227
+ if (typeof response.data === 'object' && response.data != null) {
228
+ Object.entries(response.data).forEach(([key, value]) => {
229
+ if (key === 'partialFailureError' && value.code !== 0) {
230
+ throw new actions_core_1.IntegrationError(value.message, 'INVALID_ARGUMENT', 400);
231
+ }
232
+ });
233
+ }
234
+ return response;
235
+ }
236
+ };
237
+ exports.default = action;
238
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadClickConversion/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAI1E,4CAA0E;AAE1E,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,2DAA2D;IACxE,MAAM,EAAE;QACN,iBAAiB,EAAE;YACjB,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EACT,gUAAgU;YAClU,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,8DAA8D;YAC3E,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,WAAW,EACT,uHAAuH;YACzH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,WAAW,EACT,uHAAuH;YACzH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EACT,8LAA8L;YAChM,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,aAAa;aACvB;SACF;QACD,aAAa,EAAE;YACb,KAAK,EAAE,eAAe;YACtB,WAAW,EACT,4HAA4H;YAC9H,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;iBAC3C;aACF;SACF;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,WAAW,EACT,wKAAwK;YAC1K,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;iBAC3C;aACF;SACF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EACT,qHAAqH;YACvH,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,sBAAsB;aAChC;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,iDAAiD;YAC9D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,oBAAoB;aAC9B;SACF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,gGAAgG;YAC7G,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,uBAAuB;aACjC;SACF;QACD,sBAAsB,EAAE;YACtB,KAAK,EAAE,wBAAwB;YAC/B,WAAW,EAAE,mEAAmE;YAChF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;aAC/C;SACF;QACD,WAAW,EAAE;YACX,KAAK,EAAE,oBAAoB;YAC3B,WAAW,EAAE,qEAAqE;YAClF,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,qBAAqB,EAAE;YACrB,KAAK,EAAE,mCAAmC;YAC1C,WAAW,EAAE,kGAAkG;YAC/G,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,sBAAsB,EAAE;YACtB,KAAK,EAAE,oCAAoC;YAC3C,WAAW,EAAE,uFAAuF;YACpG,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,UAAU,EAAE;YACV,KAAK,EAAE,wBAAwB;YAC/B,WAAW,EACT,wGAAwG;YAC1G,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,8BAA8B;YAC3C,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0BAA0B;iBACxC;gBACD,QAAQ,EAAE;oBACR,KAAK,EAAE,UAAU;oBACjB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uBAAuB;iBACrC;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,OAAO;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,0EAA0E;iBACxF;aACF;YACD,OAAO,EAAE;gBACP,YAAY,EAAE;oBACZ,uBAAuB;oBACvB;wBACE,UAAU,EAAE;4BACV,OAAO,EAAE,cAAc;yBACxB;wBACD,QAAQ,EAAE;4BACR,OAAO,EAAE,YAAY;yBACtB;wBACD,KAAK,EAAE;4BACL,OAAO,EAAE,SAAS;yBACnB;qBACF;iBACF;aACF;SACF;QACD,gBAAgB,EAAE;YAChB,KAAK,EAAE,kBAAkB;YACzB,WAAW,EACT,gIAAgI;YAClI,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,IAAI;YAC1B,eAAe,EAAE,UAAU;SAC5B;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;YACxB,MAAM,IAAI,+BAAgB,CACxB,iFAAiF,EACjF,0BAA0B,EAC1B,GAAG,CACJ,CAAA;SACF;QACD,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAElE,IAAI,SAAS,GAAe,EAAE,CAAA;QAC9B,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBACxC,OAAO;oBACL,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,KAAK;iBACb,CAAA;YACf,CAAC,CAAC,CAAA;SACH;QAED,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,0BAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;SACjC;QAED,MAAM,cAAc,GAA2B;YAC7C,gBAAgB,EAAE,aAAa,QAAQ,CAAC,UAAU,sBAAsB,OAAO,CAAC,iBAAiB,EAAE;YACnG,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC;YAC5F,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,QAAQ;YACzB,eAAe,EAAE,OAAO,CAAC,KAAK;YAC9B,YAAY,EAAE,OAAO,CAAC,QAAQ;YAC9B,qBAAqB,EAAE,OAAO,CAAC,sBAAsB;YACrD,QAAQ,EAAE;gBACR,UAAU,EAAE,OAAO,CAAC,WAAW;gBAC/B,eAAe,EAAE,OAAO,CAAC,qBAAqB;gBAC9C,gBAAgB,EAAE,OAAO,CAAC,sBAAsB;gBAChD,oBAAoB,EAAE,OAAO,CAAC,UAAU;gBACxC,KAAK,EAAE,SAAS;aACjB;YACD,eAAe,EAAE,EAAE;YACnB,eAAe,EAAE,iCAAqB,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,UAAU,CAAC;SACtF,CAAA;QAED,IAAI,OAAO,CAAC,aAAa,EAAE;YACzB,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,gBAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;SAClF;QAED,IAAI,OAAO,CAAC,YAAY,EAAE;YACxB,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,gBAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;SACvF;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,kDAAkD,QAAQ,CAAC,UAAU,yBAAyB,EAC9F;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,iBAAiB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE;aAC5D;YACD,IAAI,EAAE;gBACJ,WAAW,EAAE,CAAC,cAAc,CAAC;gBAC7B,cAAc,EAAE,IAAI;aACrB;SACF,CACF,CAAA;QAGD,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,EAAE;YAC9D,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACrD,IAAI,GAAG,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE;oBACrD,MAAM,IAAI,+BAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;iBACnE;YACH,CAAC,CAAC,CAAA;SACH;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,5 @@
1
+ export interface CartItem {
2
+ productId?: string;
3
+ quantity?: number;
4
+ unitPrice?: number;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadClickConversion/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ export interface Payload {
2
+ conversion_action: string;
3
+ adjustment_type: string;
4
+ adjustment_timestamp: string;
5
+ order_id?: string;
6
+ gclid?: string;
7
+ conversion_timestamp?: string;
8
+ restatement_value?: number & string;
9
+ restatement_currency_code?: string;
10
+ email_address?: string;
11
+ phone_number?: string;
12
+ first_name?: string;
13
+ last_name?: string;
14
+ city?: string;
15
+ state?: string;
16
+ country?: string;
17
+ postal_code?: string;
18
+ street_address?: string;
19
+ user_agent?: string;
20
+ }
@@ -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/google-enhanced-conversions/uploadConversionAdjustment/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;