@segment/action-destinations 3.236.0 → 3.238.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/acoustic-s3tc/receiveEvents/eventprocessing.js +6 -2
- package/dist/destinations/acoustic-s3tc/receiveEvents/eventprocessing.js.map +1 -1
- package/dist/destinations/acoustic-s3tc/receiveEvents/preCheck.js +7 -1
- package/dist/destinations/acoustic-s3tc/receiveEvents/preCheck.js.map +1 -1
- package/dist/destinations/airship/registerAndAssociate/generated-types.d.ts +3 -0
- package/dist/destinations/airship/registerAndAssociate/index.js +35 -7
- package/dist/destinations/airship/registerAndAssociate/index.js.map +1 -1
- package/dist/destinations/airship/utilities.d.ts +3 -1
- package/dist/destinations/airship/utilities.js +76 -41
- package/dist/destinations/airship/utilities.js.map +1 -1
- package/dist/destinations/algolia-insights/conversionEvents/index.js +5 -1
- package/dist/destinations/algolia-insights/conversionEvents/index.js.map +1 -1
- package/dist/destinations/algolia-insights/index.js +7 -0
- package/dist/destinations/algolia-insights/index.js.map +1 -1
- package/dist/destinations/algolia-insights/productAddedEvents/index.js +5 -1
- package/dist/destinations/algolia-insights/productAddedEvents/index.js.map +1 -1
- package/dist/destinations/algolia-insights/productClickedEvents/index.js +5 -1
- package/dist/destinations/algolia-insights/productClickedEvents/index.js.map +1 -1
- package/dist/destinations/algolia-insights/productListFilteredEvents/index.js +5 -1
- package/dist/destinations/algolia-insights/productListFilteredEvents/index.js.map +1 -1
- package/dist/destinations/algolia-insights/productViewedEvents/index.js +5 -1
- package/dist/destinations/algolia-insights/productViewedEvents/index.js.map +1 -1
- package/dist/destinations/braze/index.js +12 -0
- package/dist/destinations/braze/index.js.map +1 -1
- package/dist/destinations/criteo-audiences/addUserToAudience/index.js +3 -3
- package/dist/destinations/criteo-audiences/addUserToAudience/index.js.map +1 -1
- package/dist/destinations/criteo-audiences/criteo-audiences.d.ts +5 -6
- package/dist/destinations/criteo-audiences/criteo-audiences.js +73 -54
- package/dist/destinations/criteo-audiences/criteo-audiences.js.map +1 -1
- package/dist/destinations/criteo-audiences/removeUserFromAudience/index.js +3 -3
- package/dist/destinations/criteo-audiences/removeUserFromAudience/index.js.map +1 -1
- package/dist/destinations/linkedin-audiences/constants.d.ts +1 -1
- package/dist/destinations/linkedin-audiences/constants.js +1 -1
- package/dist/destinations/linkedin-conversions/index.js +4 -1
- package/dist/destinations/linkedin-conversions/index.js.map +1 -1
- package/dist/destinations/marketo-static-lists/functions.js +1 -1
- package/dist/destinations/marketo-static-lists/functions.js.map +1 -1
- package/dist/destinations/mixpanel/incrementProperties/__test__/index.test.d.ts +1 -0
- package/dist/destinations/mixpanel/incrementProperties/__test__/index.test.js +129 -0
- package/dist/destinations/mixpanel/incrementProperties/__test__/index.test.js.map +1 -0
- package/dist/destinations/mixpanel/incrementProperties/__test__/snapshot.test.d.ts +1 -0
- package/dist/destinations/mixpanel/incrementProperties/__test__/snapshot.test.js +69 -0
- package/dist/destinations/mixpanel/incrementProperties/__test__/snapshot.test.js.map +1 -0
- package/dist/destinations/mixpanel/incrementProperties/generated-types.d.ts +8 -0
- package/dist/destinations/mixpanel/incrementProperties/generated-types.js +3 -0
- package/dist/destinations/mixpanel/incrementProperties/generated-types.js.map +1 -0
- package/dist/destinations/mixpanel/incrementProperties/index.d.ts +5 -0
- package/dist/destinations/mixpanel/incrementProperties/index.js +84 -0
- package/dist/destinations/mixpanel/incrementProperties/index.js.map +1 -0
- package/dist/destinations/mixpanel/index.js +3 -1
- package/dist/destinations/mixpanel/index.js.map +1 -1
- package/dist/destinations/mixpanel/mixpanel-types.d.ts +4 -0
- package/dist/destinations/segment-profiles/generated-types.d.ts +0 -1
- package/dist/destinations/segment-profiles/index.js +0 -18
- package/dist/destinations/segment-profiles/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendGroup/index.js +5 -20
- package/dist/destinations/segment-profiles/sendGroup/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendIdentify/index.js +5 -20
- package/dist/destinations/segment-profiles/sendIdentify/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendSubscription/index.js +5 -21
- package/dist/destinations/segment-profiles/sendSubscription/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -12,10 +12,10 @@ const getOperationFromPayload = async (request, advertiser_id, payload, credenti
|
|
|
12
12
|
if (email)
|
|
13
13
|
add_user_list.push(email);
|
|
14
14
|
}
|
|
15
|
-
const
|
|
15
|
+
const contactlist_id = await criteo_audiences_1.getContactListId(request, advertiser_id, audience_key, credentials);
|
|
16
16
|
const operation = {
|
|
17
17
|
operation_type: "add",
|
|
18
|
-
|
|
18
|
+
contactlist_id: contactlist_id,
|
|
19
19
|
user_list: add_user_list,
|
|
20
20
|
};
|
|
21
21
|
return operation;
|
|
@@ -26,7 +26,7 @@ const processPayload = async (request, settings, payload) => {
|
|
|
26
26
|
client_secret: settings.client_secret
|
|
27
27
|
};
|
|
28
28
|
const operation = await getOperationFromPayload(request, settings.advertiser_id, payload, credentials);
|
|
29
|
-
return await criteo_audiences_1.
|
|
29
|
+
return await criteo_audiences_1.patchContactList(request, operation, credentials);
|
|
30
30
|
};
|
|
31
31
|
const action = {
|
|
32
32
|
title: 'Add users to Audience',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/criteo-audiences/addUserToAudience/index.ts"],"names":[],"mappings":";;AACA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/criteo-audiences/addUserToAudience/index.ts"],"names":[],"mappings":";;AACA,0DAA8E;AAM9E,MAAM,uBAAuB,GAAG,KAAK,EACnC,OAAsB,EACtB,aAAqB,EACrB,OAAkB,EAClB,WAA8B,EACV,EAAE;IACtB,MAAM,aAAa,GAAa,EAAE,CAAA;IAClC,IAAI,YAAY,GAAG,EAAE,CAAA;IAOrB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;QAC3B,IAAI,KAAK,GAAG,SAAS,CAAA;QAErB,IAAI,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;YACrC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;QAEnC,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,uBAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;QAC3D,IAAI,KAAK;YAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KACrC;IAED,MAAM,cAAc,GAAG,MAAM,mCAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IAChG,MAAM,SAAS,GAAc;QAC3B,cAAc,EAAE,KAAK;QACrB,cAAc,EAAE,cAAc;QAC9B,SAAS,EAAE,aAAa;KACzB,CAAA;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAC1B,OAAsB,EACtB,QAAkB,EAClB,OAAkB,EACC,EAAE;IACrB,MAAM,WAAW,GAAsB;QACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,aAAa,EAAE,QAAQ,CAAC,aAAa;KACtC,CAAA;IACD,MAAM,SAAS,GAAc,MAAM,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAClH,OAAO,MAAM,mCAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;AAChE,CAAC,CAAA;AAED,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,4DAA4D;IACzE,mBAAmB,EAAE,+CAA+C;IACpE,MAAM,EAAE;QACN,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,mCAAmC;YAChD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,2BAA2B;aACrC;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wCAAwC;YACrD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,SAAS;aACnB;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,OAAO,EAAE,wBAAwB;aAClC;SACF;QACD,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,sMAAsM;YACnN,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,OAAO,MAAM,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACrD,OAAO,MAAM,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IAEzD,CAAC;CACF,CAAA;AACD,kBAAe,MAAM,CAAA"}
|
|
@@ -2,7 +2,7 @@ import type { RequestClient } from '@segment/actions-core';
|
|
|
2
2
|
export declare const hash: (value: string | undefined) => string | undefined;
|
|
3
3
|
export declare type Operation = {
|
|
4
4
|
operation_type: string;
|
|
5
|
-
|
|
5
|
+
contactlist_id: string;
|
|
6
6
|
user_list: string[];
|
|
7
7
|
};
|
|
8
8
|
export declare type ClientCredentials = {
|
|
@@ -12,8 +12,7 @@ export declare type ClientCredentials = {
|
|
|
12
12
|
};
|
|
13
13
|
export declare const getAccessToken: (request: RequestClient, credentials: ClientCredentials) => Promise<string>;
|
|
14
14
|
export declare const criteoAuthenticate: (request: RequestClient, credentials: ClientCredentials) => Promise<ClientCredentials>;
|
|
15
|
-
export declare const
|
|
16
|
-
export declare const
|
|
17
|
-
export declare const
|
|
18
|
-
export declare const
|
|
19
|
-
export declare const createAudience: (request: RequestClient, advertiser_id: string, audience_name: string, credentials: ClientCredentials) => Promise<string>;
|
|
15
|
+
export declare const patchContactList: (request: RequestClient, operation: Operation, credentials: ClientCredentials) => Promise<Response>;
|
|
16
|
+
export declare const getContactListIdByName: (request: RequestClient, advertiser_id: string, audience_segment_name: string, credentials: ClientCredentials) => Promise<string | undefined>;
|
|
17
|
+
export declare const getContactListId: (request: RequestClient, advertiser_id: string, name: string, credentials: ClientCredentials) => Promise<string>;
|
|
18
|
+
export declare const createContactList: (request: RequestClient, advertiser_id: string, name: string, credentials: ClientCredentials) => Promise<string>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createContactList = exports.getContactListId = exports.getContactListIdByName = exports.patchContactList = exports.criteoAuthenticate = exports.getAccessToken = exports.hash = void 0;
|
|
4
4
|
const crypto_1 = require("crypto");
|
|
5
5
|
const actions_core_1 = require("@segment/actions-core");
|
|
6
|
-
const BASE_API_URL = 'https://api.criteo.com/2023-
|
|
6
|
+
const BASE_API_URL = 'https://api.criteo.com/2023-10';
|
|
7
7
|
const hash = (value) => {
|
|
8
8
|
if (value === undefined)
|
|
9
9
|
return;
|
|
@@ -51,10 +51,10 @@ const criteoAuthenticate = async (request, credentials) => {
|
|
|
51
51
|
return credentials;
|
|
52
52
|
};
|
|
53
53
|
exports.criteoAuthenticate = criteoAuthenticate;
|
|
54
|
-
const
|
|
55
|
-
if (isNaN(+operation.
|
|
56
|
-
throw new actions_core_1.IntegrationError(`The Audience ID should be a number (${operation.
|
|
57
|
-
const endpoint = `${BASE_API_URL}/
|
|
54
|
+
const patchContactList = async (request, operation, credentials) => {
|
|
55
|
+
if (isNaN(+operation.contactlist_id))
|
|
56
|
+
throw new actions_core_1.IntegrationError(`The Audience Segment ID should be a number (${operation.contactlist_id})`, 'Invalid input', 400);
|
|
57
|
+
const endpoint = `${BASE_API_URL}/marketing-solutions/audience-segments/${operation.contactlist_id}/contact-list`;
|
|
58
58
|
const headers = await getRequestHeaders(request, credentials);
|
|
59
59
|
const payload = {
|
|
60
60
|
data: {
|
|
@@ -72,76 +72,95 @@ const patchAudience = async (request, operation, credentials) => {
|
|
|
72
72
|
headers: headers
|
|
73
73
|
});
|
|
74
74
|
};
|
|
75
|
-
exports.
|
|
76
|
-
const
|
|
75
|
+
exports.patchContactList = patchContactList;
|
|
76
|
+
const getContactListIdByName = async (request, advertiser_id, audience_segment_name, credentials) => {
|
|
77
77
|
if (isNaN(+advertiser_id))
|
|
78
78
|
throw new actions_core_1.IntegrationError('The Advertiser ID should be a number', 'Invalid input', 400);
|
|
79
|
-
const
|
|
79
|
+
const LIMIT = 100;
|
|
80
80
|
const headers = await getRequestHeaders(request, credentials);
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
81
|
+
const payload = {
|
|
82
|
+
data: {
|
|
83
|
+
attributes: {
|
|
84
|
+
audienceSegmentTypes: [
|
|
85
|
+
"ContactList"
|
|
86
|
+
],
|
|
87
|
+
advertiserIds: [
|
|
88
|
+
advertiser_id
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
let continue_search = true;
|
|
94
|
+
let offset = 0;
|
|
95
|
+
let body;
|
|
96
|
+
do {
|
|
97
|
+
const endpoint = `${BASE_API_URL}/marketing-solutions/audience-segments/search?limit=${LIMIT}&offset=${offset}`;
|
|
98
|
+
const response = await request(endpoint, {
|
|
99
|
+
method: 'POST',
|
|
100
|
+
skipResponseCloning: true,
|
|
101
|
+
headers: headers,
|
|
102
|
+
json: payload
|
|
103
|
+
});
|
|
104
|
+
body = response.data;
|
|
105
|
+
if (response.status !== 200)
|
|
106
|
+
throw new actions_core_1.RetryableError("Error while fetching the Advertiser's audiences");
|
|
107
|
+
for (const contactlist of body.data) {
|
|
108
|
+
if (contactlist.attributes.name === audience_segment_name)
|
|
109
|
+
return contactlist.id;
|
|
110
|
+
}
|
|
111
|
+
offset += LIMIT;
|
|
112
|
+
continue_search = body.meta.totalItems > offset;
|
|
113
|
+
} while (continue_search);
|
|
94
114
|
};
|
|
95
|
-
exports.
|
|
96
|
-
const
|
|
97
|
-
let
|
|
98
|
-
if (!
|
|
99
|
-
throw new actions_core_1.IntegrationError(`Invalid Audience Name: ${
|
|
100
|
-
|
|
101
|
-
if (
|
|
102
|
-
return
|
|
115
|
+
exports.getContactListIdByName = getContactListIdByName;
|
|
116
|
+
const getContactListId = async (request, advertiser_id, name, credentials) => {
|
|
117
|
+
let contactlist_id = undefined;
|
|
118
|
+
if (!name)
|
|
119
|
+
throw new actions_core_1.IntegrationError(`Invalid Audience Segment Name: ${name}`, 'Invalid input', 400);
|
|
120
|
+
contactlist_id = await exports.getContactListIdByName(request, advertiser_id, name, credentials);
|
|
121
|
+
if (contactlist_id && !isNaN(+contactlist_id))
|
|
122
|
+
return contactlist_id;
|
|
103
123
|
try {
|
|
104
|
-
return await exports.
|
|
124
|
+
return await exports.createContactList(request, advertiser_id, name, credentials);
|
|
105
125
|
}
|
|
106
126
|
catch (e) {
|
|
107
127
|
if (e instanceof CriteoAPIError) {
|
|
108
|
-
if (e.error && e.error.code === '
|
|
109
|
-
|
|
110
|
-
if (
|
|
111
|
-
return
|
|
112
|
-
audience_id = await exports.getAudienceIdByName(request, advertiser_id, audience_name, credentials);
|
|
113
|
-
if (audience_id && !isNaN(+audience_id))
|
|
114
|
-
return audience_id;
|
|
128
|
+
if (e.error && e.error.code === 'name-must-be-unique') {
|
|
129
|
+
contactlist_id = await exports.getContactListIdByName(request, advertiser_id, name, credentials);
|
|
130
|
+
if (contactlist_id && !isNaN(+contactlist_id))
|
|
131
|
+
return contactlist_id;
|
|
115
132
|
}
|
|
116
133
|
}
|
|
117
134
|
throw e;
|
|
118
135
|
}
|
|
119
136
|
};
|
|
120
|
-
exports.
|
|
121
|
-
const
|
|
122
|
-
if (!
|
|
123
|
-
throw new actions_core_1.IntegrationError(`Invalid
|
|
137
|
+
exports.getContactListId = getContactListId;
|
|
138
|
+
const createContactList = async (request, advertiser_id, name, credentials) => {
|
|
139
|
+
if (!name)
|
|
140
|
+
throw new actions_core_1.IntegrationError(`Invalid Contact List Name: ${name}`, 'Invalid audience', 400);
|
|
124
141
|
if (isNaN(+advertiser_id))
|
|
125
142
|
throw new actions_core_1.IntegrationError('The Advertiser ID should be a number', 'Invalid input', 400);
|
|
126
|
-
const endpoint = `${BASE_API_URL}/
|
|
143
|
+
const endpoint = `${BASE_API_URL}/marketing-solutions/audience-segments/create`;
|
|
127
144
|
const headers = await getRequestHeaders(request, credentials);
|
|
128
145
|
const payload = {
|
|
129
|
-
data:
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
146
|
+
data: [
|
|
147
|
+
{
|
|
148
|
+
attributes: {
|
|
149
|
+
advertiserId: advertiser_id,
|
|
150
|
+
name: name,
|
|
151
|
+
description: name,
|
|
152
|
+
contactList: {}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
]
|
|
137
156
|
};
|
|
138
157
|
const response = await request(endpoint, { method: 'POST', headers: headers, json: payload, throwHttpErrors: false });
|
|
139
158
|
const body = await response.json();
|
|
140
159
|
if (response.status !== 200) {
|
|
141
160
|
const err = body.errors && body.errors[0] ? body.errors[0] : undefined;
|
|
142
|
-
throw new CriteoAPIError(`Error while creating the
|
|
161
|
+
throw new CriteoAPIError(`Error while creating the Contact List`, 'Criteo contact list creation error', 400, err);
|
|
143
162
|
}
|
|
144
|
-
return body.data.id;
|
|
163
|
+
return body.data[0].id;
|
|
145
164
|
};
|
|
146
|
-
exports.
|
|
165
|
+
exports.createContactList = createContactList;
|
|
147
166
|
//# sourceMappingURL=criteo-audiences.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criteo-audiences.js","sourceRoot":"","sources":["../../../src/destinations/criteo-audiences/criteo-audiences.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,wDAAwE;AAGxE,MAAM,YAAY,GAAG,gCAAgC,CAAA;AAE9C,MAAM,IAAI,GAAG,CAAC,KAAyB,EAAsB,EAAE;IACpE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAM;IAE/B,MAAM,IAAI,GAAG,mBAAU,CAAC,QAAQ,CAAC,CAAA;IACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAClB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC,CAAA;AANY,QAAA,IAAI,QAMhB;AAED,MAAM,cAAe,SAAQ,+BAAgB;IAG3C,YAAY,OAAe,EAAE,IAAY,EAAE,MAAc,EAAE,KAA8B;QACvF,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;CACF;AAcD,MAAM,iBAAiB,GAAG,KAAK,EAC7B,OAAsB,EACtB,WAA8B,EACG,EAAE;IACnC,WAAW,GAAG,MAAM,0BAAkB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAE5D,OAAO;QACL,MAAM,EAAE,kBAAkB;QAC1B,cAAc,EAAE,kBAAkB;QAClC,aAAa,EAAE,SAAS,GAAG,WAAW,CAAC,YAAY;KACpD,CAAA;AACH,CAAC,CAAA;AAEM,MAAM,cAAc,GAAG,KAAK,EAAE,OAAsB,EAAE,WAA8B,EAAmB,EAAE;IAC9G,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,qCAAqC,EAAE;QAC/D,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,eAAe,CAAC;YACxB,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,aAAa,EAAE,WAAW,CAAC,aAAa;YACxC,UAAU,EAAE,oBAAoB;SACjC,CAAC;QACF,OAAO,EAAE;YACP,MAAM,EAAE,YAAY;YACpB,cAAc,EAAE,mCAAmC;SACpD;KACF,CAAC,CAAA;IACF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAA;IAE7B,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAGpB,MAAM,IAAI,6BAAc,CAAC,qCAAqC,CAAC,CAAA;IAEjE,OAAO,IAAI,CAAC,YAAY,CAAA;AAC1B,CAAC,CAAA;AArBY,QAAA,cAAc,kBAqB1B;AAEM,MAAM,kBAAkB,GAAG,KAAK,EACrC,OAAsB,EACtB,WAA8B,EACF,EAAE;IAE9B,IAAI,CAAC,WAAW,CAAC,YAAY;QAAE,WAAW,CAAC,YAAY,GAAG,MAAM,sBAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACpG,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAPY,QAAA,kBAAkB,sBAO9B;AAEM,MAAM,
|
|
1
|
+
{"version":3,"file":"criteo-audiences.js","sourceRoot":"","sources":["../../../src/destinations/criteo-audiences/criteo-audiences.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,10 +12,10 @@ const getOperationFromPayload = async (request, advertiser_id, payload, credenti
|
|
|
12
12
|
if (email)
|
|
13
13
|
remove_user_list.push(email);
|
|
14
14
|
}
|
|
15
|
-
const
|
|
15
|
+
const contactlist_id = await criteo_audiences_1.getContactListId(request, advertiser_id, audience_key, credentials);
|
|
16
16
|
const operation = {
|
|
17
17
|
operation_type: "remove",
|
|
18
|
-
|
|
18
|
+
contactlist_id: contactlist_id,
|
|
19
19
|
user_list: remove_user_list,
|
|
20
20
|
};
|
|
21
21
|
return operation;
|
|
@@ -26,7 +26,7 @@ const processPayload = async (request, settings, payload) => {
|
|
|
26
26
|
client_secret: settings.client_secret
|
|
27
27
|
};
|
|
28
28
|
const operation = await getOperationFromPayload(request, settings.advertiser_id, payload, credentials);
|
|
29
|
-
return await criteo_audiences_1.
|
|
29
|
+
return await criteo_audiences_1.patchContactList(request, operation, credentials);
|
|
30
30
|
};
|
|
31
31
|
const action = {
|
|
32
32
|
title: 'Remove users from Audience',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/criteo-audiences/removeUserFromAudience/index.ts"],"names":[],"mappings":";;AACA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/criteo-audiences/removeUserFromAudience/index.ts"],"names":[],"mappings":";;AACA,0DAA8E;AAO9E,MAAM,uBAAuB,GAAG,KAAK,EACnC,OAAsB,EACtB,aAAqB,EACrB,OAAkB,EAClB,WAA8B,EACV,EAAE;IACtB,MAAM,gBAAgB,GAAa,EAAE,CAAA;IACrC,IAAI,YAAY,GAAG,EAAE,CAAA;IAErB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;QAC3B,IAAI,KAAK,GAAG,SAAS,CAAA;QAErB,IAAI,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;YACrC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;QAEnC,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,uBAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;QAC3D,IAAI,KAAK;YAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KACxC;IAED,MAAM,cAAc,GAAG,MAAM,mCAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;IAEhG,MAAM,SAAS,GAAc;QAC3B,cAAc,EAAE,QAAQ;QACxB,cAAc,EAAE,cAAc;QAC9B,SAAS,EAAE,gBAAgB;KAC5B,CAAA;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,KAAK,EAC1B,OAAsB,EACtB,QAAkB,EAClB,OAAkB,EACC,EAAE;IAErB,MAAM,WAAW,GAAsB;QACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,aAAa,EAAE,QAAQ,CAAC,aAAa;KACtC,CAAA;IACD,MAAM,SAAS,GAAc,MAAM,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAClH,OAAO,MAAM,mCAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;AAChE,CAAC,CAAA;AAED,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,4BAA4B;IACnC,WAAW,EAAE,+DAA+D;IAC5E,mBAAmB,EAAE,8CAA8C;IACnE,MAAM,EAAE;QACN,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,mCAAmC;YAChD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,2BAA2B;aACrC;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wCAAwC;YACrD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,SAAS;aACnB;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,OAAO,EAAE,wBAAwB;aAClC;SACF;QACD,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,sMAAsM;YACnN,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,OAAO,MAAM,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAC3D,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACrD,OAAO,MAAM,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IACzD,CAAC;CACF,CAAA;AAGD,kBAAe,MAAM,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LINKEDIN_SOURCE_PLATFORM = exports.BASE_URL = exports.LINKEDIN_API_VERSION = void 0;
|
|
4
|
-
exports.LINKEDIN_API_VERSION = '
|
|
4
|
+
exports.LINKEDIN_API_VERSION = '202311';
|
|
5
5
|
exports.BASE_URL = 'https://api.linkedin.com/rest';
|
|
6
6
|
exports.LINKEDIN_SOURCE_PLATFORM = 'SEGMENT';
|
|
7
7
|
//# sourceMappingURL=constants.js.map
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const actions_core_1 = require("@segment/actions-core");
|
|
7
7
|
const api_1 = require("./api");
|
|
8
8
|
const constants_1 = require("./constants");
|
|
9
|
+
const https_1 = __importDefault(require("https"));
|
|
9
10
|
const streamConversion_1 = __importDefault(require("./streamConversion"));
|
|
10
11
|
const destination = {
|
|
11
12
|
name: 'LinkedIn Conversions API',
|
|
@@ -54,12 +55,14 @@ const destination = {
|
|
|
54
55
|
}
|
|
55
56
|
},
|
|
56
57
|
extendRequest({ auth }) {
|
|
58
|
+
const agent = new https_1.default.Agent({ keepAlive: true });
|
|
57
59
|
return {
|
|
58
60
|
headers: {
|
|
59
61
|
authorization: `Bearer ${auth?.accessToken}`,
|
|
60
62
|
'LinkedIn-Version': constants_1.LINKEDIN_API_VERSION,
|
|
61
63
|
'X-Restli-Protocol-Version': `2.0.0`
|
|
62
|
-
}
|
|
64
|
+
},
|
|
65
|
+
agent
|
|
63
66
|
};
|
|
64
67
|
},
|
|
65
68
|
actions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/linkedin-conversions/index.ts"],"names":[],"mappings":";;;;;AACA,wDAAgG;AAEhG,+BAA2C;AAE3C,2CAAkD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/linkedin-conversions/index.ts"],"names":[],"mappings":";;;;;AACA,wDAAgG;AAEhG,+BAA2C;AAE3C,2CAAkD;AAClD,kDAAyB;AACzB,0EAAiD;AAEjD,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,0BAA0B;IAChC,IAAI,EAAE,8BAA8B;IACpC,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,EAAE;QACV,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE;gBACtB,MAAM,IAAI,yCAA0B,CAAC,gEAAgE,CAAC,CAAA;aACvG;YAED,MAAM,iBAAiB,GAAwB,IAAI,yBAAmB,CAAC,OAAO,CAAC,CAAA;YAE/E,IAAI;gBAGF,OAAO,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAA;aAC5C;YAAC,OAAO,CAAM,EAAE;gBACf,MAAM,KAAK,GAAG,CAAoC,CAAA;gBAClD,IAAI,KAAK,CAAC,OAAO,KAAK,cAAc,EAAE;oBACpC,MAAM,IAAI,KAAK,CACb,8HAA8H,CAC/H,CAAA;iBACF;gBACD,MAAM,CAAC,CAAA;aACR;QACH,CAAC;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,IAAI,GAAG,CAAA;YAEP,IAAI;gBACF,GAAG,GAAG,MAAM,OAAO,CAAuB,+CAA+C,EAAE;oBACzF,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI,eAAe,CAAC;wBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;wBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;wBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;wBAChC,UAAU,EAAE,eAAe;qBAC5B,CAAC;iBACH,CAAC,CAAA;aACH;YAAC,OAAO,CAAM,EAAE;gBACf,MAAM,KAAK,GAAG,CAA8B,CAAA;gBAC5C,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,KAAK,eAAe,EAAE;oBACnD,MAAM,IAAI,+BAAgB,CACxB,wHAAwH,EACxH,yBAAU,CAAC,qBAAqB,EAChC,GAAG,CACJ,CAAA;iBACF;gBAED,MAAM,IAAI,+BAAgB,CACxB,+CAA+C,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAC5E,yBAAU,CAAC,oBAAoB,EAC/B,GAAG,CACJ,CAAA;aACF;YAED,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA;QACjD,CAAC;KACF;IACD,aAAa,CAAC,EAAE,IAAI,EAAE;QAIpB,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAElD,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;gBAC5C,kBAAkB,EAAE,gCAAoB;gBACxC,2BAA2B,EAAE,OAAO;aACrC;YACD,KAAK;SACN,CAAA;IACH,CAAC;IACD,OAAO,EAAE;QACP,gBAAgB,EAAhB,0BAAgB;KACjB;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -74,7 +74,7 @@ function extractLeadIds(leads) {
|
|
|
74
74
|
return ids;
|
|
75
75
|
}
|
|
76
76
|
function parseErrorResponse(response) {
|
|
77
|
-
if (response.errors[0].code === '601') {
|
|
77
|
+
if (response.errors[0].code === '601' || response.errors[0].code === '602') {
|
|
78
78
|
throw new actions_core_1.IntegrationError(response.errors[0].message, 'INVALID_OAUTH_TOKEN', 401);
|
|
79
79
|
}
|
|
80
80
|
if (response.errors[0].code === '1019') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/functions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/functions.ts"],"names":[],"mappings":";;;AAAA,wDAAqG;AAIrG,2CAUoB;AAEb,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,QAAkB,EAClB,QAA4B,EAC5B,YAA2B;IAI3B,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAE/D,MAAM,OAAO,GAAG,SAAS,GAAG,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACzD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAClD,IAAI,OAAO,GAAG,qBAAS,EAAE;QACvB,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAC7E,MAAM,IAAI,+BAAgB,CAAC,kCAAkC,qBAAS,QAAQ,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;KAC7G;IAED,MAAM,GAAG,GAAG,YAAY,GAAG,gCAAoB,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;IAE9F,MAAM,QAAQ,GAAG,MAAM,OAAO,CAA4B,GAAG,EAAE;QAC7D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,gDAAgD;SACjE;QACD,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;QAC1B,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAC7E,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;KAClC;IACD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;IAC/E,OAAO,QAAQ,CAAC,IAAI,CAAA;AACtB,CAAC;AAjCD,8BAiCC;AAEM,KAAK,UAAU,cAAc,CAClC,OAAsB,EACtB,QAAkB,EAClB,QAAiC,EACjC,YAA2B;IAI3B,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAC/D,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAEnD,MAAM,WAAW,GAAG,YAAY,GAAG,8BAAkB,CAAC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAA;IAGnH,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAA0B,WAAW,EAAE;QAC3E,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE;QAClC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC1C;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAE5D,MAAM,cAAc,GAClB,YAAY,GAAG,iCAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IAGjH,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAA6B,cAAc,EAAE;QACpF,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE;QACrC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;KAC7C;IACD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,4BAA4B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;IACpF,OAAO,mBAAmB,CAAC,IAAI,CAAA;AACjC,CAAC;AA7CD,wCA6CC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,QAAQ,GAAG,kBAAkB,CAAA;IACnC,MAAM,QAAQ,GAAG,KAAK,QAAQ,0GAA0G,OAAO,SAAS,QAAQ,QAAQ,CAAA;IACxK,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,QAA4B,EAAE,SAAiB;IACpE,MAAM,MAAM,GAAG,QAAQ;SACpB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC;SAChD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;SAC/B,IAAI,CAAC,SAAS,CAAC,CAAA;IAClB,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,cAAc,CAAC,KAAqB;IAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAyB;IACnD,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE;QAC1E,MAAM,IAAI,+BAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAA;KACnF;IACD,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;QACtC,MAAM,IAAI,6BAAc,CACtB,4FAA4F,CAC7F,CAAA;KACF;IACD,MAAM,IAAI,+BAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;AACjF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const nock_1 = __importDefault(require("nock"));
|
|
7
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
8
|
+
const index_1 = __importDefault(require("../../index"));
|
|
9
|
+
const utils_1 = require("../../common/utils");
|
|
10
|
+
const testDestination = actions_core_1.createTestIntegration(index_1.default);
|
|
11
|
+
const MIXPANEL_API_SECRET = 'test-api-key';
|
|
12
|
+
const MIXPANEL_PROJECT_TOKEN = 'test-proj-token';
|
|
13
|
+
const timestamp = '2021-08-17T15:21:15.449Z';
|
|
14
|
+
describe('Mixpanel.incrementProperties', () => {
|
|
15
|
+
const defaultProperties = { term: 'foo', increment: { searches: 1 } };
|
|
16
|
+
it('should use EU server URL', async () => {
|
|
17
|
+
const event = actions_core_1.createTestEvent({ timestamp, event: 'search', properties: defaultProperties });
|
|
18
|
+
nock_1.default('https://api-eu.mixpanel.com').post('/engage').reply(200, {});
|
|
19
|
+
nock_1.default('https://api-eu.mixpanel.com').post('/track').reply(200, {});
|
|
20
|
+
const responses = await testDestination.testAction('incrementProperties', {
|
|
21
|
+
event,
|
|
22
|
+
useDefaultMappings: true,
|
|
23
|
+
settings: {
|
|
24
|
+
projectToken: MIXPANEL_PROJECT_TOKEN,
|
|
25
|
+
apiSecret: MIXPANEL_API_SECRET,
|
|
26
|
+
apiRegion: utils_1.ApiRegions.EU
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
expect(responses[0].status).toBe(200);
|
|
30
|
+
expect(responses[0].data).toMatchObject({});
|
|
31
|
+
expect(responses[0].options.body).toMatchObject(new URLSearchParams({
|
|
32
|
+
data: JSON.stringify({
|
|
33
|
+
$token: MIXPANEL_PROJECT_TOKEN,
|
|
34
|
+
$distinct_id: 'user1234',
|
|
35
|
+
$ip: '8.8.8.8',
|
|
36
|
+
$add: {
|
|
37
|
+
searches: 1
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
}));
|
|
41
|
+
});
|
|
42
|
+
it('should default to US endpoint if apiRegion setting is undefined', async () => {
|
|
43
|
+
const event = actions_core_1.createTestEvent({ timestamp, event: 'search', properties: defaultProperties });
|
|
44
|
+
nock_1.default('https://api.mixpanel.com').post('/engage').reply(200, {});
|
|
45
|
+
nock_1.default('https://api.mixpanel.com').post('/track').reply(200, {});
|
|
46
|
+
const responses = await testDestination.testAction('incrementProperties', {
|
|
47
|
+
event,
|
|
48
|
+
useDefaultMappings: true,
|
|
49
|
+
settings: {
|
|
50
|
+
projectToken: MIXPANEL_PROJECT_TOKEN,
|
|
51
|
+
apiSecret: MIXPANEL_API_SECRET
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
expect(responses[0].status).toBe(200);
|
|
55
|
+
expect(responses[0].data).toMatchObject({});
|
|
56
|
+
expect(responses[0].options.body).toMatchObject(new URLSearchParams({
|
|
57
|
+
data: JSON.stringify({
|
|
58
|
+
$token: MIXPANEL_PROJECT_TOKEN,
|
|
59
|
+
$distinct_id: 'user1234',
|
|
60
|
+
$ip: '8.8.8.8',
|
|
61
|
+
$add: {
|
|
62
|
+
searches: 1
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
}));
|
|
66
|
+
});
|
|
67
|
+
it('should use anonymous_id as distinct_id if user_id is missing', async () => {
|
|
68
|
+
const event = actions_core_1.createTestEvent({ userId: null, event: 'search', properties: defaultProperties });
|
|
69
|
+
nock_1.default('https://api.mixpanel.com').post('/track').reply(200, {});
|
|
70
|
+
nock_1.default('https://api.mixpanel.com').post('/engage').reply(200, {});
|
|
71
|
+
const responses = await testDestination.testAction('incrementProperties', {
|
|
72
|
+
event,
|
|
73
|
+
useDefaultMappings: true,
|
|
74
|
+
settings: {
|
|
75
|
+
projectToken: MIXPANEL_PROJECT_TOKEN,
|
|
76
|
+
apiSecret: MIXPANEL_API_SECRET
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
expect(responses[0].status).toBe(200);
|
|
80
|
+
expect(responses[0].data).toMatchObject({});
|
|
81
|
+
expect(responses[0].options.body).toMatchObject(new URLSearchParams({
|
|
82
|
+
data: JSON.stringify({
|
|
83
|
+
$token: MIXPANEL_PROJECT_TOKEN,
|
|
84
|
+
$distinct_id: event.anonymousId,
|
|
85
|
+
$ip: '8.8.8.8',
|
|
86
|
+
$add: {
|
|
87
|
+
searches: 1
|
|
88
|
+
}
|
|
89
|
+
})
|
|
90
|
+
}));
|
|
91
|
+
});
|
|
92
|
+
it('should $add values to increment numerical properties', async () => {
|
|
93
|
+
const event = actions_core_1.createTestEvent({
|
|
94
|
+
timestamp,
|
|
95
|
+
event: 'search',
|
|
96
|
+
properties: {
|
|
97
|
+
abc: '123',
|
|
98
|
+
increment: {
|
|
99
|
+
positive: 2,
|
|
100
|
+
negative: -2
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
nock_1.default('https://api.mixpanel.com').post('/track').reply(200, {});
|
|
105
|
+
nock_1.default('https://api.mixpanel.com').post('/engage').reply(200, {});
|
|
106
|
+
const responses = await testDestination.testAction('incrementProperties', {
|
|
107
|
+
event,
|
|
108
|
+
useDefaultMappings: true,
|
|
109
|
+
settings: {
|
|
110
|
+
projectToken: MIXPANEL_PROJECT_TOKEN,
|
|
111
|
+
apiSecret: MIXPANEL_API_SECRET
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
expect(responses[0].status).toBe(200);
|
|
115
|
+
expect(responses[0].data).toMatchObject({});
|
|
116
|
+
expect(responses[0].options.body).toMatchObject(new URLSearchParams({
|
|
117
|
+
data: JSON.stringify({
|
|
118
|
+
$token: MIXPANEL_PROJECT_TOKEN,
|
|
119
|
+
$distinct_id: 'user1234',
|
|
120
|
+
$ip: '8.8.8.8',
|
|
121
|
+
$add: {
|
|
122
|
+
positive: 2,
|
|
123
|
+
negative: -2
|
|
124
|
+
}
|
|
125
|
+
})
|
|
126
|
+
}));
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../../../src/destinations/mixpanel/incrementProperties/__test__/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
7
|
+
const test_data_1 = require("../../../../lib/test-data");
|
|
8
|
+
const index_1 = __importDefault(require("../../index"));
|
|
9
|
+
const nock_1 = __importDefault(require("nock"));
|
|
10
|
+
const testDestination = actions_core_1.createTestIntegration(index_1.default);
|
|
11
|
+
const actionSlug = 'identifyUser';
|
|
12
|
+
const destinationSlug = 'Mixpanel';
|
|
13
|
+
const seedName = `${destinationSlug}#${actionSlug}`;
|
|
14
|
+
describe(`Testing snapshot for ${destinationSlug}'s ${actionSlug} destination action:`, () => {
|
|
15
|
+
it('required fields', async () => {
|
|
16
|
+
const action = index_1.default.actions[actionSlug];
|
|
17
|
+
const [eventData, settingsData] = test_data_1.generateTestData(seedName, index_1.default, action, true);
|
|
18
|
+
nock_1.default(/.*/).persist().get(/.*/).reply(200);
|
|
19
|
+
nock_1.default(/.*/).persist().post(/.*/).reply(200);
|
|
20
|
+
nock_1.default(/.*/).persist().put(/.*/).reply(200);
|
|
21
|
+
const event = actions_core_1.createTestEvent({
|
|
22
|
+
properties: eventData
|
|
23
|
+
});
|
|
24
|
+
const responses = await testDestination.testAction(actionSlug, {
|
|
25
|
+
event: event,
|
|
26
|
+
mapping: event.properties,
|
|
27
|
+
settings: settingsData,
|
|
28
|
+
auth: undefined
|
|
29
|
+
});
|
|
30
|
+
const request = responses[0].request;
|
|
31
|
+
const rawBody = await request.text();
|
|
32
|
+
try {
|
|
33
|
+
const json = JSON.parse(rawBody);
|
|
34
|
+
expect(json).toMatchSnapshot();
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
expect(rawBody).toMatchSnapshot();
|
|
39
|
+
}
|
|
40
|
+
expect(request.headers).toMatchSnapshot();
|
|
41
|
+
});
|
|
42
|
+
it('all fields', async () => {
|
|
43
|
+
const action = index_1.default.actions[actionSlug];
|
|
44
|
+
const [eventData, settingsData] = test_data_1.generateTestData(seedName, index_1.default, action, false);
|
|
45
|
+
nock_1.default(/.*/).persist().get(/.*/).reply(200);
|
|
46
|
+
nock_1.default(/.*/).persist().post(/.*/).reply(200);
|
|
47
|
+
nock_1.default(/.*/).persist().put(/.*/).reply(200);
|
|
48
|
+
const event = actions_core_1.createTestEvent({
|
|
49
|
+
properties: eventData
|
|
50
|
+
});
|
|
51
|
+
const responses = await testDestination.testAction(actionSlug, {
|
|
52
|
+
event: event,
|
|
53
|
+
mapping: event.properties,
|
|
54
|
+
settings: settingsData,
|
|
55
|
+
auth: undefined
|
|
56
|
+
});
|
|
57
|
+
const request = responses[0].request;
|
|
58
|
+
const rawBody = await request.text();
|
|
59
|
+
try {
|
|
60
|
+
const json = JSON.parse(rawBody);
|
|
61
|
+
expect(json).toMatchSnapshot();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
expect(rawBody).toMatchSnapshot();
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=snapshot.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapshot.test.js","sourceRoot":"","sources":["../../../../../src/destinations/mixpanel/incrementProperties/__test__/snapshot.test.ts"],"names":[],"mappings":"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"}
|