@apideck/unify 0.40.0 → 0.41.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.
Files changed (96) hide show
  1. package/jsr.json +1 -1
  2. package/lib/config.d.ts +4 -4
  3. package/lib/config.js +4 -4
  4. package/package.json +6 -2
  5. package/src/__tests__/activities.test.ts +1141 -0
  6. package/src/__tests__/agedcreditors.test.ts +280 -0
  7. package/src/__tests__/ageddebtors.test.ts +280 -0
  8. package/src/__tests__/apideckcompanies.test.ts +1082 -0
  9. package/src/__tests__/apideckcustomers.test.ts +364 -0
  10. package/src/__tests__/apideckdepartments.test.ts +497 -0
  11. package/src/__tests__/apiresources.test.ts +62 -0
  12. package/src/__tests__/apis.test.ts +216 -0
  13. package/src/__tests__/applicants.test.ts +1445 -0
  14. package/src/__tests__/applications.test.ts +515 -0
  15. package/src/__tests__/assertions.ts +13 -0
  16. package/src/__tests__/attachments.test.ts +371 -0
  17. package/src/__tests__/balancesheet.test.ts +453 -0
  18. package/src/__tests__/bankaccounts.test.ts +324 -0
  19. package/src/__tests__/bankfeedaccounts.test.ts +343 -0
  20. package/src/__tests__/bankfeedstatements.test.ts +408 -0
  21. package/src/__tests__/billpayments.test.ts +1031 -0
  22. package/src/__tests__/bills.test.ts +1630 -0
  23. package/src/__tests__/categories.test.ts +127 -0
  24. package/src/__tests__/collections.test.ts +120 -0
  25. package/src/__tests__/collectiontags.test.ts +68 -0
  26. package/src/__tests__/collectionticketcomments.test.ts +501 -0
  27. package/src/__tests__/collectiontickets.test.ts +627 -0
  28. package/src/__tests__/collectionusers.test.ts +126 -0
  29. package/src/__tests__/companies.test.ts +1642 -0
  30. package/src/__tests__/companyinfo.test.ts +219 -0
  31. package/src/__tests__/connectionconsent.test.ts +89 -0
  32. package/src/__tests__/connectionconsents.test.ts +31 -0
  33. package/src/__tests__/connectioncustommappings.test.ts +69 -0
  34. package/src/__tests__/connections.test.ts +2127 -0
  35. package/src/__tests__/connectionsettings.test.ts +687 -0
  36. package/src/__tests__/connectordocs.test.ts +29 -0
  37. package/src/__tests__/connectors.test.ts +753 -0
  38. package/src/__tests__/consumerrequestcounts.test.ts +42 -0
  39. package/src/__tests__/consumers.test.ts +523 -0
  40. package/src/__tests__/contacts.test.ts +1421 -0
  41. package/src/__tests__/createcallback.test.ts +36 -0
  42. package/src/__tests__/creditnotes.test.ts +2040 -0
  43. package/src/__tests__/customers.test.ts +1600 -0
  44. package/src/__tests__/customfields.test.ts +52 -0
  45. package/src/__tests__/custommappings.test.ts +65 -0
  46. package/src/__tests__/customobjects.test.ts +408 -0
  47. package/src/__tests__/customobjectschemas.test.ts +734 -0
  48. package/src/__tests__/departments.test.ts +529 -0
  49. package/src/__tests__/drivegroups.test.ts +496 -0
  50. package/src/__tests__/drives.test.ts +487 -0
  51. package/src/__tests__/employeepayrolls.test.ts +491 -0
  52. package/src/__tests__/employees.test.ts +2968 -0
  53. package/src/__tests__/employeeschedules.test.ts +457 -0
  54. package/src/__tests__/eventlogs.test.ts +158 -0
  55. package/src/__tests__/expensecategories.test.ts +324 -0
  56. package/src/__tests__/expensereports.test.ts +634 -0
  57. package/src/__tests__/expenses.test.ts +867 -0
  58. package/src/__tests__/files.test.ts +506 -0
  59. package/src/__tests__/files.ts +56 -0
  60. package/src/__tests__/folders.test.ts +390 -0
  61. package/src/__tests__/invoiceitems.test.ts +855 -0
  62. package/src/__tests__/invoices.test.ts +2173 -0
  63. package/src/__tests__/jobs.test.ts +1150 -0
  64. package/src/__tests__/journalentries.test.ts +1542 -0
  65. package/src/__tests__/leads.test.ts +1341 -0
  66. package/src/__tests__/ledgeraccounts.test.ts +829 -0
  67. package/src/__tests__/locations.test.ts +856 -0
  68. package/src/__tests__/logs.test.ts +137 -0
  69. package/src/__tests__/messages.test.ts +588 -0
  70. package/src/__tests__/notes.test.ts +523 -0
  71. package/src/__tests__/opportunities.test.ts +718 -0
  72. package/src/__tests__/orders.test.ts +854 -0
  73. package/src/__tests__/payments.test.ts +867 -0
  74. package/src/__tests__/payrolls.test.ts +485 -0
  75. package/src/__tests__/pipelines.test.ts +574 -0
  76. package/src/__tests__/products.test.ts +509 -0
  77. package/src/__tests__/profitandloss.test.ts +223 -0
  78. package/src/__tests__/projects.test.ts +480 -0
  79. package/src/__tests__/proxy.test.ts +41 -0
  80. package/src/__tests__/purchaseorders.test.ts +2139 -0
  81. package/src/__tests__/quotes.test.ts +678 -0
  82. package/src/__tests__/refunds.test.ts +812 -0
  83. package/src/__tests__/sessions.test.ts +72 -0
  84. package/src/__tests__/sharedlinks.test.ts +511 -0
  85. package/src/__tests__/stores.test.ts +41 -0
  86. package/src/__tests__/subsidiaries.test.ts +496 -0
  87. package/src/__tests__/suppliers.test.ts +1574 -0
  88. package/src/__tests__/taxrates.test.ts +701 -0
  89. package/src/__tests__/testclient.ts +48 -0
  90. package/src/__tests__/timeoffrequests.test.ts +588 -0
  91. package/src/__tests__/trackingcategories.test.ts +515 -0
  92. package/src/__tests__/uploadsessions.test.ts +221 -0
  93. package/src/__tests__/users.test.ts +1020 -0
  94. package/src/__tests__/validateconnection.test.ts +34 -0
  95. package/src/__tests__/webhooks.test.ts +254 -0
  96. package/src/lib/config.ts +4 -4
