@segment/action-destinations 3.331.0 → 3.331.1-staging-04682248e.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 (35) hide show
  1. package/dist/destinations/klaviyo/config.d.ts +5 -1
  2. package/dist/destinations/klaviyo/config.js +251 -2
  3. package/dist/destinations/klaviyo/config.js.map +1 -1
  4. package/dist/destinations/klaviyo/functions.d.ts +4 -1
  5. package/dist/destinations/klaviyo/functions.js +174 -1
  6. package/dist/destinations/klaviyo/functions.js.map +1 -1
  7. package/dist/destinations/klaviyo/properties.d.ts +1 -0
  8. package/dist/destinations/klaviyo/properties.js +17 -1
  9. package/dist/destinations/klaviyo/properties.js.map +1 -1
  10. package/dist/destinations/klaviyo/trackEvent/index.d.ts +1 -1
  11. package/dist/destinations/klaviyo/trackEvent/index.js +10 -1
  12. package/dist/destinations/klaviyo/trackEvent/index.js.map +1 -1
  13. package/dist/destinations/klaviyo/types.d.ts +11 -0
  14. package/dist/destinations/responsys/index.js +17 -7
  15. package/dist/destinations/responsys/index.js.map +1 -1
  16. package/dist/destinations/responsys/sendAudience/index.js +1 -1
  17. package/dist/destinations/responsys/sendAudienceAsPet/functions.d.ts +10 -0
  18. package/dist/destinations/responsys/sendAudienceAsPet/functions.js +152 -0
  19. package/dist/destinations/responsys/sendAudienceAsPet/functions.js.map +1 -0
  20. package/dist/destinations/responsys/sendAudienceAsPet/generated-types.d.ts +15 -0
  21. package/dist/destinations/responsys/sendAudienceAsPet/generated-types.js +3 -0
  22. package/dist/destinations/responsys/sendAudienceAsPet/generated-types.js.map +1 -0
  23. package/dist/destinations/responsys/sendAudienceAsPet/index.d.ts +5 -0
  24. package/dist/destinations/responsys/sendAudienceAsPet/index.js +143 -0
  25. package/dist/destinations/responsys/sendAudienceAsPet/index.js.map +1 -0
  26. package/dist/destinations/responsys/sendCustomTraits/index.js +1 -1
  27. package/dist/destinations/responsys/{shared_properties.js → shared-properties.js} +1 -1
  28. package/dist/destinations/responsys/{shared_properties.js.map → shared-properties.js.map} +1 -1
  29. package/dist/destinations/responsys/types.d.ts +18 -9
  30. package/dist/destinations/responsys/upsertListMember/index.js +1 -1
  31. package/dist/destinations/responsys/utils.d.ts +5 -4
  32. package/dist/destinations/responsys/utils.js +14 -42
  33. package/dist/destinations/responsys/utils.js.map +1 -1
  34. package/package.json +2 -2
  35. /package/dist/destinations/responsys/{shared_properties.d.ts → shared-properties.d.ts} +0 -0
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const actions_core_1 = require("@segment/actions-core");
7
7
  const config_1 = require("../config");
8
8
  const functions_1 = require("../functions");
9
+ const properties_1 = require("../properties");
9
10
  const dayjs_1 = __importDefault(require("dayjs"));
10
11
  const action = {
11
12
  title: 'Track Event',
@@ -25,6 +26,9 @@ const action = {
25
26
  label: 'Phone Number',
26
27
  type: 'string'
27
28
  },
29
+ country_code: {
30
+ ...properties_1.country_code
31
+ },
28
32
  external_id: {
29
33
  label: 'External Id',
30
34
  description: 'A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system.',
@@ -86,7 +90,9 @@ const action = {
86
90
  default: {
87
91
  '@path': '$.messageId'
88
92
  }
89
- }
93
+ },
94
+ enable_batching: { ...properties_1.enable_batching },
95
+ batch_size: { ...properties_1.batch_size }
90
96
  },
91
97
  perform: (request, { payload }) => {
92
98
  const { email, phone_number, external_id, anonymous_id } = payload.profile;
@@ -125,6 +131,9 @@ const action = {
125
131
  method: 'POST',
126
132
  json: eventData
127
133
  });
134
+ },
135
+ performBatch: (request, { payload }) => {
136
+ return functions_1.sendBatchedTrackEvent(request, payload);
128
137
  }
