@segment/action-destinations 3.322.0 → 3.323.1-hadron.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 (100) hide show
  1. package/dist/destinations/braze/createAliasV2.types.d.ts +5 -0
  2. package/dist/destinations/braze/createAliasV2.types.js +3 -0
  3. package/dist/destinations/braze/createAliasV2.types.js.map +1 -0
  4. package/dist/destinations/braze/identifyUserV2.types.d.ts +8 -0
  5. package/dist/destinations/braze/identifyUserV2.types.js +3 -0
  6. package/dist/destinations/braze/identifyUserV2.types.js.map +1 -0
  7. package/dist/destinations/braze/trackEvent2/generated-types.d.ts +16 -0
  8. package/dist/destinations/braze/trackEvent2/generated-types.js +3 -0
  9. package/dist/destinations/braze/trackEvent2/generated-types.js.map +1 -0
  10. package/dist/destinations/braze/trackEvent2/index.d.ts +5 -0
  11. package/dist/destinations/braze/trackEvent2/index.js +117 -0
  12. package/dist/destinations/braze/trackEvent2/index.js.map +1 -0
  13. package/dist/destinations/braze/trackPurchase2/generated-types.d.ts +22 -0
  14. package/dist/destinations/braze/trackPurchase2/generated-types.js +3 -0
  15. package/dist/destinations/braze/trackPurchase2/generated-types.js.map +1 -0
  16. package/dist/destinations/braze/trackPurchase2/index.d.ts +5 -0
  17. package/dist/destinations/braze/trackPurchase2/index.js +135 -0
  18. package/dist/destinations/braze/trackPurchase2/index.js.map +1 -0
  19. package/dist/destinations/campaign-manager-360/common-fields.d.ts +3 -0
  20. package/dist/destinations/campaign-manager-360/common-fields.js +306 -0
  21. package/dist/destinations/campaign-manager-360/common-fields.js.map +1 -0
  22. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/generated-types.d.ts +45 -0
  23. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/generated-types.js +3 -0
  24. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/generated-types.js.map +1 -0
  25. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/index.d.ts +5 -0
  26. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/index.js +86 -0
  27. package/dist/destinations/campaign-manager-360/conversionAdjustmentUpload/index.js.map +1 -0
  28. package/dist/destinations/campaign-manager-360/conversionUpload/generated-types.d.ts +50 -0
  29. package/dist/destinations/campaign-manager-360/conversionUpload/generated-types.js +3 -0
  30. package/dist/destinations/campaign-manager-360/conversionUpload/generated-types.js.map +1 -0
  31. package/dist/destinations/campaign-manager-360/conversionUpload/index.d.ts +5 -0
  32. package/dist/destinations/campaign-manager-360/conversionUpload/index.js +131 -0
  33. package/dist/destinations/campaign-manager-360/conversionUpload/index.js.map +1 -0
  34. package/dist/destinations/campaign-manager-360/generated-types.d.ts +5 -0
  35. package/dist/destinations/campaign-manager-360/generated-types.js +3 -0
  36. package/dist/destinations/campaign-manager-360/generated-types.js.map +1 -0
  37. package/dist/destinations/campaign-manager-360/index.d.ts +4 -0
  38. package/dist/destinations/campaign-manager-360/index.js +63 -0
  39. package/dist/destinations/campaign-manager-360/index.js.map +1 -0
  40. package/dist/destinations/campaign-manager-360/types.d.ts +116 -0
  41. package/dist/destinations/campaign-manager-360/types.js +23 -0
  42. package/dist/destinations/campaign-manager-360/types.js.map +1 -0
  43. package/dist/destinations/campaign-manager-360/utils.d.ts +21 -0
  44. package/dist/destinations/campaign-manager-360/utils.js +175 -0
  45. package/dist/destinations/campaign-manager-360/utils.js.map +1 -0
  46. package/dist/destinations/first-party-dv360/addToAudContactInfo/generated-types.d.ts +9 -0
  47. package/dist/destinations/first-party-dv360/addToAudContactInfo/generated-types.js +3 -0
  48. package/dist/destinations/first-party-dv360/addToAudContactInfo/generated-types.js.map +1 -0
  49. package/dist/destinations/first-party-dv360/addToAudContactInfo/index.d.ts +5 -0
  50. package/dist/destinations/first-party-dv360/addToAudContactInfo/index.js +32 -0
  51. package/dist/destinations/first-party-dv360/addToAudContactInfo/index.js.map +1 -0
  52. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/generated-types.d.ts +4 -0
  53. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/generated-types.js +3 -0
  54. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/generated-types.js.map +1 -0
  55. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/index.d.ts +5 -0
  56. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/index.js +27 -0
  57. package/dist/destinations/first-party-dv360/addToAudMobileDeviceId/index.js.map +1 -0
  58. package/dist/destinations/first-party-dv360/addToList.types.d.ts +9 -0
  59. package/dist/destinations/first-party-dv360/addToList.types.js +3 -0
  60. package/dist/destinations/first-party-dv360/addToList.types.js.map +1 -0
  61. package/dist/destinations/first-party-dv360/properties.d.ts +9 -0
  62. package/dist/destinations/first-party-dv360/properties.js +69 -0
  63. package/dist/destinations/first-party-dv360/properties.js.map +1 -0
  64. package/dist/destinations/hubspot/customEvent/client.d.ts +2 -2
  65. package/dist/destinations/hubspot/customEvent/client.js.map +1 -1
  66. package/dist/destinations/hubspot/customEvent/dynamic-fields.js +2 -2
  67. package/dist/destinations/hubspot/customEvent/dynamic-fields.js.map +1 -1
  68. package/dist/destinations/hubspot/customEvent/event-completion.d.ts +3 -0
  69. package/dist/destinations/hubspot/customEvent/event-completion.js +17 -0
  70. package/dist/destinations/hubspot/customEvent/event-completion.js.map +1 -0
  71. package/dist/destinations/hubspot/customEvent/index.js +36 -42
  72. package/dist/destinations/hubspot/customEvent/index.js.map +1 -1
  73. package/dist/destinations/hubspot/customEvent/types.d.ts +11 -4
  74. package/dist/destinations/hubspot/customEvent/types.js +1 -2
  75. package/dist/destinations/hubspot/customEvent/types.js.map +1 -1
  76. package/dist/destinations/hubspot/customEvent/utils.d.ts +10 -8
  77. package/dist/destinations/hubspot/customEvent/utils.js +155 -189
  78. package/dist/destinations/hubspot/customEvent/utils.js.map +1 -1
  79. package/dist/destinations/hubspot/customEvent/validation.d.ts +3 -0
  80. package/dist/destinations/hubspot/customEvent/validation.js +66 -0
  81. package/dist/destinations/hubspot/customEvent/validation.js.map +1 -0
  82. package/dist/destinations/s3/syncAudienceToS3/generated-types.d.ts +53 -0
  83. package/dist/destinations/s3/syncAudienceToS3/generated-types.js +3 -0
  84. package/dist/destinations/s3/syncAudienceToS3/generated-types.js.map +1 -0
  85. package/dist/destinations/s3/syncAudienceToS3/index.d.ts +5 -0
  86. package/dist/destinations/s3/syncAudienceToS3/index.js +22 -0
  87. package/dist/destinations/s3/syncAudienceToS3/index.js.map +1 -0
  88. package/dist/destinations/s3/syncEventsToS3/generated-types.d.ts +44 -0
  89. package/dist/destinations/s3/syncEventsToS3/generated-types.js +3 -0
  90. package/dist/destinations/s3/syncEventsToS3/generated-types.js.map +1 -0
  91. package/dist/destinations/s3/syncEventsToS3/index.d.ts +5 -0
  92. package/dist/destinations/s3/syncEventsToS3/index.js +19 -0
  93. package/dist/destinations/s3/syncEventsToS3/index.js.map +1 -0
  94. package/dist/destinations/s3/syncToS3.types.d.ts +44 -0
  95. package/dist/destinations/s3/syncToS3.types.js +3 -0
  96. package/dist/destinations/s3/syncToS3.types.js.map +1 -0
  97. package/dist/destinations/webhook-extensible/types.d.ts +6 -0
  98. package/dist/destinations/webhook-extensible/types.js +3 -0
  99. package/dist/destinations/webhook-extensible/types.js.map +1 -0
  100. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/campaign-manager-360/conversionUpload/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export interface Settings {
2
+ profileId: string;
3
+ defaultFloodlightActivityId?: string;
4
+ defaultFloodlightConfigurationId?: string;
5
+ }
@@ -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/campaign-manager-360/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { DestinationDefinition } from '@segment/actions-core';
2
+ import type { Settings } from './generated-types';
3
+ declare const destination: DestinationDefinition<Settings>;
4
+ export default destination;
@@ -0,0 +1,63 @@
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 conversionUpload_1 = __importDefault(require("./conversionUpload"));
7
+ const conversionAdjustmentUpload_1 = __importDefault(require("./conversionAdjustmentUpload"));
8
+ const destination = {
9
+ name: 'Campaign Manager 360',
10
+ slug: 'campaign-manager-360',
11
+ mode: 'cloud',
12
+ authentication: {
13
+ scheme: 'oauth2',
14
+ fields: {
15
+ profileId: {
16
+ label: 'Profile ID',
17
+ description: 'The ID of the Campaign Manager 360 profile you want to use.',
18
+ type: 'string',
19
+ required: true
20
+ },
21
+ defaultFloodlightActivityId: {
22
+ label: 'Default Floodlight Activity ID',
23
+ description: 'The Default Floodlight activity ID associated with all the mappings. Can be overridden in the mapping.',
24
+ type: 'string',
25
+ required: false
26
+ },
27
+ defaultFloodlightConfigurationId: {
28
+ label: 'Default Floodlight Configuration ID',
29
+ description: 'The Default Floodlight configuration ID associated with all the mappings. Can be overridden in the mapping.',
30
+ type: 'string',
31
+ required: false
32
+ }
33
+ },
34
+ testAuthentication: (_request) => {
35
+ return true;
36
+ },
37
+ refreshAccessToken: async (request, { auth }) => {
38
+ const response = await request('https://www.googleapis.com/oauth2/v4/token', {
39
+ method: 'POST',
40
+ body: new URLSearchParams({
41
+ refresh_token: auth.refreshToken,
42
+ client_id: auth.clientId,
43
+ client_secret: auth.clientSecret,
44
+ grant_type: 'refresh_token'
45
+ })
46
+ });
47
+ return { accessToken: response.data.access_token };
48
+ }
49
+ },
50
+ extendRequest({ auth }) {
51
+ return {
52
+ headers: {
53
+ authorization: `Bearer ${auth?.accessToken}`
54
+ }
55
+ };
56
+ },
57
+ actions: {
58
+ conversionUpload: conversionUpload_1.default,
59
+ conversionAdjustmentUpload: conversionAdjustmentUpload_1.default
60
+ }
61
+ };
62
+ exports.default = destination;
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/campaign-manager-360/index.ts"],"names":[],"mappings":";;;;;AAGA,0EAAiD;AAGjD,8FAAqE;AAErE,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,SAAS,EAAE;gBACT,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,6DAA6D;gBAC1E,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,2BAA2B,EAAE;gBAC3B,KAAK,EAAE,gCAAgC;gBACvC,WAAW,EACT,wGAAwG;gBAC1G,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;YACD,gCAAgC,EAAE;gBAChC,KAAK,EAAE,qCAAqC;gBAC5C,WAAW,EACT,6GAA6G;gBAC/G,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;SACF;QACD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,EAAE;YAE/B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,4CAA4C,EAC5C;gBACE,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,CACF,CAAA;YAED,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QACpD,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;IAED,OAAO,EAAE;QACP,gBAAgB,EAAhB,0BAAgB;QAChB,0BAA0B,EAA1B,oCAA0B;KAC3B;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -0,0 +1,116 @@
1
+ export interface AuthTokenResp {
2
+ access_token: string;
3
+ scope: string;
4
+ expires_in: number;
5
+ token_type: string;
6
+ }
7
+ export interface AddressInfo {
8
+ hashedFirstName?: string;
9
+ hashedLastName?: string;
10
+ city?: string;
11
+ state?: string;
12
+ countryCode?: string;
13
+ postalCode?: string;
14
+ hashedStreetAddress?: string;
15
+ }
16
+ export interface UpdateRequest {
17
+ conversions: Conversion[];
18
+ encryptionInfo?: EncryptionInfo;
19
+ kind: 'dfareporting#conversionsBatchUpdateRequest';
20
+ }
21
+ export interface InsertRequest {
22
+ conversions: Conversion[];
23
+ encryptionInfo?: EncryptionInfo;
24
+ kind: 'dfareporting#conversionsBatchInsertRequest';
25
+ }
26
+ export declare type CartData = {
27
+ merchantId: string;
28
+ merchantFeedLabel: string;
29
+ merchantFeedLanguage: string;
30
+ items: CartDataItem[];
31
+ };
32
+ export declare type CartDataItem = {
33
+ itemId: string;
34
+ quantity: number;
35
+ unitPrice: number;
36
+ };
37
+ export declare type Conversion = ConversionBase & {
38
+ customVariables?: CustomVariable[];
39
+ encryptedUserIdCandidates?: string[];
40
+ };
41
+ declare type ExactlyOne<T, Keys extends keyof T = keyof T> = {
42
+ [K in Keys]: Pick<T, K> & Partial<Record<Exclude<Keys, K>, never>>;
43
+ }[Keys];
44
+ declare type ExactlyOneIdentifier = ExactlyOne<{
45
+ encryptedUserId?: string;
46
+ mobileDeviceId?: string;
47
+ matchId?: string;
48
+ gclid?: string;
49
+ dclid?: string;
50
+ impressionId?: string;
51
+ encryptedUserIdCandidates?: string[];
52
+ }>;
53
+ export declare type ConversionBase = ExactlyOneIdentifier & {
54
+ adUserDataConsent?: ConsentType | undefined;
55
+ cartData?: CartData | undefined;
56
+ childDirectedTreatment?: boolean | undefined;
57
+ dclid?: string | undefined;
58
+ encryptedUserId?: string | undefined;
59
+ floodlightActivityId: string;
60
+ floodlightConfigurationId: string;
61
+ gclid?: string | undefined;
62
+ impressionId?: string | undefined;
63
+ kind: 'dfareporting#conversion';
64
+ limitAdTracking?: boolean | undefined;
65
+ matchId?: string | undefined;
66
+ mobileDeviceId?: string | undefined;
67
+ nonPersonalizedAd?: boolean | undefined;
68
+ ordinal: string;
69
+ quantity: string;
70
+ timestampMicros: string;
71
+ treatmentForUnderage?: boolean | undefined;
72
+ userIdentifiers?: UserIdentifier[];
73
+ value: number;
74
+ };
75
+ export interface CustomVariable {
76
+ type: CustomVarTypeChoices;
77
+ value: string;
78
+ kind: 'dfareporting#customFloodlightVariable';
79
+ }
80
+ export interface EncryptionInfo {
81
+ encryptionEntityId: string;
82
+ encryptionEntityType: EntityType;
83
+ encryptionSource: Source;
84
+ kind: 'dfareporting#encryptionInfo';
85
+ }
86
+ export declare type UserIdentifier = {
87
+ hashedEmail: string;
88
+ } | {
89
+ hashedPhoneNumber: string;
90
+ } | {
91
+ addressInfo: AddressInfo;
92
+ };
93
+ export declare const ConsentType: {
94
+ readonly GRANTED: "GRANTED";
95
+ readonly DENIED: "DENIED";
96
+ };
97
+ export declare type ConsentType = typeof ConsentType[keyof typeof ConsentType];
98
+ export declare const EntityType: {
99
+ readonly ADWORDS_CUSTOMER: "ADWORDS_CUSTOMER";
100
+ readonly DBM_ADVERTISER: "DBM_ADVERTISER";
101
+ readonly DBM_PARTNER: "DBM_PARTNER";
102
+ readonly DCM_ACCOUNT: "DCM_ACCOUNT";
103
+ readonly DCM_ADVERTISER: "DCM_ADVERTISER";
104
+ readonly ENCRYPTION_ENTITY_TYPE_UNKNOWN: "ENCRYPTION_ENTITY_TYPE_UNKNOWN";
105
+ readonly DFP_NETWORK_CODE: "DFP_NETWORK_CODE";
106
+ };
107
+ export declare type EntityType = typeof EntityType[keyof typeof EntityType];
108
+ export declare const Source: {
109
+ readonly AD_SERVING: "AD_SERVING";
110
+ readonly ENCRYPTION_SCOPE_UNKNOWN: "ENCRYPTION_SCOPE_UNKNOWN";
111
+ readonly DATA_TRANSFER: "DATA_TRANSFER";
112
+ };
113
+ export declare type Source = typeof Source[keyof typeof Source];
114
+ export declare const CustomVarTypeChoices: string[];
115
+ export declare type CustomVarTypeChoices = typeof CustomVarTypeChoices[number];
116
+ export {};
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomVarTypeChoices = exports.Source = exports.EntityType = exports.ConsentType = void 0;
4
+ exports.ConsentType = {
5
+ GRANTED: 'GRANTED',
6
+ DENIED: 'DENIED'
7
+ };
8
+ exports.EntityType = {
9
+ ADWORDS_CUSTOMER: 'ADWORDS_CUSTOMER',
10
+ DBM_ADVERTISER: 'DBM_ADVERTISER',
11
+ DBM_PARTNER: 'DBM_PARTNER',
12
+ DCM_ACCOUNT: 'DCM_ACCOUNT',
13
+ DCM_ADVERTISER: 'DCM_ADVERTISER',
14
+ ENCRYPTION_ENTITY_TYPE_UNKNOWN: 'ENCRYPTION_ENTITY_TYPE_UNKNOWN',
15
+ DFP_NETWORK_CODE: 'DFP_NETWORK_CODE'
16
+ };
17
+ exports.Source = {
18
+ AD_SERVING: 'AD_SERVING',
19
+ ENCRYPTION_SCOPE_UNKNOWN: 'ENCRYPTION_SCOPE_UNKNOWN',
20
+ DATA_TRANSFER: 'DATA_TRANSFER'
21
+ };
22
+ exports.CustomVarTypeChoices = Array.from({ length: 100 }, (_, i) => `U${i + 1}`);
23
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/destinations/campaign-manager-360/types.ts"],"names":[],"mappings":";;;AAuGa,QAAA,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;CACR,CAAA;AAIG,QAAA,UAAU,GAAG;IACxB,gBAAgB,EAAE,kBAAkB;IACpC,cAAc,EAAE,gBAAgB;IAChC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,gBAAgB;IAChC,8BAA8B,EAAE,gCAAgC;IAChE,gBAAgB,EAAE,kBAAkB;CAC5B,CAAA;AAIG,QAAA,MAAM,GAAG;IACpB,UAAU,EAAE,YAAY;IACxB,wBAAwB,EAAE,0BAA0B;IACpD,aAAa,EAAE,eAAe;CACtB,CAAA;AAIG,QAAA,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAC5C,EAAE,MAAM,EAAE,GAAG,EAAE,EACf,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACtB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { RequestClient } from '@segment/actions-core';
2
+ import { Payload as UploadPayload } from './conversionUpload/generated-types';
3
+ import { Payload as Adjustayload } from './conversionAdjustmentUpload/generated-types';
4
+ import { AuthTokens } from '@segment/actions-core/destination-kit/parse-settings';
5
+ import { Settings } from './generated-types';
6
+ import { InsertRequest } from './types';
7
+ export declare function send(request: RequestClient, settings: Settings, payloads: UploadPayload[] | Adjustayload[], isAdjustment: boolean, auth?: AuthTokens): Promise<import("@segment/actions-core/src").ModifiedResponse<unknown>>;
8
+ export declare function getJSON(payloads: UploadPayload[] | Adjustayload[], settings: Settings): InsertRequest;
9
+ export declare function maybeHash(value: string | undefined): string | undefined;
10
+ export declare function getCustomVarTypeChoices(): Array<{
11
+ value: string;
12
+ label: string;
13
+ }>;
14
+ export declare function getEntityTypeChoices(): Array<{
15
+ value: string;
16
+ label: string;
17
+ }>;
18
+ export declare function getSources(): Array<{
19
+ value: string;
20
+ label: string;
21
+ }>;
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSources = exports.getEntityTypeChoices = exports.getCustomVarTypeChoices = exports.maybeHash = exports.getJSON = exports.send = void 0;
4
+ const crypto_1 = require("crypto");
5
+ const actions_core_1 = require("@segment/actions-core");
6
+ const types_1 = require("./types");
7
+ async function send(request, settings, payloads, isAdjustment, auth) {
8
+ const json = getJSON(payloads, settings);
9
+ if (json.conversions.length === 0) {
10
+ maybeThrow(`No valid payloads found in batch of size ${payloads.length}`, true);
11
+ }
12
+ const response = await request(`https://dfareporting.googleapis.com/dfareporting/v4/userprofiles/${settings.profileId}/conversions/batch` +
13
+ (isAdjustment ? 'update' : 'insert'), {
14
+ method: 'POST',
15
+ headers: {
16
+ Authorization: `Bearer ${auth?.accessToken}`,
17
+ 'Content-Type': 'application/json',
18
+ Host: 'dfareporting.googleapis.com'
19
+ },
20
+ json
21
+ });
22
+ return response;
23
+ }
24
+ exports.send = send;
25
+ function getJSON(payloads, settings) {
26
+ const json = {
27
+ conversions: [],
28
+ kind: 'dfareporting#conversionsBatchInsertRequest'
29
+ };
30
+ const shouldThrow = payloads.length === 1;
31
+ for (const payload of payloads) {
32
+ const { customVariables, requiredId: { encryptedUserIdCandidates } } = payload;
33
+ const { requiredId: { gclid, dclid, encryptedUserId, mobileDeviceId, matchId, impressionId }, encryptionInfo, adUserDataConsent, cartDataItems, merchantId, merchantFeedLabel, merchantFeedLanguage, userDetails, floodlightActivityId, floodlightConfigurationId, timestamp, value, ordinal, quantity, limitAdTracking, childDirectedTreatment, nonPersonalizedAd, treatmentForUnderage } = payload;
34
+ if ([gclid, dclid, encryptedUserId, mobileDeviceId, matchId, impressionId, encryptedUserIdCandidates].filter(Boolean)
35
+ .length !== 1) {
36
+ maybeThrow('Exactly one of Google Click ID, Display Click ID, Encrypted User ID, Mobile Device ID, Match ID, Impression ID or Encrypted User ID Candidates is required', shouldThrow);
37
+ continue;
38
+ }
39
+ if (!floodlightActivityId && !settings.defaultFloodlightActivityId) {
40
+ maybeThrow('Floodlight Activity ID is required', shouldThrow);
41
+ continue;
42
+ }
43
+ if (!floodlightConfigurationId && !settings.defaultFloodlightConfigurationId) {
44
+ maybeThrow('Floodlight Configuration ID is required', shouldThrow);
45
+ continue;
46
+ }
47
+ if ((encryptedUserId || encryptedUserIdCandidates) && !encryptionInfo) {
48
+ maybeThrow('Encrypted Info field should be populated if either Encrypted User ID or Encrypted User ID Candidates fields are populated', shouldThrow);
49
+ continue;
50
+ }
51
+ const conversion = {
52
+ adUserDataConsent: adUserDataConsent,
53
+ cartData: (() => {
54
+ if (!Array.isArray(cartDataItems) ||
55
+ cartDataItems.length === 0 ||
56
+ merchantId ||
57
+ !merchantFeedLabel ||
58
+ !merchantFeedLanguage) {
59
+ return undefined;
60
+ }
61
+ return {
62
+ merchantId,
63
+ merchantFeedLabel,
64
+ merchantFeedLanguage,
65
+ items: cartDataItems
66
+ };
67
+ })(),
68
+ childDirectedTreatment: childDirectedTreatment ?? undefined,
69
+ dclid: dclid ?? undefined,
70
+ encryptedUserId: encryptedUserId ?? undefined,
71
+ floodlightActivityId: (floodlightActivityId ?? settings.defaultFloodlightActivityId),
72
+ floodlightConfigurationId: (floodlightConfigurationId ?? settings.defaultFloodlightConfigurationId),
73
+ gclid: gclid ?? undefined,
74
+ impressionId: impressionId ?? undefined,
75
+ kind: 'dfareporting#conversion',
76
+ limitAdTracking: limitAdTracking ?? undefined,
77
+ matchId: matchId ?? undefined,
78
+ mobileDeviceId: mobileDeviceId ?? undefined,
79
+ nonPersonalizedAd: nonPersonalizedAd ?? undefined,
80
+ ordinal,
81
+ quantity,
82
+ timestampMicros: (() => {
83
+ return String(BigInt(new Date(timestamp).getTime()));
84
+ })(),
85
+ treatmentForUnderage: treatmentForUnderage ?? undefined,
86
+ userIdentifiers: (() => {
87
+ const { email, phone, firstName, lastName, streetAddress, city, state, postalCode, countryCode } = userDetails ?? {};
88
+ const identifiers = [];
89
+ if (email) {
90
+ identifiers.push({ hashedEmail: maybeHash(email) });
91
+ }
92
+ if (phone) {
93
+ identifiers.push({ hashedPhoneNumber: maybeHash(phone) });
94
+ }
95
+ if (firstName || lastName || streetAddress || city || state || postalCode || countryCode) {
96
+ const addressInfo = {
97
+ hashedFirstName: maybeHash(firstName),
98
+ hashedLastName: maybeHash(lastName),
99
+ hashedStreetAddress: maybeHash(streetAddress),
100
+ city: city ?? undefined,
101
+ state: state ?? undefined,
102
+ postalCode: postalCode ?? undefined,
103
+ countryCode: countryCode ?? undefined
104
+ };
105
+ identifiers.push({ addressInfo });
106
+ }
107
+ return identifiers;
108
+ })(),
109
+ value,
110
+ customVariables: Array.isArray(customVariables)
111
+ ? customVariables
112
+ .filter((c) => c.type.length > 0 && c.value.length > 0)
113
+ .map((c) => ({
114
+ type: c.type,
115
+ value: c.value,
116
+ kind: 'dfareporting#customFloodlightVariable'
117
+ }))
118
+ : [],
119
+ encryptedUserIdCandidates: encryptedUserIdCandidates
120
+ ?.split(',')
121
+ .map(maybeHash)
122
+ .filter((str) => str !== undefined) ?? []
123
+ };
124
+ json.conversions.push(conversion);
125
+ json.encryptionInfo =
126
+ encryptedUserId || encryptedUserIdCandidates
127
+ ? {
128
+ ...encryptionInfo,
129
+ kind: 'dfareporting#encryptionInfo'
130
+ }
131
+ : undefined;
132
+ }
133
+ return json;
134
+ }
135
+ exports.getJSON = getJSON;
136
+ function maybeThrow(message, shouldThrow) {
137
+ if (shouldThrow) {
138
+ throw new actions_core_1.PayloadValidationError(message);
139
+ }
140
+ }
141
+ function maybeHash(value) {
142
+ if (value === undefined) {
143
+ return undefined;
144
+ }
145
+ const isHashed = new RegExp(/[0-9abcdef]{64}/gi).test(value);
146
+ if (isHashed) {
147
+ return value;
148
+ }
149
+ const hash = crypto_1.createHash('sha256');
150
+ hash.update(value);
151
+ return hash.digest('hex');
152
+ }
153
+ exports.maybeHash = maybeHash;
154
+ function getCustomVarTypeChoices() {
155
+ return types_1.CustomVarTypeChoices.map((item) => ({
156
+ label: item,
157
+ value: item
158
+ }));
159
+ }
160
+ exports.getCustomVarTypeChoices = getCustomVarTypeChoices;
161
+ function getEntityTypeChoices() {
162
+ return Object.values(types_1.EntityType).map((item) => ({
163
+ label: item,
164
+ value: item
165
+ }));
166
+ }
167
+ exports.getEntityTypeChoices = getEntityTypeChoices;
168
+ function getSources() {
169
+ return Object.values(types_1.Source).map((item) => ({
170
+ label: item,
171
+ value: item
172
+ }));
173
+ }
174
+ exports.getSources = getSources;
175
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/destinations/campaign-manager-360/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export interface Payload {
2
+ emails?: string;
3
+ phoneNumbers?: string;
4
+ zipCodes?: string;
5
+ firstName?: string;
6
+ lastName?: string;
7
+ countryCode?: string;
8
+ external_id?: string;
9
+ }
@@ -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/first-party-dv360/addToAudContactInfo/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { ActionDefinition } from '@segment/actions-core';
2
+ import type { AudienceSettings, Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload, AudienceSettings>;
5
+ export default action;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const properties_1 = require("../properties");
4
+ const functions_1 = require("../functions");
5
+ const action = {
6
+ title: 'Edit Customer Match Members - Contact Info List',
7
+ description: 'Add or update customer match members in Google Display & Video 360 Contact Info List Audience.',
8
+ defaultSubscription: 'event = "Audeince Entered - ContactInfoList"',
9
+ fields: {
10
+ emails: { ...properties_1.emails },
11
+ phoneNumbers: { ...properties_1.phoneNumbers },
12
+ zipCodes: { ...properties_1.zipCodes },
13
+ firstName: { ...properties_1.firstName },
14
+ lastName: { ...properties_1.lastName },
15
+ countryCode: { ...properties_1.countryCode },
16
+ external_id: { ...properties_1.external_id }
17
+ },
18
+ perform: async (request, { payload, statsContext, audienceSettings }) => {
19
+ statsContext?.statsClient?.incr('editCustomerMatchMembers', 1, statsContext?.tags);
20
+ console.log('Pre-Payload', payload);
21
+ console.log('Pre-audienceSettings', audienceSettings);
22
+ return functions_1.addContactInfo(request, audienceSettings, [payload], statsContext);
23
+ },
24
+ performBatch: async (request, { payload, statsContext, audienceSettings }) => {
25
+ statsContext?.statsClient?.incr('editCustomerMatchMembers.batch', 1, statsContext?.tags);
26
+ console.log('Pre-Payload', payload);
27
+ console.log('Pre-audienceSettings', audienceSettings);
28
+ return functions_1.addContactInfo(request, audienceSettings, payload, statsContext);
29
+ }
30
+ };
31
+ exports.default = action;
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/first-party-dv360/addToAudContactInfo/index.ts"],"names":[],"mappings":";;AAGA,8CAA6G;AAC7G,4CAA6C;AAE7C,MAAM,MAAM,GAA0D;IACpE,KAAK,EAAE,iDAAiD;IACxD,WAAW,EAAE,gGAAgG;IAC7G,mBAAmB,EAAE,8CAA8C;IACnE,MAAM,EAAE;QACN,MAAM,EAAE,EAAE,GAAG,mBAAM,EAAE;QACrB,YAAY,EAAE,EAAE,GAAG,yBAAY,EAAE;QACjC,QAAQ,EAAE,EAAE,GAAG,qBAAQ,EAAE;QACzB,SAAS,EAAE,EAAE,GAAG,sBAAS,EAAE;QAC3B,QAAQ,EAAE,EAAE,GAAG,qBAAQ,EAAE;QACzB,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;QAC/B,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;KAChC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE,EAAE;QACtE,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QACrD,OAAO,0BAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;IAC3E,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE,EAAE;QAC3E,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,gCAAgC,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QACxF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QACrD,OAAO,0BAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IACzE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,4 @@
1
+ export interface Payload {
2
+ mobileDeviceIds?: string;
3
+ external_id?: string;
4
+ }
@@ -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/first-party-dv360/addToAudMobileDeviceId/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { ActionDefinition } from '@segment/actions-core';
2
+ import type { AudienceSettings, Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload, AudienceSettings>;
5
+ export default action;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const properties_1 = require("../properties");
4
+ const functions_1 = require("../functions");
5
+ const action = {
6
+ title: 'Edit Customer Match Members - Mobile Device Id List',
7
+ description: 'Add or update customer match members in Google Display & Video 360 Mobile Device Id List Audience.',
8
+ defaultSubscription: 'event = "Audeince Entered - MobileDeviceIdList"',
9
+ fields: {
10
+ mobileDeviceIds: { ...properties_1.mobileDeviceIds },
11
+ external_id: { ...properties_1.external_id }
12
+ },
13
+ perform: async (request, { payload, statsContext, audienceSettings }) => {
14
+ statsContext?.statsClient?.incr('editCustomerMatchMembers', 1, statsContext?.tags);
15
+ console.log('Pre-Payload', payload);
16
+ console.log('Pre-audienceSettings', audienceSettings);
17
+ return functions_1.addDeviceMobileIds(request, audienceSettings, [payload], statsContext);
18
+ },
19
+ performBatch: async (request, { payload, statsContext, audienceSettings }) => {
20
+ statsContext?.statsClient?.incr('editCustomerMatchMembers.batch', 1, statsContext?.tags);
21
+ console.log('Pre-Payload', payload);
22
+ console.log('Pre-audienceSettings', audienceSettings);
23
+ return functions_1.addDeviceMobileIds(request, audienceSettings, payload, statsContext);
24
+ }
25
+ };
26
+ exports.default = action;
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/first-party-dv360/addToAudMobileDeviceId/index.ts"],"names":[],"mappings":";;AAGA,8CAA4D;AAC5D,4CAAiD;AAEjD,MAAM,MAAM,GAA0D;IACpE,KAAK,EAAE,qDAAqD;IAC5D,WAAW,EAAE,oGAAoG;IACjH,mBAAmB,EAAE,iDAAiD;IACtE,MAAM,EAAE;QACN,eAAe,EAAE,EAAE,GAAG,4BAAe,EAAE;QACvC,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;KAChC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE,EAAE;QACtE,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QACrD,OAAO,8BAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;IAC/E,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,EAAE,EAAE;QAC3E,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,gCAAgC,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QACxF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAA;QACrD,OAAO,8BAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IAC7E,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,9 @@
1
+ export interface Payload {
2
+ emails?: string;
3
+ phoneNumbers?: string;
4
+ zipCodes?: string;
5
+ firstName?: string;
6
+ lastName?: string;
7
+ countryCode?: string;
8
+ external_id?: string;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=addToList.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addToList.types.js","sourceRoot":"","sources":["../../../src/destinations/first-party-dv360/addToList.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { InputField } from '@segment/actions-core/index';
2
+ export declare const external_id: InputField;
3
+ export declare const emails: InputField;
4
+ export declare const phoneNumbers: InputField;
5
+ export declare const zipCodes: InputField;
6
+ export declare const firstName: InputField;
7
+ export declare const lastName: InputField;
8
+ export declare const countryCode: InputField;
9
+ export declare const mobileDeviceIds: InputField;