@@ -0,0 +1,1020 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { expect, test } from "vitest";
6
+ import { Apideck } from "../index.js";
7
+ import { createTestHTTPClient } from "./testclient.js";
8
+
9
+ test("Users Crm Users All", async () => {
10
+ const testHttpClient = createTestHTTPClient("crm.usersAll");
11
+
12
+ const apideck = new Apideck({
13
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
14
+ httpClient: testHttpClient,
15
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
16
+ });
17
+
18
+ const result = await apideck.crm.users.list({
19
+ consumerId: "test-consumer",
20
+ appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
21
+ serviceId: "salesforce",
22
+ passThrough: {
23
+ "search": "San Francisco",
24
+ },
25
+ fields: "id,updated_at",
26
+ });
27
+ expect(result.httpMeta.response.status).toBe(200);
28
+ expect(result.getUsersResponse).toBeDefined();
29
+ expect(result.getUsersResponse).toEqual({
30
+ statusCode: 200,
31
+ status: "OK",
32
+ service: "zoho-crm",
33
+ resource: "users",
34
+ operation: "all",
35
+ data: [
36
+ {
37
+ id: "12345",
38
+ parentId: "54321",
39
+ username: "masterofcoin",
40
+ firstName: "Elon",
41
+ lastName: "Musk",
42
+ title: "CEO",
43
+ division: "Europe",
44
+ companyName: "SpaceX",
45
+ employeeNumber: "123456-AB",
46
+ description: "A description",
47
+ image: "https://logo.clearbit.com/spacex.com?s=128",
48
+ language: "EN",
49
+ status: "active",
50
+ addresses: [
51
+ {
52
+ id: "123",
53
+ type: "primary",
54
+ string: "25 Spring Street, Blackburn, VIC 3130",
55
+ name: "HQ US",
56
+ line1: "Main street",
57
+ line2: "apt #",
58
+ line3: "Suite #",
59
+ line4: "delivery instructions",
60
+ streetNumber: "25",
61
+ city: "San Francisco",
62
+ state: "CA",
63
+ postalCode: "94104",
64
+ country: "US",
65
+ latitude: "40.759211",
66
+ longitude: "-73.984638",
67
+ county: "Santa Clara",
68
+ contactName: "Elon Musk",
69
+ salutation: "Mr",
70
+ phoneNumber: "111-111-1111",
71
+ fax: "122-111-1111",
72
+ email: "elon@musk.com",
73
+ website: "https://elonmusk.com",
74
+ notes: "Address notes or delivery instructions.",
75
+ rowVersion: "1-12345",
76
+ },
77
+ {
78
+ id: "123",
79
+ type: "primary",
80
+ string: "25 Spring Street, Blackburn, VIC 3130",
81
+ name: "HQ US",
82
+ line1: "Main street",
83
+ line2: "apt #",
84
+ line3: "Suite #",
85
+ line4: "delivery instructions",
86
+ streetNumber: "25",
87
+ city: "San Francisco",
88
+ state: "CA",
89
+ postalCode: "94104",
90
+ country: "US",
91
+ latitude: "40.759211",
92
+ longitude: "-73.984638",
93
+ county: "Santa Clara",
94
+ contactName: "Elon Musk",
95
+ salutation: "Mr",
96
+ phoneNumber: "111-111-1111",
97
+ fax: "122-111-1111",
98
+ email: "elon@musk.com",
99
+ website: "https://elonmusk.com",
100
+ notes: "Address notes or delivery instructions.",
101
+ rowVersion: "1-12345",
102
+ },
103
+ ],
104
+ phoneNumbers: [
105
+ {
106
+ id: "12345",
107
+ countryCode: "1",
108
+ areaCode: "323",
109
+ number: "111-111-1111",
110
+ extension: "105",
111
+ type: "primary",
112
+ },
113
+ {
114
+ id: "12345",
115
+ countryCode: "1",
116
+ areaCode: "323",
117
+ number: "111-111-1111",
118
+ extension: "105",
119
+ type: "primary",
120
+ },
121
+ {
122
+ id: "12345",
123
+ countryCode: "1",
124
+ areaCode: "323",
125
+ number: "111-111-1111",
126
+ extension: "105",
127
+ type: "primary",
128
+ },
129
+ ],
130
+ emails: [],
131
+ updatedAt: "2017-08-12T20:43:21.291Z",
132
+ createdAt: "2017-08-12T20:43:21.291Z",
133
+ passThrough: [
134
+ {
135
+ serviceId: "<id>",
136
+ extendPaths: [
137
+ {
138
+ path: "$.nested.property",
139
+ value: {
140
+ "TaxClassificationRef": {
141
+ "value": "EUC-99990201-V1-00020000",
142
+ },
143
+ },
144
+ },
145
+ ],
146
+ },
147
+ ],
148
+ },
149
+ {
150
+ id: "12345",
151
+ parentId: "54321",
152
+ username: "masterofcoin",
153
+ firstName: "Elon",
154
+ lastName: "Musk",
155
+ title: "CEO",
156
+ division: "Europe",
157
+ companyName: "SpaceX",
158
+ employeeNumber: "123456-AB",
159
+ description: "A description",
160
+ image: "https://logo.clearbit.com/spacex.com?s=128",
161
+ language: "EN",
162
+ status: "active",
163
+ addresses: [
164
+ {
165
+ id: "123",
166
+ type: "primary",
167
+ string: "25 Spring Street, Blackburn, VIC 3130",
168
+ name: "HQ US",
169
+ line1: "Main street",
170
+ line2: "apt #",
171
+ line3: "Suite #",
172
+ line4: "delivery instructions",
173
+ streetNumber: "25",
174
+ city: "San Francisco",
175
+ state: "CA",
176
+ postalCode: "94104",
177
+ country: "US",
178
+ latitude: "40.759211",
179
+ longitude: "-73.984638",
180
+ county: "Santa Clara",
181
+ contactName: "Elon Musk",
182
+ salutation: "Mr",
183
+ phoneNumber: "111-111-1111",
184
+ fax: "122-111-1111",
185
+ email: "elon@musk.com",
186
+ website: "https://elonmusk.com",
187
+ notes: "Address notes or delivery instructions.",
188
+ rowVersion: "1-12345",
189
+ },
190
+ {
191
+ id: "123",
192
+ type: "primary",
193
+ string: "25 Spring Street, Blackburn, VIC 3130",
194
+ name: "HQ US",
195
+ line1: "Main street",
196
+ line2: "apt #",
197
+ line3: "Suite #",
198
+ line4: "delivery instructions",
199
+ streetNumber: "25",
200
+ city: "San Francisco",
201
+ state: "CA",
202
+ postalCode: "94104",
203
+ country: "US",
204
+ latitude: "40.759211",
205
+ longitude: "-73.984638",
206
+ county: "Santa Clara",
207
+ contactName: "Elon Musk",
208
+ salutation: "Mr",
209
+ phoneNumber: "111-111-1111",
210
+ fax: "122-111-1111",
211
+ email: "elon@musk.com",
212
+ website: "https://elonmusk.com",
213
+ notes: "Address notes or delivery instructions.",
214
+ rowVersion: "1-12345",
215
+ },
216
+ ],
217
+ phoneNumbers: [
218
+ {
219
+ id: "12345",
220
+ countryCode: "1",
221
+ areaCode: "323",
222
+ number: "111-111-1111",
223
+ extension: "105",
224
+ type: "primary",
225
+ },
226
+ {
227
+ id: "12345",
228
+ countryCode: "1",
229
+ areaCode: "323",
230
+ number: "111-111-1111",
231
+ extension: "105",
232
+ type: "primary",
233
+ },
234
+ ],
235
+ emails: [],
236
+ updatedAt: "2017-08-12T20:43:21.291Z",
237
+ createdAt: "2017-08-12T20:43:21.291Z",
238
+ passThrough: [
239
+ {
240
+ serviceId: "<id>",
241
+ extendPaths: [
242
+ {
243
+ path: "$.nested.property",
244
+ value: {
245
+ "TaxClassificationRef": {
246
+ "value": "EUC-99990201-V1-00020000",
247
+ },
248
+ },
249
+ },
250
+ ],
251
+ },
252
+ {
253
+ serviceId: "<id>",
254
+ extendPaths: [
255
+ {
256
+ path: "$.nested.property",
257
+ value: {
258
+ "TaxClassificationRef": {
259
+ "value": "EUC-99990201-V1-00020000",
260
+ },
261
+ },
262
+ },
263
+ ],
264
+ },
265
+ {
266
+ serviceId: "<id>",
267
+ extendPaths: [
268
+ {
269
+ path: "$.nested.property",
270
+ value: {
271
+ "TaxClassificationRef": {
272
+ "value": "EUC-99990201-V1-00020000",
273
+ },
274
+ },
275
+ },
276
+ {
277
+ path: "$.nested.property",
278
+ value: {
279
+ "TaxClassificationRef": {
280
+ "value": "EUC-99990201-V1-00020000",
281
+ },
282
+ },
283
+ },
284
+ {
285
+ path: "$.nested.property",
286
+ value: {
287
+ "TaxClassificationRef": {
288
+ "value": "EUC-99990201-V1-00020000",
289
+ },
290
+ },
291
+ },
292
+ ],
293
+ },
294
+ ],
295
+ },
296
+ {
297
+ id: "12345",
298
+ parentId: "54321",
299
+ username: "masterofcoin",
300
+ firstName: "Elon",
301
+ lastName: "Musk",
302
+ title: "CEO",
303
+ division: "Europe",
304
+ companyName: "SpaceX",
305
+ employeeNumber: "123456-AB",
306
+ description: "A description",
307
+ image: "https://logo.clearbit.com/spacex.com?s=128",
308
+ language: "EN",
309
+ status: "active",
310
+ addresses: [
311
+ {
312
+ id: "123",
313
+ type: "primary",
314
+ string: "25 Spring Street, Blackburn, VIC 3130",
315
+ name: "HQ US",
316
+ line1: "Main street",
317
+ line2: "apt #",
318
+ line3: "Suite #",
319
+ line4: "delivery instructions",
320
+ streetNumber: "25",
321
+ city: "San Francisco",
322
+ state: "CA",
323
+ postalCode: "94104",
324
+ country: "US",
325
+ latitude: "40.759211",
326
+ longitude: "-73.984638",
327
+ county: "Santa Clara",
328
+ contactName: "Elon Musk",
329
+ salutation: "Mr",
330
+ phoneNumber: "111-111-1111",
331
+ fax: "122-111-1111",
332
+ email: "elon@musk.com",
333
+ website: "https://elonmusk.com",
334
+ notes: "Address notes or delivery instructions.",
335
+ rowVersion: "1-12345",
336
+ },
337
+ {
338
+ id: "123",
339
+ type: "primary",
340
+ string: "25 Spring Street, Blackburn, VIC 3130",
341
+ name: "HQ US",
342
+ line1: "Main street",
343
+ line2: "apt #",
344
+ line3: "Suite #",
345
+ line4: "delivery instructions",
346
+ streetNumber: "25",
347
+ city: "San Francisco",
348
+ state: "CA",
349
+ postalCode: "94104",
350
+ country: "US",
351
+ latitude: "40.759211",
352
+ longitude: "-73.984638",
353
+ county: "Santa Clara",
354
+ contactName: "Elon Musk",
355
+ salutation: "Mr",
356
+ phoneNumber: "111-111-1111",
357
+ fax: "122-111-1111",
358
+ email: "elon@musk.com",
359
+ website: "https://elonmusk.com",
360
+ notes: "Address notes or delivery instructions.",
361
+ rowVersion: "1-12345",
362
+ },
363
+ ],
364
+ phoneNumbers: [
365
+ {
366
+ id: "12345",
367
+ countryCode: "1",
368
+ areaCode: "323",
369
+ number: "111-111-1111",
370
+ extension: "105",
371
+ type: "primary",
372
+ },
373
+ {
374
+ id: "12345",
375
+ countryCode: "1",
376
+ areaCode: "323",
377
+ number: "111-111-1111",
378
+ extension: "105",
379
+ type: "primary",
380
+ },
381
+ ],
382
+ emails: [],
383
+ updatedAt: "2017-08-12T20:43:21.291Z",
384
+ createdAt: "2017-08-12T20:43:21.291Z",
385
+ passThrough: [
386
+ {
387
+ serviceId: "<id>",
388
+ extendPaths: [
389
+ {
390
+ path: "$.nested.property",
391
+ value: {
392
+ "TaxClassificationRef": {
393
+ "value": "EUC-99990201-V1-00020000",
394
+ },
395
+ },
396
+ },
397
+ {
398
+ path: "$.nested.property",
399
+ value: {
400
+ "TaxClassificationRef": {
401
+ "value": "EUC-99990201-V1-00020000",
402
+ },
403
+ },
404
+ },
405
+ ],
406
+ },
407
+ ],
408
+ },
409
+ ],
410
+ meta: {
411
+ itemsOnPage: 50,
412
+ cursors: {
413
+ previous: "em9oby1jcm06OnBhZ2U6OjE=",
414
+ current: "em9oby1jcm06OnBhZ2U6OjI=",
415
+ next: "em9oby1jcm06OnBhZ2U6OjM=",
416
+ },
417
+ },
418
+ links: {
419
+ previous:
420
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D",
421
+ current: "https://unify.apideck.com/crm/companies",
422
+ next:
423
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM",
424
+ },
425
+ });
426
+ });
427
+
428
+ test("Users Crm Users Add", async () => {
429
+ const testHttpClient = createTestHTTPClient("crm.usersAdd");
430
+
431
+ const apideck = new Apideck({
432
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
433
+ httpClient: testHttpClient,
434
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
435
+ });
436
+
437
+ const result = await apideck.crm.users.create({
438
+ consumerId: "test-consumer",
439
+ appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
440
+ serviceId: "salesforce",
441
+ user: {
442
+ parentId: "54321",
443
+ username: "masterofcoin",
444
+ firstName: "Elon",
445
+ lastName: "Musk",
446
+ title: "CEO",
447
+ division: "Europe",
448
+ companyName: "SpaceX",
449
+ employeeNumber: "123456-AB",
450
+ description: "A description",
451
+ image: "https://logo.clearbit.com/spacex.com?s=128",
452
+ language: "EN",
453
+ status: "active",
454
+ password: "supersecretpassword",
455
+ addresses: [
456
+ {
457
+ id: "123",
458
+ type: "primary",
459
+ string: "25 Spring Street, Blackburn, VIC 3130",
460
+ name: "HQ US",
461
+ line1: "Main street",
462
+ line2: "apt #",
463
+ line3: "Suite #",
464
+ line4: "delivery instructions",
465
+ streetNumber: "25",
466
+ city: "San Francisco",
467
+ state: "CA",
468
+ postalCode: "94104",
469
+ country: "US",
470
+ latitude: "40.759211",
471
+ longitude: "-73.984638",
472
+ county: "Santa Clara",
473
+ contactName: "Elon Musk",
474
+ salutation: "Mr",
475
+ phoneNumber: "111-111-1111",
476
+ fax: "122-111-1111",
477
+ email: "elon@musk.com",
478
+ website: "https://elonmusk.com",
479
+ notes: "Address notes or delivery instructions.",
480
+ rowVersion: "1-12345",
481
+ },
482
+ {
483
+ id: "123",
484
+ type: "primary",
485
+ string: "25 Spring Street, Blackburn, VIC 3130",
486
+ name: "HQ US",
487
+ line1: "Main street",
488
+ line2: "apt #",
489
+ line3: "Suite #",
490
+ line4: "delivery instructions",
491
+ streetNumber: "25",
492
+ city: "San Francisco",
493
+ state: "CA",
494
+ postalCode: "94104",
495
+ country: "US",
496
+ latitude: "40.759211",
497
+ longitude: "-73.984638",
498
+ county: "Santa Clara",
499
+ contactName: "Elon Musk",
500
+ salutation: "Mr",
501
+ phoneNumber: "111-111-1111",
502
+ fax: "122-111-1111",
503
+ email: "elon@musk.com",
504
+ website: "https://elonmusk.com",
505
+ notes: "Address notes or delivery instructions.",
506
+ rowVersion: "1-12345",
507
+ },
508
+ ],
509
+ phoneNumbers: [
510
+ {
511
+ id: "12345",
512
+ countryCode: "1",
513
+ areaCode: "323",
514
+ number: "111-111-1111",
515
+ extension: "105",
516
+ type: "primary",
517
+ },
518
+ {
519
+ id: "12345",
520
+ countryCode: "1",
521
+ areaCode: "323",
522
+ number: "111-111-1111",
523
+ extension: "105",
524
+ type: "primary",
525
+ },
526
+ ],
527
+ emails: [
528
+ {
529
+ id: "123",
530
+ email: "elon@musk.com",
531
+ type: "primary",
532
+ },
533
+ ],
534
+ passThrough: [
535
+ {
536
+ serviceId: "<id>",
537
+ extendPaths: [
538
+ {
539
+ path: "$.nested.property",
540
+ value: {
541
+ "TaxClassificationRef": {
542
+ "value": "EUC-99990201-V1-00020000",
543
+ },
544
+ },
545
+ },
546
+ ],
547
+ },
548
+ ],
549
+ },
550
+ });
551
+ expect(result.httpMeta.response.status).toBe(201);
552
+ expect(result.createUserResponse).toBeDefined();
553
+ expect(result.createUserResponse).toEqual({
554
+ statusCode: 200,
555
+ status: "OK",
556
+ service: "zoho-crm",
557
+ resource: "users",
558
+ operation: "add",
559
+ data: {
560
+ id: "12345",
561
+ },
562
+ });
563
+ });
564
+
565
+ test("Users Crm Users One", async () => {
566
+ const testHttpClient = createTestHTTPClient("crm.usersOne");
567
+
568
+ const apideck = new Apideck({
569
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
570
+ httpClient: testHttpClient,
571
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
572
+ });
573
+
574
+ const result = await apideck.crm.users.get({
575
+ id: "<id>",
576
+ consumerId: "test-consumer",
577
+ appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
578
+ serviceId: "salesforce",
579
+ fields: "id,updated_at",
580
+ });
581
+ expect(result.httpMeta.response.status).toBe(200);
582
+ expect(result.getUserResponse).toBeDefined();
583
+ expect(result.getUserResponse).toEqual({
584
+ statusCode: 200,
585
+ status: "OK",
586
+ service: "zoho-crm",
587
+ resource: "companies",
588
+ operation: "one",
589
+ data: {
590
+ id: "12345",
591
+ parentId: "54321",
592
+ username: "masterofcoin",
593
+ firstName: "Elon",
594
+ lastName: "Musk",
595
+ title: "CEO",
596
+ division: "Europe",
597
+ companyName: "SpaceX",
598
+ employeeNumber: "123456-AB",
599
+ description: "A description",
600
+ image: "https://logo.clearbit.com/spacex.com?s=128",
601
+ language: "EN",
602
+ status: "active",
603
+ addresses: [
604
+ {
605
+ id: "123",
606
+ type: "primary",
607
+ string: "25 Spring Street, Blackburn, VIC 3130",
608
+ name: "HQ US",
609
+ line1: "Main street",
610
+ line2: "apt #",
611
+ line3: "Suite #",
612
+ line4: "delivery instructions",
613
+ streetNumber: "25",
614
+ city: "San Francisco",
615
+ state: "CA",
616
+ postalCode: "94104",
617
+ country: "US",
618
+ latitude: "40.759211",
619
+ longitude: "-73.984638",
620
+ county: "Santa Clara",
621
+ contactName: "Elon Musk",
622
+ salutation: "Mr",
623
+ phoneNumber: "111-111-1111",
624
+ fax: "122-111-1111",
625
+ email: "elon@musk.com",
626
+ website: "https://elonmusk.com",
627
+ notes: "Address notes or delivery instructions.",
628
+ rowVersion: "1-12345",
629
+ },
630
+ {
631
+ id: "123",
632
+ type: "primary",
633
+ string: "25 Spring Street, Blackburn, VIC 3130",
634
+ name: "HQ US",
635
+ line1: "Main street",
636
+ line2: "apt #",
637
+ line3: "Suite #",
638
+ line4: "delivery instructions",
639
+ streetNumber: "25",
640
+ city: "San Francisco",
641
+ state: "CA",
642
+ postalCode: "94104",
643
+ country: "US",
644
+ latitude: "40.759211",
645
+ longitude: "-73.984638",
646
+ county: "Santa Clara",
647
+ contactName: "Elon Musk",
648
+ salutation: "Mr",
649
+ phoneNumber: "111-111-1111",
650
+ fax: "122-111-1111",
651
+ email: "elon@musk.com",
652
+ website: "https://elonmusk.com",
653
+ notes: "Address notes or delivery instructions.",
654
+ rowVersion: "1-12345",
655
+ },
656
+ {
657
+ id: "123",
658
+ type: "primary",
659
+ string: "25 Spring Street, Blackburn, VIC 3130",
660
+ name: "HQ US",
661
+ line1: "Main street",
662
+ line2: "apt #",
663
+ line3: "Suite #",
664
+ line4: "delivery instructions",
665
+ streetNumber: "25",
666
+ city: "San Francisco",
667
+ state: "CA",
668
+ postalCode: "94104",
669
+ country: "US",
670
+ latitude: "40.759211",
671
+ longitude: "-73.984638",
672
+ county: "Santa Clara",
673
+ contactName: "Elon Musk",
674
+ salutation: "Mr",
675
+ phoneNumber: "111-111-1111",
676
+ fax: "122-111-1111",
677
+ email: "elon@musk.com",
678
+ website: "https://elonmusk.com",
679
+ notes: "Address notes or delivery instructions.",
680
+ rowVersion: "1-12345",
681
+ },
682
+ ],
683
+ phoneNumbers: [
684
+ {
685
+ id: "12345",
686
+ countryCode: "1",
687
+ areaCode: "323",
688
+ number: "111-111-1111",
689
+ extension: "105",
690
+ type: "primary",
691
+ },
692
+ {
693
+ id: "12345",
694
+ countryCode: "1",
695
+ areaCode: "323",
696
+ number: "111-111-1111",
697
+ extension: "105",
698
+ type: "primary",
699
+ },
700
+ ],
701
+ emails: [
702
+ {
703
+ id: "123",
704
+ email: "elon@musk.com",
705
+ type: "primary",
706
+ },
707
+ {
708
+ id: "123",
709
+ email: "elon@musk.com",
710
+ type: "primary",
711
+ },
712
+ ],
713
+ updatedAt: "2017-08-12T20:43:21.291Z",
714
+ createdAt: "2017-08-12T20:43:21.291Z",
715
+ passThrough: [
716
+ {
717
+ serviceId: "<id>",
718
+ extendPaths: [
719
+ {
720
+ path: "$.nested.property",
721
+ value: {
722
+ "TaxClassificationRef": {
723
+ "value": "EUC-99990201-V1-00020000",
724
+ },
725
+ },
726
+ },
727
+ {
728
+ path: "$.nested.property",
729
+ value: {
730
+ "TaxClassificationRef": {
731
+ "value": "EUC-99990201-V1-00020000",
732
+ },
733
+ },
734
+ },
735
+ {
736
+ path: "$.nested.property",
737
+ value: {
738
+ "TaxClassificationRef": {
739
+ "value": "EUC-99990201-V1-00020000",
740
+ },
741
+ },
742
+ },
743
+ ],
744
+ },
745
+ {
746
+ serviceId: "<id>",
747
+ extendPaths: [
748
+ {
749
+ path: "$.nested.property",
750
+ value: {
751
+ "TaxClassificationRef": {
752
+ "value": "EUC-99990201-V1-00020000",
753
+ },
754
+ },
755
+ },
756
+ {
757
+ path: "$.nested.property",
758
+ value: {
759
+ "TaxClassificationRef": {
760
+ "value": "EUC-99990201-V1-00020000",
761
+ },
762
+ },
763
+ },
764
+ ],
765
+ },
766
+ ],
767
+ },
768
+ });
769
+ });
770
+
771
+ test("Users Crm Users Update", async () => {
772
+ const testHttpClient = createTestHTTPClient("crm.usersUpdate");
773
+
774
+ const apideck = new Apideck({
775
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
776
+ httpClient: testHttpClient,
777
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
778
+ });
779
+
780
+ const result = await apideck.crm.users.update({
781
+ id: "<id>",
782
+ consumerId: "test-consumer",
783
+ appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
784
+ serviceId: "salesforce",
785
+ user: {
786
+ parentId: "54321",
787
+ username: "masterofcoin",
788
+ firstName: "Elon",
789
+ lastName: "Musk",
790
+ title: "CEO",
791
+ division: "Europe",
792
+ companyName: "SpaceX",
793
+ employeeNumber: "123456-AB",
794
+ description: "A description",
795
+ image: "https://logo.clearbit.com/spacex.com?s=128",
796
+ language: "EN",
797
+ status: "active",
798
+ password: "supersecretpassword",
799
+ addresses: [
800
+ {
801
+ id: "123",
802
+ type: "primary",
803
+ string: "25 Spring Street, Blackburn, VIC 3130",
804
+ name: "HQ US",
805
+ line1: "Main street",
806
+ line2: "apt #",
807
+ line3: "Suite #",
808
+ line4: "delivery instructions",
809
+ streetNumber: "25",
810
+ city: "San Francisco",
811
+ state: "CA",
812
+ postalCode: "94104",
813
+ country: "US",
814
+ latitude: "40.759211",
815
+ longitude: "-73.984638",
816
+ county: "Santa Clara",
817
+ contactName: "Elon Musk",
818
+ salutation: "Mr",
819
+ phoneNumber: "111-111-1111",
820
+ fax: "122-111-1111",
821
+ email: "elon@musk.com",
822
+ website: "https://elonmusk.com",
823
+ notes: "Address notes or delivery instructions.",
824
+ rowVersion: "1-12345",
825
+ },
826
+ {
827
+ id: "123",
828
+ type: "primary",
829
+ string: "25 Spring Street, Blackburn, VIC 3130",
830
+ name: "HQ US",
831
+ line1: "Main street",
832
+ line2: "apt #",
833
+ line3: "Suite #",
834
+ line4: "delivery instructions",
835
+ streetNumber: "25",
836
+ city: "San Francisco",
837
+ state: "CA",
838
+ postalCode: "94104",
839
+ country: "US",
840
+ latitude: "40.759211",
841
+ longitude: "-73.984638",
842
+ county: "Santa Clara",
843
+ contactName: "Elon Musk",
844
+ salutation: "Mr",
845
+ phoneNumber: "111-111-1111",
846
+ fax: "122-111-1111",
847
+ email: "elon@musk.com",
848
+ website: "https://elonmusk.com",
849
+ notes: "Address notes or delivery instructions.",
850
+ rowVersion: "1-12345",
851
+ },
852
+ {
853
+ id: "123",
854
+ type: "primary",
855
+ string: "25 Spring Street, Blackburn, VIC 3130",
856
+ name: "HQ US",
857
+ line1: "Main street",
858
+ line2: "apt #",
859
+ line3: "Suite #",
860
+ line4: "delivery instructions",
861
+ streetNumber: "25",
862
+ city: "San Francisco",
863
+ state: "CA",
864
+ postalCode: "94104",
865
+ country: "US",
866
+ latitude: "40.759211",
867
+ longitude: "-73.984638",
868
+ county: "Santa Clara",
869
+ contactName: "Elon Musk",
870
+ salutation: "Mr",
871
+ phoneNumber: "111-111-1111",
872
+ fax: "122-111-1111",
873
+ email: "elon@musk.com",
874
+ website: "https://elonmusk.com",
875
+ notes: "Address notes or delivery instructions.",
876
+ rowVersion: "1-12345",
877
+ },
878
+ ],
879
+ phoneNumbers: [
880
+ {
881
+ id: "12345",
882
+ countryCode: "1",
883
+ areaCode: "323",
884
+ number: "111-111-1111",
885
+ extension: "105",
886
+ type: "primary",
887
+ },
888
+ {
889
+ id: "12345",
890
+ countryCode: "1",
891
+ areaCode: "323",
892
+ number: "111-111-1111",
893
+ extension: "105",
894
+ type: "primary",
895
+ },
896
+ ],
897
+ emails: [
898
+ {
899
+ id: "123",
900
+ email: "elon@musk.com",
901
+ type: "primary",
902
+ },
903
+ ],
904
+ passThrough: [
905
+ {
906
+ serviceId: "<id>",
907
+ extendPaths: [
908
+ {
909
+ path: "$.nested.property",
910
+ value: {
911
+ "TaxClassificationRef": {
912
+ "value": "EUC-99990201-V1-00020000",
913
+ },
914
+ },
915
+ },
916
+ {
917
+ path: "$.nested.property",
918
+ value: {
919
+ "TaxClassificationRef": {
920
+ "value": "EUC-99990201-V1-00020000",
921
+ },
922
+ },
923
+ },
924
+ ],
925
+ },
926
+ {
927
+ serviceId: "<id>",
928
+ extendPaths: [
929
+ {
930
+ path: "$.nested.property",
931
+ value: {
932
+ "TaxClassificationRef": {
933
+ "value": "EUC-99990201-V1-00020000",
934
+ },
935
+ },
936
+ },
937
+ {
938
+ path: "$.nested.property",
939
+ value: {
940
+ "TaxClassificationRef": {
941
+ "value": "EUC-99990201-V1-00020000",
942
+ },
943
+ },
944
+ },
945
+ ],
946
+ },
947
+ {
948
+ serviceId: "<id>",
949
+ extendPaths: [
950
+ {
951
+ path: "$.nested.property",
952
+ value: {
953
+ "TaxClassificationRef": {
954
+ "value": "EUC-99990201-V1-00020000",
955
+ },
956
+ },
957
+ },
958
+ {
959
+ path: "$.nested.property",
960
+ value: {
961
+ "TaxClassificationRef": {
962
+ "value": "EUC-99990201-V1-00020000",
963
+ },
964
+ },
965
+ },
966
+ {
967
+ path: "$.nested.property",
968
+ value: {
969
+ "TaxClassificationRef": {
970
+ "value": "EUC-99990201-V1-00020000",
971
+ },
972
+ },
973
+ },
974
+ ],
975
+ },
976
+ ],
977
+ },
978
+ });
979
+ expect(result.httpMeta.response.status).toBe(200);
980
+ expect(result.updateUserResponse).toBeDefined();
981
+ expect(result.updateUserResponse).toEqual({
982
+ statusCode: 200,
983
+ status: "OK",
984
+ service: "zoho-crm",
985
+ resource: "companies",
986
+ operation: "update",
987
+ data: {
988
+ id: "12345",
989
+ },
990
+ });
991
+ });
992
+
993
+ test("Users Crm Users Delete", async () => {
994
+ const testHttpClient = createTestHTTPClient("crm.usersDelete");
995
+
996
+ const apideck = new Apideck({
997
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
998
+ httpClient: testHttpClient,
999
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
1000
+ });
1001
+
1002
+ const result = await apideck.crm.users.delete({
1003
+ id: "<id>",
1004
+ consumerId: "test-consumer",
1005
+ appId: "dSBdXd2H6Mqwfg0atXHXYcysLJE9qyn1VwBtXHX",
1006
+ serviceId: "salesforce",
1007
+ });
1008
+ expect(result.httpMeta.response.status).toBe(200);
1009
+ expect(result.deleteUserResponse).toBeDefined();
1010
+ expect(result.deleteUserResponse).toEqual({
1011
+ statusCode: 200,
1012
+ status: "OK",
1013
+ service: "zoho-crm",
1014
+ resource: "users",
1015
+ operation: "delete",
1016
+ data: {
1017
+ id: "12345",
1018
+ },
1019
+ });
1020
+ });