@segment/action-destinations 3.345.10-staging.0 → 3.345.12-staging.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.
- package/dist/destinations/amazon-amc/function.d.ts +14 -0
- package/dist/destinations/amazon-amc/function.js +155 -0
- package/dist/destinations/amazon-amc/function.js.map +1 -0
- package/dist/destinations/amazon-amc/syncAudiencesToDSP/index.d.ts +1 -1
- package/dist/destinations/amazon-amc/syncAudiencesToDSP/index.js +4 -88
- package/dist/destinations/amazon-amc/syncAudiencesToDSP/index.js.map +1 -1
- package/dist/destinations/amazon-amc/utils.d.ts +1 -0
- package/dist/destinations/amazon-amc/utils.js +2 -1
- package/dist/destinations/amazon-amc/utils.js.map +1 -1
- package/dist/destinations/braze/updateUserProfile/index.js +5 -1
- package/dist/destinations/braze/updateUserProfile/index.js.map +1 -1
- package/dist/destinations/index.js +2 -0
- package/dist/destinations/index.js.map +1 -1
- package/dist/destinations/klaviyo/removeProfile/index.js +1 -1
- package/dist/destinations/klaviyo/removeProfile/index.js.map +1 -1
- package/dist/destinations/responsys/sendAudienceAsPet/functions.js +1 -1
- package/dist/destinations/responsys/sendAudienceAsPet/functions.js.map +1 -1
- package/dist/destinations/responsys/utils.js +3 -3
- package/dist/destinations/responsys/utils.js.map +1 -1
- package/dist/destinations/salesforce-marketing-cloud/contactDataExtension/index.js +1 -1
- package/dist/destinations/salesforce-marketing-cloud/contactDataExtension/index.js.map +1 -1
- package/dist/destinations/salesforce-marketing-cloud/dataExtension/index.js +1 -1
- package/dist/destinations/salesforce-marketing-cloud/dataExtension/index.js.map +1 -1
- package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.d.ts +2 -1
- package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.js +36 -34
- package/dist/destinations/salesforce-marketing-cloud/sfmc-operations.js.map +1 -1
- package/dist/destinations/salesforce-marketing-cloud/types.d.ts +1 -0
- package/dist/destinations/segment/properties.js +5 -4
- package/dist/destinations/segment/properties.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/constants.d.ts +2 -0
- package/dist/destinations/sendgrid-audiences/constants.js +3 -1
- package/dist/destinations/sendgrid-audiences/constants.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/index.d.ts +3 -1
- package/dist/destinations/sendgrid-audiences/index.js +45 -12
- package/dist/destinations/sendgrid-audiences/index.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/syncAudience/dynamic-fields.d.ts +2 -1
- package/dist/destinations/sendgrid-audiences/syncAudience/dynamic-fields.js +16 -14
- package/dist/destinations/sendgrid-audiences/syncAudience/dynamic-fields.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/syncAudience/fields.js +76 -46
- package/dist/destinations/sendgrid-audiences/syncAudience/fields.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/syncAudience/generated-types.d.ts +14 -5
- package/dist/destinations/sendgrid-audiences/syncAudience/index.js +14 -4
- package/dist/destinations/sendgrid-audiences/syncAudience/index.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/syncAudience/utils.d.ts +4 -2
- package/dist/destinations/sendgrid-audiences/syncAudience/utils.js +206 -88
- package/dist/destinations/sendgrid-audiences/syncAudience/utils.js.map +1 -1
- package/dist/destinations/sendgrid-audiences/types.d.ts +24 -0
- package/dist/destinations/twilio-messaging/sendMessage/constants.js +3 -1
- package/dist/destinations/twilio-messaging/sendMessage/constants.js.map +1 -1
- package/dist/destinations/twilio-messaging/sendMessage/dynamic-fields.js +3 -4
- package/dist/destinations/twilio-messaging/sendMessage/dynamic-fields.js.map +1 -1
- package/dist/destinations/twilio-messaging/sendMessage/fields.js +1 -1
- package/dist/destinations/twilio-messaging/sendMessage/fields.js.map +1 -1
- package/dist/destinations/twilio-messaging/sendMessage/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RequestClient, MultiStatusResponse, ModifiedResponse } from '@segment/actions-core';
|
|
2
2
|
import { Payload as payload_dataExtension } from './dataExtension/generated-types';
|
|
3
3
|
import { Payload as payload_contactDataExtension } from './contactDataExtension/generated-types';
|
|
4
|
-
export declare function upsertRows(request: RequestClient, subdomain: String, payloads: payload_dataExtension[] | payload_contactDataExtension[]): Promise<ModifiedResponse<unknown
|
|
4
|
+
export declare function upsertRows(request: RequestClient, subdomain: String, payloads: payload_dataExtension[] | payload_contactDataExtension[]): Promise<ModifiedResponse<unknown>>;
|
|
5
|
+
export declare function executeUpsertWithMultiStatus(request: RequestClient, subdomain: String, payloads: payload_dataExtension[] | payload_contactDataExtension[]): Promise<MultiStatusResponse>;
|
|
@@ -1,24 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.upsertRows = void 0;
|
|
3
|
+
exports.executeUpsertWithMultiStatus = exports.upsertRows = void 0;
|
|
4
4
|
const actions_core_1 = require("@segment/actions-core");
|
|
5
|
-
|
|
6
|
-
const multiStatusResponse = new actions_core_1.MultiStatusResponse();
|
|
7
|
-
let url;
|
|
8
|
-
let response;
|
|
5
|
+
function upsertRows(request, subdomain, payloads) {
|
|
9
6
|
const { key, id } = payloads[0];
|
|
10
7
|
if (!key && !id) {
|
|
11
|
-
|
|
12
|
-
throw new actions_core_1.IntegrationError(`In order to send an event to a data extension either Data Extension ID or Data Extension Key must be defined.`, 'Misconfigured required field', 400);
|
|
13
|
-
}
|
|
14
|
-
payloads.forEach((_, index) => {
|
|
15
|
-
multiStatusResponse.setErrorResponseAtIndex(index, {
|
|
16
|
-
status: 400,
|
|
17
|
-
errortype: 'PAYLOAD_VALIDATION_FAILED',
|
|
18
|
-
errormessage: `In order to send an event to a data extension either Data Extension ID or Data Extension Key must be defined.`
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
return multiStatusResponse;
|
|
8
|
+
throw new actions_core_1.IntegrationError(`In order to send an event to a data extension either Data Extension ID or Data Extension Key must be defined.`, 'Misconfigured required field', 400);
|
|
22
9
|
}
|
|
23
10
|
const rows = [];
|
|
24
11
|
payloads.forEach((payload) => {
|
|
@@ -28,46 +15,61 @@ async function upsertRows(request, subdomain, payloads) {
|
|
|
28
15
|
});
|
|
29
16
|
});
|
|
30
17
|
if (key) {
|
|
31
|
-
|
|
18
|
+
return request(`https://${subdomain}.rest.marketingcloudapis.com/hub/v1/dataevents/key:${key}/rowset`, {
|
|
19
|
+
method: 'POST',
|
|
20
|
+
json: rows
|
|
21
|
+
});
|
|
32
22
|
}
|
|
33
23
|
else {
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
try {
|
|
37
|
-
response = await request(url, {
|
|
24
|
+
return request(`https://${subdomain}.rest.marketingcloudapis.com/hub/v1/dataevents/${id}/rowset`, {
|
|
38
25
|
method: 'POST',
|
|
39
26
|
json: rows
|
|
40
27
|
});
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.upsertRows = upsertRows;
|
|
31
|
+
async function executeUpsertWithMultiStatus(request, subdomain, payloads) {
|
|
32
|
+
const multiStatusResponse = new actions_core_1.MultiStatusResponse();
|
|
33
|
+
let response;
|
|
34
|
+
try {
|
|
35
|
+
response = await upsertRows(request, subdomain, payloads);
|
|
41
36
|
payloads.forEach((payload, index) => {
|
|
42
37
|
multiStatusResponse.setSuccessResponseAtIndex(index, {
|
|
43
38
|
status: 200,
|
|
44
39
|
sent: payload,
|
|
45
|
-
body:
|
|
40
|
+
body: response?.data
|
|
46
41
|
});
|
|
47
42
|
});
|
|
48
43
|
}
|
|
49
44
|
catch (error) {
|
|
45
|
+
if (error instanceof actions_core_1.IntegrationError && error.code === 'Misconfigured required field') {
|
|
46
|
+
payloads.forEach((_, index) => {
|
|
47
|
+
multiStatusResponse.setErrorResponseAtIndex(index, {
|
|
48
|
+
status: 400,
|
|
49
|
+
errortype: 'PAYLOAD_VALIDATION_FAILED',
|
|
50
|
+
errormessage: `In order to send an event to a data extension either Data Extension ID or Data Extension Key must be defined.`
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
return multiStatusResponse;
|
|
54
|
+
}
|
|
50
55
|
const err = error;
|
|
51
|
-
if (err?.response?.
|
|
56
|
+
if (err?.response?.status === 401) {
|
|
52
57
|
throw error;
|
|
53
58
|
}
|
|
59
|
+
const errData = err?.response?.data;
|
|
60
|
+
const additionalError = err?.response?.data?.additionalErrors &&
|
|
61
|
+
err.response.data.additionalErrors.length > 0 &&
|
|
62
|
+
err.response.data.additionalErrors;
|
|
54
63
|
payloads.forEach((payload, index) => {
|
|
55
64
|
multiStatusResponse.setErrorResponseAtIndex(index, {
|
|
56
65
|
status: 400,
|
|
57
|
-
errormessage:
|
|
58
|
-
err.response.data.additionalErrors.length > 0 &&
|
|
59
|
-
err.response.data.additionalErrors[0].message) ||
|
|
60
|
-
err?.response?.data?.message ||
|
|
61
|
-
'',
|
|
66
|
+
errormessage: additionalError ? additionalError[0].message : errData?.message || '',
|
|
62
67
|
sent: payload,
|
|
63
|
-
body:
|
|
68
|
+
body: additionalError ? additionalError : errData
|
|
64
69
|
});
|
|
65
70
|
});
|
|
66
71
|
}
|
|
67
|
-
|
|
68
|
-
return multiStatusResponse;
|
|
69
|
-
}
|
|
70
|
-
return response;
|
|
72
|
+
return multiStatusResponse;
|
|
71
73
|
}
|
|
72
|
-
exports.
|
|
74
|
+
exports.executeUpsertWithMultiStatus = executeUpsertWithMultiStatus;
|
|
73
75
|
//# sourceMappingURL=sfmc-operations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sfmc-operations.js","sourceRoot":"","sources":["../../../src/destinations/salesforce-marketing-cloud/sfmc-operations.ts"],"names":[],"mappings":";;;AAAA,wDAM8B;
|
|
1
|
+
{"version":3,"file":"sfmc-operations.js","sourceRoot":"","sources":["../../../src/destinations/salesforce-marketing-cloud/sfmc-operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DEFAULT_SEGMENT_ENDPOINT = exports.SEGMENT_ENDPOINTS = void 0;
|
|
4
|
+
const isProd = process.env.NODE_ENV === 'production';
|
|
4
5
|
exports.SEGMENT_ENDPOINTS = {
|
|
5
6
|
'us-west-2': {
|
|
6
7
|
label: 'North America',
|
|
7
|
-
url:
|
|
8
|
-
cdn:
|
|
8
|
+
url: `https://api.segment.${isProd ? 'io' : 'build'}/v1`,
|
|
9
|
+
cdn: `https://cdn.segment.${isProd ? 'com' : 'build'}/v1`
|
|
9
10
|
},
|
|
10
11
|
'eu-west-1': {
|
|
11
12
|
label: 'Europe',
|
|
12
|
-
url:
|
|
13
|
-
cdn:
|
|
13
|
+
url: `https://events.eu1.segmentapis.${isProd ? 'com' : 'build'}/v1`,
|
|
14
|
+
cdn: `https://cdn.segment.${isProd ? 'com' : 'build'}/v1`
|
|
14
15
|
}
|
|
15
16
|
};
|
|
16
17
|
exports.DEFAULT_SEGMENT_ENDPOINT = 'us-west-2';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/segment/properties.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/segment/properties.ts"],"names":[],"mappings":";;;AAAA,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AAQvC,QAAA,iBAAiB,GAAuC;IACnE,WAAW,EAAE;QACX,KAAK,EAAE,eAAe;QACtB,GAAG,EAAE,uBAAuB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK;QACxD,GAAG,EAAE,uBAAuB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK;KAC1D;IACD,WAAW,EAAE;QACX,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,kCAAkC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK;QACpE,GAAG,EAAE,uBAAuB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK;KAC1D;CACF,CAAA;AAEY,QAAA,wBAAwB,GAAG,WAAW,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const MAX_BATCH_SIZE = 100;
|
|
2
|
+
export declare const GET_LIST_URL = "https://api.sendgrid.com/v3/marketing/lists";
|
|
2
3
|
export declare const CREATE_LIST_URL = "https://api.sendgrid.com/v3/marketing/lists";
|
|
3
4
|
export declare const UPSERT_CONTACTS_URL = "https://api.sendgrid.com/v3/marketing/contacts";
|
|
4
5
|
export declare const REMOVE_CONTACTS_FROM_LIST_URL = "https://api.sendgrid.com/v3/marketing/lists/{list_id}/contacts?contact_ids={contact_ids}";
|
|
@@ -7,3 +8,4 @@ export declare const GET_CONTACT_BY_EMAIL_URL = "https://api.sendgrid.com/v3/mar
|
|
|
7
8
|
export declare const SEARCH_CONTACTS_URL = "https://api.sendgrid.com/v3/marketing/contacts/search";
|
|
8
9
|
export declare const MAX_CHUNK_SIZE_SEARCH = 50;
|
|
9
10
|
export declare const GET_CUSTOM_FIELDS_URL = "https://api.sendgrid.com/v3/marketing/field_definitions";
|
|
11
|
+
export declare const E164_REGEX: RegExp;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GET_CUSTOM_FIELDS_URL = exports.MAX_CHUNK_SIZE_SEARCH = exports.SEARCH_CONTACTS_URL = exports.GET_CONTACT_BY_EMAIL_URL = exports.MAX_CHUNK_SIZE_REMOVE = exports.REMOVE_CONTACTS_FROM_LIST_URL = exports.UPSERT_CONTACTS_URL = exports.CREATE_LIST_URL = exports.MAX_BATCH_SIZE = void 0;
|
|
3
|
+
exports.E164_REGEX = exports.GET_CUSTOM_FIELDS_URL = exports.MAX_CHUNK_SIZE_SEARCH = exports.SEARCH_CONTACTS_URL = exports.GET_CONTACT_BY_EMAIL_URL = exports.MAX_CHUNK_SIZE_REMOVE = exports.REMOVE_CONTACTS_FROM_LIST_URL = exports.UPSERT_CONTACTS_URL = exports.CREATE_LIST_URL = exports.GET_LIST_URL = exports.MAX_BATCH_SIZE = void 0;
|
|
4
4
|
exports.MAX_BATCH_SIZE = 100;
|
|
5
|
+
exports.GET_LIST_URL = 'https://api.sendgrid.com/v3/marketing/lists';
|
|
5
6
|
exports.CREATE_LIST_URL = 'https://api.sendgrid.com/v3/marketing/lists';
|
|
6
7
|
exports.UPSERT_CONTACTS_URL = 'https://api.sendgrid.com/v3/marketing/contacts';
|
|
7
8
|
exports.REMOVE_CONTACTS_FROM_LIST_URL = 'https://api.sendgrid.com/v3/marketing/lists/{list_id}/contacts?contact_ids={contact_ids}';
|
|
@@ -10,4 +11,5 @@ exports.GET_CONTACT_BY_EMAIL_URL = 'https://api.sendgrid.com/v3/marketing/contac
|
|
|
10
11
|
exports.SEARCH_CONTACTS_URL = 'https://api.sendgrid.com/v3/marketing/contacts/search';
|
|
11
12
|
exports.MAX_CHUNK_SIZE_SEARCH = 50;
|
|
12
13
|
exports.GET_CUSTOM_FIELDS_URL = 'https://api.sendgrid.com/v3/marketing/field_definitions';
|
|
14
|
+
exports.E164_REGEX = /^\+[1-9]\d{1,14}$/;
|
|
13
15
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid-audiences/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,GAAG,CAAA;AAEpB,QAAA,eAAe,GAAG,6CAA6C,CAAA;AAE/D,QAAA,mBAAmB,GAAG,gDAAgD,CAAA;AAEtE,QAAA,6BAA6B,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid-audiences/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,GAAG,CAAA;AAEpB,QAAA,YAAY,GAAG,6CAA6C,CAAA;AAE5D,QAAA,eAAe,GAAG,6CAA6C,CAAA;AAE/D,QAAA,mBAAmB,GAAG,gDAAgD,CAAA;AAEtE,QAAA,6BAA6B,GACxC,0FAA0F,CAAA;AAE/E,QAAA,qBAAqB,GAAG,GAAG,CAAA;AAE3B,QAAA,wBAAwB,GAAG,8DAA8D,CAAA;AAEzF,QAAA,mBAAmB,GAAG,uDAAuD,CAAA;AAE7E,QAAA,qBAAqB,GAAG,EAAE,CAAA;AAE1B,QAAA,qBAAqB,GAAG,yDAAyD,CAAA;AAEjF,QAAA,UAAU,GAAG,mBAAmB,CAAA"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { AudienceDestinationDefinition, RequestClient } from '@segment/actions-core';
|
|
2
2
|
import type { Settings, AudienceSettings } from './generated-types';
|
|
3
3
|
declare const destination: AudienceDestinationDefinition<Settings, AudienceSettings>;
|
|
4
|
+
export declare function getAudienceIdByName(request: RequestClient, name: string): Promise<string | undefined>;
|
|
5
|
+
export declare function getAudienceIdById(request: RequestClient, externalId: string): Promise<string | undefined>;
|
|
4
6
|
export default destination;
|
|
@@ -3,6 +3,8 @@ 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
|
+
exports.getAudienceIdById = exports.getAudienceIdByName = void 0;
|
|
7
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
6
8
|
const syncAudience_1 = __importDefault(require("./syncAudience"));
|
|
7
9
|
const constants_1 = require("./constants");
|
|
8
10
|
const destination = {
|
|
@@ -46,25 +48,56 @@ const destination = {
|
|
|
46
48
|
full_audience_sync: false
|
|
47
49
|
},
|
|
48
50
|
async createAudience(request, createAudienceInput) {
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
const name = createAudienceInput?.audienceSettings?.listName ?? createAudienceInput.audienceName;
|
|
52
|
+
const id = await getAudienceIdByName(request, name);
|
|
53
|
+
if (id) {
|
|
54
|
+
return { externalId: id };
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const response = await request(constants_1.CREATE_LIST_URL, {
|
|
58
|
+
method: 'POST',
|
|
59
|
+
throwHttpErrors: false,
|
|
60
|
+
json: {
|
|
61
|
+
name
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
const json = await response.json();
|
|
65
|
+
return { externalId: json.id };
|
|
66
|
+
}
|
|
58
67
|
},
|
|
59
68
|
async getAudience(_, getAudienceInput) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
69
|
+
const id = await getAudienceIdById(_, getAudienceInput.externalId);
|
|
70
|
+
if (id) {
|
|
71
|
+
return {
|
|
72
|
+
externalId: getAudienceInput.externalId
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
throw new actions_core_1.IntegrationError(`Audience with externalId ${getAudienceInput.externalId} not found`, 'GET_AUDIENCE_ERROR', 404);
|
|
77
|
+
}
|
|
63
78
|
}
|
|
64
79
|
},
|
|
65
80
|
actions: {
|
|
66
81
|
syncAudience: syncAudience_1.default
|
|
67
82
|
}
|
|
68
83
|
};
|
|
84
|
+
async function getAudienceIdByName(request, name) {
|
|
85
|
+
const response = await request(constants_1.GET_LIST_URL, {
|
|
86
|
+
method: 'GET',
|
|
87
|
+
throwHttpErrors: false
|
|
88
|
+
});
|
|
89
|
+
const json = await response.json();
|
|
90
|
+
return json.result.find((list) => list.name === name)?.id ?? undefined;
|
|
91
|
+
}
|
|
92
|
+
exports.getAudienceIdByName = getAudienceIdByName;
|
|
93
|
+
async function getAudienceIdById(request, externalId) {
|
|
94
|
+
const response = await request(`${constants_1.GET_LIST_URL}/${externalId}`, {
|
|
95
|
+
method: 'GET',
|
|
96
|
+
throwHttpErrors: false
|
|
97
|
+
});
|
|
98
|
+
const json = await response.json();
|
|
99
|
+
return json.id === externalId ? externalId : undefined;
|
|
100
|
+
}
|
|
101
|
+
exports.getAudienceIdById = getAudienceIdById;
|
|
69
102
|
exports.default = destination;
|
|
70
103
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid-audiences/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid-audiences/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RequestClient } from '@segment/actions-core';
|
|
2
2
|
import { DynamicFieldResponse } from '@segment/actions-core';
|
|
3
3
|
import { Payload } from './generated-types';
|
|
4
|
-
|
|
4
|
+
import type { FieldType } from '../types';
|
|
5
|
+
export declare function dynamicCustomFields(request: RequestClient, payload: Payload, fieldType: FieldType): Promise<DynamicFieldResponse>;
|
|
@@ -2,31 +2,33 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.dynamicCustomFields = void 0;
|
|
4
4
|
const constants_1 = require("../constants");
|
|
5
|
-
|
|
5
|
+
function createErrorResponse(message, code) {
|
|
6
|
+
return {
|
|
7
|
+
choices: [],
|
|
8
|
+
error: { message: message ?? 'Unknown error', code: code ?? '404' }
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
async function dynamicCustomFields(request, payload, fieldType) {
|
|
6
12
|
try {
|
|
7
13
|
const response = await request(constants_1.GET_CUSTOM_FIELDS_URL, {
|
|
8
14
|
method: 'GET',
|
|
9
15
|
skipResponseCloning: true
|
|
10
16
|
});
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
|
|
17
|
+
const selected = new Set(Object.keys({ ...payload.custom_text_fields, ...payload.custom_number_fields, ...payload.custom_date_fields }));
|
|
18
|
+
const remainingFields = response.data.custom_fields.filter(field => field.field_type === fieldType).filter(field => !selected.has(field.name));
|
|
19
|
+
if (remainingFields.length === 0) {
|
|
20
|
+
return createErrorResponse(`No custom ${fieldType} fields available`);
|
|
21
|
+
}
|
|
14
22
|
return {
|
|
15
|
-
choices:
|
|
16
|
-
label:
|
|
17
|
-
value:
|
|
23
|
+
choices: remainingFields.map(field => ({
|
|
24
|
+
label: field.name,
|
|
25
|
+
value: field.name
|
|
18
26
|
}))
|
|
19
27
|
};
|
|
20
28
|
}
|
|
21
29
|
catch (err) {
|
|
22
30
|
const error = err;
|
|
23
|
-
return
|
|
24
|
-
choices: [],
|
|
25
|
-
error: {
|
|
26
|
-
message: error.response.data.errors.map((e) => e.message).join(';') ?? 'Unknown error: dynamicCustomFields',
|
|
27
|
-
code: String(error.response.status)
|
|
28
|
-
}
|
|
29
|
-
};
|
|
31
|
+
return createErrorResponse(error.response.data.errors.map((e) => e.message).join(';') ?? 'Unknown error: dynamicCustomFields', String(error.response.status));
|
|
30
32
|
}
|
|
31
33
|
}
|
|
32
34
|
exports.dynamicCustomFields = dynamicCustomFields;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-fields.js","sourceRoot":"","sources":["../../../../src/destinations/sendgrid-audiences/syncAudience/dynamic-fields.ts"],"names":[],"mappings":";;;AAGA,4CAAoD;
|
|
1
|
+
{"version":3,"file":"dynamic-fields.js","sourceRoot":"","sources":["../../../../src/destinations/sendgrid-audiences/syncAudience/dynamic-fields.ts"],"names":[],"mappings":";;;AAGA,4CAAoD;AAYpD,SAAS,mBAAmB,CAAC,OAAgB,EAAE,IAAa;IAC1D,OAAO;QACL,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE;KACpE,CAAA;AACH,CAAC;AAEM,KAAK,UAAU,mBAAmB,CAAC,OAAsB,EAAE,OAAgB,EAAE,SAAmB;IAoBnG,IAAI;QACF,MAAM,QAAQ,GAAiB,MAAM,OAAO,CAAC,iCAAqB,EAAE;YAClE,MAAM,EAAE,KAAK;YACb,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;QACvI,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;QAE9I,IAAG,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,mBAAmB,CAAC,aAAa,SAAS,mBAAmB,CAAC,CAAA;SACtE;QAED,OAAO;YACL,OAAO,EAAE,eAAe,CAAC,GAAG,CAC1B,KAAK,CAAC,EAAE,CAAC,CAAC;gBACR,KAAK,EAAE,KAAK,CAAC,IAAI;gBACjB,KAAK,EAAE,KAAK,CAAC,IAAI;aAClB,CAAC,CACH;SACF,CAAA;KAEF;IAAC,OAAO,GAAG,EAAE;QACZ,MAAM,KAAK,GAAG,GAAkB,CAAA;QAChC,OAAO,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAK,oCAAoC,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;KAC/J;AACH,CAAC;AA9CH,kDA8CG"}
|
|
@@ -48,50 +48,47 @@ exports.fields = {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
|
-
|
|
52
|
-
label: '
|
|
53
|
-
description: `
|
|
54
|
-
type: '
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
51
|
+
identifiers: {
|
|
52
|
+
label: 'Contact Identifiers',
|
|
53
|
+
description: `Identifiers for the Contact. At least one identifier must be provided.`,
|
|
54
|
+
type: 'object',
|
|
55
|
+
required: true,
|
|
56
|
+
defaultObjectUI: 'keyvalue:only',
|
|
57
|
+
additionalProperties: false,
|
|
58
|
+
properties: {
|
|
59
|
+
email: {
|
|
60
|
+
label: 'Email Address',
|
|
61
|
+
description: `The contact's email address.`,
|
|
62
|
+
type: 'string',
|
|
63
|
+
format: 'email',
|
|
64
|
+
required: false
|
|
65
|
+
},
|
|
66
|
+
anonymous_id: {
|
|
67
|
+
label: 'Anonymous ID',
|
|
68
|
+
description: `The contact's anonymous ID.`,
|
|
69
|
+
type: 'string',
|
|
70
|
+
required: false
|
|
71
|
+
},
|
|
72
|
+
external_id: {
|
|
73
|
+
label: 'External ID',
|
|
74
|
+
description: `The contact's external ID.`,
|
|
75
|
+
type: 'string',
|
|
76
|
+
required: false
|
|
77
|
+
},
|
|
78
|
+
phone_number_id: {
|
|
79
|
+
label: 'Phone Number ID',
|
|
80
|
+
description: `A Contact identifier in the form of a phone number in E.164 format.`,
|
|
81
|
+
type: 'string',
|
|
82
|
+
required: false
|
|
82
83
|
}
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
|
-
phone_number_id: {
|
|
86
|
-
label: 'Phone Number ID',
|
|
87
|
-
description: `The contact's primary phone number. Should include the country code e.g. +19876543213.`,
|
|
88
|
-
type: 'string',
|
|
89
|
-
required: false,
|
|
84
|
+
},
|
|
90
85
|
default: {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
86
|
+
email: {
|
|
87
|
+
'@if': {
|
|
88
|
+
exists: { '@path': '$.traits.email' },
|
|
89
|
+
then: { '@path': '$.traits.email' },
|
|
90
|
+
else: { '@path': '$.properties.email' }
|
|
91
|
+
}
|
|
95
92
|
}
|
|
96
93
|
}
|
|
97
94
|
},
|
|
@@ -113,6 +110,11 @@ exports.fields = {
|
|
|
113
110
|
description: `The contact's last name.`,
|
|
114
111
|
type: 'string'
|
|
115
112
|
},
|
|
113
|
+
phone_number: {
|
|
114
|
+
label: 'Phone Number',
|
|
115
|
+
description: `The contact's phone number in E.164 format. This phone number is not treated as a Contact identifer (as the Phone Number ID is).`,
|
|
116
|
+
type: 'string'
|
|
117
|
+
},
|
|
116
118
|
address_line_1: {
|
|
117
119
|
label: 'Address Line 1',
|
|
118
120
|
description: `The contact's address line 1.`,
|
|
@@ -159,6 +161,13 @@ exports.fields = {
|
|
|
159
161
|
else: { '@path': '$.properties.last_name' }
|
|
160
162
|
}
|
|
161
163
|
},
|
|
164
|
+
phone_number: {
|
|
165
|
+
'@if': {
|
|
166
|
+
exists: { '@path': '$.traits.phone' },
|
|
167
|
+
then: { '@path': '$.traits.phone' },
|
|
168
|
+
else: { '@path': '$.properties.phone' }
|
|
169
|
+
}
|
|
170
|
+
},
|
|
162
171
|
address_line_1: {
|
|
163
172
|
'@if': {
|
|
164
173
|
exists: { '@path': '$.traits.street' },
|
|
@@ -203,14 +212,35 @@ exports.fields = {
|
|
|
203
212
|
}
|
|
204
213
|
}
|
|
205
214
|
},
|
|
206
|
-
|
|
207
|
-
label: 'Custom Fields',
|
|
208
|
-
description: `Custom Field values to be added to the Contact.
|
|
215
|
+
custom_text_fields: {
|
|
216
|
+
label: 'Custom Text Fields',
|
|
217
|
+
description: `Custom Text Field values to be added to the Contact. Values must be in in string format. The custom field must already exit in Sendgrid.`,
|
|
218
|
+
type: 'object',
|
|
219
|
+
required: false,
|
|
220
|
+
defaultObjectUI: 'keyvalue',
|
|
221
|
+
additionalProperties: true,
|
|
222
|
+
dynamic: true,
|
|
223
|
+
disabledInputMethods: ['literal', 'variable', 'function', 'freeform', 'enrichment']
|
|
224
|
+
},
|
|
225
|
+
custom_number_fields: {
|
|
226
|
+
label: 'Custom Number Fields',
|
|
227
|
+
description: `Custom Number Field values to be added to the Contact. Values must be inumeric. The custom field must already exit in Sendgrid.`,
|
|
228
|
+
type: 'object',
|
|
229
|
+
required: false,
|
|
230
|
+
defaultObjectUI: 'keyvalue',
|
|
231
|
+
additionalProperties: true,
|
|
232
|
+
dynamic: true,
|
|
233
|
+
disabledInputMethods: ['literal', 'variable', 'function', 'freeform', 'enrichment']
|
|
234
|
+
},
|
|
235
|
+
custom_date_fields: {
|
|
236
|
+
label: 'Custom Date Fields',
|
|
237
|
+
description: `Custom Date Field values to be added to the Contact. Values must be in ISO 8601 format. e.g. YYYY-MM-DD or YYYY-MM-DDTHH:mm:ss.sssZ. The custom field must already exit in Sendgrid.`,
|
|
209
238
|
type: 'object',
|
|
210
239
|
required: false,
|
|
211
240
|
defaultObjectUI: 'keyvalue',
|
|
212
241
|
additionalProperties: true,
|
|
213
|
-
dynamic: true
|
|
242
|
+
dynamic: true,
|
|
243
|
+
disabledInputMethods: ['literal', 'variable', 'function', 'freeform', 'enrichment']
|
|
214
244
|
},
|
|
215
245
|
enable_batching: {
|
|
216
246
|
type: 'boolean',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../src/destinations/sendgrid-audiences/syncAudience/fields.ts"],"names":[],"mappings":";;;AACA,4CAA6C;AAEhC,QAAA,MAAM,GAA+B;IAChD,0BAA0B,EAAE;QAC1B,KAAK,EAAE,2BAA2B;QAClC,WAAW,EACT,qHAAqH;QACvH,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,OAAO,EAAE,sCAAsC;SAChD;QACD,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;KACpD;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4EAA4E;QACzF,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE;YACP,OAAO,EAAE,yCAAyC;SACnD;KACF;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,OAAO,EAAE,oCAAoC;SAC9C;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,2FAA2F;QACxG,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;gBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;gBACjC,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;aAC9B;SACF;KACF;IACD,
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../../../src/destinations/sendgrid-audiences/syncAudience/fields.ts"],"names":[],"mappings":";;;AACA,4CAA6C;AAEhC,QAAA,MAAM,GAA+B;IAChD,0BAA0B,EAAE;QAC1B,KAAK,EAAE,2BAA2B;QAClC,WAAW,EACT,qHAAqH;QACvH,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,OAAO,EAAE,sCAAsC;SAChD;QACD,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;KACpD;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4EAA4E;QACzF,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE;YACP,OAAO,EAAE,yCAAyC;SACnD;KACF;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP,OAAO,EAAE,oCAAoC;SAC9C;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,2FAA2F;QACxG,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;gBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;gBACjC,IAAI,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;aAC9B;SACF;KACF;IACD,WAAW,EAAE;QACX,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,wEAAwE;QACrF,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,eAAe;QAChC,oBAAoB,EAAE,KAAK;QAC3B,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,8BAA8B;gBAC3C,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,KAAK;aAChB;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,6BAA6B;gBAC1C,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;YACD,WAAW,EAAE;gBACX,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,4BAA4B;gBACzC,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;YACD,eAAe,EAAE;gBACf,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,qEAAqE;gBAClF,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;SACF;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBACxC;aACF;SACF;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,2DAA2D;QACxE,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,UAAU;QAC3B,oBAAoB,EAAE,KAAK;QAC3B,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,2BAA2B;gBACxC,IAAI,EAAE,QAAQ;aACf;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,0BAA0B;gBACvC,IAAI,EAAE,QAAQ;aACf;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,kIAAkI;gBAC/I,IAAI,EAAE,QAAQ;aACf;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,+BAA+B;gBAC5C,IAAI,EAAE,QAAQ;aACf;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,+BAA+B;gBAC5C,IAAI,EAAE,QAAQ;aACf;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,qBAAqB;gBAClC,IAAI,EAAE,QAAQ;aACf;YACD,qBAAqB,EAAE;gBACrB,KAAK,EAAE,uBAAuB;gBAC9B,WAAW,EAAE,2CAA2C;gBACxD,IAAI,EAAE,QAAQ;aACf;YACD,OAAO,EAAE;gBACP,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,wBAAwB;gBACrC,IAAI,EAAE,QAAQ;aACf;YACD,WAAW,EAAE;gBACX,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,4BAA4B;gBACzC,IAAI,EAAE,QAAQ;aACf;SACF;QACD,OAAO,EAAE;YACP,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;oBAC1C,IAAI,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;oBACxC,IAAI,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;iBAC7C;aACF;YACD,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;iBAC5C;aACF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBACxC;aACF;YACD,cAAc,EAAE;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;oBACtC,IAAI,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;oBACpC,IAAI,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;iBACzC;aACF;YACD,cAAc,EAAE;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC9C,IAAI,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC5C,IAAI,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;iBACjD;aACF;YACD,IAAI,EAAE;gBACJ,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;oBACpC,IAAI,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;oBAClC,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;iBACvC;aACF;YACD,qBAAqB,EAAE;gBACrB,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBACxC;aACF;YACD,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE;iBAC1C;aACF;YACD,WAAW,EAAE;gBACX,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE;oBAC3C,IAAI,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE;iBAC9C;aACF;SACF;KACF;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,0IAA0I;QACvJ,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,UAAU;QAC3B,oBAAoB,EAAE,IAAI;QAC1B,OAAO,EAAE,IAAI;QACb,oBAAoB,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC;KACpF;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,iIAAiI;QAC9I,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,UAAU;QAC3B,oBAAoB,EAAE,IAAI;QAC1B,OAAO,EAAE,IAAI;QACb,oBAAoB,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC;KACpF;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,sLAAsL;QACnM,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,UAAU;QAC3B,oBAAoB,EAAE,IAAI;QAC1B,OAAO,EAAE,IAAI;QACb,oBAAoB,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC;KACpF;IACD,eAAe,EAAE;QACf,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,6EAA6E;QAC1F,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;KACd;IACD,UAAU,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,oEAAoE;QACjF,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,0BAAc;KACxB;CACF,CAAA"}
|
|
@@ -5,13 +5,16 @@ export interface Payload {
|
|
|
5
5
|
traits_or_props: {
|
|
6
6
|
[k: string]: unknown;
|
|
7
7
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
identifiers: {
|
|
9
|
+
email?: string;
|
|
10
|
+
anonymous_id?: string;
|
|
11
|
+
external_id?: string;
|
|
12
|
+
phone_number_id?: string;
|
|
13
|
+
};
|
|
12
14
|
user_attributes?: {
|
|
13
15
|
first_name?: string;
|
|
14
16
|
last_name?: string;
|
|
17
|
+
phone_number?: string;
|
|
15
18
|
address_line_1?: string;
|
|
16
19
|
address_line_2?: string;
|
|
17
20
|
city?: string;
|
|
@@ -19,7 +22,13 @@ export interface Payload {
|
|
|
19
22
|
country?: string;
|
|
20
23
|
postal_code?: string;
|
|
21
24
|
};
|
|
22
|
-
|
|
25
|
+
custom_text_fields?: {
|
|
26
|
+
[k: string]: unknown;
|
|
27
|
+
};
|
|
28
|
+
custom_number_fields?: {
|
|
29
|
+
[k: string]: unknown;
|
|
30
|
+
};
|
|
31
|
+
custom_date_fields?: {
|
|
23
32
|
[k: string]: unknown;
|
|
24
33
|
};
|
|
25
34
|
enable_batching: boolean;
|