@marketing-sdk/hubspot 0.1.1-experimental.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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Cody
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,74 @@
1
+ import { CreateResponse, BaseProvider } from '@marketing-sdk/core';
2
+ import { HubSpot } from './types';
3
+ export declare class HubspotClient extends BaseProvider {
4
+ private apiKey;
5
+ private apiVersion;
6
+ constructor(apiKey: string);
7
+ protected getDefaultHeaders(): Record<string, string>;
8
+ protected getAuthHeaders(): Record<string, string>;
9
+ private getQueryUrl;
10
+ createContact(contact: HubSpot.ContactPayload): Promise<CreateResponse<HubSpot.ContactResponse>>;
11
+ getContact(contactId: string): Promise<CreateResponse<HubSpot.ContactResponse>>;
12
+ updateContact(contactId: string, contact: Partial<HubSpot.ContactPayload>): Promise<CreateResponse<HubSpot.ContactResponse>>;
13
+ deleteContact(contactId: string): Promise<CreateResponse<void>>;
14
+ listContacts(params?: {
15
+ limit?: number;
16
+ after?: string;
17
+ sorts?: string[];
18
+ properties?: string[];
19
+ filterGroups?: any[];
20
+ }): Promise<CreateResponse<HubSpot.ContactsResponse>>;
21
+ createLead(lead: HubSpot.ContactPayload): Promise<CreateResponse<HubSpot.ContactResponse>>;
22
+ createCompany(company: HubSpot.CompanyPayload): Promise<CreateResponse<HubSpot.CompanyResponse>>;
23
+ getCompany(companyId: string): Promise<CreateResponse<HubSpot.CompanyResponse>>;
24
+ updateCompany(companyId: string, company: Partial<HubSpot.CompanyPayload>): Promise<CreateResponse<HubSpot.CompanyResponse>>;
25
+ deleteCompany(companyId: string): Promise<CreateResponse<void>>;
26
+ listCompanies(params?: {
27
+ limit?: number;
28
+ after?: string;
29
+ sorts?: string[];
30
+ properties?: string[];
31
+ filterGroups?: any[];
32
+ }): Promise<CreateResponse<HubSpot.CompaniesResponse>>;
33
+ createDeal(deal: HubSpot.DealPayload): Promise<CreateResponse<HubSpot.DealResponse>>;
34
+ getDeal(dealId: string): Promise<CreateResponse<HubSpot.DealResponse>>;
35
+ updateDeal(dealId: string, deal: Partial<HubSpot.DealPayload>): Promise<CreateResponse<HubSpot.DealResponse>>;
36
+ deleteDeal(dealId: string): Promise<CreateResponse<void>>;
37
+ listDeals(params?: {
38
+ limit?: number;
39
+ after?: string;
40
+ sorts?: string[];
41
+ properties?: string[];
42
+ filterGroups?: any[];
43
+ }): Promise<CreateResponse<HubSpot.DealsResponse>>;
44
+ createTicket(ticket: HubSpot.TicketPayload): Promise<CreateResponse<HubSpot.TicketResponse>>;
45
+ getTicket(ticketId: string): Promise<CreateResponse<HubSpot.TicketResponse>>;
46
+ updateTicket(ticketId: string, ticket: Partial<HubSpot.TicketPayload>): Promise<CreateResponse<HubSpot.TicketResponse>>;
47
+ deleteTicket(ticketId: string): Promise<CreateResponse<void>>;
48
+ listTickets(params?: {
49
+ limit?: number;
50
+ after?: string;
51
+ sorts?: string[];
52
+ properties?: string[];
53
+ filterGroups?: any[];
54
+ }): Promise<CreateResponse<HubSpot.TicketsResponse>>;
55
+ createEngagement(engagement: HubSpot.EngagementPayload): Promise<CreateResponse<HubSpot.EngagementResponse>>;
56
+ getEngagement(engagementId: string, type: HubSpot.EngagementPayload["type"]): Promise<CreateResponse<HubSpot.EngagementResponse>>;
57
+ listEngagements(type: HubSpot.EngagementPayload["type"], params?: {
58
+ limit?: number;
59
+ after?: string;
60
+ sorts?: string[];
61
+ properties?: string[];
62
+ filterGroups?: any[];
63
+ }): Promise<CreateResponse<HubSpot.EngagementsResponse>>;
64
+ createList(list: HubSpot.ListPayload): Promise<CreateResponse<HubSpot.ListResponse>>;
65
+ getList(listId: string): Promise<CreateResponse<HubSpot.ListResponse>>;
66
+ getLists(params?: {
67
+ count?: number;
68
+ offset?: number;
69
+ }): Promise<CreateResponse<HubSpot.ListsResponse>>;
70
+ submitForm(formData: HubSpot.FormSubmissionPayload): Promise<CreateResponse<HubSpot.FormSubmissionResponse>>;
71
+ associateObjects(fromObjectType: string, fromObjectId: string, toObjectType: string, toObjectId: string, associationTypeId: number): Promise<CreateResponse<any>>;
72
+ disassociateObjects(fromObjectType: string, fromObjectId: string, toObjectType: string, toObjectId: string, associationTypeId: number): Promise<CreateResponse<void>>;
73
+ }
74
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js ADDED
@@ -0,0 +1,583 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HubspotClient = void 0;
4
+ const core_1 = require("@marketing-sdk/core");
5
+ const validators_1 = require("./validators");
6
+ class HubspotClient extends core_1.BaseProvider {
7
+ constructor(apiKey) {
8
+ super({
9
+ baseURL: "https://api.hubapi.com",
10
+ timeout: 30000,
11
+ });
12
+ this.apiVersion = "v3";
13
+ this.apiKey = apiKey;
14
+ }
15
+ getDefaultHeaders() {
16
+ return {
17
+ "Content-Type": "application/json",
18
+ };
19
+ }
20
+ getAuthHeaders() {
21
+ return {
22
+ Authorization: `Bearer ${this.apiKey}`,
23
+ };
24
+ }
25
+ getQueryUrl(endpoint, params) {
26
+ const url = `/crm/${this.apiVersion}/${endpoint}`;
27
+ if (!params || Object.keys(params).length === 0) {
28
+ return url;
29
+ }
30
+ const queryString = new URLSearchParams(params).toString();
31
+ return `${url}?${queryString}`;
32
+ }
33
+ async createContact(contact) {
34
+ validators_1.HubSpotValidators.validateContactPayload(contact);
35
+ const properties = {
36
+ email: contact.email,
37
+ lastname: contact.lastName,
38
+ };
39
+ if (contact.firstName)
40
+ properties.firstname = contact.firstName;
41
+ if (contact.phone)
42
+ properties.phone = contact.phone;
43
+ if (contact.company)
44
+ properties.company = contact.company;
45
+ if (contact.website)
46
+ properties.website = contact.website;
47
+ if (contact.jobTitle)
48
+ properties.jobtitle = contact.jobTitle;
49
+ if (contact.address)
50
+ properties.address = contact.address;
51
+ if (contact.city)
52
+ properties.city = contact.city;
53
+ if (contact.state)
54
+ properties.state = contact.state;
55
+ if (contact.zipCode)
56
+ properties.zip = contact.zipCode;
57
+ if (contact.country)
58
+ properties.country = contact.country;
59
+ if (contact.lifecycleStage)
60
+ properties.lifecyclestage = contact.lifecycleStage;
61
+ if (contact.leadStatus)
62
+ properties.hs_lead_status = contact.leadStatus;
63
+ if (contact.properties) {
64
+ Object.assign(properties, contact.properties);
65
+ }
66
+ return this.makeRequest({
67
+ url: "/crm/v3/objects/contacts",
68
+ method: "POST",
69
+ body: { properties },
70
+ }, "Create Contact");
71
+ }
72
+ async getContact(contactId) {
73
+ core_1.Validators.validateId(contactId, "contactId");
74
+ return this.makeRequest({
75
+ url: `/crm/v3/objects/contacts/${contactId}`,
76
+ method: "GET",
77
+ }, "Get Contact");
78
+ }
79
+ async updateContact(contactId, contact) {
80
+ core_1.Validators.validateId(contactId, "contactId");
81
+ const properties = {};
82
+ if (contact.email) {
83
+ validators_1.HubSpotValidators.validateContactPayload({
84
+ ...contact,
85
+ email: contact.email,
86
+ lastName: 'temp'
87
+ });
88
+ properties.email = contact.email;
89
+ }
90
+ if (contact.firstName !== undefined)
91
+ properties.firstname = contact.firstName;
92
+ if (contact.lastName !== undefined)
93
+ properties.lastname = contact.lastName;
94
+ if (contact.phone !== undefined)
95
+ properties.phone = contact.phone;
96
+ if (contact.company !== undefined)
97
+ properties.company = contact.company;
98
+ if (contact.website !== undefined)
99
+ properties.website = contact.website;
100
+ if (contact.jobTitle !== undefined)
101
+ properties.jobtitle = contact.jobTitle;
102
+ if (contact.address !== undefined)
103
+ properties.address = contact.address;
104
+ if (contact.city !== undefined)
105
+ properties.city = contact.city;
106
+ if (contact.state !== undefined)
107
+ properties.state = contact.state;
108
+ if (contact.zipCode !== undefined)
109
+ properties.zip = contact.zipCode;
110
+ if (contact.country !== undefined)
111
+ properties.country = contact.country;
112
+ if (contact.lifecycleStage !== undefined)
113
+ properties.lifecyclestage = contact.lifecycleStage;
114
+ if (contact.leadStatus !== undefined)
115
+ properties.hs_lead_status = contact.leadStatus;
116
+ if (contact.properties) {
117
+ Object.assign(properties, contact.properties);
118
+ }
119
+ return this.makeRequest({
120
+ url: `/crm/v3/objects/contacts/${contactId}`,
121
+ method: "PATCH",
122
+ body: { properties },
123
+ }, "Update Contact");
124
+ }
125
+ async deleteContact(contactId) {
126
+ core_1.Validators.validateId(contactId, "contactId");
127
+ return this.makeRequest({
128
+ url: `/crm/v3/objects/contacts/${contactId}`,
129
+ method: "DELETE",
130
+ }, "Delete Contact");
131
+ }
132
+ async listContacts(params) {
133
+ if (params?.limit) {
134
+ core_1.Validators.validatePaginationParams({ limit: params.limit });
135
+ }
136
+ return this.makeRequest({
137
+ url: this.getQueryUrl("objects/contacts", params),
138
+ method: "GET",
139
+ }, "List Contacts");
140
+ }
141
+ async createLead(lead) {
142
+ return this.createContact(lead);
143
+ }
144
+ async createCompany(company) {
145
+ validators_1.HubSpotValidators.validateCompanyPayload(company);
146
+ const properties = {
147
+ name: company.name,
148
+ };
149
+ if (company.domain)
150
+ properties.domain = company.domain;
151
+ if (company.industry)
152
+ properties.industry = company.industry;
153
+ if (company.phone)
154
+ properties.phone = company.phone;
155
+ if (company.address)
156
+ properties.address = company.address;
157
+ if (company.city)
158
+ properties.city = company.city;
159
+ if (company.state)
160
+ properties.state = company.state;
161
+ if (company.zipCode)
162
+ properties.zip = company.zipCode;
163
+ if (company.country)
164
+ properties.country = company.country;
165
+ if (company.description)
166
+ properties.description = company.description;
167
+ if (company.numberOfEmployees !== undefined)
168
+ properties.numberofemployees = company.numberOfEmployees;
169
+ if (company.annualRevenue !== undefined)
170
+ properties.annualrevenue = company.annualRevenue;
171
+ if (company.properties) {
172
+ Object.assign(properties, company.properties);
173
+ }
174
+ return this.makeRequest({
175
+ url: "/crm/v3/objects/companies",
176
+ method: "POST",
177
+ body: { properties },
178
+ }, "Create Company");
179
+ }
180
+ async getCompany(companyId) {
181
+ core_1.Validators.validateId(companyId, "companyId");
182
+ return this.makeRequest({
183
+ url: `/crm/v3/objects/companies/${companyId}`,
184
+ method: "GET",
185
+ }, "Get Company");
186
+ }
187
+ async updateCompany(companyId, company) {
188
+ core_1.Validators.validateId(companyId, "companyId");
189
+ const properties = {};
190
+ if (company.name !== undefined)
191
+ properties.name = company.name;
192
+ if (company.domain !== undefined)
193
+ properties.domain = company.domain;
194
+ if (company.industry !== undefined)
195
+ properties.industry = company.industry;
196
+ if (company.phone !== undefined)
197
+ properties.phone = company.phone;
198
+ if (company.address !== undefined)
199
+ properties.address = company.address;
200
+ if (company.city !== undefined)
201
+ properties.city = company.city;
202
+ if (company.state !== undefined)
203
+ properties.state = company.state;
204
+ if (company.zipCode !== undefined)
205
+ properties.zip = company.zipCode;
206
+ if (company.country !== undefined)
207
+ properties.country = company.country;
208
+ if (company.description !== undefined)
209
+ properties.description = company.description;
210
+ if (company.numberOfEmployees !== undefined)
211
+ properties.numberofemployees = company.numberOfEmployees;
212
+ if (company.annualRevenue !== undefined)
213
+ properties.annualrevenue = company.annualRevenue;
214
+ if (company.properties) {
215
+ Object.assign(properties, company.properties);
216
+ }
217
+ return this.makeRequest({
218
+ url: `/crm/v3/objects/companies/${companyId}`,
219
+ method: "PATCH",
220
+ body: { properties },
221
+ }, "Update Company");
222
+ }
223
+ async deleteCompany(companyId) {
224
+ core_1.Validators.validateId(companyId, "companyId");
225
+ return this.makeRequest({
226
+ url: `/crm/v3/objects/companies/${companyId}`,
227
+ method: "DELETE",
228
+ }, "Delete Company");
229
+ }
230
+ async listCompanies(params) {
231
+ if (params?.limit) {
232
+ core_1.Validators.validatePaginationParams({ limit: params.limit });
233
+ }
234
+ return this.makeRequest({
235
+ url: this.getQueryUrl("objects/companies", params),
236
+ method: "GET",
237
+ }, "List Companies");
238
+ }
239
+ async createDeal(deal) {
240
+ validators_1.HubSpotValidators.validateDealPayload(deal);
241
+ const properties = {
242
+ dealname: deal.name,
243
+ };
244
+ if (deal.pipeline)
245
+ properties.pipeline = deal.pipeline;
246
+ if (deal.stage)
247
+ properties.dealstage = deal.stage;
248
+ if (deal.amount !== undefined)
249
+ properties.amount = deal.amount;
250
+ if (deal.closeDate)
251
+ properties.closedate = new Date(deal.closeDate).getTime();
252
+ if (deal.dealType)
253
+ properties.dealtype = deal.dealType;
254
+ if (deal.description)
255
+ properties.description = deal.description;
256
+ if (deal.priority)
257
+ properties.hs_priority = deal.priority;
258
+ if (deal.properties) {
259
+ Object.assign(properties, deal.properties);
260
+ }
261
+ const body = { properties };
262
+ if (deal.contactIds || deal.companyIds) {
263
+ body.associations = [];
264
+ if (deal.contactIds) {
265
+ deal.contactIds.forEach((id) => {
266
+ body.associations.push({
267
+ to: { id },
268
+ types: [{ associationCategory: "HUBSPOT_DEFINED", associationTypeId: 3 }],
269
+ });
270
+ });
271
+ }
272
+ if (deal.companyIds) {
273
+ deal.companyIds.forEach((id) => {
274
+ body.associations.push({
275
+ to: { id },
276
+ types: [{ associationCategory: "HUBSPOT_DEFINED", associationTypeId: 5 }],
277
+ });
278
+ });
279
+ }
280
+ }
281
+ return this.makeRequest({
282
+ url: "/crm/v3/objects/deals",
283
+ method: "POST",
284
+ body,
285
+ }, "Create Deal");
286
+ }
287
+ async getDeal(dealId) {
288
+ core_1.Validators.validateId(dealId, "dealId");
289
+ return this.makeRequest({
290
+ url: `/crm/v3/objects/deals/${dealId}`,
291
+ method: "GET",
292
+ }, "Get Deal");
293
+ }
294
+ async updateDeal(dealId, deal) {
295
+ core_1.Validators.validateId(dealId, "dealId");
296
+ const properties = {};
297
+ if (deal.name !== undefined)
298
+ properties.dealname = deal.name;
299
+ if (deal.pipeline !== undefined)
300
+ properties.pipeline = deal.pipeline;
301
+ if (deal.stage !== undefined)
302
+ properties.dealstage = deal.stage;
303
+ if (deal.amount !== undefined)
304
+ properties.amount = deal.amount;
305
+ if (deal.closeDate !== undefined)
306
+ properties.closedate = new Date(deal.closeDate).getTime();
307
+ if (deal.dealType !== undefined)
308
+ properties.dealtype = deal.dealType;
309
+ if (deal.description !== undefined)
310
+ properties.description = deal.description;
311
+ if (deal.priority !== undefined)
312
+ properties.hs_priority = deal.priority;
313
+ if (deal.properties) {
314
+ Object.assign(properties, deal.properties);
315
+ }
316
+ return this.makeRequest({
317
+ url: `/crm/v3/objects/deals/${dealId}`,
318
+ method: "PATCH",
319
+ body: { properties },
320
+ }, "Update Deal");
321
+ }
322
+ async deleteDeal(dealId) {
323
+ core_1.Validators.validateId(dealId, "dealId");
324
+ return this.makeRequest({
325
+ url: `/crm/v3/objects/deals/${dealId}`,
326
+ method: "DELETE",
327
+ }, "Delete Deal");
328
+ }
329
+ async listDeals(params) {
330
+ if (params?.limit) {
331
+ core_1.Validators.validatePaginationParams({ limit: params.limit });
332
+ }
333
+ return this.makeRequest({
334
+ url: this.getQueryUrl("objects/deals", params),
335
+ method: "GET",
336
+ }, "List Deals");
337
+ }
338
+ async createTicket(ticket) {
339
+ const properties = {
340
+ subject: ticket.subject,
341
+ };
342
+ if (ticket.content)
343
+ properties.content = ticket.content;
344
+ if (ticket.ticketType)
345
+ properties.hs_ticket_category = ticket.ticketType;
346
+ if (ticket.priority)
347
+ properties.hs_ticket_priority = ticket.priority;
348
+ if (ticket.status)
349
+ properties.status = ticket.status;
350
+ if (ticket.pipelineStage)
351
+ properties.hs_pipeline_stage = ticket.pipelineStage;
352
+ if (ticket.properties) {
353
+ Object.assign(properties, ticket.properties);
354
+ }
355
+ const body = { properties };
356
+ if (ticket.contactIds || ticket.companyIds) {
357
+ body.associations = [];
358
+ if (ticket.contactIds) {
359
+ ticket.contactIds.forEach((id) => {
360
+ body.associations.push({
361
+ to: { id },
362
+ types: [{ associationCategory: "HUBSPOT_DEFINED", associationTypeId: 16 }],
363
+ });
364
+ });
365
+ }
366
+ if (ticket.companyIds) {
367
+ ticket.companyIds.forEach((id) => {
368
+ body.associations.push({
369
+ to: { id },
370
+ types: [{ associationCategory: "HUBSPOT_DEFINED", associationTypeId: 25 }],
371
+ });
372
+ });
373
+ }
374
+ }
375
+ return this.makeRequest({
376
+ url: "/crm/v3/objects/tickets",
377
+ method: "POST",
378
+ body,
379
+ }, "Create Ticket");
380
+ }
381
+ async getTicket(ticketId) {
382
+ core_1.Validators.validateId(ticketId, "ticketId");
383
+ return this.makeRequest({
384
+ url: `/crm/v3/objects/tickets/${ticketId}`,
385
+ method: "GET",
386
+ }, "Get Ticket");
387
+ }
388
+ async updateTicket(ticketId, ticket) {
389
+ core_1.Validators.validateId(ticketId, "ticketId");
390
+ const properties = {};
391
+ if (ticket.subject !== undefined)
392
+ properties.subject = ticket.subject;
393
+ if (ticket.content !== undefined)
394
+ properties.content = ticket.content;
395
+ if (ticket.ticketType !== undefined)
396
+ properties.hs_ticket_category = ticket.ticketType;
397
+ if (ticket.priority !== undefined)
398
+ properties.hs_ticket_priority = ticket.priority;
399
+ if (ticket.status !== undefined)
400
+ properties.status = ticket.status;
401
+ if (ticket.pipelineStage !== undefined)
402
+ properties.hs_pipeline_stage = ticket.pipelineStage;
403
+ if (ticket.properties) {
404
+ Object.assign(properties, ticket.properties);
405
+ }
406
+ return this.makeRequest({
407
+ url: `/crm/v3/objects/tickets/${ticketId}`,
408
+ method: "PATCH",
409
+ body: { properties },
410
+ }, "Update Ticket");
411
+ }
412
+ async deleteTicket(ticketId) {
413
+ core_1.Validators.validateId(ticketId, "ticketId");
414
+ return this.makeRequest({
415
+ url: `/crm/v3/objects/tickets/${ticketId}`,
416
+ method: "DELETE",
417
+ }, "Delete Ticket");
418
+ }
419
+ async listTickets(params) {
420
+ if (params?.limit) {
421
+ core_1.Validators.validatePaginationParams({ limit: params.limit });
422
+ }
423
+ return this.makeRequest({
424
+ url: this.getQueryUrl("objects/tickets", params),
425
+ method: "GET",
426
+ }, "List Tickets");
427
+ }
428
+ async createEngagement(engagement) {
429
+ const properties = {};
430
+ const associations = [];
431
+ switch (engagement.type) {
432
+ case "EMAIL":
433
+ if (engagement.title)
434
+ properties.hs_email_subject = engagement.title;
435
+ if (engagement.body)
436
+ properties.hs_email_text = engagement.body;
437
+ break;
438
+ case "CALL":
439
+ if (engagement.title)
440
+ properties.hs_call_title = engagement.title;
441
+ if (engagement.body)
442
+ properties.hs_call_body = engagement.body;
443
+ break;
444
+ case "MEETING":
445
+ if (engagement.title)
446
+ properties.hs_meeting_title = engagement.title;
447
+ if (engagement.body)
448
+ properties.hs_meeting_body = engagement.body;
449
+ if (engagement.startTime)
450
+ properties.hs_meeting_start_time = engagement.startTime;
451
+ if (engagement.endTime)
452
+ properties.hs_meeting_end_time = engagement.endTime;
453
+ break;
454
+ case "TASK":
455
+ if (engagement.title)
456
+ properties.hs_task_subject = engagement.title;
457
+ if (engagement.body)
458
+ properties.hs_task_body = engagement.body;
459
+ properties.hs_task_status = "NOT_STARTED";
460
+ break;
461
+ case "NOTE":
462
+ if (engagement.body)
463
+ properties.hs_note_body = engagement.body;
464
+ break;
465
+ }
466
+ if (engagement.ownerId)
467
+ properties.hubspot_owner_id = engagement.ownerId;
468
+ if (engagement.properties) {
469
+ Object.assign(properties, engagement.properties);
470
+ }
471
+ const associationMappings = {
472
+ contactIds: engagement.type === "EMAIL" ? 198 : 9,
473
+ companyIds: engagement.type === "EMAIL" ? 194 : 6,
474
+ dealIds: engagement.type === "EMAIL" ? 206 : 11,
475
+ ticketIds: engagement.type === "EMAIL" ? 213 : 28,
476
+ };
477
+ ["contactIds", "companyIds", "dealIds", "ticketIds"].forEach((key) => {
478
+ const ids = engagement[key];
479
+ if (ids && Array.isArray(ids)) {
480
+ ids.forEach((id) => {
481
+ associations.push({
482
+ to: { id },
483
+ types: [{
484
+ associationCategory: "HUBSPOT_DEFINED",
485
+ associationTypeId: associationMappings[key],
486
+ }],
487
+ });
488
+ });
489
+ }
490
+ });
491
+ const objectType = engagement.type.toLowerCase() + "s";
492
+ return this.makeRequest({
493
+ url: `/crm/v3/objects/${objectType}`,
494
+ method: "POST",
495
+ body: {
496
+ properties,
497
+ associations: associations.length > 0 ? associations : undefined,
498
+ },
499
+ }, `Create ${engagement.type} Engagement`);
500
+ }
501
+ async getEngagement(engagementId, type) {
502
+ core_1.Validators.validateId(engagementId, "engagementId");
503
+ const objectType = type.toLowerCase() + "s";
504
+ return this.makeRequest({
505
+ url: `/crm/v3/objects/${objectType}/${engagementId}`,
506
+ method: "GET",
507
+ }, `Get ${type} Engagement`);
508
+ }
509
+ async listEngagements(type, params) {
510
+ if (params?.limit) {
511
+ core_1.Validators.validatePaginationParams({ limit: params.limit });
512
+ }
513
+ const objectType = type.toLowerCase() + "s";
514
+ return this.makeRequest({
515
+ url: this.getQueryUrl(`objects/${objectType}`, params),
516
+ method: "GET",
517
+ }, `List ${type} Engagements`);
518
+ }
519
+ async createList(list) {
520
+ return this.makeRequest({
521
+ url: "/contacts/v1/lists",
522
+ method: "POST",
523
+ body: {
524
+ name: list.name,
525
+ dynamic: list.dynamic,
526
+ filters: list.filters,
527
+ ...list.properties,
528
+ },
529
+ }, "Create List");
530
+ }
531
+ async getList(listId) {
532
+ core_1.Validators.validateId(listId, "listId");
533
+ return this.makeRequest({
534
+ url: `/contacts/v1/lists/${listId}`,
535
+ method: "GET",
536
+ }, "Get List");
537
+ }
538
+ async getLists(params) {
539
+ if (params) {
540
+ core_1.Validators.validatePaginationParams({
541
+ limit: params.count,
542
+ offset: params.offset
543
+ });
544
+ }
545
+ return this.makeRequest({
546
+ url: this.getQueryUrl("../../contacts/v1/lists", params),
547
+ method: "GET",
548
+ }, "Get Lists");
549
+ }
550
+ async submitForm(formData) {
551
+ const { formId, contactProperties, legalConsentOptions, contextPage } = formData;
552
+ return this.makeRequest({
553
+ url: `/forms/v2/submissions/submit/${this.apiKey}/${formId}`,
554
+ method: "POST",
555
+ body: {
556
+ fields: Object.entries(contactProperties).map(([name, value]) => ({
557
+ name,
558
+ value: String(value),
559
+ })),
560
+ legalConsentOptions,
561
+ context: contextPage ? { pageUri: contextPage } : undefined,
562
+ },
563
+ }, "Submit Form");
564
+ }
565
+ async associateObjects(fromObjectType, fromObjectId, toObjectType, toObjectId, associationTypeId) {
566
+ core_1.Validators.validateId(fromObjectId, `${fromObjectType}Id`);
567
+ core_1.Validators.validateId(toObjectId, `${toObjectType}Id`);
568
+ return this.makeRequest({
569
+ url: `/crm/v3/objects/${fromObjectType}/${fromObjectId}/associations/${toObjectType}/${toObjectId}/${associationTypeId}`,
570
+ method: "PUT",
571
+ }, "Associate Objects");
572
+ }
573
+ async disassociateObjects(fromObjectType, fromObjectId, toObjectType, toObjectId, associationTypeId) {
574
+ core_1.Validators.validateId(fromObjectId, `${fromObjectType}Id`);
575
+ core_1.Validators.validateId(toObjectId, `${toObjectType}Id`);
576
+ return this.makeRequest({
577
+ url: `/crm/v3/objects/${fromObjectType}/${fromObjectId}/associations/${toObjectType}/${toObjectId}/${associationTypeId}`,
578
+ method: "DELETE",
579
+ }, "Disassociate Objects");
580
+ }
581
+ }
582
+ exports.HubspotClient = HubspotClient;
583
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { HubspotClient } from './client';
2
+ export type { HubSpot } from './types';
3
+ export { HubSpotValidators, ValidationError } from './validators';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ValidationError = exports.HubSpotValidators = exports.HubspotClient = void 0;
4
+ var client_1 = require("./client");
5
+ Object.defineProperty(exports, "HubspotClient", { enumerable: true, get: function () { return client_1.HubspotClient; } });
6
+ var validators_1 = require("./validators");
7
+ Object.defineProperty(exports, "HubSpotValidators", { enumerable: true, get: function () { return validators_1.HubSpotValidators; } });
8
+ Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return validators_1.ValidationError; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AAEtB,2CAAkE;AAAzD,+GAAA,iBAAiB,OAAA;AAAE,6GAAA,eAAe,OAAA"}
@@ -0,0 +1,328 @@
1
+ export declare namespace HubSpot {
2
+ type LeadPayload = {
3
+ firstName?: string;
4
+ lastName: string;
5
+ company: string;
6
+ email?: string;
7
+ phone?: string;
8
+ source?: string;
9
+ };
10
+ type ContactPayload = {
11
+ firstName?: string;
12
+ lastName: string;
13
+ email: string;
14
+ phone?: string;
15
+ company?: string;
16
+ website?: string;
17
+ jobTitle?: string;
18
+ address?: string;
19
+ city?: string;
20
+ state?: string;
21
+ zipCode?: string;
22
+ country?: string;
23
+ lifecycleStage?: string;
24
+ leadStatus?: string;
25
+ properties?: Record<string, any>;
26
+ };
27
+ type CompanyPayload = {
28
+ name: string;
29
+ domain?: string;
30
+ industry?: string;
31
+ phone?: string;
32
+ address?: string;
33
+ city?: string;
34
+ state?: string;
35
+ zipCode?: string;
36
+ country?: string;
37
+ description?: string;
38
+ numberOfEmployees?: number;
39
+ annualRevenue?: number;
40
+ properties?: Record<string, any>;
41
+ };
42
+ type DealPayload = {
43
+ name: string;
44
+ pipeline?: string;
45
+ stage?: string;
46
+ amount?: number;
47
+ closeDate?: string;
48
+ dealType?: string;
49
+ description?: string;
50
+ priority?: string;
51
+ contactIds?: string[];
52
+ companyIds?: string[];
53
+ properties?: Record<string, any>;
54
+ };
55
+ type TicketPayload = {
56
+ subject: string;
57
+ content?: string;
58
+ ticketType?: string;
59
+ priority?: string;
60
+ status?: string;
61
+ contactIds?: string[];
62
+ companyIds?: string[];
63
+ pipelineStage?: string;
64
+ properties?: Record<string, any>;
65
+ };
66
+ type EngagementPayload = {
67
+ type: "EMAIL" | "CALL" | "MEETING" | "TASK" | "NOTE";
68
+ title?: string;
69
+ body?: string;
70
+ startTime?: number;
71
+ endTime?: number;
72
+ ownerId?: string;
73
+ contactIds?: string[];
74
+ companyIds?: string[];
75
+ dealIds?: string[];
76
+ ticketIds?: string[];
77
+ properties?: Record<string, any>;
78
+ };
79
+ type FormSubmissionPayload = {
80
+ formId: string;
81
+ contactProperties: {
82
+ email: string;
83
+ firstName?: string;
84
+ lastName?: string;
85
+ [key: string]: any;
86
+ };
87
+ legalConsentOptions?: Record<string, any>;
88
+ contextPage?: string;
89
+ };
90
+ type ListPayload = {
91
+ name: string;
92
+ dynamic: boolean;
93
+ filters?: Array<{
94
+ propertyName: string;
95
+ operator: string;
96
+ value: string | number | boolean;
97
+ }>;
98
+ properties?: Record<string, any>;
99
+ };
100
+ type ContactResponse = {
101
+ id: string;
102
+ properties: {
103
+ firstname?: string;
104
+ lastname?: string;
105
+ email?: string;
106
+ phone?: string;
107
+ company?: string;
108
+ website?: string;
109
+ jobtitle?: string;
110
+ address?: string;
111
+ city?: string;
112
+ state?: string;
113
+ zip?: string;
114
+ country?: string;
115
+ hs_lead_status?: string;
116
+ lifecyclestage?: string;
117
+ lastmodifieddate?: string;
118
+ createdate?: string;
119
+ [key: string]: any;
120
+ };
121
+ createdAt: string;
122
+ updatedAt: string;
123
+ archived: boolean;
124
+ };
125
+ type ContactsResponse = {
126
+ results: ContactResponse[];
127
+ paging?: {
128
+ next?: {
129
+ after: string;
130
+ link: string;
131
+ };
132
+ };
133
+ total?: number;
134
+ };
135
+ type CompanyResponse = {
136
+ id: string;
137
+ properties: {
138
+ name?: string;
139
+ domain?: string;
140
+ industry?: string;
141
+ phone?: string;
142
+ address?: string;
143
+ city?: string;
144
+ state?: string;
145
+ zip?: string;
146
+ country?: string;
147
+ description?: string;
148
+ numberofemployees?: number;
149
+ annualrevenue?: number;
150
+ createdate?: string;
151
+ [key: string]: any;
152
+ };
153
+ createdAt: string;
154
+ updatedAt: string;
155
+ archived: boolean;
156
+ };
157
+ type CompaniesResponse = {
158
+ results: CompanyResponse[];
159
+ paging?: {
160
+ next?: {
161
+ after: string;
162
+ link: string;
163
+ };
164
+ };
165
+ total?: number;
166
+ };
167
+ type DealResponse = {
168
+ id: string;
169
+ properties: {
170
+ dealname?: string;
171
+ pipeline?: string;
172
+ dealstage?: string;
173
+ amount?: string;
174
+ closedate?: string;
175
+ dealtype?: string;
176
+ description?: string;
177
+ hs_priority?: string;
178
+ createdate?: string;
179
+ [key: string]: any;
180
+ };
181
+ createdAt: string;
182
+ updatedAt: string;
183
+ archived: boolean;
184
+ associations?: {
185
+ contacts?: {
186
+ results: Array<{
187
+ id: string;
188
+ }>;
189
+ };
190
+ companies?: {
191
+ results: Array<{
192
+ id: string;
193
+ }>;
194
+ };
195
+ };
196
+ };
197
+ type DealsResponse = {
198
+ results: DealResponse[];
199
+ paging?: {
200
+ next?: {
201
+ after: string;
202
+ link: string;
203
+ };
204
+ };
205
+ total?: number;
206
+ };
207
+ type TicketResponse = {
208
+ id: string;
209
+ properties: {
210
+ subject?: string;
211
+ content?: string;
212
+ hs_ticket_priority?: string;
213
+ hs_pipeline?: string;
214
+ hs_pipeline_stage?: string;
215
+ hs_ticket_category?: string;
216
+ createdate?: string;
217
+ [key: string]: any;
218
+ };
219
+ createdAt: string;
220
+ updatedAt: string;
221
+ archived: boolean;
222
+ associations?: {
223
+ contacts?: {
224
+ results: Array<{
225
+ id: string;
226
+ }>;
227
+ };
228
+ companies?: {
229
+ results: Array<{
230
+ id: string;
231
+ }>;
232
+ };
233
+ };
234
+ };
235
+ type TicketsResponse = {
236
+ results: TicketResponse[];
237
+ paging?: {
238
+ next?: {
239
+ after: string;
240
+ link: string;
241
+ };
242
+ };
243
+ total?: number;
244
+ };
245
+ type EngagementResponse = {
246
+ id: string;
247
+ properties: {
248
+ hs_timestamp?: string;
249
+ hs_email_subject?: string;
250
+ hs_email_text?: string;
251
+ hs_email_html?: string;
252
+ hs_meeting_title?: string;
253
+ hs_meeting_body?: string;
254
+ hs_meeting_start_time?: string;
255
+ hs_meeting_end_time?: string;
256
+ hs_task_subject?: string;
257
+ hs_task_status?: string;
258
+ hs_note_body?: string;
259
+ hs_call_title?: string;
260
+ hs_call_body?: string;
261
+ [key: string]: any;
262
+ };
263
+ createdAt: string;
264
+ updatedAt: string;
265
+ archived: boolean;
266
+ associations?: {
267
+ contacts?: {
268
+ results: Array<{
269
+ id: string;
270
+ }>;
271
+ };
272
+ companies?: {
273
+ results: Array<{
274
+ id: string;
275
+ }>;
276
+ };
277
+ deals?: {
278
+ results: Array<{
279
+ id: string;
280
+ }>;
281
+ };
282
+ tickets?: {
283
+ results: Array<{
284
+ id: string;
285
+ }>;
286
+ };
287
+ };
288
+ };
289
+ type EngagementsResponse = {
290
+ results: EngagementResponse[];
291
+ paging?: {
292
+ next?: {
293
+ after: string;
294
+ link: string;
295
+ };
296
+ };
297
+ total?: number;
298
+ };
299
+ type ListResponse = {
300
+ listId: number;
301
+ name: string;
302
+ dynamic: boolean;
303
+ createdAt: string;
304
+ updatedAt: string;
305
+ filters?: Array<{
306
+ propertyName: string;
307
+ operator: string;
308
+ value: string | number | boolean;
309
+ }>;
310
+ };
311
+ type ListsResponse = {
312
+ lists: ListResponse[];
313
+ total: number;
314
+ offset: number;
315
+ limit: number;
316
+ };
317
+ type FormSubmissionResponse = {
318
+ submissionId: string;
319
+ formId: string;
320
+ portalId: number;
321
+ submittedAt: string;
322
+ values: Array<{
323
+ name: string;
324
+ value: string;
325
+ }>;
326
+ };
327
+ }
328
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { ValidationError } from '@marketing-sdk/core';
2
+ import { HubSpot } from './types';
3
+ export { ValidationError };
4
+ export declare class HubSpotValidators {
5
+ static validateContactPayload(payload: HubSpot.ContactPayload): void;
6
+ static validateCompanyPayload(payload: HubSpot.CompanyPayload): void;
7
+ static validateDealPayload(payload: HubSpot.DealPayload): void;
8
+ }
9
+ //# sourceMappingURL=validators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,qBAAa,iBAAiB;IAC5B,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,GAAG,IAAI;IAsBpE,MAAM,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,GAAG,IAAI;IAsBpE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,GAAG,IAAI;CAa/D"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HubSpotValidators = exports.ValidationError = void 0;
4
+ const core_1 = require("@marketing-sdk/core");
5
+ Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return core_1.ValidationError; } });
6
+ class HubSpotValidators {
7
+ static validateContactPayload(payload) {
8
+ if (!payload.email || payload.email.trim() === '') {
9
+ throw new core_1.ValidationError('email', 'Email is required');
10
+ }
11
+ if (!core_1.Validators.validateEmail(payload.email)) {
12
+ throw new core_1.ValidationError('email', 'Invalid email format');
13
+ }
14
+ if (!payload.lastName || payload.lastName.trim() === '') {
15
+ throw new core_1.ValidationError('lastName', 'Last name is required');
16
+ }
17
+ if (payload.phone && !core_1.Validators.validatePhone(payload.phone)) {
18
+ throw new core_1.ValidationError('phone', 'Invalid phone format');
19
+ }
20
+ if (payload.website && !core_1.Validators.validateUrl(payload.website)) {
21
+ throw new core_1.ValidationError('website', 'Invalid website URL');
22
+ }
23
+ }
24
+ static validateCompanyPayload(payload) {
25
+ if (!payload.name || payload.name.trim() === '') {
26
+ throw new core_1.ValidationError('name', 'Company name is required');
27
+ }
28
+ if (payload.domain && !core_1.Validators.validateUrl(`https://${payload.domain}`)) {
29
+ throw new core_1.ValidationError('domain', 'Invalid domain format');
30
+ }
31
+ if (payload.phone && !core_1.Validators.validatePhone(payload.phone)) {
32
+ throw new core_1.ValidationError('phone', 'Invalid phone format');
33
+ }
34
+ if (payload.numberOfEmployees !== undefined && payload.numberOfEmployees < 0) {
35
+ throw new core_1.ValidationError('numberOfEmployees', 'Number of employees cannot be negative');
36
+ }
37
+ if (payload.annualRevenue !== undefined && payload.annualRevenue < 0) {
38
+ throw new core_1.ValidationError('annualRevenue', 'Annual revenue cannot be negative');
39
+ }
40
+ }
41
+ static validateDealPayload(payload) {
42
+ if (!payload.name || payload.name.trim() === '') {
43
+ throw new core_1.ValidationError('name', 'Deal name is required');
44
+ }
45
+ if (payload.amount !== undefined && payload.amount < 0) {
46
+ throw new core_1.ValidationError('amount', 'Amount cannot be negative');
47
+ }
48
+ if (payload.closeDate && !core_1.Validators.validateDate(payload.closeDate)) {
49
+ throw new core_1.ValidationError('closeDate', 'Invalid date format. Use YYYY-MM-DD');
50
+ }
51
+ }
52
+ }
53
+ exports.HubSpotValidators = HubSpotValidators;
54
+ //# sourceMappingURL=validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "@marketing-sdk/hubspot",
3
+ "version": "0.1.1-experimental.0",
4
+ "description": "HubSpot provider for marketing-sdk",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "exports": {
8
+ ".": {
9
+ "types": "./dist/index.d.ts",
10
+ "import": "./dist/index.js",
11
+ "require": "./dist/index.js"
12
+ }
13
+ },
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "publishConfig": {
18
+ "access": "public"
19
+ },
20
+ "dependencies": {
21
+ "@marketing-sdk/core": "0.1.1-experimental.0"
22
+ },
23
+ "peerDependencies": {
24
+ "@marketing-sdk/core": ">=0.1.0"
25
+ },
26
+ "devDependencies": {
27
+ "typescript": "^5.3.0",
28
+ "jest": "^29.7.0",
29
+ "ts-jest": "^29.1.0",
30
+ "@types/jest": "^29.5.0",
31
+ "@types/node": "^20.0.0"
32
+ },
33
+ "scripts": {
34
+ "build": "tsc",
35
+ "test": "jest",
36
+ "test:coverage": "jest --coverage",
37
+ "typecheck": "tsc --noEmit"
38
+ }
39
+ }