@apideck/unify 0.22.1 → 0.23.1

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 (299) hide show
  1. package/docs/sdks/connections/README.md +2 -6
  2. package/docs/sdks/connectionsettings/README.md +2 -6
  3. package/docs/sdks/employees/README.md +4 -0
  4. package/jsr.json +1 -1
  5. package/lib/config.d.ts +4 -4
  6. package/lib/config.js +4 -4
  7. package/lib/matchers.d.ts +3 -1
  8. package/lib/matchers.d.ts.map +1 -1
  9. package/lib/matchers.js +12 -0
  10. package/lib/matchers.js.map +1 -1
  11. package/lib/sdks.js +7 -2
  12. package/lib/sdks.js.map +1 -1
  13. package/models/components/accountingdepartment.d.ts +10 -0
  14. package/models/components/accountingdepartment.d.ts.map +1 -1
  15. package/models/components/accountingdepartment.js +4 -0
  16. package/models/components/accountingdepartment.js.map +1 -1
  17. package/models/components/{billinput.d.ts → bill.d.ts} +75 -75
  18. package/models/components/bill.d.ts.map +1 -0
  19. package/models/components/{billinput.js → bill.js} +70 -70
  20. package/models/components/bill.js.map +1 -0
  21. package/models/components/{billlineiteminput.d.ts → billlineitem.d.ts} +59 -59
  22. package/models/components/billlineitem.d.ts.map +1 -0
  23. package/models/components/{billlineiteminput.js → billlineitem.js} +56 -56
  24. package/models/components/billlineitem.js.map +1 -0
  25. package/models/components/{billpaymentinput.d.ts → billpayment.d.ts} +102 -102
  26. package/models/components/billpayment.d.ts.map +1 -0
  27. package/models/components/{billpaymentinput.js → billpayment.js} +100 -100
  28. package/models/components/billpayment.js.map +1 -0
  29. package/models/components/{companyinput.d.ts → company.d.ts} +77 -77
  30. package/models/components/company.d.ts.map +1 -0
  31. package/models/components/{companyinput.js → company.js} +67 -67
  32. package/models/components/company.js.map +1 -0
  33. package/models/components/{connectioninput.d.ts → connection.d.ts} +139 -139
  34. package/models/components/connection.d.ts.map +1 -0
  35. package/models/components/{connectioninput.js → connection.js} +150 -150
  36. package/models/components/connection.js.map +1 -0
  37. package/models/components/createconnectionresponse.d.ts +1 -1
  38. package/models/components/createconnectionresponse.d.ts.map +1 -1
  39. package/models/components/createconnectionresponse.js +3 -3
  40. package/models/components/createconnectionresponse.js.map +1 -1
  41. package/models/components/creditnote.d.ts +1 -1
  42. package/models/components/creditnote.d.ts.map +1 -1
  43. package/models/components/creditnote.js +5 -5
  44. package/models/components/creditnote.js.map +1 -1
  45. package/models/components/{employeeinput.d.ts → employee.d.ts} +69 -69
  46. package/models/components/employee.d.ts.map +1 -0
  47. package/models/components/{employeeinput.js → employee.js} +66 -66
  48. package/models/components/employee.js.map +1 -0
  49. package/models/components/employeeschedules.d.ts +1 -1
  50. package/models/components/employeeschedules.d.ts.map +1 -1
  51. package/models/components/employeeschedules.js +3 -3
  52. package/models/components/employeeschedules.js.map +1 -1
  53. package/models/components/employeesfilter.d.ts +5 -0
  54. package/models/components/employeesfilter.d.ts.map +1 -1
  55. package/models/components/employeesfilter.js +2 -0
  56. package/models/components/employeesfilter.js.map +1 -1
  57. package/models/components/getbillpaymentresponse.d.ts +1 -1
  58. package/models/components/getbillpaymentresponse.d.ts.map +1 -1
  59. package/models/components/getbillpaymentresponse.js +3 -3
  60. package/models/components/getbillpaymentresponse.js.map +1 -1
  61. package/models/components/getbillpaymentsresponse.d.ts +1 -1
  62. package/models/components/getbillpaymentsresponse.d.ts.map +1 -1
  63. package/models/components/getbillpaymentsresponse.js +3 -3
  64. package/models/components/getbillpaymentsresponse.js.map +1 -1
  65. package/models/components/getbillresponse.d.ts +1 -1
  66. package/models/components/getbillresponse.d.ts.map +1 -1
  67. package/models/components/getbillresponse.js +3 -3
  68. package/models/components/getbillresponse.js.map +1 -1
  69. package/models/components/getbillsresponse.d.ts +1 -1
  70. package/models/components/getbillsresponse.d.ts.map +1 -1
  71. package/models/components/getbillsresponse.js +3 -3
  72. package/models/components/getbillsresponse.js.map +1 -1
  73. package/models/components/getcompaniesresponse.d.ts +1 -1
  74. package/models/components/getcompaniesresponse.d.ts.map +1 -1
  75. package/models/components/getcompaniesresponse.js +3 -3
  76. package/models/components/getcompaniesresponse.js.map +1 -1
  77. package/models/components/getcompanyresponse.d.ts +1 -1
  78. package/models/components/getcompanyresponse.d.ts.map +1 -1
  79. package/models/components/getcompanyresponse.js +3 -3
  80. package/models/components/getcompanyresponse.js.map +1 -1
  81. package/models/components/getconnectionresponse.d.ts +1 -1
  82. package/models/components/getconnectionresponse.d.ts.map +1 -1
  83. package/models/components/getconnectionresponse.js +3 -3
  84. package/models/components/getconnectionresponse.js.map +1 -1
  85. package/models/components/getconnectionsresponse.d.ts +1 -1
  86. package/models/components/getconnectionsresponse.d.ts.map +1 -1
  87. package/models/components/getconnectionsresponse.js +3 -3
  88. package/models/components/getconnectionsresponse.js.map +1 -1
  89. package/models/components/getemployeeresponse.d.ts +1 -1
  90. package/models/components/getemployeeresponse.d.ts.map +1 -1
  91. package/models/components/getemployeeresponse.js +3 -3
  92. package/models/components/getemployeeresponse.js.map +1 -1
  93. package/models/components/getemployeesresponse.d.ts +1 -1
  94. package/models/components/getemployeesresponse.d.ts.map +1 -1
  95. package/models/components/getemployeesresponse.js +3 -3
  96. package/models/components/getemployeesresponse.js.map +1 -1
  97. package/models/components/getmessageresponse.d.ts +1 -1
  98. package/models/components/getmessageresponse.d.ts.map +1 -1
  99. package/models/components/getmessageresponse.js +3 -3
  100. package/models/components/getmessageresponse.js.map +1 -1
  101. package/models/components/getmessagesresponse.d.ts +1 -1
  102. package/models/components/getmessagesresponse.d.ts.map +1 -1
  103. package/models/components/getmessagesresponse.js +3 -3
  104. package/models/components/getmessagesresponse.js.map +1 -1
  105. package/models/components/getticketresponse.d.ts +1 -1
  106. package/models/components/getticketresponse.d.ts.map +1 -1
  107. package/models/components/getticketresponse.js +3 -3
  108. package/models/components/getticketresponse.js.map +1 -1
  109. package/models/components/getticketsresponse.d.ts +1 -1
  110. package/models/components/getticketsresponse.d.ts.map +1 -1
  111. package/models/components/getticketsresponse.js +3 -3
  112. package/models/components/getticketsresponse.js.map +1 -1
  113. package/models/components/gettrackingcategoriesresponse.d.ts +1 -1
  114. package/models/components/gettrackingcategoriesresponse.d.ts.map +1 -1
  115. package/models/components/gettrackingcategoriesresponse.js +3 -3
  116. package/models/components/gettrackingcategoriesresponse.js.map +1 -1
  117. package/models/components/gettrackingcategoryresponse.d.ts +1 -1
  118. package/models/components/gettrackingcategoryresponse.d.ts.map +1 -1
  119. package/models/components/gettrackingcategoryresponse.js +3 -3
  120. package/models/components/gettrackingcategoryresponse.js.map +1 -1
  121. package/models/components/index.d.ts +10 -10
  122. package/models/components/index.d.ts.map +1 -1
  123. package/models/components/index.js +10 -10
  124. package/models/components/index.js.map +1 -1
  125. package/models/components/invoice.d.ts +1 -1
  126. package/models/components/invoice.d.ts.map +1 -1
  127. package/models/components/invoice.js +5 -5
  128. package/models/components/invoice.js.map +1 -1
  129. package/models/components/{invoicelineiteminput.d.ts → invoicelineitem.d.ts} +58 -55
  130. package/models/components/invoicelineitem.d.ts.map +1 -0
  131. package/models/components/{invoicelineiteminput.js → invoicelineitem.js} +55 -54
  132. package/models/components/invoicelineitem.js.map +1 -0
  133. package/models/components/{messageinput.d.ts → message.d.ts} +71 -71
  134. package/models/components/message.d.ts.map +1 -0
  135. package/models/components/{messageinput.js → message.js} +61 -61
  136. package/models/components/message.js.map +1 -0
  137. package/models/components/note.d.ts +5 -0
  138. package/models/components/note.d.ts.map +1 -1
  139. package/models/components/note.js +4 -0
  140. package/models/components/note.js.map +1 -1
  141. package/models/components/noteinput.d.ts +5 -0
  142. package/models/components/noteinput.d.ts.map +1 -1
  143. package/models/components/noteinput.js +4 -0
  144. package/models/components/noteinput.js.map +1 -1
  145. package/models/components/purchaseorder.d.ts +1 -1
  146. package/models/components/purchaseorder.d.ts.map +1 -1
  147. package/models/components/purchaseorder.js +5 -5
  148. package/models/components/purchaseorder.js.map +1 -1
  149. package/models/components/{ticketinput.d.ts → ticket.d.ts} +66 -66
  150. package/models/components/ticket.d.ts.map +1 -0
  151. package/models/components/{ticketinput.js → ticket.js} +59 -59
  152. package/models/components/ticket.js.map +1 -0
  153. package/models/components/{trackingcategoryinput.d.ts → trackingcategory.d.ts} +55 -55
  154. package/models/components/trackingcategory.d.ts.map +1 -0
  155. package/models/components/{trackingcategoryinput.js → trackingcategory.js} +52 -52
  156. package/models/components/trackingcategory.js.map +1 -0
  157. package/models/components/updateconnectionresponse.d.ts +1 -1
  158. package/models/components/updateconnectionresponse.d.ts.map +1 -1
  159. package/models/components/updateconnectionresponse.js +3 -3
  160. package/models/components/updateconnectionresponse.js.map +1 -1
  161. package/package.json +5 -1
  162. package/src/__tests__/activities.test.ts +783 -0
  163. package/src/__tests__/agedcreditors.test.ts +279 -0
  164. package/src/__tests__/ageddebtors.test.ts +279 -0
  165. package/src/__tests__/apideckcompanies.test.ts +712 -0
  166. package/src/__tests__/apideckcustomers.test.ts +360 -0
  167. package/src/__tests__/apideckdepartments.test.ts +319 -0
  168. package/src/__tests__/apiresources.test.ts +61 -0
  169. package/src/__tests__/apis.test.ts +214 -0
  170. package/src/__tests__/applicants.test.ts +976 -0
  171. package/src/__tests__/applications.test.ts +329 -0
  172. package/src/__tests__/assertions.ts +13 -0
  173. package/src/__tests__/attachments.test.ts +363 -0
  174. package/src/__tests__/balancesheet.test.ts +451 -0
  175. package/src/__tests__/billpayments.test.ts +666 -0
  176. package/src/__tests__/bills.test.ts +1133 -0
  177. package/src/__tests__/collections.test.ts +115 -0
  178. package/src/__tests__/collectiontags.test.ts +66 -0
  179. package/src/__tests__/collectionticketcomments.test.ts +318 -0
  180. package/src/__tests__/collectiontickets.test.ts +436 -0
  181. package/src/__tests__/collectionusers.test.ts +122 -0
  182. package/src/__tests__/companies.test.ts +1059 -0
  183. package/src/__tests__/companyinfo.test.ts +218 -0
  184. package/src/__tests__/connectioncustommappings.test.ts +67 -0
  185. package/src/__tests__/connections.test.ts +1713 -0
  186. package/src/__tests__/connectionsettings.test.ts +280 -0
  187. package/src/__tests__/connectordocs.test.ts +28 -0
  188. package/src/__tests__/connectors.test.ts +751 -0
  189. package/src/__tests__/consumerrequestcounts.test.ts +41 -0
  190. package/src/__tests__/consumers.test.ts +517 -0
  191. package/src/__tests__/contacts.test.ts +957 -0
  192. package/src/__tests__/createcallback.test.ts +34 -0
  193. package/src/__tests__/creditnotes.test.ts +1362 -0
  194. package/src/__tests__/customers.test.ts +1089 -0
  195. package/src/__tests__/customfields.test.ts +50 -0
  196. package/src/__tests__/custommappings.test.ts +63 -0
  197. package/src/__tests__/departments.test.ts +359 -0
  198. package/src/__tests__/drivegroups.test.ts +318 -0
  199. package/src/__tests__/drives.test.ts +311 -0
  200. package/src/__tests__/employeepayrolls.test.ts +487 -0
  201. package/src/__tests__/employees.test.ts +1682 -0
  202. package/src/__tests__/employeeschedules.test.ts +456 -0
  203. package/src/__tests__/eventlogs.test.ts +157 -0
  204. package/src/__tests__/expenses.test.ts +566 -0
  205. package/src/__tests__/files.test.ts +392 -0
  206. package/src/__tests__/files.ts +56 -0
  207. package/src/__tests__/folders.test.ts +103 -0
  208. package/src/__tests__/invoiceitems.test.ts +586 -0
  209. package/src/__tests__/invoices.test.ts +1561 -0
  210. package/src/__tests__/jobs.test.ts +837 -0
  211. package/src/__tests__/journalentries.test.ts +1053 -0
  212. package/src/__tests__/leads.test.ts +897 -0
  213. package/src/__tests__/ledgeraccounts.test.ts +594 -0
  214. package/src/__tests__/locations.test.ts +561 -0
  215. package/src/__tests__/logs.test.ts +135 -0
  216. package/src/__tests__/messages.test.ts +396 -0
  217. package/src/__tests__/mockserver/README.md +52 -0
  218. package/src/__tests__/notes.test.ts +335 -0
  219. package/src/__tests__/opportunities.test.ts +503 -0
  220. package/src/__tests__/orders.test.ts +849 -0
  221. package/src/__tests__/payments.test.ts +557 -0
  222. package/src/__tests__/payrolls.test.ts +481 -0
  223. package/src/__tests__/pipelines.test.ts +383 -0
  224. package/src/__tests__/products.test.ts +505 -0
  225. package/src/__tests__/profitandloss.test.ts +221 -0
  226. package/src/__tests__/purchaseorders.test.ts +1464 -0
  227. package/src/__tests__/sessions.test.ts +70 -0
  228. package/src/__tests__/sharedlinks.test.ts +331 -0
  229. package/src/__tests__/stores.test.ts +39 -0
  230. package/src/__tests__/subsidiaries.test.ts +316 -0
  231. package/src/__tests__/suppliers.test.ts +1071 -0
  232. package/src/__tests__/taxrates.test.ts +472 -0
  233. package/src/__tests__/testclient.ts +48 -0
  234. package/src/__tests__/timeoffrequests.test.ts +381 -0
  235. package/src/__tests__/trackingcategories.test.ts +329 -0
  236. package/src/__tests__/uploadsessions.test.ts +142 -0
  237. package/src/__tests__/users.test.ts +667 -0
  238. package/src/__tests__/validateconnection.test.ts +32 -0
  239. package/src/__tests__/webhooks.test.ts +248 -0
  240. package/src/lib/config.ts +4 -4
  241. package/src/lib/matchers.ts +20 -0
  242. package/src/lib/sdks.ts +8 -2
  243. package/src/models/components/accountingdepartment.ts +14 -0
  244. package/src/models/components/{billinput.ts → bill.ts} +248 -248
  245. package/src/models/components/createconnectionresponse.ts +1 -1
  246. package/src/models/components/creditnote.ts +1 -1
  247. package/src/models/components/employeeschedules.ts +1 -1
  248. package/src/models/components/employeesfilter.ts +7 -0
  249. package/src/models/components/getbillpaymentresponse.ts +1 -1
  250. package/src/models/components/getbillpaymentsresponse.ts +1 -1
  251. package/src/models/components/getbillresponse.ts +1 -1
  252. package/src/models/components/getbillsresponse.ts +1 -1
  253. package/src/models/components/getcompaniesresponse.ts +1 -1
  254. package/src/models/components/getcompanyresponse.ts +1 -1
  255. package/src/models/components/getconnectionresponse.ts +1 -1
  256. package/src/models/components/getconnectionsresponse.ts +1 -1
  257. package/src/models/components/getemployeeresponse.ts +1 -1
  258. package/src/models/components/getemployeesresponse.ts +1 -1
  259. package/src/models/components/getmessageresponse.ts +1 -1
  260. package/src/models/components/getmessagesresponse.ts +1 -1
  261. package/src/models/components/getticketresponse.ts +1 -1
  262. package/src/models/components/getticketsresponse.ts +1 -1
  263. package/src/models/components/gettrackingcategoriesresponse.ts +1 -1
  264. package/src/models/components/gettrackingcategoryresponse.ts +1 -1
  265. package/src/models/components/index.ts +10 -10
  266. package/src/models/components/invoice.ts +1 -1
  267. package/src/models/components/{invoicelineiteminput.ts → invoicelineitem.ts} +101 -100
  268. package/src/models/components/note.ts +9 -0
  269. package/src/models/components/noteinput.ts +9 -0
  270. package/src/models/components/purchaseorder.ts +1 -1
  271. package/src/models/components/updateconnectionresponse.ts +1 -1
  272. package/models/components/billinput.d.ts.map +0 -1
  273. package/models/components/billinput.js.map +0 -1
  274. package/models/components/billlineiteminput.d.ts.map +0 -1
  275. package/models/components/billlineiteminput.js.map +0 -1
  276. package/models/components/billpaymentinput.d.ts.map +0 -1
  277. package/models/components/billpaymentinput.js.map +0 -1
  278. package/models/components/companyinput.d.ts.map +0 -1
  279. package/models/components/companyinput.js.map +0 -1
  280. package/models/components/connectioninput.d.ts.map +0 -1
  281. package/models/components/connectioninput.js.map +0 -1
  282. package/models/components/employeeinput.d.ts.map +0 -1
  283. package/models/components/employeeinput.js.map +0 -1
  284. package/models/components/invoicelineiteminput.d.ts.map +0 -1
  285. package/models/components/invoicelineiteminput.js.map +0 -1
  286. package/models/components/messageinput.d.ts.map +0 -1
  287. package/models/components/messageinput.js.map +0 -1
  288. package/models/components/ticketinput.d.ts.map +0 -1
  289. package/models/components/ticketinput.js.map +0 -1
  290. package/models/components/trackingcategoryinput.d.ts.map +0 -1
  291. package/models/components/trackingcategoryinput.js.map +0 -1
  292. package/src/models/components/{billlineiteminput.ts → billlineitem.ts} +107 -107
  293. package/src/models/components/{billpaymentinput.ts → billpayment.ts} +183 -183
  294. package/src/models/components/{companyinput.ts → company.ts} +226 -226
  295. package/src/models/components/{connectioninput.ts → connection.ts} +355 -355
  296. package/src/models/components/{employeeinput.ts → employee.ts} +122 -122
  297. package/src/models/components/{messageinput.ts → message.ts} +133 -133
  298. package/src/models/components/{ticketinput.ts → ticket.ts} +125 -125
  299. package/src/models/components/{trackingcategoryinput.ts → trackingcategory.ts} +98 -98
