@segment/action-destinations 3.337.1-staging.0 → 3.337.1-staging.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/destinations/avo/generated-types.d.ts +5 -0
- package/dist/destinations/avo/generated-types.js +3 -0
- package/dist/destinations/avo/generated-types.js.map +1 -0
- package/dist/destinations/avo/index.d.ts +4 -0
- package/dist/destinations/avo/index.js +54 -0
- package/dist/destinations/avo/index.js.map +1 -0
- package/dist/destinations/avo/sendSchemaToInspector/AvoSchemaParser.d.ts +9 -0
- package/dist/destinations/avo/sendSchemaToInspector/AvoSchemaParser.js +97 -0
- package/dist/destinations/avo/sendSchemaToInspector/AvoSchemaParser.js.map +1 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo-types.d.ts +26 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo-types.js +10 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo-types.js.map +1 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo.d.ts +3 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo.js +44 -0
- package/dist/destinations/avo/sendSchemaToInspector/avo.js.map +1 -0
- package/dist/destinations/avo/sendSchemaToInspector/generated-types.d.ts +11 -0
- package/dist/destinations/avo/sendSchemaToInspector/generated-types.js +3 -0
- package/dist/destinations/avo/sendSchemaToInspector/generated-types.js.map +1 -0
- package/dist/destinations/avo/sendSchemaToInspector/index.d.ts +5 -0
- package/dist/destinations/avo/sendSchemaToInspector/index.js +95 -0
- package/dist/destinations/avo/sendSchemaToInspector/index.js.map +1 -0
- package/dist/destinations/index.js +1 -0
- package/dist/destinations/index.js.map +1 -1
- package/dist/destinations/linkedin-conversions/streamConversion/index.js +2 -1
- package/dist/destinations/linkedin-conversions/streamConversion/index.js.map +1 -1
- package/dist/destinations/linkedin-conversions/types.d.ts +9 -0
- package/dist/destinations/linkedin-conversions/types.js.map +1 -1
- package/dist/destinations/responsys/generated-types.d.ts +15 -0
- package/dist/destinations/responsys/index.js +141 -6
- package/dist/destinations/responsys/index.js.map +1 -1
- package/dist/destinations/responsys/sendAudience/generated-types.d.ts +14 -0
- package/dist/destinations/responsys/sendAudience/generated-types.js +3 -0
- package/dist/destinations/responsys/sendAudience/generated-types.js.map +1 -0
- package/dist/destinations/responsys/sendAudience/index.d.ts +5 -0
- package/dist/destinations/responsys/sendAudience/index.js +88 -0
- package/dist/destinations/responsys/sendAudience/index.js.map +1 -0
- package/dist/destinations/responsys/sendCustomTraits/generated-types.d.ts +9 -0
- package/dist/destinations/responsys/sendCustomTraits/generated-types.js +3 -0
- package/dist/destinations/responsys/sendCustomTraits/generated-types.js.map +1 -0
- package/dist/destinations/responsys/sendCustomTraits/index.d.ts +5 -0
- package/dist/destinations/responsys/sendCustomTraits/index.js +52 -0
- package/dist/destinations/responsys/sendCustomTraits/index.js.map +1 -0
- package/dist/destinations/responsys/shared_properties.d.ts +3 -0
- package/dist/destinations/responsys/shared_properties.js +19 -0
- package/dist/destinations/responsys/shared_properties.js.map +1 -0
- package/dist/destinations/responsys/types.d.ts +23 -22
- package/dist/destinations/responsys/upsertListMember/generated-types.d.ts +13 -0
- package/dist/destinations/responsys/upsertListMember/generated-types.js +3 -0
- package/dist/destinations/responsys/upsertListMember/generated-types.js.map +1 -0
- package/dist/destinations/responsys/upsertListMember/index.d.ts +5 -0
- package/dist/destinations/responsys/upsertListMember/index.js +80 -0
- package/dist/destinations/responsys/upsertListMember/index.js.map +1 -0
- package/dist/destinations/responsys/utils.d.ts +18 -0
- package/dist/destinations/responsys/utils.js +161 -0
- package/dist/destinations/responsys/utils.js.map +1 -0
- package/dist/destinations/stackadapt/forwardEvent/generated-types.d.ts +33 -0
- package/dist/destinations/stackadapt/forwardEvent/generated-types.js +3 -0
- package/dist/destinations/stackadapt/forwardEvent/generated-types.js.map +1 -0
- package/dist/destinations/stackadapt/forwardEvent/index.d.ts +5 -0
- package/dist/destinations/stackadapt/forwardEvent/index.js +273 -0
- package/dist/destinations/stackadapt/forwardEvent/index.js.map +1 -0
- package/dist/destinations/stackadapt/generated-types.d.ts +3 -0
- package/dist/destinations/stackadapt/generated-types.js +3 -0
- package/dist/destinations/stackadapt/generated-types.js.map +1 -0
- package/dist/destinations/stackadapt/index.d.ts +4 -0
- package/dist/destinations/stackadapt/index.js +38 -0
- package/dist/destinations/stackadapt/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -3,16 +3,34 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
7
|
-
const
|
|
6
|
+
const sendCustomTraits_1 = __importDefault(require("./sendCustomTraits"));
|
|
7
|
+
const sendAudience_1 = __importDefault(require("./sendAudience"));
|
|
8
|
+
const upsertListMember_1 = __importDefault(require("./upsertListMember"));
|
|
8
9
|
const destination = {
|
|
9
10
|
name: 'Responsys (Actions)',
|
|
10
11
|
slug: 'actions-responsys',
|
|
11
12
|
mode: 'cloud',
|
|
12
|
-
description: 'Send
|
|
13
|
+
description: 'Send Profile List Member and Profile Extension Table data to Responsys.',
|
|
13
14
|
authentication: {
|
|
14
15
|
scheme: 'oauth2',
|
|
15
16
|
fields: {
|
|
17
|
+
segmentWriteKey: {
|
|
18
|
+
label: 'Segment Source WriteKey',
|
|
19
|
+
description: "Optionally forward Responses from Segment's requests to Responsys to a Segment Source.",
|
|
20
|
+
type: 'string',
|
|
21
|
+
required: false
|
|
22
|
+
},
|
|
23
|
+
segmentWriteKeyRegion: {
|
|
24
|
+
label: 'Segment WriteKey Region',
|
|
25
|
+
description: 'Segment Region to forward responses from Responsys to. Segment Source WriteKey must also be populated',
|
|
26
|
+
type: 'string',
|
|
27
|
+
choices: [
|
|
28
|
+
{ label: 'US', value: 'US' },
|
|
29
|
+
{ label: 'EU', value: 'EU' }
|
|
30
|
+
],
|
|
31
|
+
required: false,
|
|
32
|
+
default: 'US'
|
|
33
|
+
},
|
|
16
34
|
username: {
|
|
17
35
|
label: 'Username',
|
|
18
36
|
description: 'Responsys username',
|
|
@@ -27,9 +45,125 @@ const destination = {
|
|
|
27
45
|
},
|
|
28
46
|
baseUrl: {
|
|
29
47
|
label: 'Responsys endpoint URL',
|
|
30
|
-
description:
|
|
48
|
+
description: "Responsys endpoint URL. Refer to Responsys documentation for more details. Must start with 'HTTPS://'. See [Responsys docs](https://docs.oracle.com/en/cloud/saas/marketing/responsys-develop/API/GetStarted/Authentication/auth-endpoints-rest.htm).",
|
|
49
|
+
type: 'string',
|
|
50
|
+
format: 'uri',
|
|
51
|
+
required: true
|
|
52
|
+
},
|
|
53
|
+
profileListName: {
|
|
54
|
+
label: 'List Name',
|
|
55
|
+
description: "Name of the Profile Extension Table's Contact List.",
|
|
56
|
+
type: 'string',
|
|
57
|
+
required: true
|
|
58
|
+
},
|
|
59
|
+
profileExtensionTable: {
|
|
60
|
+
label: 'PET Name',
|
|
61
|
+
description: 'Profile Extension Table (PET) Name. Required if using the "Send Custom Traits" Action.',
|
|
62
|
+
type: 'string',
|
|
63
|
+
required: false
|
|
64
|
+
},
|
|
65
|
+
insertOnNoMatch: {
|
|
66
|
+
label: 'Insert On No Match',
|
|
67
|
+
description: 'Indicates what should be done for records where a match is not found.',
|
|
68
|
+
type: 'boolean',
|
|
69
|
+
default: true,
|
|
70
|
+
required: true
|
|
71
|
+
},
|
|
72
|
+
matchColumnName1: {
|
|
73
|
+
label: 'First Column Match',
|
|
74
|
+
description: 'First match column for determining whether an insert or update should occur.',
|
|
31
75
|
type: 'string',
|
|
76
|
+
choices: [
|
|
77
|
+
{ label: 'RIID', value: 'RIID' },
|
|
78
|
+
{ label: 'CUSTOMER_ID', value: 'CUSTOMER_ID' },
|
|
79
|
+
{ label: 'EMAIL_ADDRESS', value: 'EMAIL_ADDRESS' },
|
|
80
|
+
{ label: 'MOBILE_NUMBER', value: 'MOBILE_NUMBER' },
|
|
81
|
+
{ label: 'EMAIL_MD5_HASH', value: 'EMAIL_MD5_HASH' },
|
|
82
|
+
{ label: 'EMAIL_SHA256_HASH', value: 'EMAIL_SHA256_HASH' }
|
|
83
|
+
],
|
|
84
|
+
default: 'EMAIL_ADDRESS',
|
|
32
85
|
required: true
|
|
86
|
+
},
|
|
87
|
+
matchColumnName2: {
|
|
88
|
+
label: 'Second Column Match',
|
|
89
|
+
description: 'Second match column for determining whether an insert or update should occur.',
|
|
90
|
+
type: 'string',
|
|
91
|
+
choices: [
|
|
92
|
+
{ label: 'RIID', value: 'RIID' },
|
|
93
|
+
{ label: 'CUSTOMER_ID', value: 'CUSTOMER_ID' },
|
|
94
|
+
{ label: 'EMAIL_ADDRESS', value: 'EMAIL_ADDRESS' },
|
|
95
|
+
{ label: 'MOBILE_NUMBER', value: 'MOBILE_NUMBER' },
|
|
96
|
+
{ label: 'EMAIL_MD5_HASH', value: 'EMAIL_MD5_HASH' },
|
|
97
|
+
{ label: 'EMAIL_SHA256_HASH', value: 'EMAIL_SHA256_HASH' }
|
|
98
|
+
]
|
|
99
|
+
},
|
|
100
|
+
updateOnMatch: {
|
|
101
|
+
label: 'Update On Match',
|
|
102
|
+
description: 'Controls how the existing record should be updated. Defaults to Replace All.',
|
|
103
|
+
type: 'string',
|
|
104
|
+
required: true,
|
|
105
|
+
choices: [
|
|
106
|
+
{ label: 'Replace All', value: 'REPLACE_ALL' },
|
|
107
|
+
{ label: 'No Update', value: 'NO_UPDATE' }
|
|
108
|
+
],
|
|
109
|
+
default: 'REPLACE_ALL'
|
|
110
|
+
},
|
|
111
|
+
textValue: {
|
|
112
|
+
label: 'Text Value',
|
|
113
|
+
description: "Value of incoming preferred email format data. For example, 'T' may represent a preference for Text formatted email.",
|
|
114
|
+
type: 'string'
|
|
115
|
+
},
|
|
116
|
+
matchOperator: {
|
|
117
|
+
label: 'Match Operator',
|
|
118
|
+
description: 'Operator to join match column names.',
|
|
119
|
+
type: 'string',
|
|
120
|
+
choices: [
|
|
121
|
+
{ label: 'None', value: 'NONE' },
|
|
122
|
+
{ label: 'And', value: 'AND' }
|
|
123
|
+
],
|
|
124
|
+
default: 'AND'
|
|
125
|
+
},
|
|
126
|
+
optoutValue: {
|
|
127
|
+
label: 'Optout Value',
|
|
128
|
+
description: "Value of incoming opt-out status data that represents an optout status. For example, 'O' may represent an opt-out status.",
|
|
129
|
+
type: 'string'
|
|
130
|
+
},
|
|
131
|
+
rejectRecordIfChannelEmpty: {
|
|
132
|
+
label: 'Reject Record If Channel Empty',
|
|
133
|
+
description: 'String containing comma-separated channel codes that if specified will result in record rejection when the channel address field is null. See [Responsys API docs](https://docs.oracle.com/en/cloud/saas/marketing/responsys-rest-api/op-rest-api-v1.3-lists-listname-members-post.html)',
|
|
134
|
+
type: 'string'
|
|
135
|
+
},
|
|
136
|
+
defaultPermissionStatus: {
|
|
137
|
+
label: 'Default Permission Status',
|
|
138
|
+
description: 'This value must be specified as either OPTIN or OPTOUT. defaults to OPTOUT.',
|
|
139
|
+
type: 'string',
|
|
140
|
+
required: true,
|
|
141
|
+
choices: [
|
|
142
|
+
{ label: 'Opt In', value: 'OPTIN' },
|
|
143
|
+
{ label: 'Opt Out', value: 'OPTOUT' }
|
|
144
|
+
],
|
|
145
|
+
default: 'OPTOUT'
|
|
146
|
+
},
|
|
147
|
+
htmlValue: {
|
|
148
|
+
label: 'Preferred Email Format',
|
|
149
|
+
description: "Value of incoming preferred email format data. For example, 'H' may represent a preference for HTML formatted email.",
|
|
150
|
+
type: 'string'
|
|
151
|
+
},
|
|
152
|
+
optinValue: {
|
|
153
|
+
label: 'Optin Value',
|
|
154
|
+
description: "Value of incoming opt-in status data that represents an opt-in status. For example, 'I' may represent an opt-in status.",
|
|
155
|
+
type: 'string'
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
testAuthentication: (_, { settings }) => {
|
|
159
|
+
if (settings.profileListName.toUpperCase() !== settings.profileListName) {
|
|
160
|
+
return Promise.reject('List Name must be in Uppercase');
|
|
161
|
+
}
|
|
162
|
+
if (settings.baseUrl.startsWith('https://'.toLowerCase())) {
|
|
163
|
+
return Promise.resolve('Success');
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
return Promise.reject('Responsys endpoint URL must start with https://');
|
|
33
167
|
}
|
|
34
168
|
},
|
|
35
169
|
refreshAccessToken: async (request, { settings }) => {
|
|
@@ -54,8 +188,9 @@ const destination = {
|
|
|
54
188
|
};
|
|
55
189
|
},
|
|
56
190
|
actions: {
|
|
57
|
-
|
|
58
|
-
|
|
191
|
+
sendAudience: sendAudience_1.default,
|
|
192
|
+
sendCustomTraits: sendCustomTraits_1.default,
|
|
193
|
+
upsertListMember: upsertListMember_1.default
|
|
59
194
|
}
|
|
60
195
|
};
|
|
61
196
|
exports.default = destination;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/responsys/index.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/responsys/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
userData: {
|
|
3
|
+
EMAIL_ADDRESS_?: string;
|
|
4
|
+
CUSTOMER_ID_?: string;
|
|
5
|
+
[k: string]: unknown;
|
|
6
|
+
};
|
|
7
|
+
computation_key: string;
|
|
8
|
+
traits_or_props: {
|
|
9
|
+
[k: string]: unknown;
|
|
10
|
+
};
|
|
11
|
+
computation_class: 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/sendAudience/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const shared_properties_1 = require("../shared_properties");
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const action = {
|
|
6
|
+
title: 'Send Audience',
|
|
7
|
+
description: 'Send Engage Audience to a Profile Extension Table in Responsys',
|
|
8
|
+
defaultSubscription: 'type = "identify" or type = "track"',
|
|
9
|
+
fields: {
|
|
10
|
+
userData: {
|
|
11
|
+
label: 'Recepient Data',
|
|
12
|
+
description: 'Record data that represents field names and corresponding values for each profile.',
|
|
13
|
+
type: 'object',
|
|
14
|
+
defaultObjectUI: 'keyvalue',
|
|
15
|
+
required: true,
|
|
16
|
+
additionalProperties: true,
|
|
17
|
+
properties: {
|
|
18
|
+
EMAIL_ADDRESS_: {
|
|
19
|
+
label: 'Email address',
|
|
20
|
+
description: "The user's email address",
|
|
21
|
+
type: 'string',
|
|
22
|
+
format: 'email',
|
|
23
|
+
required: false
|
|
24
|
+
},
|
|
25
|
+
CUSTOMER_ID_: {
|
|
26
|
+
label: 'Customer ID',
|
|
27
|
+
description: 'Responsys Customer ID.',
|
|
28
|
+
type: 'string',
|
|
29
|
+
required: false
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
default: {
|
|
33
|
+
EMAIL_ADDRESS_: {
|
|
34
|
+
'@if': {
|
|
35
|
+
exists: { '@path': '$.traits.email' },
|
|
36
|
+
then: { '@path': '$.traits.email' },
|
|
37
|
+
else: { '@path': '$.context.traits.email' }
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
CUSTOMER_ID_: { '@path': '$.userId' }
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
computation_key: {
|
|
44
|
+
label: 'Segment Audience Key',
|
|
45
|
+
description: 'A unique identifier assigned to a specific audience in Segment.',
|
|
46
|
+
type: 'string',
|
|
47
|
+
required: true,
|
|
48
|
+
default: { '@path': '$.context.personas.computation_key' }
|
|
49
|
+
},
|
|
50
|
+
traits_or_props: {
|
|
51
|
+
label: 'Traits or Properties',
|
|
52
|
+
description: 'Hidden field used to access traits or properties objects from Engage payloads.',
|
|
53
|
+
type: 'object',
|
|
54
|
+
required: true,
|
|
55
|
+
unsafe_hidden: true,
|
|
56
|
+
default: {
|
|
57
|
+
'@if': {
|
|
58
|
+
exists: { '@path': '$.traits' },
|
|
59
|
+
then: { '@path': '$.traits' },
|
|
60
|
+
else: { '@path': '$.properties' }
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
computation_class: {
|
|
65
|
+
label: 'Segment Audience Computation Class',
|
|
66
|
+
description: "Hidden field used to verify that the payload is generated by an Audience. Payloads not containing computation_class = 'audience' will be dropped before the perform() fuction call.",
|
|
67
|
+
type: 'string',
|
|
68
|
+
required: true,
|
|
69
|
+
unsafe_hidden: true,
|
|
70
|
+
default: { '@path': '$.context.personas.computation_class' },
|
|
71
|
+
choices: [{ label: 'Audience', value: 'audience' }]
|
|
72
|
+
},
|
|
73
|
+
enable_batching: shared_properties_1.enable_batching,
|
|
74
|
+
batch_size: shared_properties_1.batch_size
|
|
75
|
+
},
|
|
76
|
+
perform: async (request, data) => {
|
|
77
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
78
|
+
utils_1.validateCustomTraitsSettings(data.settings);
|
|
79
|
+
return utils_1.sendCustomTraits(request, [data.payload], data.settings, userDataFieldNames, true);
|
|
80
|
+
},
|
|
81
|
+
performBatch: async (request, data) => {
|
|
82
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
83
|
+
utils_1.validateCustomTraitsSettings(data.settings);
|
|
84
|
+
return utils_1.sendCustomTraits(request, data.payload, data.settings, userDataFieldNames, true);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
exports.default = action;
|
|
88
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/sendAudience/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/sendCustomTraits/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const shared_properties_1 = require("../shared_properties");
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const action = {
|
|
6
|
+
title: 'Send Custom Traits',
|
|
7
|
+
description: 'Send Custom Traits to a Profile Extension Table in Responsys',
|
|
8
|
+
defaultSubscription: 'type = "identify"',
|
|
9
|
+
fields: {
|
|
10
|
+
userData: {
|
|
11
|
+
label: 'Recepient Data',
|
|
12
|
+
description: 'Record data that represents field names and corresponding values for each profile.',
|
|
13
|
+
type: 'object',
|
|
14
|
+
defaultObjectUI: 'keyvalue',
|
|
15
|
+
required: true,
|
|
16
|
+
additionalProperties: true,
|
|
17
|
+
properties: {
|
|
18
|
+
EMAIL_ADDRESS_: {
|
|
19
|
+
label: 'Email address',
|
|
20
|
+
description: "The user's email address",
|
|
21
|
+
type: 'string',
|
|
22
|
+
format: 'email',
|
|
23
|
+
required: false
|
|
24
|
+
},
|
|
25
|
+
CUSTOMER_ID_: {
|
|
26
|
+
label: 'Customer ID',
|
|
27
|
+
description: 'Responsys Customer ID.',
|
|
28
|
+
type: 'string',
|
|
29
|
+
required: false
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
default: {
|
|
33
|
+
EMAIL_ADDRESS_: { '@path': '$.traits.email' },
|
|
34
|
+
CUSTOMER_ID_: { '@path': '$.userId' }
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
enable_batching: shared_properties_1.enable_batching,
|
|
38
|
+
batch_size: shared_properties_1.batch_size
|
|
39
|
+
},
|
|
40
|
+
perform: async (request, data) => {
|
|
41
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
42
|
+
utils_1.validateCustomTraitsSettings(data.settings);
|
|
43
|
+
return utils_1.sendCustomTraits(request, [data.payload], data.settings, userDataFieldNames);
|
|
44
|
+
},
|
|
45
|
+
performBatch: async (request, data) => {
|
|
46
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
47
|
+
utils_1.validateCustomTraitsSettings(data.settings);
|
|
48
|
+
return utils_1.sendCustomTraits(request, data.payload, data.settings, userDataFieldNames);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
exports.default = action;
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/sendCustomTraits/index.ts"],"names":[],"mappings":";;AAGA,4DAAkE;AAClE,oCAAgG;AAGhG,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,oBAAoB;IAC3B,WAAW,EAAE,8DAA8D;IAC3E,mBAAmB,EAAE,mBAAmB;IACxC,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,oFAAoF;YACjG,IAAI,EAAE,QAAQ;YACd,eAAe,EAAE,UAAU;YAC3B,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE,IAAI;YAC1B,UAAU,EAAE;gBACV,cAAc,EAAE;oBACd,KAAK,EAAE,eAAe;oBACtB,WAAW,EAAE,0BAA0B;oBACvC,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,KAAK;iBAChB;gBACD,YAAY,EAAE;oBACZ,KAAK,EAAE,aAAa;oBACpB,WAAW,EAAE,wBAAwB;oBACrC,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,OAAO,EAAE;gBACP,cAAc,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;gBAC7C,YAAY,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;aACtC;SACF;QACD,eAAe,EAAE,mCAAe;QAChC,UAAU,EAAE,8BAAU;KACvB;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC/B,MAAM,kBAAkB,GAAG,6BAAqB,CAAC,IAAuB,CAAC,CAAA;QAEzE,oCAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE3C,OAAO,wBAAgB,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;IACrF,CAAC;IAED,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACpC,MAAM,kBAAkB,GAAG,6BAAqB,CAAC,IAAuB,CAAC,CAAA;QAEzE,oCAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE3C,OAAO,wBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAA;IACnF,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.batch_size = exports.enable_batching = void 0;
|
|
4
|
+
exports.enable_batching = {
|
|
5
|
+
label: 'Use Responsys Async API',
|
|
6
|
+
description: 'Once enabled, Segment will collect events into batches of 200 before sending to Responsys.',
|
|
7
|
+
type: 'boolean',
|
|
8
|
+
default: true,
|
|
9
|
+
unsafe_hidden: true
|
|
10
|
+
};
|
|
11
|
+
exports.batch_size = {
|
|
12
|
+
label: 'Batch Size',
|
|
13
|
+
description: 'Maximum number of events to include in each batch. Actual batch sizes may be lower.',
|
|
14
|
+
type: 'number',
|
|
15
|
+
required: false,
|
|
16
|
+
unsafe_hidden: true,
|
|
17
|
+
default: 200
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=shared_properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared_properties.js","sourceRoot":"","sources":["../../../src/destinations/responsys/shared_properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,4FAA4F;IACzG,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;CACpB,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,KAAK;IACf,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE,GAAG;CACb,CAAA"}
|
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
export interface
|
|
2
|
-
|
|
1
|
+
export interface Data {
|
|
2
|
+
rawMapping: {
|
|
3
|
+
userData: {
|
|
4
|
+
[k: string]: unknown;
|
|
5
|
+
};
|
|
6
|
+
};
|
|
3
7
|
}
|
|
4
|
-
export
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
}
|
|
7
|
-
export interface RecordData {
|
|
8
|
-
records: DynamicData[][];
|
|
9
|
-
fieldNames: string[];
|
|
10
|
-
mapTemplateName: string;
|
|
11
|
-
}
|
|
12
|
-
export interface MergeRule {
|
|
13
|
-
defaultPermissionStatus?: string;
|
|
8
|
+
export declare type MergeRule = {
|
|
14
9
|
htmlValue?: string;
|
|
10
|
+
optinValue?: string;
|
|
11
|
+
textValue?: string;
|
|
15
12
|
insertOnNoMatch?: boolean;
|
|
13
|
+
updateOnMatch?: string;
|
|
16
14
|
matchColumnName1?: string;
|
|
17
15
|
matchColumnName2?: string;
|
|
18
16
|
matchOperator?: string;
|
|
19
|
-
optinValue?: string;
|
|
20
17
|
optoutValue?: string;
|
|
21
18
|
rejectRecordIfChannelEmpty?: string;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
defaultPermissionStatus?: string;
|
|
20
|
+
};
|
|
21
|
+
export declare type RecordData = {
|
|
22
|
+
fieldNames: string[];
|
|
23
|
+
records: unknown[][];
|
|
24
|
+
mapTemplateName: string;
|
|
25
|
+
};
|
|
26
|
+
export declare type ListMemberRequestBody = {
|
|
26
27
|
recordData: RecordData;
|
|
27
28
|
} & {
|
|
28
29
|
mergeRule: MergeRule;
|
|
29
30
|
};
|
|
30
|
-
export declare type
|
|
31
|
+
export declare type CustomTraitsRequestBody = {
|
|
31
32
|
recordData: RecordData;
|
|
32
33
|
} & {
|
|
33
|
-
insertOnNoMatch
|
|
34
|
-
updateOnMatch
|
|
35
|
-
matchColumnName1
|
|
36
|
-
matchColumnName2
|
|
34
|
+
insertOnNoMatch?: boolean;
|
|
35
|
+
updateOnMatch?: string;
|
|
36
|
+
matchColumnName1?: string;
|
|
37
|
+
matchColumnName2?: string;
|
|
37
38
|
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
userData: {
|
|
3
|
+
EMAIL_ADDRESS_?: string;
|
|
4
|
+
EMAIL_MD5_HASH_?: string;
|
|
5
|
+
EMAIL_SHA256_HASH_?: string;
|
|
6
|
+
RIID_?: string;
|
|
7
|
+
CUSTOMER_ID_?: string;
|
|
8
|
+
MOBILE_NUMBER_?: string;
|
|
9
|
+
[k: string]: unknown;
|
|
10
|
+
};
|
|
11
|
+
enable_batching?: boolean;
|
|
12
|
+
batch_size?: number;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/upsertListMember/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const shared_properties_1 = require("../shared_properties");
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const action = {
|
|
6
|
+
title: 'Upsert Profile List Member',
|
|
7
|
+
description: 'Create or update a Profile List Member in Responsys',
|
|
8
|
+
defaultSubscription: 'type = "identify"',
|
|
9
|
+
fields: {
|
|
10
|
+
userData: {
|
|
11
|
+
label: 'Recepient Data',
|
|
12
|
+
description: 'Record data that represents field names and corresponding values for each profile.',
|
|
13
|
+
type: 'object',
|
|
14
|
+
defaultObjectUI: 'keyvalue',
|
|
15
|
+
required: true,
|
|
16
|
+
additionalProperties: true,
|
|
17
|
+
properties: {
|
|
18
|
+
EMAIL_ADDRESS_: {
|
|
19
|
+
label: 'Email Address',
|
|
20
|
+
description: "The user's email address.",
|
|
21
|
+
type: 'string',
|
|
22
|
+
format: 'email',
|
|
23
|
+
required: false
|
|
24
|
+
},
|
|
25
|
+
EMAIL_MD5_HASH_: {
|
|
26
|
+
label: 'Email Address MD5 Hash',
|
|
27
|
+
description: "An MD5 Hash of the user's email address.",
|
|
28
|
+
type: 'string',
|
|
29
|
+
required: false
|
|
30
|
+
},
|
|
31
|
+
EMAIL_SHA256_HASH_: {
|
|
32
|
+
label: 'Email Address SHA256 Hash',
|
|
33
|
+
description: "A SHA256 Hash of the user's email address.",
|
|
34
|
+
type: 'string',
|
|
35
|
+
required: false
|
|
36
|
+
},
|
|
37
|
+
RIID_: {
|
|
38
|
+
label: 'Recipient ID',
|
|
39
|
+
description: 'Recipient ID (RIID). RIID is required if Email Address is empty.',
|
|
40
|
+
type: 'string',
|
|
41
|
+
required: false
|
|
42
|
+
},
|
|
43
|
+
CUSTOMER_ID_: {
|
|
44
|
+
label: 'Customer ID',
|
|
45
|
+
description: 'Responsys Customer ID.',
|
|
46
|
+
type: 'string',
|
|
47
|
+
required: false
|
|
48
|
+
},
|
|
49
|
+
MOBILE_NUMBER_: {
|
|
50
|
+
label: 'Mobile Number',
|
|
51
|
+
description: "The user's Mobile Phone Number.",
|
|
52
|
+
type: 'string',
|
|
53
|
+
required: false
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
default: {
|
|
57
|
+
EMAIL_ADDRESS_: { '@path': '$.traits.email' },
|
|
58
|
+
EMAIL_MD5_HASH_: { '@path': '$.traits.email_md5_hash_' },
|
|
59
|
+
EMAIL_SHA256_HASH_: { '@path': '$.traits.email_sha256_hash' },
|
|
60
|
+
CUSTOMER_ID_: { '@path': '$.userId' },
|
|
61
|
+
MOBILE_NUMBER_: { '@path': '$.traits.phone' }
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
enable_batching: shared_properties_1.enable_batching,
|
|
65
|
+
batch_size: shared_properties_1.batch_size
|
|
66
|
+
},
|
|
67
|
+
perform: async (request, data) => {
|
|
68
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
69
|
+
const transformedSettings = utils_1.transformDataFieldValues(data.settings);
|
|
70
|
+
utils_1.validateListMemberPayload(data.payload.userData);
|
|
71
|
+
return utils_1.upsertListMembers(request, [data.payload], transformedSettings, userDataFieldNames);
|
|
72
|
+
},
|
|
73
|
+
performBatch: async (request, data) => {
|
|
74
|
+
const userDataFieldNames = utils_1.getUserDataFieldNames(data);
|
|
75
|
+
const transformedSettings = utils_1.transformDataFieldValues(data.settings);
|
|
76
|
+
return utils_1.upsertListMembers(request, data.payload, transformedSettings, userDataFieldNames);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
exports.default = action;
|
|
80
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/upsertListMember/index.ts"],"names":[],"mappings":";;AAGA,4DAAkE;AAClE,oCAAwH;AAGxH,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,4BAA4B;IACnC,WAAW,EAAE,qDAAqD;IAClE,mBAAmB,EAAE,mBAAmB;IACxC,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,oFAAoF;YACjG,IAAI,EAAE,QAAQ;YACd,eAAe,EAAE,UAAU;YAC3B,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE,IAAI;YAC1B,UAAU,EAAE;gBACV,cAAc,EAAE;oBACd,KAAK,EAAE,eAAe;oBACtB,WAAW,EAAE,2BAA2B;oBACxC,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,KAAK;iBAChB;gBACD,eAAe,EAAE;oBACf,KAAK,EAAE,wBAAwB;oBAC/B,WAAW,EAAE,0CAA0C;oBACvD,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;gBACD,kBAAkB,EAAE;oBAClB,KAAK,EAAE,2BAA2B;oBAClC,WAAW,EAAE,4CAA4C;oBACzD,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;gBACD,KAAK,EAAE;oBACL,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,mEAAmE;oBAChF,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;gBACD,YAAY,EAAE;oBACZ,KAAK,EAAE,aAAa;oBACpB,WAAW,EAAE,wBAAwB;oBACrC,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;gBACD,cAAc,EAAE;oBACd,KAAK,EAAE,eAAe;oBACtB,WAAW,EAAE,iCAAiC;oBAC9C,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,OAAO,EAAE;gBACP,cAAc,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;gBAC7C,eAAe,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE;gBACxD,kBAAkB,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE;gBAC7D,YAAY,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;gBACrC,cAAc,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;aAC9C;SACF;QACD,eAAe,EAAE,mCAAe;QAChC,UAAU,EAAE,8BAAU;KACvB;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC/B,MAAM,kBAAkB,GAAG,6BAAqB,CAAC,IAAuB,CAAC,CAAA;QACzE,MAAM,mBAAmB,GAAG,gCAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnE,iCAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEhD,OAAO,yBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;IAC5F,CAAC;IAED,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACpC,MAAM,kBAAkB,GAAG,6BAAqB,CAAC,IAAuB,CAAC,CAAA;QACzE,MAAM,mBAAmB,GAAG,gCAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnE,OAAO,yBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAAA;IAC1F,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Payload as CustomTraitsPayload } from './sendCustomTraits/generated-types';
|
|
2
|
+
import { Payload as AudiencePayload } from './sendAudience/generated-types';
|
|
3
|
+
import { Payload as ListMemberPayload } from './upsertListMember/generated-types';
|
|
4
|
+
import { Data } from './types';
|
|
5
|
+
import { RequestClient } from '@segment/actions-core';
|
|
6
|
+
import type { Settings } from './generated-types';
|
|
7
|
+
export declare const validateCustomTraitsSettings: ({ profileExtensionTable }: {
|
|
8
|
+
profileExtensionTable?: string | undefined;
|
|
9
|
+
}) => void;
|
|
10
|
+
export declare const validateListMemberPayload: ({ EMAIL_ADDRESS_, RIID_, CUSTOMER_ID_ }: {
|
|
11
|
+
EMAIL_ADDRESS_?: string | undefined;
|
|
12
|
+
RIID_?: string | undefined;
|
|
13
|
+
CUSTOMER_ID_?: string | undefined;
|
|
14
|
+
}) => void;
|
|
15
|
+
export declare const getUserDataFieldNames: (data: Data) => string[];
|
|
16
|
+
export declare const transformDataFieldValues: (settings: Settings) => Settings;
|
|
17
|
+
export declare const sendCustomTraits: (request: RequestClient, payload: CustomTraitsPayload[] | AudiencePayload[], settings: Settings, userDataFieldNames: string[], isAudience?: boolean | undefined) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
|
|
18
|
+
export declare const upsertListMembers: (request: RequestClient, payload: ListMemberPayload[], settings: Settings, userDataFieldNames: string[]) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
|