129
138
  };
130
139
  exports.default = action;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/trackEvent/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/trackEvent/index.ts"],"names":[],"mappings":"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"}
@@ -205,3 +205,14 @@ export interface AdditionalAttributes {
205
205
  title?: string;
206
206
  image?: string;
207
207
  }
208
+ export interface KlaviyoAPIErrorResponse {
209
+ id: string;
210
+ status: number;
211
+ code: string;
212
+ title: string;
213
+ detail: string;
214
+ source: {
215
+ pointer: string;
216
+ parameter?: string;
217
+ };
218
+ }
@@ -7,6 +7,7 @@ const actions_core_1 = require("@segment/actions-core");
7
7
  const sendCustomTraits_1 = __importDefault(require("./sendCustomTraits"));
8
8
  const sendAudience_1 = __importDefault(require("./sendAudience"));
9
9
  const upsertListMember_1 = __importDefault(require("./upsertListMember"));
10
+ const sendAudienceAsPet_1 = __importDefault(require("./sendAudienceAsPet"));
10
11
  const destination = {
11
12
  name: 'Responsys (Actions)',
12
13
  slug: 'actions-responsys',
@@ -162,15 +163,10 @@ const destination = {
162
163
  type: 'string'
163
164
  }
164
165
  },
165
- testAuthentication: (_, { settings }) => {
166
- if (settings.baseUrl.startsWith('https://'.toLowerCase())) {
167
- return Promise.resolve('Success');
168
- }
169
- else {
166
+ testAuthentication: async (request, { settings }) => {
167
+ if (!settings.baseUrl.startsWith('https://'.toLowerCase())) {
170
168
  throw new actions_core_1.IntegrationError('Responsys endpoint URL must start with https://', 'INVALID_URL', 400);
171
169
  }
172
- },
173
- refreshAccessToken: async (request, { settings }) => {
174
170
  const baseUrl = settings.baseUrl?.replace(/\/$/, '');
175
171
  const endpoint = `${baseUrl}/rest/api/v1.3/auth/token`;
176
172
  const res = await request(endpoint, {
@@ -180,6 +176,19 @@ const destination = {
180
176
  },
181
177
  body: `user_name=${encodeURIComponent(settings.username)}&password=${encodeURIComponent(settings.userPassword)}&auth_type=password`
182
178
  });
179
+ return Promise.resolve(res.data.authToken ? true : false);
180
+ },
181
+ refreshAccessToken: async (request, { auth }) => {
182
+ const resolvedAuth = auth;
183
+ const baseUrl = resolvedAuth.baseUrl?.replace(/\/$/, '');
184
+ const endpoint = `${baseUrl}/rest/api/v1.3/auth/token`;
185
+ const res = await request(endpoint, {
186
+ method: 'POST',
187
+ headers: {
188
+ 'Content-Type': 'application/x-www-form-urlencoded'
189
+ },
190
+ body: `user_name=${encodeURIComponent(resolvedAuth.username)}&password=${encodeURIComponent(resolvedAuth.userPassword)}&auth_type=password`
191
+ });
183
192
  return { accessToken: res.data.authToken };
184
193
  }
185
194
  },
@@ -193,6 +202,7 @@ const destination = {
193
202
  },
194
203
  actions: {
195
204
  sendAudience: sendAudience_1.default,
205
+ sendAudienceAsPet: sendAudienceAsPet_1.default,
196
206
  sendCustomTraits: sendCustomTraits_1.default,
197
207
  upsertListMember: upsertListMember_1.default
198
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/responsys/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/responsys/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const shared_properties_1 = require("../shared_properties");
3
+ const shared_properties_1 = require("../shared-properties");
4
4
  const utils_1 = require("../utils");
5
5
  const action = {
6
6
  title: 'Send Audience',
@@ -0,0 +1,10 @@
1
+ import { RequestClient } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import { Payload } from './generated-types';
4
+ export declare const petExists: (request: RequestClient, settings: Settings, computationKey: string) => Promise<{
5
+ profileExtension?: {
6
+ objectName: string;
7
+ } | undefined;
8
+ } | undefined>;
9
+ export declare const createPet: (request: RequestClient, settings: Settings, payload: Payload) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
10
+ export declare const updateProfileListAndPet: (request: RequestClient, settings: Settings, payloads: Payload[]) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>[]>;
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateProfileListAndPet = exports.createPet = exports.petExists = void 0;
4
+ const utils_1 = require("../utils");
5
+ const petExists = async (request, settings, computationKey) => {
6
+ const path = `/rest/api/v1.3/lists/${settings.profileListName}/listExtensions`;
7
+ const endpoint = new URL(path, settings.baseUrl);
8
+ const response = await request(endpoint.href, {
9
+ method: 'GET'
10
+ });
11
+ const results = response.data;
12
+ return results.find((item) => item.profileExtension?.objectName === computationKey);
13
+ };
14
+ exports.petExists = petExists;
15
+ const createPet = async (request, settings, payload) => {
16
+ const requestBody = {
17
+ profileExtension: {
18
+ objectName: payload.pet_name,
19
+ folderName: payload.folder_name
20
+ },
21
+ fields: [
22
+ {
23
+ fieldName: payload.pet_name,
24
+ fieldType: 'STR500'
25
+ }
26
+ ]
27
+ };
28
+ const path = `/rest/api/v1.3/lists/${settings.profileListName}/listExtensions`;
29
+ const endpoint = new URL(path, settings.baseUrl);
30
+ const response = await request(endpoint.href, {
31
+ method: 'POST',
32
+ body: JSON.stringify(requestBody)
33
+ });
34
+ return response;
35
+ };
36
+ exports.createPet = createPet;
37
+ const updateProfileListAndPet = async (request, settings, payloads) => {
38
+ const records = {};
39
+ await updateProfileListMembers(request, settings, payloads);
40
+ for (const payload of payloads) {
41
+ if (!records[payload.pet_name]) {
42
+ records[payload.pet_name] = {
43
+ recordsWithUserId: [],
44
+ recordsWithEmail: [],
45
+ recordsWithRiid: []
46
+ };
47
+ }
48
+ if (payload.userData.CUSTOMER_ID_) {
49
+ records[payload.pet_name].recordsWithUserId.push(payload);
50
+ }
51
+ else if (payload.userData.EMAIL_ADDRESS_) {
52
+ records[payload.pet_name].recordsWithEmail.push(payload);
53
+ }
54
+ else if (payload.userData.RIID_) {
55
+ records[payload.pet_name].recordsWithRiid.push(payload);
56
+ }
57
+ }
58
+ for (const [audienceKey, recordCategories] of Object.entries(records)) {
59
+ if (recordCategories.recordsWithUserId.length > 0) {
60
+ records[audienceKey].requestBodyUserId = buildPetUpdatePayload(recordCategories.recordsWithUserId, 'CUSTOMER_ID');
61
+ }
62
+ if (recordCategories.recordsWithEmail.length > 0) {
63
+ records[audienceKey].requestBodyEmail = buildPetUpdatePayload(recordCategories.recordsWithEmail, 'EMAIL_ADDRESS');
64
+ }
65
+ if (recordCategories.recordsWithRiid.length > 0) {
66
+ records[audienceKey].requestBodyRiid = buildPetUpdatePayload(recordCategories.recordsWithRiid, 'RIID');
67
+ }
68
+ }
69
+ const results = [];
70
+ for (const [computationKey, recordCategories] of Object.entries(records)) {
71
+ if (recordCategories.requestBodyUserId) {
72
+ results.push(await sendPetUpdate(request, settings, computationKey, recordCategories.requestBodyUserId));
73
+ }
74
+ if (recordCategories.requestBodyEmail) {
75
+ results.push(await sendPetUpdate(request, settings, computationKey, recordCategories.requestBodyEmail));
76
+ }
77
+ if (recordCategories.requestBodyRiid) {
78
+ results.push(await sendPetUpdate(request, settings, computationKey, recordCategories.requestBodyRiid));
79
+ }
80
+ }
81
+ return results;
82
+ };
83
+ exports.updateProfileListAndPet = updateProfileListAndPet;
84
+ const buildPetUpdatePayload = (payloads, matchField) => {
85
+ const resolvedMatchType = (matchField + '_');
86
+ const firstPayload = payloads[0];
87
+ const records = payloads.map((payload) => {
88
+ const field = payload.userData[resolvedMatchType];
89
+ if (field) {
90
+ const inAudience = payload.traits_or_props[payload.computation_key] === true ? '1' : '0';
91
+ return [field, inAudience];
92
+ }
93
+ });
94
+ const requestBody = {
95
+ recordData: {
96
+ fieldNames: [resolvedMatchType, firstPayload.computation_key],
97
+ records: records,
98
+ mapTemplateName: null
99
+ },
100
+ insertOnNoMatch: true,
101
+ updateOnMatch: 'REPLACE_ALL',
102
+ matchColumnName1: matchField
103
+ };
104
+ return requestBody;
105
+ };
106
+ const updateProfileListMembers = async (request, settings, payloads) => {
107
+ const fieldNames = ['EMAIL_ADDRESS_', 'CUSTOMER_ID_'];
108
+ const records = [];
109
+ for (const payload of payloads) {
110
+ const record = [];
111
+ for (const fieldName of fieldNames) {
112
+ const resolvedFieldName = fieldName;
113
+ if (payload.userData && payload.userData[resolvedFieldName]) {
114
+ if (payload.userData && payload.userData[resolvedFieldName]) {
115
+ const value = payload.userData[resolvedFieldName];
116
+ record.push(value || '');
117
+ }
118
+ }
119
+ }
120
+ records.push(record);
121
+ }
122
+ const recordData = {
123
+ fieldNames: fieldNames,
124
+ records: records,
125
+ mapTemplateName: ''
126
+ };
127
+ const mergeRule = {
128
+ insertOnNoMatch: true,
129
+ updateOnMatch: 'REPLACE_ALL',
130
+ matchColumnName1: settings.matchColumnName1 + '_'
131
+ };
132
+ const requestBody = {
133
+ recordData,
134
+ mergeRule
135
+ };
136
+ const path = `/rest/asyncApi/v1.3/lists/${settings.profileListName}/members`;
137
+ const endpoint = new URL(path, settings.baseUrl);
138
+ const response = await request(endpoint.href, {
139
+ method: 'POST',
140
+ body: JSON.stringify(requestBody)
141
+ });
142
+ await utils_1.sendDebugMessageToSegmentSource(request, requestBody, response, settings);
143
+ };
144
+ const sendPetUpdate = async (request, settings, computationKey, requestBody) => {
145
+ const path = `/rest/api/v1.3/lists/${settings.profileListName}/listExtensions/${computationKey}/members`;
146
+ const endpoint = new URL(path, settings.baseUrl);
147
+ return request(endpoint.href, {
148
+ method: 'POST',
149
+ body: JSON.stringify(requestBody)
150
+ });
151
+ };
152
+ //# sourceMappingURL=functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/sendAudienceAsPet/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export interface Payload {
2
+ userData: {
3
+ EMAIL_ADDRESS_?: string;
4
+ CUSTOMER_ID_?: string;
5
+ RIID_?: string;
6
+ };
7
+ folder_name: string;
8
+ pet_name: string;
9
+ computation_key: string;
10
+ traits_or_props: {
11
+ [k: string]: unknown;
12
+ };
13
+ timestamp?: string | number;
14
+ retry?: number;
15
+ }
@@ -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/responsys/sendAudienceAsPet/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("../utils");
4
+ const functions_1 = require("./functions");
5
+ const action = {
6
+ title: 'Send Audience as Pet',
7
+ description: 'Send Engage Audience to a separate, newly created Profile Extension Table in Responsys',
8
+ defaultSubscription: 'type = "identify" or type = "track"',
9
+ fields: {
10
+ userData: {
11
+ label: 'Recipient 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: false,
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
+ RIID_: {
32
+ label: 'Recipient ID',
33
+ description: 'Recipient ID (RIID). RIID is required if Email Address is empty.',
34
+ type: 'string',
35
+ required: false
36
+ }
37
+ },
38
+ default: {
39
+ EMAIL_ADDRESS_: {
40
+ '@if': {
41
+ exists: { '@path': '$.traits.email' },
42
+ then: { '@path': '$.traits.email' },
43
+ else: { '@path': '$.context.traits.email' }
44
+ }
45
+ },
46
+ CUSTOMER_ID_: { '@path': '$.userId' }
47
+ }
48
+ },
49
+ folder_name: {
50
+ label: 'Folder Name',
51
+ description: 'The name of the folder where the new Profile Extension Table will be created.',
52
+ type: 'string',
53
+ required: true,
54
+ default: 'Segment'
55
+ },
56
+ pet_name: {
57
+ label: 'Profile Extension Table Name',
58
+ description: 'The PET (Profile Extension Table) name. The default value is the audience key in Segment.',
59
+ type: 'string',
60
+ required: true,
61
+ unsafe_hidden: true,
62
+ default: { '@path': '$.context.personas.computation_key' }
63
+ },
64
+ computation_key: {
65
+ label: 'Segment Audience Key',
66
+ description: 'A unique identifier assigned to a specific audience in Segment.',
67
+ type: 'string',
68
+ required: true,
69
+ unsafe_hidden: true,
70
+ default: { '@path': '$.context.personas.computation_key' }
71
+ },
72
+ traits_or_props: {
73
+ label: 'Traits or Properties',
74
+ description: 'Hidden field used to access traits or properties objects from Engage payloads.',
75
+ type: 'object',
76
+ required: true,
77
+ unsafe_hidden: true,
78
+ default: {
79
+ '@if': {
80
+ exists: { '@path': '$.traits' },
81
+ then: { '@path': '$.traits' },
82
+ else: { '@path': '$.properties' }
83
+ }
84
+ }
85
+ },
86
+ timestamp: {
87
+ label: 'Timestamp',
88
+ description: 'The timestamp of when the event occurred.',
89
+ type: 'datetime',
90
+ required: false,
91
+ unsafe_hidden: true,
92
+ default: {
93
+ '@path': '$.timestamp'
94
+ }
95
+ },
96
+ retry: {
97
+ label: 'Delay (seconds)',
98
+ description: `A delay of the selected seconds will be added before retrying a failed request.
99
+ Max delay allowed is 600 secs (10 mins). The default is 0 seconds.`,
100
+ type: 'number',
101
+ choices: [
102
+ { label: '0 secs', value: 0 },
103
+ { label: '30 secs', value: 30 },
104
+ { label: '120 secs', value: 120 },
105
+ { label: '300 secs', value: 300 },
106
+ { label: '480 secs', value: 480 },
107
+ { label: '600 secs', value: 600 }
108
+ ],
109
+ required: false,
110
+ unsafe_hidden: true,
111
+ default: 0
112
+ }
113
+ },
114
+ perform: async (request, data) => {
115
+ const { payload, settings } = data;
116
+ utils_1.validateListMemberPayload(payload.userData);
117
+ const petAlreadyExists = await functions_1.petExists(request, settings, payload.pet_name);
118
+ if (!petAlreadyExists) {
119
+ await functions_1.createPet(request, settings, payload);
120
+ }
121
+ return await functions_1.updateProfileListAndPet(request, settings, [payload]);
122
+ },
123
+ performBatch: async (request, data) => {
124
+ const { payload, settings } = data;
125
+ const validPayloads = [];
126
+ for (const item of payload) {
127
+ try {
128
+ utils_1.validateListMemberPayload(item.userData);
129
+ validPayloads.push(item);
130
+ }
131
+ catch (error) {
132
+ console.error(error);
133
+ }
134
+ }
135
+ const petAlreadyExists = await functions_1.petExists(request, settings, payload[0].pet_name);
136
+ if (!petAlreadyExists) {
137
+ await functions_1.createPet(request, settings, payload[0]);
138
+ }
139
+ return await functions_1.updateProfileListAndPet(request, settings, payload);
140
+ }
141
+ };
142
+ exports.default = action;
143
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/responsys/sendAudienceAsPet/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const shared_properties_1 = require("../shared_properties");
3
+ const shared_properties_1 = require("../shared-properties");
4
4
  const utils_1 = require("../utils");
5
5
  const action = {
6
6
  title: 'Send Custom Traits',
@@ -16,4 +16,4 @@ exports.batch_size = {
16
16
  unsafe_hidden: true,
17
17
  default: 200
18
18
  };
19
- //# sourceMappingURL=shared_properties.js.map
19
+ //# sourceMappingURL=shared-properties.js.map
@@ -1 +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
+ {"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"}
@@ -5,7 +5,9 @@ export interface Data {
5
5
  };
6
6
  };
7
7
  }