@@ -0,0 +1,566 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { assert, expect, it, test } from "vitest";
6
+ import { Apideck } from "../index.js";
7
+ import { createTestHTTPClient } from "./testclient.js";
8
+
9
+ test("Expenses Accounting Expenses All", async () => {
10
+ const testHttpClient = createTestHTTPClient("accounting.expensesAll");
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.accounting.expenses.list({
19
+ serviceId: "salesforce",
20
+ });
21
+ expect(result.httpMeta.response.status).toBe(200);
22
+ expect(result.getExpensesResponse).toBeDefined();
23
+ expect(result.getExpensesResponse).toEqual({
24
+ statusCode: 200,
25
+ status: "OK",
26
+ service: "quickbooks",
27
+ resource: "Expenses",
28
+ operation: "all",
29
+ data: [
30
+ {
31
+ id: "12345",
32
+ number: "OIT00546",
33
+ transactionDate: new Date("2021-05-01T12:00:00.000Z"),
34
+ accountId: "123456",
35
+ customerId: "12345",
36
+ supplierId: "12345",
37
+ companyId: "12345",
38
+ departmentId: "12345",
39
+ paymentType: "cash",
40
+ currency: "USD",
41
+ currencyRate: 0.69,
42
+ type: "expense",
43
+ memo: "For travel expenses incurred on 2024-05-15",
44
+ taxRate: {
45
+ id: "123456",
46
+ code: "N-T",
47
+ name: "GST on Purchases",
48
+ rate: 10,
49
+ },
50
+ totalAmount: 275,
51
+ lineItems: [
52
+ {
53
+ id: "12345",
54
+ trackingCategories: [
55
+ {
56
+ id: "123456",
57
+ name: "New York",
58
+ },
59
+ {
60
+ id: "123456",
61
+ name: "New York",
62
+ },
63
+ {
64
+ id: "123456",
65
+ name: "New York",
66
+ },
67
+ ],
68
+ accountId: "123456",
69
+ customerId: "12345",
70
+ departmentId: "12345",
71
+ locationId: "12345",
72
+ subsidiaryId: "12345",
73
+ taxRate: {
74
+ id: "123456",
75
+ code: "N-T",
76
+ name: "GST on Purchases",
77
+ rate: 10,
78
+ },
79
+ description: "Travel US.",
80
+ totalAmount: 275,
81
+ billable: true,
82
+ },
83
+ {
84
+ id: "12345",
85
+ trackingCategories: [
86
+ {
87
+ id: "123456",
88
+ name: "New York",
89
+ },
90
+ ],
91
+ accountId: "123456",
92
+ customerId: "12345",
93
+ departmentId: "12345",
94
+ locationId: "12345",
95
+ subsidiaryId: "12345",
96
+ taxRate: {
97
+ id: "123456",
98
+ code: "N-T",
99
+ name: "GST on Purchases",
100
+ rate: 10,
101
+ },
102
+ description: "Travel US.",
103
+ totalAmount: 275,
104
+ billable: true,
105
+ },
106
+ ],
107
+ customFields: [
108
+ {
109
+ id: "2389328923893298",
110
+ name: "employee_level",
111
+ description: "Employee Level",
112
+ value: "Uses Salesforce and Marketo",
113
+ },
114
+ ],
115
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
116
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
117
+ rowVersion: "1-12345",
118
+ passThrough: [
119
+ {
120
+ serviceId: "<id>",
121
+ extendPaths: [
122
+ {
123
+ path: "$.nested.property",
124
+ value: {
125
+ "TaxClassificationRef": {
126
+ "value": "EUC-99990201-V1-00020000",
127
+ },
128
+ },
129
+ },
130
+ {
131
+ path: "$.nested.property",
132
+ value: {
133
+ "TaxClassificationRef": {
134
+ "value": "EUC-99990201-V1-00020000",
135
+ },
136
+ },
137
+ },
138
+ ],
139
+ },
140
+ {
141
+ serviceId: "<id>",
142
+ extendPaths: [
143
+ {
144
+ path: "$.nested.property",
145
+ value: {
146
+ "TaxClassificationRef": {
147
+ "value": "EUC-99990201-V1-00020000",
148
+ },
149
+ },
150
+ },
151
+ ],
152
+ },
153
+ ],
154
+ },
155
+ {
156
+ id: "12345",
157
+ number: "OIT00546",
158
+ transactionDate: new Date("2021-05-01T12:00:00.000Z"),
159
+ accountId: "123456",
160
+ customerId: "12345",
161
+ supplierId: "12345",
162
+ companyId: "12345",
163
+ departmentId: "12345",
164
+ paymentType: "cash",
165
+ currency: "USD",
166
+ currencyRate: 0.69,
167
+ type: "expense",
168
+ memo: "For travel expenses incurred on 2024-05-15",
169
+ taxRate: {
170
+ id: "123456",
171
+ code: "N-T",
172
+ name: "GST on Purchases",
173
+ rate: 10,
174
+ },
175
+ totalAmount: 275,
176
+ lineItems: [
177
+ {
178
+ id: "12345",
179
+ trackingCategories: [
180
+ {
181
+ id: "123456",
182
+ name: "New York",
183
+ },
184
+ ],
185
+ accountId: "123456",
186
+ customerId: "12345",
187
+ departmentId: "12345",
188
+ locationId: "12345",
189
+ subsidiaryId: "12345",
190
+ taxRate: {
191
+ id: "123456",
192
+ code: "N-T",
193
+ name: "GST on Purchases",
194
+ rate: 10,
195
+ },
196
+ description: "Travel US.",
197
+ totalAmount: 275,
198
+ billable: true,
199
+ },
200
+ {
201
+ id: "12345",
202
+ trackingCategories: [
203
+ {
204
+ id: "123456",
205
+ name: "New York",
206
+ },
207
+ ],
208
+ accountId: "123456",
209
+ customerId: "12345",
210
+ departmentId: "12345",
211
+ locationId: "12345",
212
+ subsidiaryId: "12345",
213
+ taxRate: {
214
+ id: "123456",
215
+ code: "N-T",
216
+ name: "GST on Purchases",
217
+ rate: 10,
218
+ },
219
+ description: "Travel US.",
220
+ totalAmount: 275,
221
+ billable: true,
222
+ },
223
+ ],
224
+ customFields: [
225
+ {
226
+ id: "2389328923893298",
227
+ name: "employee_level",
228
+ description: "Employee Level",
229
+ value: {},
230
+ },
231
+ {
232
+ id: "2389328923893298",
233
+ name: "employee_level",
234
+ description: "Employee Level",
235
+ value: {},
236
+ },
237
+ {
238
+ id: "2389328923893298",
239
+ name: "employee_level",
240
+ description: "Employee Level",
241
+ value: "Uses Salesforce and Marketo",
242
+ },
243
+ ],
244
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
245
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
246
+ rowVersion: "1-12345",
247
+ passThrough: [
248
+ {
249
+ serviceId: "<id>",
250
+ extendPaths: [
251
+ {
252
+ path: "$.nested.property",
253
+ value: {
254
+ "TaxClassificationRef": {
255
+ "value": "EUC-99990201-V1-00020000",
256
+ },
257
+ },
258
+ },
259
+ {
260
+ path: "$.nested.property",
261
+ value: {
262
+ "TaxClassificationRef": {
263
+ "value": "EUC-99990201-V1-00020000",
264
+ },
265
+ },
266
+ },
267
+ ],
268
+ },
269
+ ],
270
+ },
271
+ {
272
+ id: "12345",
273
+ number: "OIT00546",
274
+ transactionDate: new Date("2021-05-01T12:00:00.000Z"),
275
+ accountId: "123456",
276
+ customerId: "12345",
277
+ supplierId: "12345",
278
+ companyId: "12345",
279
+ departmentId: "12345",
280
+ paymentType: "cash",
281
+ currency: "USD",
282
+ currencyRate: 0.69,
283
+ type: "expense",
284
+ memo: "For travel expenses incurred on 2024-05-15",
285
+ taxRate: {
286
+ id: "123456",
287
+ code: "N-T",
288
+ name: "GST on Purchases",
289
+ rate: 10,
290
+ },
291
+ totalAmount: 275,
292
+ lineItems: [
293
+ {
294
+ id: "12345",
295
+ trackingCategories: [
296
+ {
297
+ id: "123456",
298
+ name: "New York",
299
+ },
300
+ ],
301
+ accountId: "123456",
302
+ customerId: "12345",
303
+ departmentId: "12345",
304
+ locationId: "12345",
305
+ subsidiaryId: "12345",
306
+ taxRate: {
307
+ id: "123456",
308
+ code: "N-T",
309
+ name: "GST on Purchases",
310
+ rate: 10,
311
+ },
312
+ description: "Travel US.",
313
+ totalAmount: 275,
314
+ billable: true,
315
+ },
316
+ ],
317
+ customFields: [
318
+ {
319
+ id: "2389328923893298",
320
+ name: "employee_level",
321
+ description: "Employee Level",
322
+ value: {},
323
+ },
324
+ {
325
+ id: "2389328923893298",
326
+ name: "employee_level",
327
+ description: "Employee Level",
328
+ value: [
329
+ {},
330
+ ],
331
+ },
332
+ {
333
+ id: "2389328923893298",
334
+ name: "employee_level",
335
+ description: "Employee Level",
336
+ value: "Uses Salesforce and Marketo",
337
+ },
338
+ ],
339
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
340
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
341
+ rowVersion: "1-12345",
342
+ passThrough: [
343
+ {
344
+ serviceId: "<id>",
345
+ extendPaths: [
346
+ {
347
+ path: "$.nested.property",
348
+ value: {
349
+ "TaxClassificationRef": {
350
+ "value": "EUC-99990201-V1-00020000",
351
+ },
352
+ },
353
+ },
354
+ {
355
+ path: "$.nested.property",
356
+ value: {
357
+ "TaxClassificationRef": {
358
+ "value": "EUC-99990201-V1-00020000",
359
+ },
360
+ },
361
+ },
362
+ {
363
+ path: "$.nested.property",
364
+ value: {
365
+ "TaxClassificationRef": {
366
+ "value": "EUC-99990201-V1-00020000",
367
+ },
368
+ },
369
+ },
370
+ ],
371
+ },
372
+ ],
373
+ },
374
+ ],
375
+ meta: {
376
+ itemsOnPage: 50,
377
+ cursors: {
378
+ previous: "em9oby1jcm06OnBhZ2U6OjE=",
379
+ current: "em9oby1jcm06OnBhZ2U6OjI=",
380
+ next: "em9oby1jcm06OnBhZ2U6OjM=",
381
+ },
382
+ },
383
+ links: {
384
+ previous:
385
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D",
386
+ current: "https://unify.apideck.com/crm/companies",
387
+ next:
388
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM",
389
+ },
390
+ });
391
+ });
392
+
393
+ it.skip("Expenses Accounting Expenses Add", async () => {
394
+ assert.fail(
395
+ "incomplete test found please make sure to address the following errors: [`workflow step accounting.expensesAdd.test referencing operation accounting.expensesAdd with expression in requestBody with type not currently supported`, `workflow step accounting.expensesAdd.test referencing operation accounting.expensesAdd with expression in requestBody with type not currently supported`, `workflow step accounting.expensesAdd.test referencing operation accounting.expensesAdd with expression in requestBody with type not currently supported`, `workflow step accounting.expensesAdd.test referencing operation accounting.expensesAdd with expression in requestBody with type not currently supported`, `workflow step accounting.expensesAdd.test referencing operation accounting.expensesAdd with expression in requestBody with type not currently supported`]",
396
+ );
397
+ });
398
+
399
+ test("Expenses Accounting Expenses One", async () => {
400
+ const testHttpClient = createTestHTTPClient("accounting.expensesOne");
401
+
402
+ const apideck = new Apideck({
403
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
404
+ httpClient: testHttpClient,
405
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
406
+ });
407
+
408
+ const result = await apideck.accounting.expenses.get({
409
+ id: "<id>",
410
+ serviceId: "salesforce",
411
+ });
412
+ expect(result.httpMeta.response.status).toBe(200);
413
+ expect(result.getExpenseResponse).toBeDefined();
414
+ expect(result.getExpenseResponse).toEqual({
415
+ statusCode: 200,
416
+ status: "OK",
417
+ service: "quickbooks",
418
+ resource: "Expenses",
419
+ operation: "one",
420
+ data: {
421
+ id: "12345",
422
+ number: "OIT00546",
423
+ transactionDate: new Date("2021-05-01T12:00:00.000Z"),
424
+ accountId: "123456",
425
+ customerId: "12345",
426
+ supplierId: "12345",
427
+ companyId: "12345",
428
+ departmentId: "12345",
429
+ paymentType: "cash",
430
+ currency: "USD",
431
+ currencyRate: 0.69,
432
+ type: "expense",
433
+ memo: "For travel expenses incurred on 2024-05-15",
434
+ taxRate: {
435
+ id: "123456",
436
+ code: "N-T",
437
+ name: "GST on Purchases",
438
+ rate: 10,
439
+ },
440
+ totalAmount: 275,
441
+ lineItems: [
442
+ {
443
+ id: "12345",
444
+ trackingCategories: [
445
+ {
446
+ id: "123456",
447
+ name: "New York",
448
+ },
449
+ {
450
+ id: "123456",
451
+ name: "New York",
452
+ },
453
+ ],
454
+ accountId: "123456",
455
+ customerId: "12345",
456
+ departmentId: "12345",
457
+ locationId: "12345",
458
+ subsidiaryId: "12345",
459
+ taxRate: {
460
+ id: "123456",
461
+ code: "N-T",
462
+ name: "GST on Purchases",
463
+ rate: 10,
464
+ },
465
+ description: "Travel US.",
466
+ totalAmount: 275,
467
+ billable: true,
468
+ },
469
+ {
470
+ id: "12345",
471
+ trackingCategories: [
472
+ {
473
+ id: "123456",
474
+ name: "New York",
475
+ },
476
+ {
477
+ id: "123456",
478
+ name: "New York",
479
+ },
480
+ ],
481
+ accountId: "123456",
482
+ customerId: "12345",
483
+ departmentId: "12345",
484
+ locationId: "12345",
485
+ subsidiaryId: "12345",
486
+ taxRate: {
487
+ id: "123456",
488
+ code: "N-T",
489
+ name: "GST on Purchases",
490
+ rate: 10,
491
+ },
492
+ description: "Travel US.",
493
+ totalAmount: 275,
494
+ billable: true,
495
+ },
496
+ ],
497
+ customFields: [
498
+ {
499
+ id: "2389328923893298",
500
+ name: "employee_level",
501
+ description: "Employee Level",
502
+ value: [
503
+ {},
504
+ ],
505
+ },
506
+ {
507
+ id: "2389328923893298",
508
+ name: "employee_level",
509
+ description: "Employee Level",
510
+ value: true,
511
+ },
512
+ ],
513
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
514
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
515
+ rowVersion: "1-12345",
516
+ passThrough: [
517
+ {
518
+ serviceId: "<id>",
519
+ extendPaths: [
520
+ {
521
+ path: "$.nested.property",
522
+ value: {
523
+ "TaxClassificationRef": {
524
+ "value": "EUC-99990201-V1-00020000",
525
+ },
526
+ },
527
+ },
528
+ ],
529
+ },
530
+ ],
531
+ },
532
+ });
533
+ });
534
+
535
+ it.skip("Expenses Accounting Expenses Update", async () => {
536
+ assert.fail(
537
+ "incomplete test found please make sure to address the following errors: [`workflow step accounting.expensesUpdate.test referencing operation accounting.expensesUpdate with expression in requestBody with type not currently supported`, `workflow step accounting.expensesUpdate.test referencing operation accounting.expensesUpdate with expression in requestBody with type not currently supported`, `workflow step accounting.expensesUpdate.test referencing operation accounting.expensesUpdate with expression in requestBody with type not currently supported`, `workflow step accounting.expensesUpdate.test referencing operation accounting.expensesUpdate with expression in requestBody with type not currently supported`]",
538
+ );
539
+ });
540
+
541
+ test("Expenses Accounting Expenses Delete", async () => {
542
+ const testHttpClient = createTestHTTPClient("accounting.expensesDelete");
543
+
544
+ const apideck = new Apideck({
545
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
546
+ httpClient: testHttpClient,
547
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
548
+ });
549
+
550
+ const result = await apideck.accounting.expenses.delete({
551
+ id: "<id>",
552
+ serviceId: "salesforce",
553
+ });
554
+ expect(result.httpMeta.response.status).toBe(200);
555
+ expect(result.deleteExpenseResponse).toBeDefined();
556
+ expect(result.deleteExpenseResponse).toEqual({
557
+ statusCode: 200,
558
+ status: "OK",
559
+ service: "quickbooks",
560
+ resource: "Expenses",
561
+ operation: "delete",
562
+ data: {
563
+ id: "12345",
564
+ },
565
+ });
566
+ });