@segment/action-destinations 3.109.0 → 3.110.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/adobe-target/adobeTarget_operations.js +3 -1
- package/dist/destinations/adobe-target/adobeTarget_operations.js.map +1 -1
- package/dist/destinations/adobe-target/generated-types.d.ts +1 -0
- package/dist/destinations/adobe-target/index.js +15 -0
- package/dist/destinations/adobe-target/index.js.map +1 -1
- package/dist/destinations/google-enhanced-conversions/functions.d.ts +6 -0
- package/dist/destinations/google-enhanced-conversions/functions.js +54 -0
- package/dist/destinations/google-enhanced-conversions/functions.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/generated-types.d.ts +2 -1
- package/dist/destinations/google-enhanced-conversions/index.js +14 -7
- package/dist/destinations/google-enhanced-conversions/index.js.map +1 -1
- package/dist/destinations/google-enhanced-conversions/postConversion/index.js +7 -1
- package/dist/destinations/google-enhanced-conversions/postConversion/index.js.map +1 -1
- package/dist/destinations/google-enhanced-conversions/types.d.ts +23 -0
- package/dist/destinations/google-enhanced-conversions/types.js +5 -0
- package/dist/destinations/google-enhanced-conversions/types.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.d.ts +11 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.js +3 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.d.ts +5 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.js +92 -0
- package/dist/destinations/google-enhanced-conversions/uploadCallConversion/index.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.d.ts +25 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.js +3 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.d.ts +5 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.js +229 -0
- package/dist/destinations/google-enhanced-conversions/uploadClickConversion/index.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.d.ts +20 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.js +3 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/generated-types.js.map +1 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.d.ts +5 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js +286 -0
- package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js.map +1 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/generated-types.d.ts +6 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/generated-types.js +3 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/generated-types.js.map +1 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/index.d.ts +5 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/index.js +38 -0
- package/dist/destinations/hubspot/createCustomObjectRecord/index.js.map +1 -0
- package/dist/destinations/hubspot/generated-types.d.ts +2 -0
- package/dist/destinations/hubspot/generated-types.js +3 -0
- package/dist/destinations/hubspot/generated-types.js.map +1 -0
- package/dist/destinations/hubspot/index.d.ts +4 -0
- package/dist/destinations/hubspot/index.js +42 -0
- package/dist/destinations/hubspot/index.js.map +1 -0
- package/dist/destinations/hubspot/testHelper.d.ts +7 -0
- package/dist/destinations/hubspot/testHelper.js +24 -0
- package/dist/destinations/hubspot/testHelper.js.map +1 -0
- package/dist/destinations/index.js +1 -0
- package/dist/destinations/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -40,7 +40,9 @@ class AdobeTarget {
|
|
|
40
40
|
await this.request(`https://${clientCode}.tt.omtrdc.net/rest/v1/profiles/thirdPartyId/${userId}?client=${clientCode}`, { method: 'get' });
|
|
41
41
|
}
|
|
42
42
|
catch (error) {
|
|
43
|
-
|
|
43
|
+
if (error instanceof Error) {
|
|
44
|
+
return new actions_core_1.IntegrationError(error.message, error.stack, error.message == 'Forbidden' ? 403 : 400);
|
|
45
|
+
}
|
|
44
46
|
}
|
|
45
47
|
return undefined;
|
|
46
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adobeTarget_operations.js","sourceRoot":"","sources":["../../../src/destinations/adobe-target/adobeTarget_operations.ts"],"names":[],"mappings":";;AAAA,wDAAuE;AAEvE,SAAS,gBAAgB,CAAC,GAAyB,EAAE,UAAU,GAAG,EAAE,EAAE,aAAsC,EAAE;IAE5G,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,SAAS,EAAE;QACnC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;YAEhE,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;gBAChC,UAAU,CAAC,cAAc,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;aACjD;iBAAM;gBACL,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,CAAA;aACvD;QACH,CAAC,CAAC,CAAA;QACF,OAAO,UAAU,CAAA;KAClB;AACH,CAAC;AACD,MAAM,mBAAmB,GAAG,CAAC,MAAmD,EAAE,EAAE,CAClF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;KAChB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;KACxD,IAAI,CAAC,GAAG,CAAC,CAAA;AAEd,MAAqB,WAAW;IAM9B,YAAY,MAAc,EAAE,UAAkB,EAAE,MAAc,EAAE,OAAsB;QAOtF,kBAAa,GAAG,KAAK,IAAI,EAAE;YACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YAClE,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,CAAA;aACV;iBAAM;gBACL,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC5C,IAAI,MAAM,EAAE;oBACV,MAAM,UAAU,GAAG,WAAW,IAAI,CAAC,UAAU,qBAC3C,IAAI,CAAC,UACP,kCAAkC,IAAI,CAAC,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAA;oBAE9E,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;wBAC9B,MAAM,EAAE,MAAM;qBACf,CAAC,CAAA;iBACH;aACF;QACH,CAAC,CAAA;QAEO,kBAAa,GAAG,KAAK,EAAE,MAAc,EAAE,UAAkB,EAAyC,EAAE;YAC1G,IAAI;gBACF,MAAM,IAAI,CAAC,OAAO,CAChB,WAAW,UAAU,gDAAgD,MAAM,WAAW,UAAU,EAAE,EAClG,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAA;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,IAAI,+BAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"adobeTarget_operations.js","sourceRoot":"","sources":["../../../src/destinations/adobe-target/adobeTarget_operations.ts"],"names":[],"mappings":";;AAAA,wDAAuE;AAEvE,SAAS,gBAAgB,CAAC,GAAyB,EAAE,UAAU,GAAG,EAAE,EAAE,aAAsC,EAAE;IAE5G,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,SAAS,EAAE;QACnC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/B,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAA;YAEhE,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;gBAChC,UAAU,CAAC,cAAc,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;aACjD;iBAAM;gBACL,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,CAAA;aACvD;QACH,CAAC,CAAC,CAAA;QACF,OAAO,UAAU,CAAA;KAClB;AACH,CAAC;AACD,MAAM,mBAAmB,GAAG,CAAC,MAAmD,EAAE,EAAE,CAClF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;KAChB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;KACxD,IAAI,CAAC,GAAG,CAAC,CAAA;AAEd,MAAqB,WAAW;IAM9B,YAAY,MAAc,EAAE,UAAkB,EAAE,MAAc,EAAE,OAAsB;QAOtF,kBAAa,GAAG,KAAK,IAAI,EAAE;YACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YAClE,IAAI,GAAG,EAAE;gBACP,MAAM,GAAG,CAAA;aACV;iBAAM;gBACL,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC5C,IAAI,MAAM,EAAE;oBACV,MAAM,UAAU,GAAG,WAAW,IAAI,CAAC,UAAU,qBAC3C,IAAI,CAAC,UACP,kCAAkC,IAAI,CAAC,MAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAA;oBAE9E,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;wBAC9B,MAAM,EAAE,MAAM;qBACf,CAAC,CAAA;iBACH;aACF;QACH,CAAC,CAAA;QAEO,kBAAa,GAAG,KAAK,EAAE,MAAc,EAAE,UAAkB,EAAyC,EAAE;YAC1G,IAAI;gBACF,MAAM,IAAI,CAAC,OAAO,CAChB,WAAW,UAAU,gDAAgD,MAAM,WAAW,UAAU,EAAE,EAClG,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAA;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,KAAK,YAAY,KAAK,EAAE;oBAC1B,OAAO,IAAI,+BAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;iBAClG;aACF;YAED,OAAO,SAAS,CAAA;QAClB,CAAC,CAAA;QArCC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;CAkCF;AA7CD,8BA6CC"}
|
|
@@ -16,9 +16,24 @@ const destination = {
|
|
|
16
16
|
description: 'Your Adobe Target client code. To find your client code in Adobe Target, navigate to **Administration > Implementation**. The client code is shown at the top under Account Details.',
|
|
17
17
|
type: 'string',
|
|
18
18
|
required: true
|
|
19
|
+
},
|
|
20
|
+
bearer_token: {
|
|
21
|
+
label: 'Authentication Token',
|
|
22
|
+
description: "If you choose to require authentication for Adobe Target's Profile API, you will need to generate an authentication token. Tokens can be generated in your Adobe Target account under the Implementation Settings tab or via the [Adobe.IO Authentication Token API](https://developers.adobetarget.com/api/#authentication-tokens). Input the authentication token here. Note: Authentication tokens expire so a new token will need to be generated and updated here prior to expiration.",
|
|
23
|
+
type: 'string'
|
|
19
24
|
}
|
|
20
25
|
}
|
|
21
26
|
},
|
|
27
|
+
extendRequest({ settings }) {
|
|
28
|
+
if (settings.bearer_token) {
|
|
29
|
+
return {
|
|
30
|
+
headers: {
|
|
31
|
+
Authorization: `Bearer ${settings.bearer_token}`
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return {};
|
|
36
|
+
},
|
|
22
37
|
actions: {
|
|
23
38
|
updateProfile: updateProfile_1.default
|
|
24
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/adobe-target/index.ts"],"names":[],"mappings":";;;;;AAGA,oEAA2C;AAE3C,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,WAAW,EAAE;gBACX,KAAK,EAAE,aAAa;gBACpB,WAAW,EACT,sLAAsL;gBACxL,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;SACF;KACF;IACD,OAAO,EAAE;QACP,aAAa,EAAb,uBAAa;KACd;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/adobe-target/index.ts"],"names":[],"mappings":";;;;;AAGA,oEAA2C;AAE3C,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,WAAW,EAAE;gBACX,KAAK,EAAE,aAAa;gBACpB,WAAW,EACT,sLAAsL;gBACxL,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EACT,6dAA6d;gBAC/d,IAAI,EAAE,QAAQ;aACf;SACF;KACF;IACD,aAAa,CAAC,EAAE,QAAQ,EAAE;QACxB,IAAI,QAAQ,CAAC,YAAY,EAAE;YACzB,OAAO;gBACL,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,QAAQ,CAAC,YAAY,EAAE;iBACjD;aACF,CAAA;SACF;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,EAAE;QACP,aAAa,EAAb,uBAAa;KACd;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ConversionCustomVariable, PartialErrorResponse, QueryResponse } from './types';
|
|
2
|
+
import { ModifiedResponse, RequestClient } from '@segment/actions-core';
|
|
3
|
+
export declare function formatCustomVariables(customVariables: object, customVariableIdsResults: Array<ConversionCustomVariable>): object;
|
|
4
|
+
export declare const hash: (value: string | undefined) => string | undefined;
|
|
5
|
+
export declare function getCustomVariables(customerId: string, auth: any, request: RequestClient): Promise<ModifiedResponse<QueryResponse[]>>;
|
|
6
|
+
export declare function handleGoogleErrors(response: ModifiedResponse<PartialErrorResponse>): void;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleGoogleErrors = exports.getCustomVariables = exports.hash = exports.formatCustomVariables = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
6
|
+
const types_1 = require("./types");
|
|
7
|
+
function formatCustomVariables(customVariables, customVariableIdsResults) {
|
|
8
|
+
const resourceNames = {};
|
|
9
|
+
Object.entries(customVariableIdsResults).forEach(([_, customVariablesIds]) => {
|
|
10
|
+
resourceNames[customVariablesIds.conversionCustomVariable.name] =
|
|
11
|
+
customVariablesIds.conversionCustomVariable.resourceName;
|
|
12
|
+
});
|
|
13
|
+
const variables = [];
|
|
14
|
+
Object.entries(customVariables).forEach(([key, value]) => {
|
|
15
|
+
if (resourceNames[key] != undefined) {
|
|
16
|
+
const variable = {
|
|
17
|
+
conversionCustomVariable: resourceNames[key],
|
|
18
|
+
value: value
|
|
19
|
+
};
|
|
20
|
+
variables.push(variable);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
return variables;
|
|
24
|
+
}
|
|
25
|
+
exports.formatCustomVariables = formatCustomVariables;
|
|
26
|
+
const hash = (value) => {
|
|
27
|
+
if (value === undefined) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const hash = crypto_1.createHash('sha256');
|
|
31
|
+
hash.update(value);
|
|
32
|
+
return hash.digest('hex');
|
|
33
|
+
};
|
|
34
|
+
exports.hash = hash;
|
|
35
|
+
async function getCustomVariables(customerId, auth, request) {
|
|
36
|
+
return await request(`${types_1.GoogleAdsAPI}/${customerId}/googleAds:searchStream`, {
|
|
37
|
+
method: 'post',
|
|
38
|
+
headers: {
|
|
39
|
+
authorization: `Bearer ${auth?.accessToken}`,
|
|
40
|
+
'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`
|
|
41
|
+
},
|
|
42
|
+
json: {
|
|
43
|
+
query: `SELECT conversion_custom_variable.id, conversion_custom_variable.name FROM conversion_custom_variable`
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
exports.getCustomVariables = getCustomVariables;
|
|
48
|
+
function handleGoogleErrors(response) {
|
|
49
|
+
if (response.data.partialFailureError.code !== 0) {
|
|
50
|
+
throw new actions_core_1.IntegrationError(response.data.partialFailureError.message, 'INVALID_ARGUMENT', 400);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.handleGoogleErrors = handleGoogleErrors;
|
|
54
|
+
//# sourceMappingURL=functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/functions.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AAEnC,wDAAyF;AACzF,mCAAsC;AAEtC,SAAgB,qBAAqB,CACnC,eAAuB,EACvB,wBAAyD;IAGzD,MAAM,aAAa,GAA2B,EAAE,CAAA;IAChD,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,EAAE,EAAE;QAC3E,aAAa,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAC7D,kBAAkB,CAAC,wBAAwB,CAAC,YAAY,CAAA;IAC5D,CAAC,CAAC,CAAA;IAEF,MAAM,SAAS,GAA0D,EAAE,CAAA;IAC3E,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACvD,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE;YACnC,MAAM,QAAQ,GAAG;gBACf,wBAAwB,EAAE,aAAa,CAAC,GAAG,CAAC;gBAC5C,KAAK,EAAE,KAAK;aACb,CAAA;YACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;SACzB;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC;AAvBD,sDAuBC;AAEM,MAAM,IAAI,GAAG,CAAC,KAAyB,EAAsB,EAAE;IACpE,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,OAAM;KACP;IAED,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;AARY,QAAA,IAAI,QAQhB;AAEM,KAAK,UAAU,kBAAkB,CACtC,UAAkB,EAClB,IAAS,EACT,OAAsB;IAEtB,OAAO,MAAM,OAAO,CAAC,GAAG,oBAAY,IAAI,UAAU,yBAAyB,EAAE;QAC3E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;YAC5C,iBAAiB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE;SAC5D;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,uGAAuG;SAC/G;KACF,CAAC,CAAA;AACJ,CAAC;AAfD,gDAeC;AAKD,SAAgB,kBAAkB,CAAC,QAAgD;IACjF,IAAI,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,EAAE;QAChD,MAAM,IAAI,+BAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;KAC/F;AACH,CAAC;AAJD,gDAIC"}
|
|
@@ -4,6 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const postConversion_1 = __importDefault(require("./postConversion"));
|
|
7
|
+
const uploadCallConversion_1 = __importDefault(require("./uploadCallConversion"));
|
|
8
|
+
const uploadClickConversion_1 = __importDefault(require("./uploadClickConversion"));
|
|
9
|
+
const uploadConversionAdjustment_1 = __importDefault(require("./uploadConversionAdjustment"));
|
|
7
10
|
const destination = {
|
|
8
11
|
name: 'Google Enhanced Conversions',
|
|
9
12
|
slug: 'actions-google-enhanced-conversions',
|
|
@@ -14,8 +17,12 @@ const destination = {
|
|
|
14
17
|
conversionTrackingId: {
|
|
15
18
|
label: 'Conversion ID',
|
|
16
19
|
description: 'You will find this information in the event snippet for your conversion action, for example `send_to: AW-CONVERSION_ID/AW-CONVERSION_LABEL`. In the sample snippet, AW-CONVERSION_ID stands for the conversion ID unique to your account. Enter the conversion Id, without the AW- prefix.',
|
|
17
|
-
type: 'string'
|
|
18
|
-
|
|
20
|
+
type: 'string'
|
|
21
|
+
},
|
|
22
|
+
customerId: {
|
|
23
|
+
label: 'Customer ID',
|
|
24
|
+
description: 'ID of your Google Ads Account. This should be 10-digits and in XXX-XXX-XXXX format. **Required if you are using a mapping that sends data to the Google Ads API.**',
|
|
25
|
+
type: 'string'
|
|
19
26
|
}
|
|
20
27
|
},
|
|
21
28
|
testAuthentication: async (_request) => {
|
|
@@ -34,18 +41,18 @@ const destination = {
|
|
|
34
41
|
return { accessToken: res.data.access_token };
|
|
35
42
|
}
|
|
36
43
|
},
|
|
37
|
-
extendRequest({
|
|
44
|
+
extendRequest({ auth }) {
|
|
38
45
|
return {
|
|
39
46
|
headers: {
|
|
40
47
|
authorization: `Bearer ${auth?.accessToken}`
|
|
41
|
-
},
|
|
42
|
-
searchParams: {
|
|
43
|
-
conversion_tracking_id: settings.conversionTrackingId
|
|
44
48
|
}
|
|
45
49
|
};
|
|
46
50
|
},
|
|
47
51
|
actions: {
|
|
48
|
-
postConversion: postConversion_1.default
|
|
52
|
+
postConversion: postConversion_1.default,
|
|
53
|
+
uploadClickConversion: uploadClickConversion_1.default,
|
|
54
|
+
uploadCallConversion: uploadCallConversion_1.default,
|
|
55
|
+
uploadConversionAdjustment: uploadConversionAdjustment_1.default
|
|
49
56
|
}
|
|
50
57
|
};
|
|
51
58
|
exports.default = destination;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/index.ts"],"names":[],"mappings":";;;;;AAEA,sEAA6C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/index.ts"],"names":[],"mappings":";;;;;AAEA,sEAA6C;AAC7C,kFAAyD;AACzD,oFAA2D;AAC3D,8FAAqE;AAerE,MAAM,WAAW,GAAoC;IAGnD,IAAI,EAAE,6BAA6B;IACnC,IAAI,EAAE,qCAAqC;IAC3C,IAAI,EAAE,OAAO;IACb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,oBAAoB,EAAE;gBACpB,KAAK,EAAE,eAAe;gBACtB,WAAW,EACT,4RAA4R;gBAC9R,IAAI,EAAE,QAAQ;aACf;YACD,UAAU,EAAE;gBACV,KAAK,EAAE,aAAa;gBACpB,WAAW,EACT,oKAAoK;gBACtK,IAAI,EAAE,QAAQ;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YAQrC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,4CAA4C,EAAE;gBAC5F,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,UAAU,EAAE,eAAe;iBAC5B,CAAC;aACH,CAAC,CAAA;YAEF,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/C,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;IACD,OAAO,EAAE;QACP,cAAc,EAAd,wBAAc;QACd,qBAAqB,EAArB,+BAAqB;QACrB,oBAAoB,EAApB,8BAAoB;QACpB,0BAA0B,EAA1B,oCAA0B;KAC3B;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -178,7 +178,10 @@ const action = {
|
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
},
|
|
181
|
-
perform: async (request, { payload }) => {
|
|
181
|
+
perform: async (request, { payload, settings }) => {
|
|
182
|
+
if (!settings.conversionTrackingId) {
|
|
183
|
+
throw new actions_core_1.IntegrationError('Conversion ID is required for this action. Please set it in destination settings.', 'Missing required fields.', 400);
|
|
184
|
+
}
|
|
182
185
|
const conversionData = formatter_1.cleanData({
|
|
183
186
|
oid: payload.transaction_id,
|
|
184
187
|
user_agent: payload.user_agent,
|
|
@@ -208,6 +211,9 @@ const action = {
|
|
|
208
211
|
try {
|
|
209
212
|
return await request('https://www.google.com/ads/event/api/v1', {
|
|
210
213
|
method: 'post',
|
|
214
|
+
searchParams: {
|
|
215
|
+
conversion_tracking_id: settings.conversionTrackingId
|
|
216
|
+
},
|
|
211
217
|
json: {
|
|
212
218
|
pii_data: { ...pii_data, address: [address] },
|
|
213
219
|
...conversionData
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/postConversion/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/postConversion/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface CartItem {
|
|
2
|
+
productId?: string;
|
|
3
|
+
quantity?: number;
|
|
4
|
+
unitPrice?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface ConversionCustomVariable {
|
|
7
|
+
conversionCustomVariable: {
|
|
8
|
+
resourceName: string;
|
|
9
|
+
id: string;
|
|
10
|
+
name: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export interface QueryResponse {
|
|
14
|
+
results: Array<ConversionCustomVariable>;
|
|
15
|
+
}
|
|
16
|
+
export interface PartialErrorResponse {
|
|
17
|
+
partialFailureError: {
|
|
18
|
+
code: number;
|
|
19
|
+
message: string;
|
|
20
|
+
};
|
|
21
|
+
results: {}[];
|
|
22
|
+
}
|
|
23
|
+
export declare const GoogleAdsAPI = "https://googleads.googleapis.com/v11/customers";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/destinations/google-enhanced-conversions/types.ts"],"names":[],"mappings":";;;AA0Ba,QAAA,YAAY,GAAG,gDAAgD,CAAA"}
|
package/dist/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadCallConversion/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
4
|
+
const functions_1 = require("../functions");
|
|
5
|
+
const types_1 = require("../types");
|
|
6
|
+
const action = {
|
|
7
|
+
title: 'Upload Call Conversion',
|
|
8
|
+
description: 'Upload an offline call conversion to the Google Ads API.',
|
|
9
|
+
fields: {
|
|
10
|
+
conversion_action: {
|
|
11
|
+
label: 'Conversion Action ID',
|
|
12
|
+
description: 'The ID of the conversion action associated with this conversion. To find the Conversion Action ID, click on your conversion in Google Ads and get the value for `ctId` in the URL. For example, if the URL is `https://ads.google.com/aw/conversions/detail?ocid=00000000&ctId=570000000`, your Conversion Action ID is `570000000`.',
|
|
13
|
+
type: 'string',
|
|
14
|
+
required: true
|
|
15
|
+
},
|
|
16
|
+
caller_id: {
|
|
17
|
+
label: 'Caller ID',
|
|
18
|
+
description: 'The caller ID from which this call was placed. Caller ID is expected to be in E.164 format with preceding + sign, e.g. "+16502531234".',
|
|
19
|
+
type: 'string',
|
|
20
|
+
required: true
|
|
21
|
+
},
|
|
22
|
+
call_timestamp: {
|
|
23
|
+
label: 'Call Timestamp',
|
|
24
|
+
description: 'The date time at which the call occurred. The timezone must be specified. The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00".',
|
|
25
|
+
type: 'string'
|
|
26
|
+
},
|
|
27
|
+
conversion_timestamp: {
|
|
28
|
+
label: 'Conversion Timestamp',
|
|
29
|
+
description: 'The date time at which the conversion occurred. Must be after the click time. The timezone must be specified. The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00".',
|
|
30
|
+
type: 'string',
|
|
31
|
+
required: true,
|
|
32
|
+
default: {
|
|
33
|
+
'@path': '$.timestamp'
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
value: {
|
|
37
|
+
label: 'Value',
|
|
38
|
+
description: 'The value of the conversion for the advertiser.',
|
|
39
|
+
type: 'number',
|
|
40
|
+
default: {
|
|
41
|
+
'@path': '$.properties.total'
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
currency: {
|
|
45
|
+
label: 'Currency',
|
|
46
|
+
description: 'Currency associated with the conversion value. This is the ISO 4217 3-character currency code.',
|
|
47
|
+
type: 'string',
|
|
48
|
+
default: {
|
|
49
|
+
'@path': '$.properties.currency'
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
custom_variables: {
|
|
53
|
+
label: 'Custom Variables',
|
|
54
|
+
description: 'The custom variables associated with this conversion. On the left-hand side, input the name of the custom variable as it appears in your Google Ads account. On the right-hand side, map the Segment field that contains the corresponding value See [Google’s documentation on how to create custom conversion variables](https://developers.google.com/google-ads/api/docs/conversions/conversion-custom-variables).',
|
|
55
|
+
type: 'object',
|
|
56
|
+
additionalProperties: true,
|
|
57
|
+
defaultObjectUI: 'keyvalue:only'
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
perform: async (request, { auth, settings, payload }) => {
|
|
61
|
+
if (!settings.customerId) {
|
|
62
|
+
throw new actions_core_1.IntegrationError('Customer ID is required for this action. Please set it in destination settings.', 'Missing required fields.', 400);
|
|
63
|
+
}
|
|
64
|
+
settings.customerId = settings.customerId.replace(/-/g, '');
|
|
65
|
+
const request_object = {
|
|
66
|
+
conversionAction: `customers/${settings.customerId}/conversionActions/${payload.conversion_action}`,
|
|
67
|
+
callerId: payload.caller_id,
|
|
68
|
+
callStartDateTime: payload.call_timestamp?.replace(/T/, ' ').replace(/\..+/, '+00:00'),
|
|
69
|
+
conversionDateTime: payload.conversion_timestamp.replace(/T/, ' ').replace(/\..+/, '+00:00'),
|
|
70
|
+
conversionValue: payload.value,
|
|
71
|
+
currencyCode: payload.currency
|
|
72
|
+
};
|
|
73
|
+
if (payload.custom_variables) {
|
|
74
|
+
const customVariableIds = await functions_1.getCustomVariables(settings.customerId, auth, request);
|
|
75
|
+
request_object.customVariables = functions_1.formatCustomVariables(payload.custom_variables, customVariableIds.data[0].results);
|
|
76
|
+
}
|
|
77
|
+
const response = await request(`${types_1.GoogleAdsAPI}/${settings.customerId}:uploadCallConversions`, {
|
|
78
|
+
method: 'post',
|
|
79
|
+
headers: {
|
|
80
|
+
'developer-token': `${process.env.ADWORDS_DEVELOPER_TOKEN}`
|
|
81
|
+
},
|
|
82
|
+
json: {
|
|
83
|
+
conversions: [request_object],
|
|
84
|
+
partialFailure: true
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
functions_1.handleGoogleErrors(response);
|
|
88
|
+
return response;
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
exports.default = action;
|
|
92
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadCallConversion/index.ts"],"names":[],"mappings":"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"}
|
package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
conversion_action: string;
|
|
3
|
+
gclid?: string;
|
|
4
|
+
gbraid?: string;
|
|
5
|
+
wbraid?: string;
|
|
6
|
+
conversion_timestamp: string;
|
|
7
|
+
email_address?: string;
|
|
8
|
+
phone_number?: string;
|
|
9
|
+
order_id?: string;
|
|
10
|
+
value?: number;
|
|
11
|
+
currency?: string;
|
|
12
|
+
conversion_environment?: string;
|
|
13
|
+
merchant_id?: string;
|
|
14
|
+
merchant_country_code?: string;
|
|
15
|
+
merchant_language_code?: string;
|
|
16
|
+
local_cost?: number;
|
|
17
|
+
items?: {
|
|
18
|
+
product_id?: string;
|
|
19
|
+
quantity?: number;
|
|
20
|
+
price?: number;
|
|
21
|
+
}[];
|
|
22
|
+
custom_variables?: {
|
|
23
|
+
[k: string]: unknown;
|
|
24
|
+
};
|
|
25
|
+
}
|
package/dist/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/google-enhanced-conversions/uploadClickConversion/generated-types.ts"],"names":[],"mappings":""}
|