@xapp/stentor-service-boberdoo 1.80.2

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.
@@ -0,0 +1,23 @@
1
+ import { CrmResponse, ExternalLead } from "stentor-models";
2
+ import { BoberdooExtras, BoberdooLeadPayload, BoberdooResponse, BoberdooServiceProps } from "./models";
3
+ /**
4
+ * BoberdooIntegration posts leads to the Boberdoo lead distribution platform.
5
+ *
6
+ * @see https://support.boberdoo.com/article/116-api-implementation-guide
7
+ */
8
+ export declare class BoberdooIntegration {
9
+ private props;
10
+ private apiEndpoint;
11
+ constructor(props: BoberdooServiceProps);
12
+ /**
13
+ * Posts a lead to Boberdoo.
14
+ *
15
+ * @param externalLead - The lead data from the contact capture handler
16
+ * @param extras - Optional extra fields including TrustedForm cert URL and UTM params
17
+ */
18
+ send(externalLead: ExternalLead, extras?: BoberdooExtras): Promise<CrmResponse>;
19
+ /**
20
+ * Posts the lead payload to Boberdoo.
21
+ */
22
+ protected post(payload: BoberdooLeadPayload): Promise<BoberdooResponse>;
23
+ }
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.BoberdooIntegration = void 0;
16
+ /*! Copyright (c) 2026, XAPP AI */
17
+ const stentor_logger_1 = require("stentor-logger");
18
+ const axios_1 = __importDefault(require("axios"));
19
+ const DEFAULT_API_ENDPOINT = "https://www.boberdoo.com/index.php";
20
+ /**
21
+ * BoberdooIntegration posts leads to the Boberdoo lead distribution platform.
22
+ *
23
+ * @see https://support.boberdoo.com/article/116-api-implementation-guide
24
+ */
25
+ class BoberdooIntegration {
26
+ constructor(props) {
27
+ this.props = props;
28
+ this.apiEndpoint = props.apiEndpoint || DEFAULT_API_ENDPOINT;
29
+ }
30
+ /**
31
+ * Posts a lead to Boberdoo.
32
+ *
33
+ * @param externalLead - The lead data from the contact capture handler
34
+ * @param extras - Optional extra fields including TrustedForm cert URL and UTM params
35
+ */
36
+ send(externalLead, extras) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
39
+ const crmResponse = {
40
+ status: "Failure",
41
+ message: ""
42
+ };
43
+ try {
44
+ const firstName = (_a = externalLead.fields.find((f) => f.name === "FIRST_NAME")) === null || _a === void 0 ? void 0 : _a.value;
45
+ const lastName = (_b = externalLead.fields.find((f) => f.name === "LAST_NAME")) === null || _b === void 0 ? void 0 : _b.value;
46
+ const fullName = (_c = externalLead.fields.find((f) => f.name === "FULL_NAME")) === null || _c === void 0 ? void 0 : _c.value;
47
+ const phone = (_d = externalLead.fields.find((f) => f.name === "PHONE")) === null || _d === void 0 ? void 0 : _d.value;
48
+ const email = (_e = externalLead.fields.find((f) => f.name === "EMAIL")) === null || _e === void 0 ? void 0 : _e.value;
49
+ const address = (_f = externalLead.fields.find((f) => f.name === "ADDRESS")) === null || _f === void 0 ? void 0 : _f.value;
50
+ const city = (_g = externalLead.fields.find((f) => f.name === "CITY")) === null || _g === void 0 ? void 0 : _g.value;
51
+ const state = (_h = externalLead.fields.find((f) => f.name === "STATE")) === null || _h === void 0 ? void 0 : _h.value;
52
+ const zip = (_j = externalLead.fields.find((f) => f.name === "ZIP")) === null || _j === void 0 ? void 0 : _j.value;
53
+ let resolvedFirstName = firstName;
54
+ let resolvedLastName = lastName;
55
+ if (!resolvedFirstName && fullName) {
56
+ const parts = fullName.trim().split(/\s+/);
57
+ resolvedFirstName = parts[0];
58
+ resolvedLastName = parts.slice(1).join(" ") || undefined;
59
+ }
60
+ const payload = {
61
+ lp_campaign_id: this.props.campaignId,
62
+ lp_campaign_key: this.props.campaignKey,
63
+ lp_response: "json"
64
+ };
65
+ if (this.props.testMode) {
66
+ payload.lp_test = "test";
67
+ }
68
+ if (resolvedFirstName)
69
+ payload.first_name = resolvedFirstName;
70
+ if (resolvedLastName)
71
+ payload.last_name = resolvedLastName;
72
+ if (phone)
73
+ payload.phone_home = phone;
74
+ if (email)
75
+ payload.email_address = email;
76
+ if (address)
77
+ payload.address = address;
78
+ if (city)
79
+ payload.city = city;
80
+ if (state)
81
+ payload.state = state;
82
+ if (zip)
83
+ payload.zip_code = zip;
84
+ // Include TrustedForm cert URL if present — Boberdoo has native TrustedForm support
85
+ if (extras === null || extras === void 0 ? void 0 : extras.xxTrustedFormCertUrl) {
86
+ payload.xxTrustedFormCertUrl = extras.xxTrustedFormCertUrl;
87
+ }
88
+ const boberdooResponse = yield this.post(payload);
89
+ if (boberdooResponse.status === "Success") {
90
+ crmResponse.status = "Success";
91
+ }
92
+ else {
93
+ crmResponse.message = boberdooResponse.error || "Boberdoo returned a failure response";
94
+ }
95
+ }
96
+ catch (err) {
97
+ (0, stentor_logger_1.log)().error(`Boberdoo error send(): ${err}`);
98
+ crmResponse.message = err instanceof Error ? err.message : String(err);
99
+ }
100
+ return crmResponse;
101
+ });
102
+ }
103
+ /**
104
+ * Posts the lead payload to Boberdoo.
105
+ */
106
+ post(payload) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ const boberdooResponse = {
109
+ status: "Failure"
110
+ };
111
+ const body = new URLSearchParams();
112
+ for (const [key, value] of Object.entries(payload)) {
113
+ if (value !== undefined) {
114
+ body.append(key, value);
115
+ }
116
+ }
117
+ const config = {
118
+ method: "post",
119
+ url: this.apiEndpoint,
120
+ params: { type: "post" },
121
+ headers: {
122
+ "Content-Type": "application/x-www-form-urlencoded"
123
+ },
124
+ data: body.toString()
125
+ };
126
+ try {
127
+ const response = yield (0, axios_1.default)(config);
128
+ const responseBody = response.data;
129
+ if ((responseBody === null || responseBody === void 0 ? void 0 : responseBody.status) === "success" || (responseBody === null || responseBody === void 0 ? void 0 : responseBody.status) === "Success") {
130
+ boberdooResponse.status = "Success";
131
+ boberdooResponse.data = response.data;
132
+ }
133
+ else {
134
+ boberdooResponse.error = (responseBody === null || responseBody === void 0 ? void 0 : responseBody.error) || "Unexpected response from Boberdoo";
135
+ }
136
+ }
137
+ catch (err) {
138
+ (0, stentor_logger_1.log)().error(`Boberdoo: Error posting lead ${err}`);
139
+ boberdooResponse.error = err instanceof Error ? err.message : String(err);
140
+ }
141
+ return boberdooResponse;
142
+ });
143
+ }
144
+ }
145
+ exports.BoberdooIntegration = BoberdooIntegration;
146
+ //# sourceMappingURL=BoberdooIntegration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoberdooIntegration.js","sourceRoot":"","sources":["../src/BoberdooIntegration.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ /*! Copyright (c) 2026, XAPP AI */
2
+ export { BoberdooIntegration } from "./BoberdooIntegration";
3
+ export * from "./models";
package/lib/index.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.BoberdooIntegration = void 0;
18
+ /*! Copyright (c) 2026, XAPP AI */
19
+ var BoberdooIntegration_1 = require("./BoberdooIntegration");
20
+ Object.defineProperty(exports, "BoberdooIntegration", { enumerable: true, get: function () { return BoberdooIntegration_1.BoberdooIntegration; } });
21
+ __exportStar(require("./models"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kCAAkC;AAClC,6DAA4D;AAAnD,0HAAA,mBAAmB,OAAA;AAC5B,2CAAyB"}
@@ -0,0 +1,65 @@
1
+ /*! Copyright (c) 2026, XAPP AI */
2
+ export interface BoberdooServiceProps {
3
+ /**
4
+ * The Boberdoo campaign ID
5
+ */
6
+ campaignId: string;
7
+ /**
8
+ * The Boberdoo campaign key
9
+ */
10
+ campaignKey: string;
11
+ /**
12
+ * Optional custom POST endpoint. Defaults to https://www.boberdoo.com/index.php
13
+ */
14
+ apiEndpoint?: string;
15
+ /**
16
+ * Set to "test" to use Boberdoo's test mode (leads are not billed)
17
+ */
18
+ testMode?: boolean;
19
+ }
20
+ /**
21
+ * The lead payload sent to Boberdoo.
22
+ */
23
+ export interface BoberdooLeadPayload {
24
+ lp_campaign_id: string;
25
+ lp_campaign_key: string;
26
+ lp_response: "json";
27
+ /** Set to "test" in test mode */
28
+ lp_test?: string;
29
+ first_name?: string;
30
+ last_name?: string;
31
+ phone_home?: string;
32
+ email_address?: string;
33
+ address?: string;
34
+ city?: string;
35
+ state?: string;
36
+ zip_code?: string;
37
+ /** TrustedForm certificate URL — required by Boberdoo's TrustedForm integration */
38
+ xxTrustedFormCertUrl?: string;
39
+ /** Additional arbitrary fields */
40
+ [key: string]: string | undefined;
41
+ }
42
+ export interface BoberdooResponse {
43
+ status: "Success" | "Failure";
44
+ /**
45
+ * The raw response from Boberdoo
46
+ */
47
+ data?: Record<string, unknown>;
48
+ error?: string;
49
+ }
50
+ /**
51
+ * Extras passed alongside an ExternalLead to include TrustedForm and tracking data.
52
+ *
53
+ * Mirrors the shape of `LeadExtras` from `@xapp/stentor-handler-contact-capture`.
54
+ * Keep these two interfaces in sync when adding new tracking fields.
55
+ */
56
+ export interface BoberdooExtras {
57
+ xxTrustedFormCertUrl?: string;
58
+ xxTrustedFormPingUrl?: string;
59
+ utm_source?: string;
60
+ utm_campaign?: string;
61
+ utm_medium?: string;
62
+ utm_content?: string;
63
+ utm_term?: string;
64
+ [key: string]: string | undefined;
65
+ }
package/lib/models.js ADDED
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ /*! Copyright (c) 2026, XAPP AI */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":";AAAA,kCAAkC"}
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "@xapp/stentor-service-boberdoo",
3
+ "license": "Apache-2.0",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "version": "1.80.2",
8
+ "description": "Service to integrate with Boberdoo lead distribution",
9
+ "types": "lib/index",
10
+ "main": "lib/index",
11
+ "files": [
12
+ "lib"
13
+ ],
14
+ "engines": {
15
+ "node": "^20 || ^22 || ^24"
16
+ },
17
+ "devDependencies": {
18
+ "@types/chai": "5.2.3",
19
+ "@types/sinon": "4.3.3",
20
+ "@xapp/config": "0.3.0",
21
+ "axios-mock-adapter": "2.1.0",
22
+ "chai": "4.5.0",
23
+ "mocha": "11.7.5",
24
+ "sinon": "21.0.0",
25
+ "stentor-logger": "1.72.1",
26
+ "stentor-models": "1.72.0",
27
+ "ts-node": "10.9.2",
28
+ "typescript": "5.9.3"
29
+ },
30
+ "peerDependencies": {
31
+ "stentor-logger": "1.x",
32
+ "stentor-models": "1.x"
33
+ },
34
+ "scripts": {
35
+ "build": "tsc -d true -p .",
36
+ "clean": "rm -rf ./lib/*",
37
+ "test": "mocha --recursive --timeout 9000 -r ts-node/register \"./src/**/__test__/*.test.ts\""
38
+ },
39
+ "dependencies": {
40
+ "axios": "1.16.0"
41
+ },
42
+ "gitHead": "1cf9e673d939bdf884a12a45548c0d2c9eb1248b"
43
+ }