@apideck/unify 0.23.1 → 0.23.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/README.md +26 -0
  2. package/docs/sdks/bankfeedaccounts/README.md +571 -0
  3. package/docs/sdks/bankfeedstatements/README.md +605 -0
  4. package/funcs/accountingBankFeedAccountsCreate.d.ts +17 -0
  5. package/funcs/accountingBankFeedAccountsCreate.d.ts.map +1 -0
  6. package/funcs/accountingBankFeedAccountsCreate.js +123 -0
  7. package/funcs/accountingBankFeedAccountsCreate.js.map +1 -0
  8. package/funcs/accountingBankFeedAccountsDelete.d.ts +17 -0
  9. package/funcs/accountingBankFeedAccountsDelete.d.ts.map +1 -0
  10. package/funcs/accountingBankFeedAccountsDelete.js +128 -0
  11. package/funcs/accountingBankFeedAccountsDelete.js.map +1 -0
  12. package/funcs/accountingBankFeedAccountsGet.d.ts +17 -0
  13. package/funcs/accountingBankFeedAccountsGet.d.ts.map +1 -0
  14. package/funcs/accountingBankFeedAccountsGet.js +129 -0
  15. package/funcs/accountingBankFeedAccountsGet.js.map +1 -0
  16. package/funcs/accountingBankFeedAccountsList.d.ts +20 -0
  17. package/funcs/accountingBankFeedAccountsList.d.ts.map +1 -0
  18. package/funcs/accountingBankFeedAccountsList.js +149 -0
  19. package/funcs/accountingBankFeedAccountsList.js.map +1 -0
  20. package/funcs/accountingBankFeedAccountsUpdate.d.ts +17 -0
  21. package/funcs/accountingBankFeedAccountsUpdate.d.ts.map +1 -0
  22. package/funcs/accountingBankFeedAccountsUpdate.js +129 -0
  23. package/funcs/accountingBankFeedAccountsUpdate.js.map +1 -0
  24. package/funcs/accountingBankFeedStatementsCreate.d.ts +17 -0
  25. package/funcs/accountingBankFeedStatementsCreate.d.ts.map +1 -0
  26. package/funcs/accountingBankFeedStatementsCreate.js +123 -0
  27. package/funcs/accountingBankFeedStatementsCreate.js.map +1 -0
  28. package/funcs/accountingBankFeedStatementsDelete.d.ts +17 -0
  29. package/funcs/accountingBankFeedStatementsDelete.d.ts.map +1 -0
  30. package/funcs/accountingBankFeedStatementsDelete.js +128 -0
  31. package/funcs/accountingBankFeedStatementsDelete.js.map +1 -0
  32. package/funcs/accountingBankFeedStatementsGet.d.ts +17 -0
  33. package/funcs/accountingBankFeedStatementsGet.d.ts.map +1 -0
  34. package/funcs/accountingBankFeedStatementsGet.js +129 -0
  35. package/funcs/accountingBankFeedStatementsGet.js.map +1 -0
  36. package/funcs/accountingBankFeedStatementsList.d.ts +20 -0
  37. package/funcs/accountingBankFeedStatementsList.d.ts.map +1 -0
  38. package/funcs/accountingBankFeedStatementsList.js +149 -0
  39. package/funcs/accountingBankFeedStatementsList.js.map +1 -0
  40. package/funcs/accountingBankFeedStatementsUpdate.d.ts +17 -0
  41. package/funcs/accountingBankFeedStatementsUpdate.d.ts.map +1 -0
  42. package/funcs/accountingBankFeedStatementsUpdate.js +129 -0
  43. package/funcs/accountingBankFeedStatementsUpdate.js.map +1 -0
  44. package/jsr.json +1 -1
  45. package/lib/config.d.ts +4 -4
  46. package/lib/config.js +4 -4
  47. package/lib/sdks.d.ts +3 -1
  48. package/lib/sdks.d.ts.map +1 -1
  49. package/lib/sdks.js +6 -11
  50. package/lib/sdks.js.map +1 -1
  51. package/models/components/bankfeedaccount.d.ts +230 -0
  52. package/models/components/bankfeedaccount.d.ts.map +1 -0
  53. package/models/components/bankfeedaccount.js +229 -0
  54. package/models/components/bankfeedaccount.js.map +1 -0
  55. package/models/components/bankfeedstatement.d.ts +307 -0
  56. package/models/components/bankfeedstatement.d.ts.map +1 -0
  57. package/models/components/bankfeedstatement.js +286 -0
  58. package/models/components/bankfeedstatement.js.map +1 -0
  59. package/models/components/createbankfeedaccountresponse.d.ts +70 -0
  60. package/models/components/createbankfeedaccountresponse.d.ts.map +1 -0
  61. package/models/components/createbankfeedaccountresponse.js +83 -0
  62. package/models/components/createbankfeedaccountresponse.js.map +1 -0
  63. package/models/components/createbankfeedstatementresponse.d.ts +70 -0
  64. package/models/components/createbankfeedstatementresponse.d.ts.map +1 -0
  65. package/models/components/createbankfeedstatementresponse.js +83 -0
  66. package/models/components/createbankfeedstatementresponse.js.map +1 -0
  67. package/models/components/creditordebit.d.ts +34 -0
  68. package/models/components/creditordebit.d.ts.map +1 -0
  69. package/models/components/creditordebit.js +53 -0
  70. package/models/components/creditordebit.js.map +1 -0
  71. package/models/components/deletebankfeedaccountresponse.d.ts +70 -0
  72. package/models/components/deletebankfeedaccountresponse.d.ts.map +1 -0
  73. package/models/components/deletebankfeedaccountresponse.js +83 -0
  74. package/models/components/deletebankfeedaccountresponse.js.map +1 -0
  75. package/models/components/deletebankfeedstatementresponse.d.ts +70 -0
  76. package/models/components/deletebankfeedstatementresponse.d.ts.map +1 -0
  77. package/models/components/deletebankfeedstatementresponse.js +83 -0
  78. package/models/components/deletebankfeedstatementresponse.js.map +1 -0
  79. package/models/components/ecommerceorderlineitem.d.ts +2 -2
  80. package/models/components/ecommerceorderlineitem.d.ts.map +1 -1
  81. package/models/components/ecommerceorderlineitem.js +2 -2
  82. package/models/components/ecommerceorderlineitem.js.map +1 -1
  83. package/models/components/getbankfeedaccountresponse.d.ts +67 -0
  84. package/models/components/getbankfeedaccountresponse.d.ts.map +1 -0
  85. package/models/components/getbankfeedaccountresponse.js +83 -0
  86. package/models/components/getbankfeedaccountresponse.js.map +1 -0
  87. package/models/components/getbankfeedaccountsresponse.d.ts +79 -0
  88. package/models/components/getbankfeedaccountsresponse.d.ts.map +1 -0
  89. package/models/components/getbankfeedaccountsresponse.js +89 -0
  90. package/models/components/getbankfeedaccountsresponse.js.map +1 -0
  91. package/models/components/getbankfeedstatementresponse.d.ts +67 -0
  92. package/models/components/getbankfeedstatementresponse.d.ts.map +1 -0
  93. package/models/components/getbankfeedstatementresponse.js +83 -0
  94. package/models/components/getbankfeedstatementresponse.js.map +1 -0
  95. package/models/components/getbankfeedstatementsresponse.d.ts +79 -0
  96. package/models/components/getbankfeedstatementsresponse.d.ts.map +1 -0
  97. package/models/components/getbankfeedstatementsresponse.js +89 -0
  98. package/models/components/getbankfeedstatementsresponse.js.map +1 -0
  99. package/models/components/index.d.ts +13 -0
  100. package/models/components/index.d.ts.map +1 -1
  101. package/models/components/index.js +13 -0
  102. package/models/components/index.js.map +1 -1
  103. package/models/components/updatebankfeedaccountresponse.d.ts +70 -0
  104. package/models/components/updatebankfeedaccountresponse.d.ts.map +1 -0
  105. package/models/components/updatebankfeedaccountresponse.js +83 -0
  106. package/models/components/updatebankfeedaccountresponse.js.map +1 -0
  107. package/models/components/updatebankfeedstatementresponse.d.ts +70 -0
  108. package/models/components/updatebankfeedstatementresponse.d.ts.map +1 -0
  109. package/models/components/updatebankfeedstatementresponse.js +83 -0
  110. package/models/components/updatebankfeedstatementresponse.js.map +1 -0
  111. package/models/operations/accountingbankfeedaccountsadd.d.ts +118 -0
  112. package/models/operations/accountingbankfeedaccountsadd.d.ts.map +1 -0
  113. package/models/operations/accountingbankfeedaccountsadd.js +153 -0
  114. package/models/operations/accountingbankfeedaccountsadd.js.map +1 -0
  115. package/models/operations/accountingbankfeedaccountsall.d.ts +140 -0
  116. package/models/operations/accountingbankfeedaccountsall.d.ts.map +1 -0
  117. package/models/operations/accountingbankfeedaccountsall.js +159 -0
  118. package/models/operations/accountingbankfeedaccountsall.js.map +1 -0
  119. package/models/operations/accountingbankfeedaccountsdelete.d.ts +121 -0
  120. package/models/operations/accountingbankfeedaccountsdelete.d.ts.map +1 -0
  121. package/models/operations/accountingbankfeedaccountsdelete.js +145 -0
  122. package/models/operations/accountingbankfeedaccountsdelete.js.map +1 -0
  123. package/models/operations/accountingbankfeedaccountsone.d.ts +126 -0
  124. package/models/operations/accountingbankfeedaccountsone.d.ts.map +1 -0
  125. package/models/operations/accountingbankfeedaccountsone.js +147 -0
  126. package/models/operations/accountingbankfeedaccountsone.js.map +1 -0
  127. package/models/operations/accountingbankfeedaccountsupdate.d.ts +123 -0
  128. package/models/operations/accountingbankfeedaccountsupdate.d.ts.map +1 -0
  129. package/models/operations/accountingbankfeedaccountsupdate.js +155 -0
  130. package/models/operations/accountingbankfeedaccountsupdate.js.map +1 -0
  131. package/models/operations/accountingbankfeedstatementsadd.d.ts +118 -0
  132. package/models/operations/accountingbankfeedstatementsadd.d.ts.map +1 -0
  133. package/models/operations/accountingbankfeedstatementsadd.js +153 -0
  134. package/models/operations/accountingbankfeedstatementsadd.js.map +1 -0
  135. package/models/operations/accountingbankfeedstatementsall.d.ts +140 -0
  136. package/models/operations/accountingbankfeedstatementsall.d.ts.map +1 -0
  137. package/models/operations/accountingbankfeedstatementsall.js +159 -0
  138. package/models/operations/accountingbankfeedstatementsall.js.map +1 -0
  139. package/models/operations/accountingbankfeedstatementsdelete.d.ts +121 -0
  140. package/models/operations/accountingbankfeedstatementsdelete.d.ts.map +1 -0
  141. package/models/operations/accountingbankfeedstatementsdelete.js +145 -0
  142. package/models/operations/accountingbankfeedstatementsdelete.js.map +1 -0
  143. package/models/operations/accountingbankfeedstatementsone.d.ts +126 -0
  144. package/models/operations/accountingbankfeedstatementsone.d.ts.map +1 -0
  145. package/models/operations/accountingbankfeedstatementsone.js +147 -0
  146. package/models/operations/accountingbankfeedstatementsone.js.map +1 -0
  147. package/models/operations/accountingbankfeedstatementsupdate.d.ts +123 -0
  148. package/models/operations/accountingbankfeedstatementsupdate.d.ts.map +1 -0
  149. package/models/operations/accountingbankfeedstatementsupdate.js +155 -0
  150. package/models/operations/accountingbankfeedstatementsupdate.js.map +1 -0
  151. package/models/operations/index.d.ts +10 -0
  152. package/models/operations/index.d.ts.map +1 -1
  153. package/models/operations/index.js +10 -0
  154. package/models/operations/index.js.map +1 -1
  155. package/package.json +1 -1
  156. package/sdk/accounting.d.ts +6 -0
  157. package/sdk/accounting.d.ts.map +1 -1
  158. package/sdk/accounting.js +8 -0
  159. package/sdk/accounting.js.map +1 -1
  160. package/sdk/bankfeedaccounts.d.ts +43 -0
  161. package/sdk/bankfeedaccounts.d.ts.map +1 -0
  162. package/sdk/bankfeedaccounts.js +63 -0
  163. package/sdk/bankfeedaccounts.js.map +1 -0
  164. package/sdk/bankfeedstatements.d.ts +43 -0
  165. package/sdk/bankfeedstatements.d.ts.map +1 -0
  166. package/sdk/bankfeedstatements.js +63 -0
  167. package/sdk/bankfeedstatements.js.map +1 -0
  168. package/src/__tests__/bankfeedaccounts.test.ts +333 -0
  169. package/src/__tests__/bankfeedstatements.test.ts +398 -0
  170. package/src/funcs/accountingBankFeedAccountsCreate.ts +221 -0
  171. package/src/funcs/accountingBankFeedAccountsDelete.ts +227 -0
  172. package/src/funcs/accountingBankFeedAccountsGet.ts +228 -0
  173. package/src/funcs/accountingBankFeedAccountsList.ts +295 -0
  174. package/src/funcs/accountingBankFeedAccountsUpdate.ts +228 -0
  175. package/src/funcs/accountingBankFeedStatementsCreate.ts +221 -0
  176. package/src/funcs/accountingBankFeedStatementsDelete.ts +227 -0
  177. package/src/funcs/accountingBankFeedStatementsGet.ts +228 -0
  178. package/src/funcs/accountingBankFeedStatementsList.ts +295 -0
  179. package/src/funcs/accountingBankFeedStatementsUpdate.ts +228 -0
  180. package/src/lib/config.ts +4 -4
  181. package/src/lib/sdks.ts +11 -11
  182. package/src/models/components/bankfeedaccount.ts +413 -0
  183. package/src/models/components/bankfeedstatement.ts +535 -0
  184. package/src/models/components/createbankfeedaccountresponse.ts +133 -0
  185. package/src/models/components/createbankfeedstatementresponse.ts +133 -0
  186. package/src/models/components/creditordebit.ts +39 -0
  187. package/src/models/components/deletebankfeedaccountresponse.ts +133 -0
  188. package/src/models/components/deletebankfeedstatementresponse.ts +133 -0
  189. package/src/models/components/ecommerceorderlineitem.ts +4 -4
  190. package/src/models/components/getbankfeedaccountresponse.ts +128 -0
  191. package/src/models/components/getbankfeedaccountsresponse.ts +156 -0
  192. package/src/models/components/getbankfeedstatementresponse.ts +130 -0
  193. package/src/models/components/getbankfeedstatementsresponse.ts +156 -0
  194. package/src/models/components/index.ts +13 -0
  195. package/src/models/components/updatebankfeedaccountresponse.ts +133 -0
  196. package/src/models/components/updatebankfeedstatementresponse.ts +133 -0
  197. package/src/models/operations/accountingbankfeedaccountsadd.ts +281 -0
  198. package/src/models/operations/accountingbankfeedaccountsall.ts +305 -0
  199. package/src/models/operations/accountingbankfeedaccountsdelete.ts +294 -0
  200. package/src/models/operations/accountingbankfeedaccountsone.ts +283 -0
  201. package/src/models/operations/accountingbankfeedaccountsupdate.ts +306 -0
  202. package/src/models/operations/accountingbankfeedstatementsadd.ts +289 -0
  203. package/src/models/operations/accountingbankfeedstatementsall.ts +313 -0
  204. package/src/models/operations/accountingbankfeedstatementsdelete.ts +295 -0
  205. package/src/models/operations/accountingbankfeedstatementsone.ts +291 -0
  206. package/src/models/operations/accountingbankfeedstatementsupdate.ts +307 -0
  207. package/src/models/operations/index.ts +10 -0
  208. package/src/sdk/accounting.ts +12 -0
  209. package/src/sdk/bankfeedaccounts.ts +105 -0
  210. package/src/sdk/bankfeedstatements.ts +105 -0
