@segment/action-destinations 3.86.1-alpha.8 → 3.88.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/cordial/addProductToCart/index.js +1 -1
- package/dist/destinations/cordial/addProductToCart/index.js.map +1 -1
- package/dist/destinations/cordial/index.js +1 -1
- package/dist/destinations/cordial/index.js.map +1 -1
- package/dist/destinations/cordial/removeProductFromCart/index.js.map +1 -1
- package/dist/destinations/cordial/upsertOrder/index.js +8 -8
- package/dist/destinations/cordial/upsertOrder/index.js.map +1 -1
- package/dist/destinations/customerio/trackEvent/generated-types.d.ts +1 -0
- package/dist/destinations/customerio/trackEvent/index.js +11 -0
- package/dist/destinations/customerio/trackEvent/index.js.map +1 -1
- package/dist/destinations/fullstory/identifyUser/index.js.map +1 -1
- package/dist/destinations/fullstory/request-params.js +4 -2
- package/dist/destinations/fullstory/request-params.js.map +1 -1
- package/dist/destinations/fullstory/trackEvent/index.js.map +1 -1
- package/dist/destinations/google-enhanced-conversions/postConversion/index.js +2 -3
- package/dist/destinations/google-enhanced-conversions/postConversion/index.js.map +1 -1
- package/dist/destinations/heap/constants.d.ts +1 -0
- package/dist/destinations/heap/constants.js +5 -0
- package/dist/destinations/heap/constants.js.map +1 -0
- package/dist/destinations/heap/flat.d.ts +9 -0
- package/dist/destinations/heap/flat.js +18 -0
- package/dist/destinations/heap/flat.js.map +1 -0
- package/dist/destinations/{intercom → heap}/generated-types.d.ts +1 -0
- package/dist/destinations/{intercom → heap}/generated-types.js +0 -0
- package/dist/destinations/heap/generated-types.js.map +1 -0
- package/dist/destinations/heap/identifyUser/generated-types.d.ts +7 -0
- package/dist/destinations/{intercom/groupIdentifyContact → heap/identifyUser}/generated-types.js +0 -0
- package/dist/destinations/heap/identifyUser/generated-types.js.map +1 -0
- package/dist/destinations/{intercom/groupIdentifyContact → heap/identifyUser}/index.d.ts +1 -1
- package/dist/destinations/heap/identifyUser/index.js +72 -0
- package/dist/destinations/heap/identifyUser/index.js.map +1 -0
- package/dist/destinations/{intercom → heap}/index.d.ts +0 -0
- package/dist/destinations/heap/index.js +45 -0
- package/dist/destinations/heap/index.js.map +1 -0
- package/dist/destinations/heap/trackEvent/generated-types.d.ts +11 -0
- package/dist/destinations/{intercom/identifyContact → heap/trackEvent}/generated-types.js +0 -0
- package/dist/destinations/heap/trackEvent/generated-types.js.map +1 -0
- package/dist/destinations/{intercom/identifyContact → heap/trackEvent}/index.d.ts +1 -1
- package/dist/destinations/heap/trackEvent/index.js +110 -0
- package/dist/destinations/heap/trackEvent/index.js.map +1 -0
- package/dist/destinations/heap/userIdHash.d.ts +1 -0
- package/dist/destinations/heap/userIdHash.js +38 -0
- package/dist/destinations/heap/userIdHash.js.map +1 -0
- package/dist/destinations/index.js +2 -2
- package/dist/destinations/index.js.map +1 -1
- package/dist/destinations/personas-messaging-sendgrid/sendEmail/index.js +3 -24
- package/dist/destinations/personas-messaging-sendgrid/sendEmail/index.js.map +1 -1
- package/dist/destinations/personas-messaging-twilio/sendSms/index.js +21 -10
- package/dist/destinations/personas-messaging-twilio/sendSms/index.js.map +1 -1
- package/dist/destinations/qualtrics/addContactToXmd/generated-types.d.ts +13 -0
- package/dist/destinations/{pardot → qualtrics/addContactToXmd}/generated-types.js +0 -0
- package/dist/destinations/qualtrics/addContactToXmd/generated-types.js.map +1 -0
- package/dist/destinations/{pardot/prospects → qualtrics/addContactToXmd}/index.d.ts +1 -1
- package/dist/destinations/qualtrics/addContactToXmd/index.js +106 -0
- package/dist/destinations/qualtrics/addContactToXmd/index.js.map +1 -0
- package/dist/destinations/qualtrics/generated-types.d.ts +4 -0
- package/dist/destinations/{pardot/prospects → qualtrics}/generated-types.js +0 -0
- package/dist/destinations/qualtrics/generated-types.js.map +1 -0
- package/dist/destinations/{pardot → qualtrics}/index.d.ts +0 -0
- package/dist/destinations/qualtrics/index.js +40 -0
- package/dist/destinations/qualtrics/index.js.map +1 -0
- package/dist/destinations/qualtrics/qualtricsApiClient.d.ts +72 -0
- package/dist/destinations/qualtrics/qualtricsApiClient.js +42 -0
- package/dist/destinations/qualtrics/qualtricsApiClient.js.map +1 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/generated-types.d.ts +6 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/generated-types.js +3 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/generated-types.js.map +1 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/index.d.ts +5 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/index.js +53 -0
- package/dist/destinations/qualtrics/triggerXflowWorkflow/index.js.map +1 -0
- package/package.json +4 -4
- package/dist/destinations/intercom/generated-types.js.map +0 -1
- package/dist/destinations/intercom/groupIdentifyContact/generated-types.d.ts +0 -14
- package/dist/destinations/intercom/groupIdentifyContact/generated-types.js.map +0 -1
- package/dist/destinations/intercom/groupIdentifyContact/index.js +0 -122
- package/dist/destinations/intercom/groupIdentifyContact/index.js.map +0 -1
- package/dist/destinations/intercom/identifyContact/generated-types.d.ts +0 -15
- package/dist/destinations/intercom/identifyContact/generated-types.js.map +0 -1
- package/dist/destinations/intercom/identifyContact/index.js +0 -153
- package/dist/destinations/intercom/identifyContact/index.js.map +0 -1
- package/dist/destinations/intercom/index.js +0 -37
- package/dist/destinations/intercom/index.js.map +0 -1
- package/dist/destinations/pardot/generated-types.d.ts +0 -5
- package/dist/destinations/pardot/generated-types.js.map +0 -1
- package/dist/destinations/pardot/index.js +0 -62
- package/dist/destinations/pardot/index.js.map +0 -1
- package/dist/destinations/pardot/pa-operations.d.ts +0 -17
- package/dist/destinations/pardot/pa-operations.js +0 -51
- package/dist/destinations/pardot/pa-operations.js.map +0 -1
- package/dist/destinations/pardot/pa-properties.d.ts +0 -2
- package/dist/destinations/pardot/pa-properties.js +0 -13
- package/dist/destinations/pardot/pa-properties.js.map +0 -1
- package/dist/destinations/pardot/pa-type.d.ts +0 -15
- package/dist/destinations/pardot/pa-type.js +0 -3
- package/dist/destinations/pardot/pa-type.js.map +0 -1
- package/dist/destinations/pardot/prospects/generated-types.d.ts +0 -19
- package/dist/destinations/pardot/prospects/generated-types.js.map +0 -1
- package/dist/destinations/pardot/prospects/index.js +0 -200
- package/dist/destinations/pardot/prospects/index.js.map +0 -1
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ModifiedResponse } from '@segment/actions-core';
|
|
2
|
+
import { RequestClient } from '@segment/actions-core';
|
|
3
|
+
export declare type SupportedMethods = 'get' | 'post';
|
|
4
|
+
export declare type QualtricsApiResponse = {
|
|
5
|
+
result?: Record<string, unknown>;
|
|
6
|
+
meta: {
|
|
7
|
+
httpStatusCode: string;
|
|
8
|
+
requestId: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
export declare type QualtricsApiErrorResponse = {
|
|
12
|
+
meta: {
|
|
13
|
+
httpStatusCode: string;
|
|
14
|
+
requestId: string;
|
|
15
|
+
error?: {
|
|
16
|
+
errorMessage: string;
|
|
17
|
+
errorCode: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
export declare type WhoAmiResponse = {
|
|
22
|
+
brandId: string;
|
|
23
|
+
userId: string;
|
|
24
|
+
userName: string;
|
|
25
|
+
accountType: string;
|
|
26
|
+
firstName: string;
|
|
27
|
+
lastName: string;
|
|
28
|
+
email: string;
|
|
29
|
+
datacenter: string;
|
|
30
|
+
};
|
|
31
|
+
export declare type Directory = {
|
|
32
|
+
directoryId: string;
|
|
33
|
+
name: string;
|
|
34
|
+
contactCount: number;
|
|
35
|
+
isDefault: boolean;
|
|
36
|
+
deduplicationCriteria: {
|
|
37
|
+
email: boolean;
|
|
38
|
+
firstName: boolean;
|
|
39
|
+
lastName: boolean;
|
|
40
|
+
externalDataReference: boolean;
|
|
41
|
+
phone: boolean;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
export declare type ListDirectoriesResponse = {
|
|
45
|
+
elements: Directory[];
|
|
46
|
+
};
|
|
47
|
+
export declare type CreateDirectoryContactRequest = {
|
|
48
|
+
firstName: string | undefined;
|
|
49
|
+
lastName: string | undefined;
|
|
50
|
+
email: string | undefined;
|
|
51
|
+
phone: string | undefined;
|
|
52
|
+
extRef: string | undefined;
|
|
53
|
+
embeddedData: {
|
|
54
|
+
[k: string]: unknown;
|
|
55
|
+
} | undefined;
|
|
56
|
+
language: string | undefined;
|
|
57
|
+
unsubscribed: boolean | undefined;
|
|
58
|
+
};
|
|
59
|
+
export declare type CreateDirectoryContactResponse = {
|
|
60
|
+
id: string;
|
|
61
|
+
};
|
|
62
|
+
export default class QualtricsApiClient {
|
|
63
|
+
private baseUrl;
|
|
64
|
+
private apiToken;
|
|
65
|
+
private request;
|
|
66
|
+
constructor(dc: string, apiToken: string, request: RequestClient);
|
|
67
|
+
whoaAmI(): Promise<WhoAmiResponse>;
|
|
68
|
+
createDirectoryContact(directoryId: string, body: CreateDirectoryContactRequest): Promise<ModifiedResponse>;
|
|
69
|
+
private makeRequest;
|
|
70
|
+
private buildUrl;
|
|
71
|
+
private buildRequestParams;
|
|
72
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class QualtricsApiClient {
|
|
4
|
+
constructor(dc, apiToken, request) {
|
|
5
|
+
this.baseUrl = `https://${dc || 'iad1'}.qualtrics.com`;
|
|
6
|
+
this.apiToken = apiToken;
|
|
7
|
+
this.request = request;
|
|
8
|
+
}
|
|
9
|
+
async whoaAmI() {
|
|
10
|
+
const endpoint = `/API/v3/whoami`;
|
|
11
|
+
return (await this.makeRequest(endpoint, 'get')).json()
|
|
12
|
+
.result;
|
|
13
|
+
}
|
|
14
|
+
async createDirectoryContact(directoryId, body) {
|
|
15
|
+
const endpoint = `/API/v3/directories/${directoryId}/contacts`;
|
|
16
|
+
return await this.makeRequest(endpoint, 'post', body);
|
|
17
|
+
}
|
|
18
|
+
async makeRequest(endpoint, method, body) {
|
|
19
|
+
return await this.request(this.buildUrl(endpoint), {
|
|
20
|
+
...this.buildRequestParams(method),
|
|
21
|
+
json: body
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
buildUrl(endpoint) {
|
|
25
|
+
let parsedEndpoint = endpoint;
|
|
26
|
+
if (parsedEndpoint.startsWith('/')) {
|
|
27
|
+
parsedEndpoint = parsedEndpoint.substring(1);
|
|
28
|
+
}
|
|
29
|
+
return `${this.baseUrl}/${parsedEndpoint}`;
|
|
30
|
+
}
|
|
31
|
+
buildRequestParams(method) {
|
|
32
|
+
return {
|
|
33
|
+
method,
|
|
34
|
+
headers: {
|
|
35
|
+
'Content-type': 'application/json',
|
|
36
|
+
'X-API-TOKEN': this.apiToken
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.default = QualtricsApiClient;
|
|
42
|
+
//# sourceMappingURL=qualtricsApiClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qualtricsApiClient.js","sourceRoot":"","sources":["../../../src/destinations/qualtrics/qualtricsApiClient.ts"],"names":[],"mappings":";;AAyEA,MAAqB,kBAAkB;IAKrC,YAAY,EAAU,EAAE,QAAgB,EAAE,OAAsB;QAC9D,IAAI,CAAC,OAAO,GAAG,WAAW,EAAE,IAAI,MAAM,gBAAgB,CAAA;QACtD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,QAAQ,GAAG,gBAAgB,CAAA;QACjC,OAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAsC;aACzF,MAAwB,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,sBAAsB,CACjC,WAAmB,EACnB,IAAmC;QAEnC,MAAM,QAAQ,GAAG,uBAAuB,WAAW,WAAW,CAAA;QAC9D,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IACvD,CAAC;IAEO,KAAK,CAAC,WAAW,CACvB,QAAgB,EAChB,MAAwB,EACxB,IAAsC;QAEtC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjD,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;IAEO,QAAQ,CAAC,QAAgB;QAC/B,IAAI,cAAc,GAAG,QAAQ,CAAA;QAC7B,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YAClC,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;SAC7C;QACD,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,cAAc,EAAE,CAAA;IAC5C,CAAC;IAEO,kBAAkB,CAAC,MAAwB;QACjD,OAAO;YACL,MAAM;YACN,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,IAAI,CAAC,QAAQ;aAC7B;SACF,CAAA;IACH,CAAC;CACF;AArDD,qCAqDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/qualtrics/triggerXflowWorkflow/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const action = {
|
|
4
|
+
title: 'Trigger workflow in xflow',
|
|
5
|
+
description: 'This action triggers a workflow in Qualtrics xflow',
|
|
6
|
+
fields: {
|
|
7
|
+
workflowUrl: {
|
|
8
|
+
label: 'Workflow URL',
|
|
9
|
+
type: 'string',
|
|
10
|
+
format: 'uri',
|
|
11
|
+
description: 'Enter the full URL as you see in your Xflow trigger. See more details on setting up an xflow trigger and getting the URL here.',
|
|
12
|
+
required: true
|
|
13
|
+
},
|
|
14
|
+
eventPayload: {
|
|
15
|
+
label: 'Event payload',
|
|
16
|
+
type: 'object',
|
|
17
|
+
description: 'A mapping of key values to send to Qualtrics xflow.',
|
|
18
|
+
defaultObjectUI: 'keyvalue',
|
|
19
|
+
default: {
|
|
20
|
+
event: {
|
|
21
|
+
'@path': '$.event'
|
|
22
|
+
},
|
|
23
|
+
type: {
|
|
24
|
+
'@path': '$.type'
|
|
25
|
+
},
|
|
26
|
+
userId: {
|
|
27
|
+
'@path': '$.userId'
|
|
28
|
+
},
|
|
29
|
+
properties: {
|
|
30
|
+
'@path': '$.properties'
|
|
31
|
+
},
|
|
32
|
+
traits: {
|
|
33
|
+
'@path': '$.traits'
|
|
34
|
+
},
|
|
35
|
+
context: {
|
|
36
|
+
'@path': '$.context'
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
perform: (request, data) => {
|
|
42
|
+
return request(data.payload.workflowUrl, {
|
|
43
|
+
method: 'POST',
|
|
44
|
+
json: data.payload.eventPayload,
|
|
45
|
+
headers: {
|
|
46
|
+
'X-API-TOKEN': data.settings.apiToken,
|
|
47
|
+
'content-type': 'application/json'
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
exports.default = action;
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/qualtrics/triggerXflowWorkflow/index.ts"],"names":[],"mappings":";;AAIA,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,2BAA2B;IAClC,WAAW,EAAE,oDAAoD;IACjE,MAAM,EAAE;QACN,WAAW,EAAE;YACX,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,KAAK;YACb,WAAW,EACT,gIAAgI;YAClI,QAAQ,EAAE,IAAI;SACf;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qDAAqD;YAClE,eAAe,EAAE,UAAU;YAC3B,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,OAAO,EAAE,SAAS;iBACnB;gBACD,IAAI,EAAE;oBACJ,OAAO,EAAE,QAAQ;iBAClB;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,UAAU;iBACpB;gBACD,UAAU,EAAE;oBACV,OAAO,EAAE,cAAc;iBACxB;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,UAAU;iBACpB;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,WAAW;iBACrB;aACF;SACF;KACF;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACzB,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YACvC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY;YAC/B,OAAO,EAAE;gBACP,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBACrC,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@segment/action-destinations",
|
|
3
3
|
"description": "Destination Actions engine and definitions.",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.88.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/segmentio/action-destinations",
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@amplitude/ua-parser-js": "^0.7.25",
|
|
40
40
|
"@segment/a1-notation": "^2.1.4",
|
|
41
|
-
"@segment/actions-core": "^3.
|
|
42
|
-
"@segment/actions-shared": "^1.
|
|
41
|
+
"@segment/actions-core": "^3.31.0",
|
|
42
|
+
"@segment/actions-shared": "^1.14.0",
|
|
43
43
|
"cheerio": "^1.0.0-rc.10",
|
|
44
44
|
"dayjs": "^1.10.7",
|
|
45
45
|
"escape-goat": "^3",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"lcov"
|
|
66
66
|
]
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "e448e71ea2cad26e673e1e699ce95b2ba68d6191"
|
|
69
69
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/destinations/intercom/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export interface Payload {
|
|
2
|
-
remote_created_at?: string | number;
|
|
3
|
-
company_id: string;
|
|
4
|
-
contact_id?: string;
|
|
5
|
-
name?: string;
|
|
6
|
-
monthly_spend?: number;
|
|
7
|
-
plan?: string;
|
|
8
|
-
size?: number;
|
|
9
|
-
website?: string;
|
|
10
|
-
industry?: string;
|
|
11
|
-
custom_attributes?: {
|
|
12
|
-
[k: string]: unknown;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/intercom/groupIdentifyContact/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const actions_core_1 = require("@segment/actions-core");
|
|
4
|
-
const action = {
|
|
5
|
-
title: 'Group Identify Contact',
|
|
6
|
-
description: "Create or Update A Company. Note: Companies will be only visible in Intercom's Dashboard when there is at least one associated contact.",
|
|
7
|
-
defaultSubscription: 'type = "group"',
|
|
8
|
-
platform: 'web',
|
|
9
|
-
fields: {
|
|
10
|
-
remote_created_at: {
|
|
11
|
-
type: 'datetime',
|
|
12
|
-
description: 'The time the company was created by you.',
|
|
13
|
-
label: 'Remote Created At',
|
|
14
|
-
default: {
|
|
15
|
-
'@path': '$.traits.createdAt'
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
company_id: {
|
|
19
|
-
type: 'string',
|
|
20
|
-
description: "The unique identifier of the company. Can't be updated.",
|
|
21
|
-
label: 'Company ID',
|
|
22
|
-
required: true,
|
|
23
|
-
default: {
|
|
24
|
-
'@path': '$.groupId'
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
contact_id: {
|
|
28
|
-
type: 'string',
|
|
29
|
-
description: 'Attach this contact to the company. This ID is NOT the external_id or email; it is the Intercom unique identifier.',
|
|
30
|
-
label: 'Contact ID',
|
|
31
|
-
default: {
|
|
32
|
-
'@path': '$.userId'
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
name: {
|
|
36
|
-
type: 'string',
|
|
37
|
-
description: 'The name of the company.',
|
|
38
|
-
label: 'Name',
|
|
39
|
-
default: {
|
|
40
|
-
'@path': '$.traits.name'
|
|
41
|
-
}
|
|
42
|
-
},
|
|
43
|
-
monthly_spend: {
|
|
44
|
-
type: 'number',
|
|
45
|
-
description: 'The monthly spend of the company.',
|
|
46
|
-
label: 'Monthly Spend',
|
|
47
|
-
default: {
|
|
48
|
-
'@path': '$.traits.plan'
|
|
49
|
-
}
|
|
50
|
-
},
|
|
51
|
-
plan: {
|
|
52
|
-
type: 'string',
|
|
53
|
-
description: 'The plan of the company.',
|
|
54
|
-
label: 'Plan',
|
|
55
|
-
default: {
|
|
56
|
-
'@path': '$.traits.plan'
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
size: {
|
|
60
|
-
type: 'number',
|
|
61
|
-
description: 'The size of the company.',
|
|
62
|
-
label: 'Size',
|
|
63
|
-
default: {
|
|
64
|
-
'@path': '$.traits.employees'
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
website: {
|
|
68
|
-
type: 'string',
|
|
69
|
-
description: 'The website of the company.',
|
|
70
|
-
label: 'Website',
|
|
71
|
-
default: {
|
|
72
|
-
'@path': '$.traits.website'
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
industry: {
|
|
76
|
-
type: 'string',
|
|
77
|
-
description: 'The industry of the company.',
|
|
78
|
-
label: 'Industry',
|
|
79
|
-
default: {
|
|
80
|
-
'@path': '$.traits.industry'
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
custom_attributes: {
|
|
84
|
-
type: 'object',
|
|
85
|
-
description: 'Passing any traits not mapped to individual fields as Custom Attributes. Note: Will throw an error if you pass an attribute that isn`t explicitly defined.',
|
|
86
|
-
label: 'Custom Attributes'
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
perform: async (request, { payload }) => {
|
|
90
|
-
const contactId = payload.contact_id;
|
|
91
|
-
delete payload.contact_id;
|
|
92
|
-
const response = await createOrUpdateIntercomCompany(request, payload);
|
|
93
|
-
if (contactId) {
|
|
94
|
-
try {
|
|
95
|
-
const companyId = response.data.id;
|
|
96
|
-
return await attachContactToIntercomCompany(request, contactId, companyId);
|
|
97
|
-
}
|
|
98
|
-
catch (error) {
|
|
99
|
-
if (error?.response?.status === 404) {
|
|
100
|
-
throw new actions_core_1.RetryableError(`Contact doesn't exist, retrying`);
|
|
101
|
-
}
|
|
102
|
-
throw error;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
function createOrUpdateIntercomCompany(request, payload) {
|
|
108
|
-
return request(`https://api.intercom.io/companies`, {
|
|
109
|
-
method: 'POST',
|
|
110
|
-
json: payload
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
function attachContactToIntercomCompany(request, contactId, companyId) {
|
|
114
|
-
return request(`https://api.intercom.io/contacts/${contactId}/companies`, {
|
|
115
|
-
method: 'POST',
|
|
116
|
-
json: {
|
|
117
|
-
id: companyId
|
|
118
|
-
}
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
exports.default = action;
|
|
122
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/intercom/groupIdentifyContact/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export interface Payload {
|
|
2
|
-
role: string;
|
|
3
|
-
external_id?: string;
|
|
4
|
-
email?: string;
|
|
5
|
-
phone?: string;
|
|
6
|
-
name?: string;
|
|
7
|
-
avatar?: string;
|
|
8
|
-
signed_up_at?: string | number;
|
|
9
|
-
last_seen_at?: string | number;
|
|
10
|
-
owner_id?: number;
|
|
11
|
-
unsubscribed_from_emails?: boolean;
|
|
12
|
-
custom_attributes?: {
|
|
13
|
-
[k: string]: unknown;
|
|
14
|
-
};
|
|
15
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/intercom/identifyContact/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const actions_core_1 = require("@segment/actions-core");
|
|
4
|
-
const action = {
|
|
5
|
-
title: 'Identify Contact',
|
|
6
|
-
description: 'Create or Update a Contact.',
|
|
7
|
-
defaultSubscription: 'type = "identify"',
|
|
8
|
-
platform: 'web',
|
|
9
|
-
fields: {
|
|
10
|
-
role: {
|
|
11
|
-
type: 'string',
|
|
12
|
-
required: true,
|
|
13
|
-
description: 'The role of the contact. Accepted values are `user` or `lead`. Can only be updated if `lead`.',
|
|
14
|
-
label: 'Role',
|
|
15
|
-
default: 'lead'
|
|
16
|
-
},
|
|
17
|
-
external_id: {
|
|
18
|
-
type: 'string',
|
|
19
|
-
description: 'A unique identifier generated outside Intercom. Required if role=user and email is blank.',
|
|
20
|
-
label: 'External ID',
|
|
21
|
-
default: {
|
|
22
|
-
'@path': '$.userId'
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
email: {
|
|
26
|
-
type: 'string',
|
|
27
|
-
description: "The contact's email. Required if role=user and external_id is blank.",
|
|
28
|
-
label: 'Email',
|
|
29
|
-
format: 'email',
|
|
30
|
-
default: {
|
|
31
|
-
'@path': '$.traits.email'
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
phone: {
|
|
35
|
-
label: 'Phone Number',
|
|
36
|
-
description: "The contact's phone number.",
|
|
37
|
-
type: 'string',
|
|
38
|
-
default: {
|
|
39
|
-
'@path': '$.traits.phone'
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
name: {
|
|
43
|
-
type: 'string',
|
|
44
|
-
description: "The contact's name.",
|
|
45
|
-
label: 'Name',
|
|
46
|
-
default: {
|
|
47
|
-
'@path': '$.traits.name'
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
avatar: {
|
|
51
|
-
label: 'Avatar',
|
|
52
|
-
description: 'URL of image to be associated with contact profile.',
|
|
53
|
-
type: 'string',
|
|
54
|
-
format: 'uri',
|
|
55
|
-
default: {
|
|
56
|
-
'@path': '$.traits.avatar'
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
signed_up_at: {
|
|
60
|
-
label: 'Signed Up At',
|
|
61
|
-
type: 'datetime',
|
|
62
|
-
description: 'The timestamp when the contact was created.',
|
|
63
|
-
default: {
|
|
64
|
-
'@path': '$.createdAt'
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
last_seen_at: {
|
|
68
|
-
label: 'Timestamp',
|
|
69
|
-
type: 'datetime',
|
|
70
|
-
description: 'The timestamp the contact was last seen.',
|
|
71
|
-
default: {
|
|
72
|
-
'@path': '$.timestamp'
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
owner_id: {
|
|
76
|
-
label: 'Owner Id',
|
|
77
|
-
type: 'number',
|
|
78
|
-
description: 'The id of an admin that has been assigned account ownership of the contact.'
|
|
79
|
-
},
|
|
80
|
-
unsubscribed_from_emails: {
|
|
81
|
-
label: 'Unsubscribed From Emails',
|
|
82
|
-
type: 'boolean',
|
|
83
|
-
description: 'Whether the contact is unsubscribed from emails.'
|
|
84
|
-
},
|
|
85
|
-
custom_attributes: {
|
|
86
|
-
label: 'Custom Attributes',
|
|
87
|
-
description: 'The custom attributes which are set for the contact. Note: Will throw an error if the object has an attribute that isn`t explicitly defined on Intercom.',
|
|
88
|
-
type: 'object',
|
|
89
|
-
default: {
|
|
90
|
-
'@path': '$.traits.customAttributes'
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
},
|
|
94
|
-
perform: async (request, { payload }) => {
|
|
95
|
-
try {
|
|
96
|
-
const contact = await searchIntercomContact(request, payload);
|
|
97
|
-
if (contact) {
|
|
98
|
-
return updateIntercomContact(request, contact.id, payload);
|
|
99
|
-
}
|
|
100
|
-
return await createIntercomContact(request, payload);
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
if (error?.response?.status === 409) {
|
|
104
|
-
throw new actions_core_1.RetryableError('Contact was reported duplicated but could not be searched for, probably due to Intercom search cache not being updated');
|
|
105
|
-
}
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
async function createIntercomContact(request, payload) {
|
|
111
|
-
return request('https://api.intercom.io/contacts', {
|
|
112
|
-
method: 'POST',
|
|
113
|
-
json: payload
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
async function searchIntercomContact(request, payload) {
|
|
117
|
-
const searchFields = {
|
|
118
|
-
email: payload.email,
|
|
119
|
-
external_id: payload.external_id,
|
|
120
|
-
role: payload.role
|
|
121
|
-
};
|
|
122
|
-
const value = [];
|
|
123
|
-
for (const [key, fieldValue] of Object.entries(searchFields)) {
|
|
124
|
-
if (fieldValue) {
|
|
125
|
-
value.push({
|
|
126
|
-
field: key,
|
|
127
|
-
operator: '=',
|
|
128
|
-
value: fieldValue
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
const query = {
|
|
133
|
-
operator: 'AND',
|
|
134
|
-
value
|
|
135
|
-
};
|
|
136
|
-
const response = await request('https://api.intercom.io/contacts/search', {
|
|
137
|
-
method: 'POST',
|
|
138
|
-
json: { query }
|
|
139
|
-
});
|
|
140
|
-
if (response.data.total_count === 1) {
|
|
141
|
-
return response.data.data[0];
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
async function updateIntercomContact(request, contactId, payload) {
|
|
145
|
-
return request(`https://api.intercom.io/contacts/${contactId}`, {
|
|
146
|
-
method: 'PUT',
|
|
147
|
-
json: {
|
|
148
|
-
...payload
|
|
149
|
-
}
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
exports.default = action;
|
|
153
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/intercom/identifyContact/index.ts"],"names":[],"mappings":";;AAAA,wDAAyG;AAazG,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,6BAA6B;IAC1C,mBAAmB,EAAE,mBAAmB;IACxC,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE;QACN,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,+FAA+F;YAC5G,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,MAAM;SAChB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,2FAA2F;YACxG,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE;gBACP,OAAO,EAAE,UAAU;aACpB;SACF;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sEAAsE;YACnF,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,OAAO,EAAE;gBACP,OAAO,EAAE,gBAAgB;aAC1B;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,6BAA6B;YAC1C,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,gBAAgB;aAC1B;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qBAAqB;YAClC,KAAK,EAAE,MAAM;YACb,OAAO,EAAE;gBACP,OAAO,EAAE,eAAe;aACzB;SACF;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE,qDAAqD;YAClE,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,OAAO,EAAE,iBAAiB;aAC3B;SACF;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,6CAA6C;YAC1D,OAAO,EAAE;gBACP,OAAO,EAAE,aAAa;aACvB;SACF;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,0CAA0C;YACvD,OAAO,EAAE;gBACP,OAAO,EAAE,aAAa;aACvB;SACF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,6EAA6E;SAC3F;QACD,wBAAwB,EAAE;YACxB,KAAK,EAAE,0BAA0B;YACjC,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,kDAAkD;SAChE;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,0JAA0J;YAC5J,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,2BAA2B;aACrC;SACF;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAQtC,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC7D,IAAI,OAAO,EAAE;gBACX,OAAO,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;aAC3D;YACD,OAAO,MAAM,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;SACrD;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE;gBAEnC,MAAM,IAAI,6BAAc,CACtB,wHAAwH,CACzH,CAAA;aACF;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF,CAAA;AAGD,KAAK,UAAU,qBAAqB,CAAC,OAAsB,EAAE,OAAgB;IAC3E,OAAO,OAAO,CAAC,kCAAkC,EAAE;QACjD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,OAAO;KACd,CAAC,CAAA;AACJ,CAAC;AASD,KAAK,UAAU,qBAAqB,CAAC,OAAsB,EAAE,OAAgB;IAC3E,MAAM,YAAY,GAAG;QACnB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAA;IACD,MAAM,KAAK,GAAG,EAAE,CAAA;IAChB,KAAK,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QAC5D,IAAI,UAAU,EAAE;YACd,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,GAAG;gBACb,KAAK,EAAE,UAAU;aAClB,CAAC,CAAA;SACH;KACF;IAED,MAAM,KAAK,GAAG;QACZ,QAAQ,EAAE,KAAK;QACf,KAAK;KACN,CAAA;IAED,MAAM,QAAQ,GAAyC,MAAM,OAAO,CAAC,yCAAyC,EAAE;QAC9G,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,EAAE,KAAK,EAAE;KAChB,CAAC,CAAA;IAEF,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,EAAE;QACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAC7B;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,OAAsB,EAAE,SAAiB,EAAE,OAAgB;IAC9F,OAAO,OAAO,CAAC,oCAAoC,SAAS,EAAE,EAAE;QAC9D,MAAM,EAAE,KAAK;QACb,IAAI,EAAE;YACJ,GAAG,OAAO;SACX;KACF,CAAC,CAAA;AACJ,CAAC;AAED,kBAAe,MAAM,CAAA"}
|
|
@@ -1,37 +0,0 @@
|
|
|
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 identifyContact_1 = __importDefault(require("./identifyContact"));
|
|
7
|
-
const groupIdentifyContact_1 = __importDefault(require("./groupIdentifyContact"));
|
|
8
|
-
const destination = {
|
|
9
|
-
name: 'Intercom (Actions)',
|
|
10
|
-
slug: 'actions-intercom',
|
|
11
|
-
mode: 'cloud',
|
|
12
|
-
authentication: {
|
|
13
|
-
scheme: 'oauth2',
|
|
14
|
-
fields: {},
|
|
15
|
-
testAuthentication: (request) => {
|
|
16
|
-
return request('https://api.intercom.io/admins');
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
extendRequest({ auth }) {
|
|
20
|
-
return {
|
|
21
|
-
headers: {
|
|
22
|
-
authorization: `Bearer ${auth?.accessToken}`
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
},
|
|
26
|
-
onDelete: async (request, { payload }) => {
|
|
27
|
-
return request(`https://api.intercom.io/contacts/${payload.userId}`, {
|
|
28
|
-
method: 'DELETE'
|
|
29
|
-
});
|
|
30
|
-
},
|
|
31
|
-
actions: {
|
|
32
|
-
identifyContact: identifyContact_1.default,
|
|
33
|
-
groupIdentifyContact: groupIdentifyContact_1.default
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
exports.default = destination;
|
|
37
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/intercom/index.ts"],"names":[],"mappings":";;;;;AAEA,wEAA+C;AAC/C,kFAAyD;AAEzD,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,EAAE;QACV,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE;YAG9B,OAAO,OAAO,CAAC,gCAAgC,CAAC,CAAA;QAClD,CAAC;KACF;IACD,aAAa,CAAC,EAAE,IAAI,EAAE;QACpB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;aAC7C;SACF,CAAA;IACH,CAAC;IAED,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACvC,OAAO,OAAO,CAAC,oCAAoC,OAAO,CAAC,MAAM,EAAE,EAAE;YACnE,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,EAAE;QACP,eAAe,EAAf,yBAAe;QACf,oBAAoB,EAApB,8BAAoB;KACrB;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/destinations/pardot/generated-types.ts"],"names":[],"mappings":""}
|