8
- export declare type MergeRule = {
8
+ export declare type ResponsysMatchField = 'CUSTOMER_ID' | 'EMAIL_ADDRESS' | 'RIID';
9
+ export declare type ResponsysMatchType = 'CUSTOMER_ID_' | 'EMAIL_ADDRESS_' | 'RIID_';
10
+ export declare type ResponsysMergeRule = {
9
11
  htmlValue?: string;
10
12
  optinValue?: string;
11
13
  textValue?: string;
@@ -18,21 +20,28 @@ export declare type MergeRule = {
18
20
  rejectRecordIfChannelEmpty?: string;
19
21
  defaultPermissionStatus?: string;
20
22
  };
21
- export declare type RecordData = {
23
+ export declare type ResponsysRecordData = {
22
24
  fieldNames: string[];
23
- records: unknown[][];
24
- mapTemplateName: string;
25
+ records: string[][];
26
+ mapTemplateName?: string | null;
25
27
  };
26
- export declare type ListMemberRequestBody = {
27
- recordData: RecordData;
28
+ export declare type ResponsysListMemberRequestBody = {
29
+ recordData: ResponsysRecordData;
28
30
  } & {
29
- mergeRule: MergeRule;
31
+ mergeRule: ResponsysMergeRule;
30
32
  };
31
- export declare type CustomTraitsRequestBody = {
32
- recordData: RecordData;
33
+ export declare type ResponsysCustomTraitsRequestBody = {
34
+ recordData: ResponsysRecordData;
33
35
  } & {
34
36
  insertOnNoMatch?: boolean;
35
37
  updateOnMatch?: string;
36
38
  matchColumnName1?: string;
37
39
  matchColumnName2?: string;
38
40
  };
41
+ export declare type ResponsysAudiencePetUpdateRequestBody = {
42
+ recordData: ResponsysRecordData;
43
+ } & {
44
+ insertOnNoMatch: boolean;
45
+ updateOnMatch: string;
46
+ matchColumnName1: string;
47
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const shared_properties_1 = require("../shared_properties");
3
+ const shared_properties_1 = require("../shared-properties");
4
4
  const utils_1 = require("../utils");
5
5
  const action = {
6
6
  title: 'Upsert Profile List Member',
@@ -1,8 +1,8 @@
1
1
  import { Payload as CustomTraitsPayload } from './sendCustomTraits/generated-types';
2
2
  import { Payload as AudiencePayload } from './sendAudience/generated-types';
3
3
  import { Payload as ListMemberPayload } from './upsertListMember/generated-types';
4
- import { Data } from './types';
5
- import { RequestClient, StatsContext } from '@segment/actions-core';
4
+ import { ResponsysCustomTraitsRequestBody, Data } from './types';
5
+ import { RequestClient, StatsContext, ModifiedResponse } from '@segment/actions-core';
6
6
  import type { Settings } from './generated-types';
7
7
  export declare const validateCustomTraits: ({ profileExtensionTable, timestamp, statsContext, retry }: {
8
8
  profileExtensionTable?: string | undefined;
@@ -17,5 +17,6 @@ export declare const validateListMemberPayload: ({ EMAIL_ADDRESS_, RIID_, CUSTOM
17
17
  CUSTOMER_ID_?: string | undefined;
18
18
  }) => void;
19
19
  export declare const getUserDataFieldNames: (data: Data) => string[];
20
- export declare const sendCustomTraits: (request: RequestClient, payload: CustomTraitsPayload[] | AudiencePayload[], settings: Settings, userDataFieldNames: string[], isAudience?: boolean | undefined) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
21
- export declare const upsertListMembers: (request: RequestClient, payload: ListMemberPayload[], settings: Settings, userDataFieldNames: string[]) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
20
+ export declare const sendCustomTraits: (request: RequestClient, payload: CustomTraitsPayload[] | AudiencePayload[], settings: Settings, userDataFieldNames: string[], isAudience?: boolean) => Promise<ModifiedResponse<unknown>>;
21
+ export declare const upsertListMembers: (request: RequestClient, payload: ListMemberPayload[], settings: Settings, userDataFieldNames: string[]) => Promise<ModifiedResponse<unknown>>;
22
+ export declare const sendDebugMessageToSegmentSource: (request: RequestClient, requestBody: ResponsysCustomTraitsRequestBody, response: ModifiedResponse<unknown>, settings: Settings) => Promise<void>;