@@ -0,0 +1,398 @@
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("Bankfeedstatements Accounting Bank Feed Statements All", async () => {
10
+ const testHttpClient = createTestHTTPClient(
11
+ "accounting.bankFeedStatementsAll",
12
+ );
13
+
14
+ const apideck = new Apideck({
15
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
16
+ httpClient: testHttpClient,
17
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
18
+ });
19
+
20
+ const result = await apideck.accounting.bankFeedStatements.list({
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.getBankFeedStatementsResponse).toBeDefined();
29
+ expect(result.getBankFeedStatementsResponse).toEqual({
30
+ statusCode: 200,
31
+ status: "OK",
32
+ service: "quickbooks",
33
+ resource: "bank-feed-statements",
34
+ operation: "all",
35
+ data: [
36
+ {
37
+ id: "12345",
38
+ bankFeedAccountId: "acc_456",
39
+ status: "pending",
40
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
41
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
42
+ startBalance: 10500.25,
43
+ startBalanceCreditOrDebit: "debit",
44
+ endBalance: 9800.5,
45
+ endBalanceCreditOrDebit: "debit",
46
+ transactions: [
47
+ {
48
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
49
+ description: "Payment received from ACME Corp",
50
+ amount: 250,
51
+ creditOrDebit: "debit",
52
+ sourceTransactionId: "txn_987",
53
+ counterparty: "ACME Corp",
54
+ reference: "INV-2025-01",
55
+ transactionType: "payment",
56
+ },
57
+ {
58
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
59
+ description: "Payment received from ACME Corp",
60
+ amount: 250,
61
+ creditOrDebit: "debit",
62
+ sourceTransactionId: "txn_987",
63
+ counterparty: "ACME Corp",
64
+ reference: "INV-2025-01",
65
+ transactionType: "payment",
66
+ },
67
+ ],
68
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
69
+ createdBy: "12345",
70
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
71
+ updatedBy: "12345",
72
+ },
73
+ {
74
+ id: "12345",
75
+ bankFeedAccountId: "acc_456",
76
+ status: "pending",
77
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
78
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
79
+ startBalance: 10500.25,
80
+ startBalanceCreditOrDebit: "debit",
81
+ endBalance: 9800.5,
82
+ endBalanceCreditOrDebit: "debit",
83
+ transactions: [
84
+ {
85
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
86
+ description: "Payment received from ACME Corp",
87
+ amount: 250,
88
+ creditOrDebit: "debit",
89
+ sourceTransactionId: "txn_987",
90
+ counterparty: "ACME Corp",
91
+ reference: "INV-2025-01",
92
+ transactionType: "payment",
93
+ },
94
+ {
95
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
96
+ description: "Payment received from ACME Corp",
97
+ amount: 250,
98
+ creditOrDebit: "debit",
99
+ sourceTransactionId: "txn_987",
100
+ counterparty: "ACME Corp",
101
+ reference: "INV-2025-01",
102
+ transactionType: "payment",
103
+ },
104
+ {
105
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
106
+ description: "Payment received from ACME Corp",
107
+ amount: 250,
108
+ creditOrDebit: "debit",
109
+ sourceTransactionId: "txn_987",
110
+ counterparty: "ACME Corp",
111
+ reference: "INV-2025-01",
112
+ transactionType: "payment",
113
+ },
114
+ ],
115
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
116
+ createdBy: "12345",
117
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
118
+ updatedBy: "12345",
119
+ },
120
+ {
121
+ id: "12345",
122
+ bankFeedAccountId: "acc_456",
123
+ status: "pending",
124
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
125
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
126
+ startBalance: 10500.25,
127
+ startBalanceCreditOrDebit: "debit",
128
+ endBalance: 9800.5,
129
+ endBalanceCreditOrDebit: "debit",
130
+ transactions: [
131
+ {
132
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
133
+ description: "Payment received from ACME Corp",
134
+ amount: 250,
135
+ creditOrDebit: "debit",
136
+ sourceTransactionId: "txn_987",
137
+ counterparty: "ACME Corp",
138
+ reference: "INV-2025-01",
139
+ transactionType: "payment",
140
+ },
141
+ ],
142
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
143
+ createdBy: "12345",
144
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
145
+ updatedBy: "12345",
146
+ },
147
+ ],
148
+ meta: {
149
+ itemsOnPage: 50,
150
+ cursors: {
151
+ previous: "em9oby1jcm06OnBhZ2U6OjE=",
152
+ current: "em9oby1jcm06OnBhZ2U6OjI=",
153
+ next: "em9oby1jcm06OnBhZ2U6OjM=",
154
+ },
155
+ },
156
+ links: {
157
+ previous:
158
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D",
159
+ current: "https://unify.apideck.com/crm/companies",
160
+ next:
161
+ "https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM",
162
+ },
163
+ });
164
+ });
165
+
166
+ test("Bankfeedstatements Accounting Bank Feed Statements Add", async () => {
167
+ const testHttpClient = createTestHTTPClient(
168
+ "accounting.bankFeedStatementsAdd",
169
+ );
170
+
171
+ const apideck = new Apideck({
172
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
173
+ httpClient: testHttpClient,
174
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
175
+ });
176
+
177
+ const result = await apideck.accounting.bankFeedStatements.create({
178
+ serviceId: "salesforce",
179
+ bankFeedStatement: {
180
+ bankFeedAccountId: "acc_456",
181
+ status: "pending",
182
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
183
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
184
+ startBalance: 10500.25,
185
+ startBalanceCreditOrDebit: "debit",
186
+ endBalance: 9800.5,
187
+ endBalanceCreditOrDebit: "debit",
188
+ transactions: [
189
+ {
190
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
191
+ description: "Payment received from ACME Corp",
192
+ amount: 250,
193
+ creditOrDebit: "debit",
194
+ sourceTransactionId: "txn_987",
195
+ counterparty: "ACME Corp",
196
+ reference: "INV-2025-01",
197
+ transactionType: "payment",
198
+ },
199
+ {
200
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
201
+ description: "Payment received from ACME Corp",
202
+ amount: 250,
203
+ creditOrDebit: "debit",
204
+ sourceTransactionId: "txn_987",
205
+ counterparty: "ACME Corp",
206
+ reference: "INV-2025-01",
207
+ transactionType: "payment",
208
+ },
209
+ ],
210
+ },
211
+ });
212
+ expect(result.httpMeta.response.status).toBe(201);
213
+ expect(result.createBankFeedStatementResponse).toBeDefined();
214
+ expect(result.createBankFeedStatementResponse).toEqual({
215
+ statusCode: 200,
216
+ status: "OK",
217
+ service: "xero",
218
+ resource: "bills",
219
+ operation: "add",
220
+ data: {
221
+ id: "12345",
222
+ },
223
+ });
224
+ });
225
+
226
+ test("Bankfeedstatements Accounting Bank Feed Statements One", async () => {
227
+ const testHttpClient = createTestHTTPClient(
228
+ "accounting.bankFeedStatementsOne",
229
+ );
230
+
231
+ const apideck = new Apideck({
232
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
233
+ httpClient: testHttpClient,
234
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
235
+ });
236
+
237
+ const result = await apideck.accounting.bankFeedStatements.get({
238
+ id: "<id>",
239
+ serviceId: "salesforce",
240
+ fields: "id,updated_at",
241
+ });
242
+ expect(result.httpMeta.response.status).toBe(200);
243
+ expect(result.getBankFeedStatementResponse).toBeDefined();
244
+ expect(result.getBankFeedStatementResponse).toEqual({
245
+ statusCode: 200,
246
+ status: "OK",
247
+ service: "quickbooks",
248
+ resource: "bank-feed-statements",
249
+ operation: "one",
250
+ data: {
251
+ id: "12345",
252
+ bankFeedAccountId: "acc_456",
253
+ status: "pending",
254
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
255
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
256
+ startBalance: 10500.25,
257
+ startBalanceCreditOrDebit: "debit",
258
+ endBalance: 9800.5,
259
+ endBalanceCreditOrDebit: "debit",
260
+ transactions: [
261
+ {
262
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
263
+ description: "Payment received from ACME Corp",
264
+ amount: 250,
265
+ creditOrDebit: "debit",
266
+ sourceTransactionId: "txn_987",
267
+ counterparty: "ACME Corp",
268
+ reference: "INV-2025-01",
269
+ transactionType: "payment",
270
+ },
271
+ {
272
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
273
+ description: "Payment received from ACME Corp",
274
+ amount: 250,
275
+ creditOrDebit: "debit",
276
+ sourceTransactionId: "txn_987",
277
+ counterparty: "ACME Corp",
278
+ reference: "INV-2025-01",
279
+ transactionType: "payment",
280
+ },
281
+ {
282
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
283
+ description: "Payment received from ACME Corp",
284
+ amount: 250,
285
+ creditOrDebit: "debit",
286
+ sourceTransactionId: "txn_987",
287
+ counterparty: "ACME Corp",
288
+ reference: "INV-2025-01",
289
+ transactionType: "payment",
290
+ },
291
+ ],
292
+ createdAt: new Date("2020-09-30T07:43:32.000Z"),
293
+ createdBy: "12345",
294
+ updatedAt: new Date("2020-09-30T07:43:32.000Z"),
295
+ updatedBy: "12345",
296
+ },
297
+ });
298
+ });
299
+
300
+ test("Bankfeedstatements Accounting Bank Feed Statements Update", async () => {
301
+ const testHttpClient = createTestHTTPClient(
302
+ "accounting.bankFeedStatementsUpdate",
303
+ );
304
+
305
+ const apideck = new Apideck({
306
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
307
+ httpClient: testHttpClient,
308
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
309
+ });
310
+
311
+ const result = await apideck.accounting.bankFeedStatements.update({
312
+ id: "<id>",
313
+ serviceId: "salesforce",
314
+ bankFeedStatement: {
315
+ bankFeedAccountId: "acc_456",
316
+ status: "pending",
317
+ startDate: new Date("2021-05-01T12:00:00.000Z"),
318
+ endDate: new Date("2025-01-31T12:00:00.000Z"),
319
+ startBalance: 10500.25,
320
+ startBalanceCreditOrDebit: "debit",
321
+ endBalance: 9800.5,
322
+ endBalanceCreditOrDebit: "debit",
323
+ transactions: [
324
+ {
325
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
326
+ description: "Payment received from ACME Corp",
327
+ amount: 250,
328
+ creditOrDebit: "debit",
329
+ sourceTransactionId: "txn_987",
330
+ counterparty: "ACME Corp",
331
+ reference: "INV-2025-01",
332
+ transactionType: "payment",
333
+ },
334
+ {
335
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
336
+ description: "Payment received from ACME Corp",
337
+ amount: 250,
338
+ creditOrDebit: "debit",
339
+ sourceTransactionId: "txn_987",
340
+ counterparty: "ACME Corp",
341
+ reference: "INV-2025-01",
342
+ transactionType: "payment",
343
+ },
344
+ {
345
+ postedDate: new Date("2025-01-15T12:00:00.000Z"),
346
+ description: "Payment received from ACME Corp",
347
+ amount: 250,
348
+ creditOrDebit: "debit",
349
+ sourceTransactionId: "txn_987",
350
+ counterparty: "ACME Corp",
351
+ reference: "INV-2025-01",
352
+ transactionType: "payment",
353
+ },
354
+ ],
355
+ },
356
+ });
357
+ expect(result.httpMeta.response.status).toBe(200);
358
+ expect(result.updateBankFeedStatementResponse).toBeDefined();
359
+ expect(result.updateBankFeedStatementResponse).toEqual({
360
+ statusCode: 200,
361
+ status: "OK",
362
+ service: "quickbooks",
363
+ resource: "bank-feed-statements",
364
+ operation: "update",
365
+ data: {
366
+ id: "12345",
367
+ },
368
+ });
369
+ });
370
+
371
+ test("Bankfeedstatements Accounting Bank Feed Statements Delete", async () => {
372
+ const testHttpClient = createTestHTTPClient(
373
+ "accounting.bankFeedStatementsDelete",
374
+ );
375
+
376
+ const apideck = new Apideck({
377
+ serverURL: process.env["TEST_SERVER_URL"] ?? "http://localhost:18080",
378
+ httpClient: testHttpClient,
379
+ apiKey: process.env["APIDECK_API_KEY"] ?? "value",
380
+ });
381
+
382
+ const result = await apideck.accounting.bankFeedStatements.delete({
383
+ id: "<id>",
384
+ serviceId: "salesforce",
385
+ });
386
+ expect(result.httpMeta.response.status).toBe(200);
387
+ expect(result.deleteBankFeedStatementResponse).toBeDefined();
388
+ expect(result.deleteBankFeedStatementResponse).toEqual({
389
+ statusCode: 200,
390
+ status: "OK",
391
+ service: "quickbooks",
392
+ resource: "bank-feed-statements",
393
+ operation: "delete",
394
+ data: {
395
+ id: "12345",
396
+ },
397
+ });
398
+ });
@@ -0,0 +1,221 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { ApideckCore } from "../core.js";
6
+ import { encodeFormQuery, encodeJSON, encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import { APIError } from "../models/errors/apierror.js";
14
+ import {
15
+ ConnectionError,
16
+ InvalidRequestError,
17
+ RequestAbortedError,
18
+ RequestTimeoutError,
19
+ UnexpectedClientError,
20
+ } from "../models/errors/httpclienterrors.js";
21
+ import * as errors from "../models/errors/index.js";
22
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
23
+ import * as operations from "../models/operations/index.js";
24
+ import { APICall, APIPromise } from "../types/async.js";
25
+ import { Result } from "../types/fp.js";
26
+
27
+ /**
28
+ * Create Bank Feed Account
29
+ *
30
+ * @remarks
31
+ * Create Bank Feed Account
32
+ */
33
+ export function accountingBankFeedAccountsCreate(
34
+ client: ApideckCore,
35
+ request: operations.AccountingBankFeedAccountsAddRequest,
36
+ options?: RequestOptions,
37
+ ): APIPromise<
38
+ Result<
39
+ operations.AccountingBankFeedAccountsAddResponse,
40
+ | errors.BadRequestResponse
41
+ | errors.UnauthorizedResponse
42
+ | errors.PaymentRequiredResponse
43
+ | errors.NotFoundResponse
44
+ | errors.UnprocessableResponse
45
+ | APIError
46
+ | SDKValidationError
47
+ | UnexpectedClientError
48
+ | InvalidRequestError
49
+ | RequestAbortedError
50
+ | RequestTimeoutError
51
+ | ConnectionError
52
+ >
53
+ > {
54
+ return new APIPromise($do(
55
+ client,
56
+ request,
57
+ options,
58
+ ));
59
+ }
60
+
61
+ async function $do(
62
+ client: ApideckCore,
63
+ request: operations.AccountingBankFeedAccountsAddRequest,
64
+ options?: RequestOptions,
65
+ ): Promise<
66
+ [
67
+ Result<
68
+ operations.AccountingBankFeedAccountsAddResponse,
69
+ | errors.BadRequestResponse
70
+ | errors.UnauthorizedResponse
71
+ | errors.PaymentRequiredResponse
72
+ | errors.NotFoundResponse
73
+ | errors.UnprocessableResponse
74
+ | APIError
75
+ | SDKValidationError
76
+ | UnexpectedClientError
77
+ | InvalidRequestError
78
+ | RequestAbortedError
79
+ | RequestTimeoutError
80
+ | ConnectionError
81
+ >,
82
+ APICall,
83
+ ]
84
+ > {
85
+ const parsed = safeParse(
86
+ request,
87
+ (value) =>
88
+ operations.AccountingBankFeedAccountsAddRequest$outboundSchema.parse(
89
+ value,
90
+ ),
91
+ "Input validation failed",
92
+ );
93
+ if (!parsed.ok) {
94
+ return [parsed, { status: "invalid" }];
95
+ }
96
+ const payload = parsed.value;
97
+ const body = encodeJSON("body", payload.BankFeedAccount, { explode: true });
98
+
99
+ const path = pathToFunc("/accounting/bank-feed-accounts")();
100
+
101
+ const query = encodeFormQuery({
102
+ "raw": payload.raw,
103
+ });
104
+
105
+ const headers = new Headers(compactMap({
106
+ "Content-Type": "application/json",
107
+ Accept: "application/json",
108
+ "x-apideck-app-id": encodeSimple(
109
+ "x-apideck-app-id",
110
+ payload.appId ?? client._options.appId,
111
+ { explode: false, charEncoding: "none" },
112
+ ),
113
+ "x-apideck-consumer-id": encodeSimple(
114
+ "x-apideck-consumer-id",
115
+ payload.consumerId ?? client._options.consumerId,
116
+ { explode: false, charEncoding: "none" },
117
+ ),
118
+ "x-apideck-service-id": encodeSimple(
119
+ "x-apideck-service-id",
120
+ payload.serviceId,
121
+ { explode: false, charEncoding: "none" },
122
+ ),
123
+ }));
124
+
125
+ const secConfig = await extractSecurity(client._options.apiKey);
126
+ const securityInput = secConfig == null ? {} : { apiKey: secConfig };
127
+ const requestSecurity = resolveGlobalSecurity(securityInput);
128
+
129
+ const context = {
130
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
131
+ operationID: "accounting.bankFeedAccountsAdd",
132
+ oAuth2Scopes: [],
133
+
134
+ resolvedSecurity: requestSecurity,
135
+
136
+ securitySource: client._options.apiKey,
137
+ retryConfig: options?.retries
138
+ || client._options.retryConfig
139
+ || {
140
+ strategy: "backoff",
141
+ backoff: {
142
+ initialInterval: 500,
143
+ maxInterval: 60000,
144
+ exponent: 1.5,
145
+ maxElapsedTime: 3600000,
146
+ },
147
+ retryConnectionErrors: true,
148
+ }
149
+ || { strategy: "none" },
150
+ retryCodes: options?.retryCodes || ["408", "500", "502", "503", "504"],
151
+ };
152
+
153
+ const requestRes = client._createRequest(context, {
154
+ security: requestSecurity,
155
+ method: "POST",
156
+ baseURL: options?.serverURL,
157
+ path: path,
158
+ headers: headers,
159
+ query: query,
160
+ body: body,
161
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
162
+ }, options);
163
+ if (!requestRes.ok) {
164
+ return [requestRes, { status: "invalid" }];
165
+ }
166
+ const req = requestRes.value;
167
+
168
+ const doResult = await client._do(req, {
169
+ context,
170
+ errorCodes: ["400", "401", "402", "404", "422", "4XX", "5XX"],
171
+ retryConfig: context.retryConfig,
172
+ retryCodes: context.retryCodes,
173
+ });
174
+ if (!doResult.ok) {
175
+ return [doResult, { status: "request-error", request: req }];
176
+ }
177
+ const response = doResult.value;
178
+
179
+ const responseFields = {
180
+ HttpMeta: { Response: response, Request: req },
181
+ };
182
+
183
+ const [result] = await M.match<
184
+ operations.AccountingBankFeedAccountsAddResponse,
185
+ | errors.BadRequestResponse
186
+ | errors.UnauthorizedResponse
187
+ | errors.PaymentRequiredResponse
188
+ | errors.NotFoundResponse
189
+ | errors.UnprocessableResponse
190
+ | APIError
191
+ | SDKValidationError
192
+ | UnexpectedClientError
193
+ | InvalidRequestError
194
+ | RequestAbortedError
195
+ | RequestTimeoutError
196
+ | ConnectionError
197
+ >(
198
+ M.json(
199
+ 201,
200
+ operations.AccountingBankFeedAccountsAddResponse$inboundSchema,
201
+ { key: "CreateBankFeedAccountResponse" },
202
+ ),
203
+ M.jsonErr(400, errors.BadRequestResponse$inboundSchema),
204
+ M.jsonErr(401, errors.UnauthorizedResponse$inboundSchema),
205
+ M.jsonErr(402, errors.PaymentRequiredResponse$inboundSchema),
206
+ M.jsonErr(404, errors.NotFoundResponse$inboundSchema),
207
+ M.jsonErr(422, errors.UnprocessableResponse$inboundSchema),
208
+ M.fail("4XX"),
209
+ M.fail("5XX"),
210
+ M.json(
211
+ "default",
212
+ operations.AccountingBankFeedAccountsAddResponse$inboundSchema,
213
+ { key: "UnexpectedErrorResponse" },
214
+ ),
215
+ )(response, req, { extraFields: responseFields });
216
+ if (!result.ok) {
217
+ return [result, { status: "complete", request: req, response }];
218
+ }
219
+
220
+ return [result, { status: "complete", request: req, response }];
221
+ }