@segment/action-destinations 3.265.0 → 3.266.0-staging-b946549fd
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.
- package/dist/destinations/amazon-ads/utils.d.ts +25 -0
- package/dist/destinations/amazon-ads/utils.js +8 -0
- package/dist/destinations/amazon-ads/utils.js.map +1 -0
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.d.ts +22 -0
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js +3 -0
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js.map +1 -0
- package/dist/destinations/dynamic-yield-audiences/types.d.ts +8 -0
- package/dist/destinations/dynamic-yield-audiences/types.js +12 -0
- package/dist/destinations/dynamic-yield-audiences/types.js.map +1 -0
- package/dist/destinations/engage/utils/track.d.ts +17 -17
- package/dist/destinations/facebook-conversions-api/fb-capi-properties.js +3 -1
- package/dist/destinations/facebook-conversions-api/fb-capi-properties.js.map +1 -1
- package/dist/destinations/facebook-conversions-api/fb-capi-user-data.js +5 -4
- package/dist/destinations/facebook-conversions-api/fb-capi-user-data.js.map +1 -1
- package/dist/destinations/responsys/asyncMergePetRecords/generated-types.d.ts +14 -0
- package/dist/destinations/responsys/asyncMergePetRecords/generated-types.js +3 -0
- package/dist/destinations/responsys/asyncMergePetRecords/generated-types.js.map +1 -0
- package/dist/destinations/responsys/asyncMergePetRecords/index.d.ts +5 -0
- package/dist/destinations/responsys/asyncMergePetRecords/index.js +113 -0
- package/dist/destinations/responsys/asyncMergePetRecords/index.js.map +1 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.d.ts +20 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.js +3 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.js.map +1 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/index.d.ts +5 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js +174 -0
- package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js.map +1 -0
- package/dist/destinations/responsys/rsp-operations.d.ts +14 -0
- package/dist/destinations/responsys/rsp-operations.js +33 -0
- package/dist/destinations/responsys/rsp-operations.js.map +1 -0
- package/dist/destinations/responsys/rsp-properties.d.ts +4 -0
- package/dist/destinations/responsys/rsp-properties.js +27 -0
- package/dist/destinations/responsys/rsp-properties.js.map +1 -0
- package/dist/destinations/responsys-cloud/generated-types.d.ts +20 -0
- package/dist/destinations/responsys-cloud/generated-types.js +3 -0
- package/dist/destinations/responsys-cloud/generated-types.js.map +1 -0
- package/dist/destinations/responsys-cloud/index.d.ts +4 -0
- package/dist/destinations/responsys-cloud/index.js +207 -0
- package/dist/destinations/responsys-cloud/index.js.map +1 -0
- package/dist/destinations/responsys-cloud/sendAudience/generated-types.d.ts +16 -0
- package/dist/destinations/responsys-cloud/sendAudience/generated-types.js +3 -0
- package/dist/destinations/responsys-cloud/sendAudience/generated-types.js.map +1 -0
- package/dist/destinations/responsys-cloud/sendAudience/index.d.ts +5 -0
- package/dist/destinations/responsys-cloud/sendAudience/index.js +109 -0
- package/dist/destinations/responsys-cloud/sendAudience/index.js.map +1 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/generated-types.d.ts +11 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/generated-types.js +3 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/generated-types.js.map +1 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/index.d.ts +5 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/index.js +72 -0
- package/dist/destinations/responsys-cloud/sendCustomTraits/index.js.map +1 -0
- package/dist/destinations/responsys-cloud/shared_properties.d.ts +3 -0
- package/dist/destinations/responsys-cloud/shared_properties.js +19 -0
- package/dist/destinations/responsys-cloud/shared_properties.js.map +1 -0
- package/dist/destinations/responsys-cloud/types.d.ts +38 -0
- package/dist/destinations/responsys-cloud/types.js +3 -0
- package/dist/destinations/responsys-cloud/types.js.map +1 -0
- package/dist/destinations/responsys-cloud/upsertListMember/generated-types.d.ts +14 -0
- package/dist/destinations/responsys-cloud/upsertListMember/generated-types.js +3 -0
- package/dist/destinations/responsys-cloud/upsertListMember/generated-types.js.map +1 -0
- package/dist/destinations/responsys-cloud/upsertListMember/index.d.ts +5 -0
- package/dist/destinations/responsys-cloud/upsertListMember/index.js +85 -0
- package/dist/destinations/responsys-cloud/upsertListMember/index.js.map +1 -0
- package/dist/destinations/responsys-cloud/utils.d.ts +20 -0
- package/dist/destinations/responsys-cloud/utils.js +179 -0
- package/dist/destinations/responsys-cloud/utils.js.map +1 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV2tests.d.ts +1 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV2tests.js +381 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV2tests.js.map +1 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV3tests.d.ts +1 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV3tests.js +581 -0
- package/dist/destinations/snap-conversions-api/_tests_/capiV3tests.js.map +1 -0
- package/dist/destinations/snap-conversions-api/reportConversionEvent/snap-capi-v2.d.ts +4 -0
- package/dist/destinations/snap-conversions-api/reportConversionEvent/snap-capi-v2.js +97 -0
- package/dist/destinations/snap-conversions-api/reportConversionEvent/snap-capi-v2.js.map +1 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.d.ts +30 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.js +316 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.js.map +1 -0
- package/dist/destinations/tiktok-audiences/functions.js +7 -3
- package/dist/destinations/tiktok-audiences/functions.js.map +1 -1
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.d.ts +3 -0
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.js +34 -0
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.js.map +1 -0
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.d.ts +3 -0
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js +43 -0
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js.map +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { HTTPError } from '@segment/actions-core';
|
|
2
|
+
export declare class AmazonAdsError extends HTTPError {
|
|
3
|
+
response: Response & {
|
|
4
|
+
data: {
|
|
5
|
+
status: string;
|
|
6
|
+
message: string;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export interface AudiencePayload {
|
|
11
|
+
name: string;
|
|
12
|
+
description: string;
|
|
13
|
+
countryCode?: string;
|
|
14
|
+
targetResource: {
|
|
15
|
+
advertiserId: string;
|
|
16
|
+
};
|
|
17
|
+
metadata: {
|
|
18
|
+
externalAudienceId: string;
|
|
19
|
+
ttl?: number;
|
|
20
|
+
audienceFees?: {
|
|
21
|
+
cpmCents: number;
|
|
22
|
+
currency: string;
|
|
23
|
+
}[];
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AmazonAdsError = void 0;
|
|
4
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
5
|
+
class AmazonAdsError extends actions_core_1.HTTPError {
|
|
6
|
+
}
|
|
7
|
+
exports.AmazonAdsError = AmazonAdsError;
|
|
8
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/destinations/amazon-ads/utils.ts"],"names":[],"mappings":";;;AAAA,wDAAiD;AAEjD,MAAa,cAAe,SAAQ,wBAAS;CAO5C;AAPD,wCAOC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Payload } from './generated-types';
|
|
2
|
+
export interface Data {
|
|
3
|
+
payload: Payload & {
|
|
4
|
+
context?: {
|
|
5
|
+
[k: string]: unknown;
|
|
6
|
+
personas?: {
|
|
7
|
+
computation_key?: string;
|
|
8
|
+
computation_class?: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
rawData?: {
|
|
13
|
+
context?: {
|
|
14
|
+
personas?: {
|
|
15
|
+
computation_key?: string;
|
|
16
|
+
computation_class?: string;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
properties?: Record<string, boolean>;
|
|
20
|
+
traits?: Record<string, boolean>;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/destinations/dynamic-yield-audiences/syncAudience/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare type AudienceAction = 'ADD' | 'REMOVE';
|
|
2
|
+
export declare enum Priority {
|
|
3
|
+
UserIdThenEmail = "user_id_then_email",
|
|
4
|
+
UserIdThenAnonymousId = "user_id_then_anonymousId",
|
|
5
|
+
UserIdThenEmailThenAnonymousId = "user_id_then_email_then_anonymousId",
|
|
6
|
+
UserIdOnly = "user_id_only",
|
|
7
|
+
EmailOnly = "email_only"
|
|
8
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Priority = void 0;
|
|
4
|
+
var Priority;
|
|
5
|
+
(function (Priority) {
|
|
6
|
+
Priority["UserIdThenEmail"] = "user_id_then_email";
|
|
7
|
+
Priority["UserIdThenAnonymousId"] = "user_id_then_anonymousId";
|
|
8
|
+
Priority["UserIdThenEmailThenAnonymousId"] = "user_id_then_email_then_anonymousId";
|
|
9
|
+
Priority["UserIdOnly"] = "user_id_only";
|
|
10
|
+
Priority["EmailOnly"] = "email_only";
|
|
11
|
+
})(Priority = exports.Priority || (exports.Priority = {}));
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/destinations/dynamic-yield-audiences/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,8DAAkD,CAAA;IAClD,kFAAsE,CAAA;IACtE,uCAA2B,CAAA;IAC3B,oCAAwB,CAAA;AAC1B,CAAC,EANW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAMnB"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { ContextFromDecorator } from './operationTracking';
|
|
2
2
|
export declare const track: ((decoratorArgs?: ({
|
|
3
|
+
shouldStats?: ((args: import("./operationTracking").OperationStatsEventArgs) => boolean | void) | undefined;
|
|
4
|
+
} & {
|
|
3
5
|
onError?: ((ctx: import("./operationTracking").OperationErrorHandlerContext<import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>>) => void) | undefined;
|
|
4
|
-
} &
|
|
6
|
+
} & {
|
|
5
7
|
onTry?: ((ctx: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>) => void) | undefined;
|
|
6
8
|
onFinally?: ((ctx: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>) => void) | undefined;
|
|
7
|
-
} & {
|
|
8
|
-
shouldStats?: ((args: import("./operationTracking").OperationStatsEventArgs) => boolean | void) | undefined;
|
|
9
|
-
} & {
|
|
9
|
+
} & import("./operationTracking").OperationLoggerDecoratorArgs & {
|
|
10
10
|
wrapIntegrationError?: ((ctx: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>) => import("@segment/actions-core/*").IntegrationError | [message: string, code: string, status: number]) | undefined;
|
|
11
11
|
}) | undefined) => import("./operationTracking").GenericMethodDecorator<(this: any, ...args: any[]) => any>) & {
|
|
12
12
|
getCurrentOperation(classInstance: any): (import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any> & {
|
|
@@ -15,8 +15,13 @@ export declare const track: ((decoratorArgs?: ({
|
|
|
15
15
|
}) | undefined;
|
|
16
16
|
} & {
|
|
17
17
|
_contextType: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any> & {
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
tags: string[];
|
|
19
|
+
sharedContext: {
|
|
20
|
+
tags: string[];
|
|
21
|
+
};
|
|
22
|
+
decoratorArgs?: {
|
|
23
|
+
shouldStats?: ((args: import("./operationTracking").OperationStatsEventArgs) => boolean | void) | undefined;
|
|
24
|
+
} | undefined;
|
|
20
25
|
} & {
|
|
21
26
|
decoratorArgs?: {
|
|
22
27
|
onError?: ((ctx: import("./operationTracking").OperationErrorHandlerContext<import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>>) => void) | undefined;
|
|
@@ -25,10 +30,8 @@ export declare const track: ((decoratorArgs?: ({
|
|
|
25
30
|
parent?: (import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any> & any) | undefined;
|
|
26
31
|
sharedContext: {};
|
|
27
32
|
} & {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
decoratorArgs?: import("./operationTracking").OperationLoggerDecoratorArgs | undefined;
|
|
31
|
-
sharedContext: import("./operationTracking").OperationLoggerSharedContext;
|
|
33
|
+
start?: number | undefined;
|
|
34
|
+
duration?: number | undefined;
|
|
32
35
|
} & {
|
|
33
36
|
onFinally: (() => void)[];
|
|
34
37
|
decoratorArgs?: {
|
|
@@ -36,13 +39,10 @@ export declare const track: ((decoratorArgs?: ({
|
|
|
36
39
|
onFinally?: ((ctx: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>) => void) | undefined;
|
|
37
40
|
} | undefined;
|
|
38
41
|
} & {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
decoratorArgs?: {
|
|
44
|
-
shouldStats?: ((args: import("./operationTracking").OperationStatsEventArgs) => boolean | void) | undefined;
|
|
45
|
-
} | undefined;
|
|
42
|
+
logs: string[];
|
|
43
|
+
logMetadata?: Record<string, unknown> | undefined;
|
|
44
|
+
decoratorArgs?: import("./operationTracking").OperationLoggerDecoratorArgs | undefined;
|
|
45
|
+
sharedContext: import("./operationTracking").OperationLoggerSharedContext;
|
|
46
46
|
} & {
|
|
47
47
|
decoratorArgs?: {
|
|
48
48
|
wrapIntegrationError?: ((ctx: import("./operationTracking").TryCatchFinallyContext<(this: any, ...args: any[]) => any>) => import("@segment/actions-core/*").IntegrationError | [message: string, code: string, status: number]) | undefined;
|
|
@@ -90,7 +90,9 @@ exports.data_processing_options_state = {
|
|
|
90
90
|
type: 'number',
|
|
91
91
|
choices: [
|
|
92
92
|
{ label: 'Use Facebook’s Geolocation Logic', value: 0 },
|
|
93
|
-
{ label: 'California', value: 1000 }
|
|
93
|
+
{ label: 'California', value: 1000 },
|
|
94
|
+
{ label: 'Colorado', value: 1001 },
|
|
95
|
+
{ label: 'Connecticut', value: 1002 }
|
|
94
96
|
]
|
|
95
97
|
};
|
|
96
98
|
const validateContents = (contents) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fb-capi-properties.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-properties.ts"],"names":[],"mappings":";;;AACA,wDAA8D;AAWjD,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EACT,+NAA+N;IACjO,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,UAAU;CAC5B,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,oGAAoG;IACjH,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EACT,6GAA6G;IAC/G,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,wDAAwD;IACrE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,kEAAkE;IAC/E,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EACT,2MAA2M;IAC7M,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,yJAAyJ;IAC3J,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE;QACV,EAAE,EAAE;YACF,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,uCAAuC;YACpD,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,SAAS;SAChB;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wBAAwB;YACrC,IAAI,EAAE,QAAQ;SACf;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,8GAA8G;YAChH,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEY,QAAA,uBAAuB,GAAe;IACjD,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,mUAAmU;IAChV,IAAI,EAAE,SAAS;CAChB,CAAA;AAEY,QAAA,+BAA+B,GAAe;IACzD,KAAK,EAAE,yBAAyB;IAChC,WAAW,EACT,8SAA8S;IAChT,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,CAAC,EAAE;QACvD,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,EAAE;KAChD;CACF,CAAA;AAEY,QAAA,6BAA6B,GAAe;IACvD,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EACT,6RAA6R;IAC/R,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,CAAC,EAAE;QACvD,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"fb-capi-properties.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-properties.ts"],"names":[],"mappings":";;;AACA,wDAA8D;AAWjD,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EACT,+NAA+N;IACjO,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,UAAU;CAC5B,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,oGAAoG;IACjH,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EACT,6GAA6G;IAC/G,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,wDAAwD;IACrE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,kEAAkE;IAC/E,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EACT,2MAA2M;IAC7M,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,yJAAyJ;IAC3J,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE;QACV,EAAE,EAAE;YACF,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,uCAAuC;YACpD,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,SAAS;SAChB;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wBAAwB;YACrC,IAAI,EAAE,QAAQ;SACf;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,8GAA8G;YAChH,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEY,QAAA,uBAAuB,GAAe;IACjD,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,mUAAmU;IAChV,IAAI,EAAE,SAAS;CAChB,CAAA;AAEY,QAAA,+BAA+B,GAAe;IACzD,KAAK,EAAE,yBAAyB;IAChC,WAAW,EACT,8SAA8S;IAChT,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,CAAC,EAAE;QACvD,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,EAAE;KAChD;CACF,CAAA;AAEY,QAAA,6BAA6B,GAAe;IACvD,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EACT,6RAA6R;IAC/R,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,CAAC,EAAE;QACvD,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE;QACpC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE;QAClC,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE;KACtC;CACF,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,QAAmB,EAAkC,EAAE;IACtF,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;IAE3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QAExB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACZ,OAAO,IAAI,qCAAsB,CAAC,YAAY,CAAC,mCAAmC,CAAC,CAAA;SACpF;QAED,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;YACzF,OAAO,IAAI,qCAAsB,CAC/B,YAAY,CAAC,yEAAyE,CACvF,CAAA;SACF;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAlBY,QAAA,gBAAgB,oBAkB5B;AAIM,MAAM,qBAAqB,GAAG,CACnC,uBAA4C,EAC5C,aAAiC,EACjC,WAA+B,EACnB,EAAE;IACd,IAAI,uBAAuB,EAAE;QAC3B,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;KAChD;IACD,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAZY,QAAA,qBAAqB,yBAYjC;AAEY,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,kDAAkD;IAC/D,IAAI,EAAE,SAAS;CAChB,CAAA;AAKY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EACT,yIAAyI;IAC3I,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA;AAEY,QAAA,aAAa,GAAe;IACvC,KAAK,EAAE,eAAe;IACtB,WAAW,EACT,kNAAkN;IACpN,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAClC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;QACtC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;QAC9B,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;QAC5C,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;QAChC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE;QACpD,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;QACxD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;KACnC;CACF,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EACT,iLAAiL;IACnL,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,oBAAoB;KAC9B;CACF,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,2HAA2H;IAC7H,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA"}
|
|
@@ -161,15 +161,16 @@ exports.user_data_field = {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
};
|
|
164
|
+
const isHashedInformation = (information) => new RegExp(/[0-9abcdef]{64}/gi).test(information);
|
|
164
165
|
const hash = (value) => {
|
|
165
166
|
if (value === undefined || !value.length)
|
|
166
167
|
return;
|
|
167
168
|
if (typeof value == 'string') {
|
|
169
|
+
if (isHashedInformation(value))
|
|
170
|
+
return value;
|
|
168
171
|
return hashValue(value);
|
|
169
172
|
}
|
|
170
|
-
|
|
171
|
-
return value.map((el) => hashValue(el));
|
|
172
|
-
}
|
|
173
|
+
return value.map((el) => (isHashedInformation(el) ? el : hashValue(el)));
|
|
173
174
|
};
|
|
174
175
|
const hashValue = (val) => {
|
|
175
176
|
const hash = crypto_1.createHash('sha256');
|
|
@@ -180,7 +181,7 @@ const normalize_user_data = (payload) => {
|
|
|
180
181
|
if (payload.user_data.email) {
|
|
181
182
|
payload.user_data.email = payload.user_data.email.replace(/\s/g, '').toLowerCase();
|
|
182
183
|
}
|
|
183
|
-
if (payload.user_data.phone) {
|
|
184
|
+
if (payload.user_data.phone && !isHashedInformation(payload.user_data.phone)) {
|
|
184
185
|
payload.user_data.phone = payload.user_data.phone.replace(/\D/g, '');
|
|
185
186
|
}
|
|
186
187
|
if (payload.user_data.gender) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fb-capi-user-data.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-user-data.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fb-capi-user-data.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-user-data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
profileListName: string;
|
|
3
|
+
profileExtensionTable: string;
|
|
4
|
+
userData: {
|
|
5
|
+
[k: string]: unknown;
|
|
6
|
+
};
|
|
7
|
+
mapTemplateName?: string;
|
|
8
|
+
insertOnNoMatch?: boolean;
|
|
9
|
+
matchColumnName1?: string;
|
|
10
|
+
matchColumnName2?: string;
|
|
11
|
+
updateOnMatch: string;
|
|
12
|
+
enable_batching?: boolean;
|
|
13
|
+
batch_size?: number;
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/asyncMergePetRecords/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rsp_properties_1 = require("../rsp-properties");
|
|
4
|
+
const rsp_operations_1 = require("../rsp-operations");
|
|
5
|
+
const action = {
|
|
6
|
+
title: 'Async Merge PET Records',
|
|
7
|
+
description: '',
|
|
8
|
+
defaultSubscription: 'type = "identify"',
|
|
9
|
+
fields: {
|
|
10
|
+
profileListName: {
|
|
11
|
+
label: 'List Name',
|
|
12
|
+
description: "Name of the profile extension table's parent profile list.",
|
|
13
|
+
type: 'string',
|
|
14
|
+
required: true
|
|
15
|
+
},
|
|
16
|
+
profileExtensionTable: {
|
|
17
|
+
label: 'Pet Name',
|
|
18
|
+
description: 'Name of the profile extension table.',
|
|
19
|
+
type: 'string',
|
|
20
|
+
required: true
|
|
21
|
+
},
|
|
22
|
+
userData: rsp_properties_1.userData,
|
|
23
|
+
mapTemplateName: {
|
|
24
|
+
label: 'Map Template Name',
|
|
25
|
+
description: 'The Map Template in Responsys that can be used to map Field Names of the Profile List to Column Names.',
|
|
26
|
+
type: 'string',
|
|
27
|
+
default: ''
|
|
28
|
+
},
|
|
29
|
+
insertOnNoMatch: {
|
|
30
|
+
label: 'Insert On No Match',
|
|
31
|
+
description: 'Indicates what should be done for records where a match is not found.',
|
|
32
|
+
type: 'boolean',
|
|
33
|
+
default: true
|
|
34
|
+
},
|
|
35
|
+
matchColumnName1: {
|
|
36
|
+
label: 'First Column Match',
|
|
37
|
+
description: 'First match column for determining whether an insert or update should occur.',
|
|
38
|
+
type: 'string',
|
|
39
|
+
choices: [
|
|
40
|
+
{ label: 'RIID_', value: 'RIID_' },
|
|
41
|
+
{ label: 'CUSTOMER_ID_', value: 'CUSTOMER_ID_' },
|
|
42
|
+
{ label: 'EMAIL_ADDRESS_', value: 'EMAIL_ADDRESS_' },
|
|
43
|
+
{ label: 'MOBILE_NUMBER_', value: 'MOBILE_NUMBER_' },
|
|
44
|
+
{ label: 'EMAIL_MD5_HASH_', value: 'EMAIL_MD5_HASH_' },
|
|
45
|
+
{ label: 'EMAIL_SHA256_HASH_', value: 'EMAIL_SHA256_HASH_' }
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
matchColumnName2: {
|
|
49
|
+
label: 'Second Column Match',
|
|
50
|
+
description: 'Second match column for determining whether an insert or update should occur.',
|
|
51
|
+
type: 'string',
|
|
52
|
+
choices: [
|
|
53
|
+
{ label: 'RIID_', value: 'RIID_' },
|
|
54
|
+
{ label: 'CUSTOMER_ID_', value: 'CUSTOMER_ID_' },
|
|
55
|
+
{ label: 'EMAIL_ADDRESS_', value: 'EMAIL_ADDRESS_' },
|
|
56
|
+
{ label: 'MOBILE_NUMBER_', value: 'MOBILE_NUMBER_' },
|
|
57
|
+
{ label: 'EMAIL_MD5_HASH_', value: 'EMAIL_MD5_HASH_' },
|
|
58
|
+
{ label: 'EMAIL_SHA256_HASH_', value: 'EMAIL_SHA256_HASH_' }
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
updateOnMatch: {
|
|
62
|
+
label: 'Update On Match',
|
|
63
|
+
description: 'Controls how the existing record should be updated.',
|
|
64
|
+
type: 'string',
|
|
65
|
+
required: true,
|
|
66
|
+
choices: [
|
|
67
|
+
{ label: 'Replace All', value: 'REPLACE_ALL' },
|
|
68
|
+
{ label: 'No Update', value: 'NO_UPDATE' }
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
enable_batching: rsp_properties_1.enable_batching,
|
|
72
|
+
batch_size: rsp_properties_1.batch_size
|
|
73
|
+
},
|
|
74
|
+
perform: async (request, { settings, payload }) => {
|
|
75
|
+
if (payload && payload.profileListName) {
|
|
76
|
+
const { profileListName, profileExtensionTable, insertOnNoMatch, matchColumnName1, matchColumnName2, updateOnMatch, userData, mapTemplateName } = payload;
|
|
77
|
+
const baseUrl = (settings.baseUrl?.startsWith('https://') ? settings.baseUrl : `https://${settings.baseUrl}`)?.replace(/\/$/, '');
|
|
78
|
+
const endpoint = `${baseUrl}/rest/asyncApi/v1.3/lists/${profileListName}/listExtensions/${profileExtensionTable}/members`;
|
|
79
|
+
const recordData = rsp_operations_1.buildRecordData(userData, mapTemplateName ?? '');
|
|
80
|
+
const requestBody = {
|
|
81
|
+
recordData: recordData,
|
|
82
|
+
insertOnNoMatch: !!insertOnNoMatch,
|
|
83
|
+
updateOnMatch: updateOnMatch || '',
|
|
84
|
+
matchColumnName1: matchColumnName1?.replace(/_+$/, '') || '',
|
|
85
|
+
matchColumnName2: matchColumnName2?.replace(/_+$/, '') || ''
|
|
86
|
+
};
|
|
87
|
+
return request(endpoint, {
|
|
88
|
+
method: 'POST',
|
|
89
|
+
body: JSON.stringify(requestBody)
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
performBatch: async (request, { settings, payload }) => {
|
|
94
|
+
const { profileListName, profileExtensionTable, insertOnNoMatch, matchColumnName1, matchColumnName2, updateOnMatch, mapTemplateName } = payload[0];
|
|
95
|
+
const payloadData = payload.map((obj) => obj.userData);
|
|
96
|
+
const recordData = rsp_operations_1.buildRecordData(payloadData, mapTemplateName ?? '');
|
|
97
|
+
const requestBody = {
|
|
98
|
+
recordData: recordData,
|
|
99
|
+
insertOnNoMatch: !!insertOnNoMatch,
|
|
100
|
+
updateOnMatch: updateOnMatch || '',
|
|
101
|
+
matchColumnName1: matchColumnName1?.replace(/_+$/, '') || '',
|
|
102
|
+
matchColumnName2: matchColumnName2?.replace(/_+$/, '') || ''
|
|
103
|
+
};
|
|
104
|
+
const baseUrl = (settings.baseUrl?.startsWith('https://') ? settings.baseUrl : `https://${settings.baseUrl}`)?.replace(/\/$/, '');
|
|
105
|
+
const endpoint = `${baseUrl}/rest/asyncApi/v1.3/lists/${profileListName}/listExtensions/${profileExtensionTable}/members`;
|
|
106
|
+
return await request(endpoint, {
|
|
107
|
+
method: 'POST',
|
|
108
|
+
body: JSON.stringify(requestBody)
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
exports.default = action;
|
|
113
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/asyncMergePetRecords/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
profileListName: string;
|
|
3
|
+
userData: {
|
|
4
|
+
[k: string]: unknown;
|
|
5
|
+
};
|
|
6
|
+
mapTemplateName?: string;
|
|
7
|
+
defaultPermissionStatus?: string;
|
|
8
|
+
htmlValue?: string;
|
|
9
|
+
insertOnNoMatch?: boolean;
|
|
10
|
+
matchColumnName1?: string;
|
|
11
|
+
matchColumnName2?: string;
|
|
12
|
+
matchOperator?: string;
|
|
13
|
+
optinValue?: string;
|
|
14
|
+
optoutValue?: string;
|
|
15
|
+
rejectRecordIfChannelEmpty?: string;
|
|
16
|
+
textValue?: string;
|
|
17
|
+
updateOnMatch: string;
|
|
18
|
+
enable_batching?: boolean;
|
|
19
|
+
batch_size?: number;
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/asyncMergeProfileListMembers/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const rsp_properties_1 = require("../rsp-properties");
|
|
4
|
+
const rsp_operations_1 = require("../rsp-operations");
|
|
5
|
+
const action = {
|
|
6
|
+
title: 'Async Merge Profile List Members',
|
|
7
|
+
description: 'Asynchronous Merge Profile List Members API',
|
|
8
|
+
fields: {
|
|
9
|
+
profileListName: {
|
|
10
|
+
label: 'List Name',
|
|
11
|
+
description: "Name of the profile extension table's parent profile list.",
|
|
12
|
+
type: 'string',
|
|
13
|
+
required: true
|
|
14
|
+
},
|
|
15
|
+
userData: rsp_properties_1.userData,
|
|
16
|
+
mapTemplateName: {
|
|
17
|
+
label: 'Map Template Name',
|
|
18
|
+
description: 'The Map Template in Responsys that can be used to map Field Names of the Profile List to Column Names.',
|
|
19
|
+
type: 'string',
|
|
20
|
+
default: ''
|
|
21
|
+
},
|
|
22
|
+
defaultPermissionStatus: {
|
|
23
|
+
label: 'Default Permission Status',
|
|
24
|
+
description: 'This value must be specified as either OPTIN or OPTOUT and would be applied to all of the records contained in the API call. If this value is not explicitly specified, then it is set to OPTOUT.',
|
|
25
|
+
type: 'string',
|
|
26
|
+
choices: [
|
|
27
|
+
{ label: 'Opt In', value: 'OPTIN' },
|
|
28
|
+
{ label: 'Opt Out', value: 'OPTOUT' }
|
|
29
|
+
],
|
|
30
|
+
default: 'OPTOUT'
|
|
31
|
+
},
|
|
32
|
+
htmlValue: {
|
|
33
|
+
label: 'Preferred Email Format',
|
|
34
|
+
description: "Value of incoming preferred email format data. For example, 'H' may represent a preference for HTML formatted email.",
|
|
35
|
+
type: 'string'
|
|
36
|
+
},
|
|
37
|
+
insertOnNoMatch: {
|
|
38
|
+
label: 'Insert On No Match',
|
|
39
|
+
description: 'Indicates what should be done for records where a match is not found.',
|
|
40
|
+
type: 'boolean',
|
|
41
|
+
default: true
|
|
42
|
+
},
|
|
43
|
+
matchColumnName1: {
|
|
44
|
+
label: 'First Column Match',
|
|
45
|
+
description: 'First match column for determining whether an insert or update should occur.',
|
|
46
|
+
type: 'string',
|
|
47
|
+
choices: [
|
|
48
|
+
{ label: 'RIID_', value: 'RIID_' },
|
|
49
|
+
{ label: 'CUSTOMER_ID_', value: 'CUSTOMER_ID_' },
|
|
50
|
+
{ label: 'EMAIL_ADDRESS_', value: 'EMAIL_ADDRESS_' },
|
|
51
|
+
{ label: 'MOBILE_NUMBER_', value: 'MOBILE_NUMBER_' },
|
|
52
|
+
{ label: 'EMAIL_MD5_HASH_', value: 'EMAIL_MD5_HASH_' },
|
|
53
|
+
{ label: 'EMAIL_SHA256_HASH_', value: 'EMAIL_SHA256_HASH_' }
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
matchColumnName2: {
|
|
57
|
+
label: 'Second Column Match',
|
|
58
|
+
description: 'Second match column for determining whether an insert or update should occur.',
|
|
59
|
+
type: 'string',
|
|
60
|
+
choices: [
|
|
61
|
+
{ label: 'RIID_', value: 'RIID_' },
|
|
62
|
+
{ label: 'CUSTOMER_ID_', value: 'CUSTOMER_ID_' },
|
|
63
|
+
{ label: 'EMAIL_ADDRESS_', value: 'EMAIL_ADDRESS_' },
|
|
64
|
+
{ label: 'MOBILE_NUMBER_', value: 'MOBILE_NUMBER_' },
|
|
65
|
+
{ label: 'EMAIL_MD5_HASH_', value: 'EMAIL_MD5_HASH_' },
|
|
66
|
+
{ label: 'EMAIL_SHA256_HASH_', value: 'EMAIL_SHA256_HASH_' }
|
|
67
|
+
]
|
|
68
|
+
},
|
|
69
|
+
matchOperator: {
|
|
70
|
+
label: 'Match Operator',
|
|
71
|
+
description: 'Operator to join match column names.',
|
|
72
|
+
type: 'string',
|
|
73
|
+
choices: [
|
|
74
|
+
{ label: 'None', value: 'NONE' },
|
|
75
|
+
{ label: 'And', value: 'AND' }
|
|
76
|
+
]
|
|
77
|
+
},
|
|
78
|
+
optinValue: {
|
|
79
|
+
label: 'Optin Value',
|
|
80
|
+
description: "Value of incoming opt-in status data that represents an opt-in status. For example, 'I' may represent an opt-in status.",
|
|
81
|
+
type: 'string'
|
|
82
|
+
},
|
|
83
|
+
optoutValue: {
|
|
84
|
+
label: 'Optout Value',
|
|
85
|
+
description: "Value of incoming opt-out status data that represents an optout status. For example, '0' may represent an opt-out status.",
|
|
86
|
+
type: 'string'
|
|
87
|
+
},
|
|
88
|
+
rejectRecordIfChannelEmpty: {
|
|
89
|
+
label: 'Reject Record If Channel Empty',
|
|
90
|
+
description: "String containing comma-separated channel codes that if specified will result in record rejection when the channel address field is null. Channel codes are 'E' (Email), 'M' (Mobile), 'P' (Postal Code). For example 'E,M' would indicate that a record that has a null for Email or Mobile Number value should be rejected. This parameter can also be set to null or to an empty string, which will cause the validation to not be performed for any channel, except if the matchColumnName1 parameter is set to EMAIL_ADDRESS_ or MOBILE_NUMBER_. When matchColumnName1 is set to EMAIL_ADDRESS_ or MOBILE_NUMBER_, then the null or empty string setting is effectively ignored for that channel.",
|
|
91
|
+
type: 'string'
|
|
92
|
+
},
|
|
93
|
+
textValue: {
|
|
94
|
+
label: 'Text Value',
|
|
95
|
+
description: "Value of incoming preferred email format data. For example, 'T' may represent a preference for Text formatted email.",
|
|
96
|
+
type: 'string'
|
|
97
|
+
},
|
|
98
|
+
updateOnMatch: {
|
|
99
|
+
label: 'Update On Match',
|
|
100
|
+
description: 'Controls how the existing record should be updated.',
|
|
101
|
+
type: 'string',
|
|
102
|
+
required: true,
|
|
103
|
+
choices: [
|
|
104
|
+
{ label: 'Replace All', value: 'REPLACE_ALL' },
|
|
105
|
+
{ label: 'No Update', value: 'NO_UPDATE' }
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
enable_batching: rsp_properties_1.enable_batching,
|
|
109
|
+
batch_size: rsp_properties_1.batch_size
|
|
110
|
+
},
|
|
111
|
+
perform: async (request, { settings, payload, auth }) => {
|
|
112
|
+
if (payload && payload.profileListName) {
|
|
113
|
+
const { profileListName, defaultPermissionStatus, htmlValue, insertOnNoMatch, matchColumnName1, matchColumnName2, matchOperator, optinValue, optoutValue, rejectRecordIfChannelEmpty, textValue, updateOnMatch, userData, mapTemplateName } = payload;
|
|
114
|
+
const baseUrl = (settings.baseUrl?.startsWith('https://') ? settings.baseUrl : `https://${settings.baseUrl}`)?.replace(/\/$/, '');
|
|
115
|
+
const endpoint = `${baseUrl}/rest/asyncApi/v1.3/lists/${profileListName}/members`;
|
|
116
|
+
const recordData = rsp_operations_1.buildRecordData(userData, mapTemplateName ?? '');
|
|
117
|
+
const requestBody = {
|
|
118
|
+
recordData: recordData,
|
|
119
|
+
mergeRule: {
|
|
120
|
+
defaultPermissionStatus,
|
|
121
|
+
htmlValue,
|
|
122
|
+
insertOnNoMatch,
|
|
123
|
+
matchColumnName1,
|
|
124
|
+
matchColumnName2,
|
|
125
|
+
matchOperator,
|
|
126
|
+
optinValue,
|
|
127
|
+
optoutValue,
|
|
128
|
+
rejectRecordIfChannelEmpty,
|
|
129
|
+
textValue,
|
|
130
|
+
updateOnMatch
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
const token = auth?.accessToken ?? '';
|
|
134
|
+
const response = request(endpoint, {
|
|
135
|
+
method: 'POST',
|
|
136
|
+
headers: {
|
|
137
|
+
Authorization: token,
|
|
138
|
+
'Content-Type': 'application/json'
|
|
139
|
+
},
|
|
140
|
+
body: JSON.stringify(requestBody)
|
|
141
|
+
});
|
|
142
|
+
return response;
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
performBatch: async (request, { settings, payload }) => {
|
|
146
|
+
const { profileListName, defaultPermissionStatus, htmlValue, insertOnNoMatch, matchColumnName1, matchColumnName2, matchOperator, optinValue, optoutValue, rejectRecordIfChannelEmpty, textValue, updateOnMatch, mapTemplateName } = payload[0];
|
|
147
|
+
const payloadData = payload.map((obj) => obj.userData);
|
|
148
|
+
const recordData = rsp_operations_1.buildRecordData(payloadData, mapTemplateName ?? '');
|
|
149
|
+
const requestBody = {
|
|
150
|
+
recordData: recordData,
|
|
151
|
+
mergeRule: {
|
|
152
|
+
defaultPermissionStatus,
|
|
153
|
+
htmlValue,
|
|
154
|
+
insertOnNoMatch,
|
|
155
|
+
matchColumnName1,
|
|
156
|
+
matchColumnName2,
|
|
157
|
+
matchOperator,
|
|
158
|
+
optinValue,
|
|
159
|
+
optoutValue,
|
|
160
|
+
rejectRecordIfChannelEmpty,
|
|
161
|
+
textValue,
|
|
162
|
+
updateOnMatch
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
const baseUrl = (settings.baseUrl?.startsWith('https://') ? settings.baseUrl : `https://${settings.baseUrl}`)?.replace(/\/$/, '');
|
|
166
|
+
const endpoint = `${baseUrl}/rest/asyncApi/v1.3/lists/${profileListName}/members`;
|
|
167
|
+
return await request(endpoint, {
|
|
168
|
+
method: 'POST',
|
|
169
|
+
body: JSON.stringify(requestBody)
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
exports.default = action;
|
|
174
|
+
//# sourceMappingURL=index.js.map
|