merge_accounting_client 1.0.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 (399) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +251 -0
  4. data/Rakefile +10 -0
  5. data/docs/Account.md +38 -0
  6. data/docs/AccountDetails.md +34 -0
  7. data/docs/AccountDetailsAndActions.md +34 -0
  8. data/docs/AccountDetailsAndActionsIntegration.md +32 -0
  9. data/docs/AccountDetailsAndActionsStatusEnum.md +15 -0
  10. data/docs/AccountDetailsApi.md +79 -0
  11. data/docs/AccountIntegration.md +28 -0
  12. data/docs/AccountStatusEnum.md +15 -0
  13. data/docs/AccountToken.md +20 -0
  14. data/docs/AccountTokenApi.md +79 -0
  15. data/docs/AccountingAttachment.md +26 -0
  16. data/docs/AccountingPhoneNumber.md +20 -0
  17. data/docs/AccountsApi.md +177 -0
  18. data/docs/Address.md +30 -0
  19. data/docs/AddressTypeEnum.md +15 -0
  20. data/docs/AddressesApi.md +85 -0
  21. data/docs/AttachmentsApi.md +177 -0
  22. data/docs/AvailableActions.md +22 -0
  23. data/docs/AvailableActionsApi.md +79 -0
  24. data/docs/BalanceSheet.md +36 -0
  25. data/docs/BalanceSheetsApi.md +177 -0
  26. data/docs/CashFlowStatement.md +40 -0
  27. data/docs/CashFlowStatementsApi.md +177 -0
  28. data/docs/CategoriesEnum.md +15 -0
  29. data/docs/CategoryEnum.md +15 -0
  30. data/docs/ClassificationEnum.md +15 -0
  31. data/docs/CompanyInfo.md +42 -0
  32. data/docs/CompanyInfoApi.md +181 -0
  33. data/docs/Contact.md +42 -0
  34. data/docs/ContactsApi.md +181 -0
  35. data/docs/CountryEnum.md +15 -0
  36. data/docs/CreditNote.md +38 -0
  37. data/docs/CreditNoteStatusEnum.md +15 -0
  38. data/docs/CreditNotesApi.md +181 -0
  39. data/docs/CurrencyEnum.md +15 -0
  40. data/docs/DataPassthroughRequest.md +30 -0
  41. data/docs/DebugModeLog.md +22 -0
  42. data/docs/DebugModelLogSummary.md +22 -0
  43. data/docs/DeleteAccountApi.md +78 -0
  44. data/docs/EncodingEnum.md +15 -0
  45. data/docs/EndUserDetailsRequest.md +28 -0
  46. data/docs/ErrorValidationProblem.md +24 -0
  47. data/docs/Expense.md +38 -0
  48. data/docs/ExpenseLine.md +28 -0
  49. data/docs/ExpensesApi.md +181 -0
  50. data/docs/ForceResyncApi.md +79 -0
  51. data/docs/GenerateKeyApi.md +79 -0
  52. data/docs/GenerateRemoteKeyRequest.md +18 -0
  53. data/docs/IncomeStatement.md +42 -0
  54. data/docs/IncomeStatementsApi.md +177 -0
  55. data/docs/Invoice.md +54 -0
  56. data/docs/InvoiceEndpointRequest.md +18 -0
  57. data/docs/InvoiceLineItem.md +34 -0
  58. data/docs/InvoiceLineItemRequest.md +30 -0
  59. data/docs/InvoiceRequest.md +48 -0
  60. data/docs/InvoiceResponse.md +24 -0
  61. data/docs/InvoiceTypeEnum.md +15 -0
  62. data/docs/InvoicesApi.md +337 -0
  63. data/docs/Issue.md +30 -0
  64. data/docs/IssueStatusEnum.md +15 -0
  65. data/docs/IssuesApi.md +177 -0
  66. data/docs/Item.md +36 -0
  67. data/docs/ItemsApi.md +181 -0
  68. data/docs/JournalEntriesApi.md +333 -0
  69. data/docs/JournalEntry.md +32 -0
  70. data/docs/JournalEntryEndpointRequest.md +18 -0
  71. data/docs/JournalEntryRequest.md +26 -0
  72. data/docs/JournalEntryResponse.md +24 -0
  73. data/docs/JournalLine.md +26 -0
  74. data/docs/JournalLineRequest.md +26 -0
  75. data/docs/LinkToken.md +20 -0
  76. data/docs/LinkTokenApi.md +79 -0
  77. data/docs/LinkedAccountStatus.md +20 -0
  78. data/docs/LinkedAccountsApi.md +103 -0
  79. data/docs/MetaResponse.md +24 -0
  80. data/docs/MethodEnum.md +15 -0
  81. data/docs/ModelOperation.md +24 -0
  82. data/docs/MultipartFormFieldRequest.md +26 -0
  83. data/docs/PaginatedAccountDetailsAndActionsList.md +22 -0
  84. data/docs/PaginatedAccountList.md +22 -0
  85. data/docs/PaginatedAccountingAttachmentList.md +22 -0
  86. data/docs/PaginatedBalanceSheetList.md +22 -0
  87. data/docs/PaginatedCashFlowStatementList.md +22 -0
  88. data/docs/PaginatedCompanyInfoList.md +22 -0
  89. data/docs/PaginatedContactList.md +22 -0
  90. data/docs/PaginatedCreditNoteList.md +22 -0
  91. data/docs/PaginatedExpenseList.md +22 -0
  92. data/docs/PaginatedIncomeStatementList.md +22 -0
  93. data/docs/PaginatedInvoiceList.md +22 -0
  94. data/docs/PaginatedIssueList.md +22 -0
  95. data/docs/PaginatedItemList.md +22 -0
  96. data/docs/PaginatedJournalEntryList.md +22 -0
  97. data/docs/PaginatedPaymentList.md +22 -0
  98. data/docs/PaginatedPurchaseOrderList.md +22 -0
  99. data/docs/PaginatedSyncStatusList.md +22 -0
  100. data/docs/PaginatedTaxRateList.md +22 -0
  101. data/docs/PaginatedTrackingCategoryList.md +22 -0
  102. data/docs/PaginatedWebhookReceiverList.md +22 -0
  103. data/docs/PassthroughApi.md +81 -0
  104. data/docs/Payment.md +32 -0
  105. data/docs/PaymentsApi.md +185 -0
  106. data/docs/PhoneNumbersApi.md +85 -0
  107. data/docs/PurchaseOrder.md +40 -0
  108. data/docs/PurchaseOrderLineItem.md +24 -0
  109. data/docs/PurchaseOrderStatusEnum.md +15 -0
  110. data/docs/PurchaseOrdersApi.md +181 -0
  111. data/docs/RegenerateKeyApi.md +79 -0
  112. data/docs/RemoteData.md +20 -0
  113. data/docs/RemoteDataRequest.md +20 -0
  114. data/docs/RemoteKey.md +20 -0
  115. data/docs/RemoteKeyForRegenerationRequest.md +18 -0
  116. data/docs/RemoteResponse.md +26 -0
  117. data/docs/ReportItem.md +24 -0
  118. data/docs/RequestFormatEnum.md +15 -0
  119. data/docs/StateEnum.md +15 -0
  120. data/docs/Status7d1Enum.md +15 -0
  121. data/docs/SyncStatus.md +28 -0
  122. data/docs/SyncStatusApi.md +85 -0
  123. data/docs/SyncStatusStatusEnum.md +15 -0
  124. data/docs/TaxRate.md +28 -0
  125. data/docs/TaxRatesApi.md +177 -0
  126. data/docs/TrackingCategoriesApi.md +177 -0
  127. data/docs/TrackingCategory.md +26 -0
  128. data/docs/ValidationProblemSource.md +18 -0
  129. data/docs/WarningValidationProblem.md +24 -0
  130. data/docs/WebhookReceiver.md +22 -0
  131. data/docs/WebhookReceiverRequest.md +22 -0
  132. data/docs/WebhookReceiversApi.md +155 -0
  133. data/lib/merge_accounting_client/api/account_details_api.rb +84 -0
  134. data/lib/merge_accounting_client/api/account_token_api.rb +83 -0
  135. data/lib/merge_accounting_client/api/accounts_api.rb +182 -0
  136. data/lib/merge_accounting_client/api/addresses_api.rb +93 -0
  137. data/lib/merge_accounting_client/api/attachments_api.rb +182 -0
  138. data/lib/merge_accounting_client/api/available_actions_api.rb +84 -0
  139. data/lib/merge_accounting_client/api/balance_sheets_api.rb +182 -0
  140. data/lib/merge_accounting_client/api/cash_flow_statements_api.rb +182 -0
  141. data/lib/merge_accounting_client/api/company_info_api.rb +196 -0
  142. data/lib/merge_accounting_client/api/contacts_api.rb +196 -0
  143. data/lib/merge_accounting_client/api/credit_notes_api.rb +196 -0
  144. data/lib/merge_accounting_client/api/delete_account_api.rb +82 -0
  145. data/lib/merge_accounting_client/api/expenses_api.rb +196 -0
  146. data/lib/merge_accounting_client/api/force_resync_api.rb +84 -0
  147. data/lib/merge_accounting_client/api/generate_key_api.rb +85 -0
  148. data/lib/merge_accounting_client/api/income_statements_api.rb +182 -0
  149. data/lib/merge_accounting_client/api/invoices_api.rb +344 -0
  150. data/lib/merge_accounting_client/api/issues_api.rb +181 -0
  151. data/lib/merge_accounting_client/api/items_api.rb +196 -0
  152. data/lib/merge_accounting_client/api/journal_entries_api.rb +334 -0
  153. data/lib/merge_accounting_client/api/link_token_api.rb +85 -0
  154. data/lib/merge_accounting_client/api/linked_accounts_api.rb +117 -0
  155. data/lib/merge_accounting_client/api/passthrough_api.rb +92 -0
  156. data/lib/merge_accounting_client/api/payments_api.rb +202 -0
  157. data/lib/merge_accounting_client/api/phone_numbers_api.rb +93 -0
  158. data/lib/merge_accounting_client/api/purchase_orders_api.rb +196 -0
  159. data/lib/merge_accounting_client/api/regenerate_key_api.rb +85 -0
  160. data/lib/merge_accounting_client/api/sync_status_api.rb +90 -0
  161. data/lib/merge_accounting_client/api/tax_rates_api.rb +182 -0
  162. data/lib/merge_accounting_client/api/tracking_categories_api.rb +182 -0
  163. data/lib/merge_accounting_client/api/webhook_receivers_api.rb +146 -0
  164. data/lib/merge_accounting_client/api_client.rb +390 -0
  165. data/lib/merge_accounting_client/api_error.rb +57 -0
  166. data/lib/merge_accounting_client/configuration.rb +281 -0
  167. data/lib/merge_accounting_client/models/account.rb +330 -0
  168. data/lib/merge_accounting_client/models/account_details.rb +291 -0
  169. data/lib/merge_accounting_client/models/account_details_and_actions.rb +316 -0
  170. data/lib/merge_accounting_client/models/account_details_and_actions_integration.rb +310 -0
  171. data/lib/merge_accounting_client/models/account_details_and_actions_status_enum.rb +38 -0
  172. data/lib/merge_accounting_client/models/account_integration.rb +303 -0
  173. data/lib/merge_accounting_client/models/account_status_enum.rb +38 -0
  174. data/lib/merge_accounting_client/models/account_token.rb +237 -0
  175. data/lib/merge_accounting_client/models/accounting_attachment.rb +279 -0
  176. data/lib/merge_accounting_client/models/accounting_phone_number.rb +232 -0
  177. data/lib/merge_accounting_client/models/address.rb +287 -0
  178. data/lib/merge_accounting_client/models/address_type_enum.rb +37 -0
  179. data/lib/merge_accounting_client/models/available_actions.rb +249 -0
  180. data/lib/merge_accounting_client/models/balance_sheet.rb +319 -0
  181. data/lib/merge_accounting_client/models/cash_flow_statement.rb +341 -0
  182. data/lib/merge_accounting_client/models/categories_enum.rb +39 -0
  183. data/lib/merge_accounting_client/models/category_enum.rb +39 -0
  184. data/lib/merge_accounting_client/models/classification_enum.rb +40 -0
  185. data/lib/merge_accounting_client/models/company_info.rb +402 -0
  186. data/lib/merge_accounting_client/models/contact.rb +354 -0
  187. data/lib/merge_accounting_client/models/country_enum.rb +284 -0
  188. data/lib/merge_accounting_client/models/credit_note.rb +331 -0
  189. data/lib/merge_accounting_client/models/credit_note_status_enum.rb +38 -0
  190. data/lib/merge_accounting_client/models/currency_enum.rb +341 -0
  191. data/lib/merge_accounting_client/models/data_passthrough_request.rb +343 -0
  192. data/lib/merge_accounting_client/models/debug_mode_log.rb +251 -0
  193. data/lib/merge_accounting_client/models/debug_model_log_summary.rb +251 -0
  194. data/lib/merge_accounting_client/models/encoding_enum.rb +37 -0
  195. data/lib/merge_accounting_client/models/end_user_details_request.rb +413 -0
  196. data/lib/merge_accounting_client/models/error_validation_problem.rb +260 -0
  197. data/lib/merge_accounting_client/models/expense.rb +328 -0
  198. data/lib/merge_accounting_client/models/expense_line.rb +274 -0
  199. data/lib/merge_accounting_client/models/generate_remote_key_request.rb +243 -0
  200. data/lib/merge_accounting_client/models/income_statement.rb +352 -0
  201. data/lib/merge_accounting_client/models/invoice.rb +418 -0
  202. data/lib/merge_accounting_client/models/invoice_endpoint_request.rb +223 -0
  203. data/lib/merge_accounting_client/models/invoice_line_item.rb +306 -0
  204. data/lib/merge_accounting_client/models/invoice_line_item_request.rb +285 -0
  205. data/lib/merge_accounting_client/models/invoice_request.rb +386 -0
  206. data/lib/merge_accounting_client/models/invoice_response.rb +266 -0
  207. data/lib/merge_accounting_client/models/invoice_type_enum.rb +37 -0
  208. data/lib/merge_accounting_client/models/issue.rb +281 -0
  209. data/lib/merge_accounting_client/models/issue_status_enum.rb +37 -0
  210. data/lib/merge_accounting_client/models/item.rb +317 -0
  211. data/lib/merge_accounting_client/models/journal_entry.rb +298 -0
  212. data/lib/merge_accounting_client/models/journal_entry_endpoint_request.rb +223 -0
  213. data/lib/merge_accounting_client/models/journal_entry_request.rb +266 -0
  214. data/lib/merge_accounting_client/models/journal_entry_response.rb +266 -0
  215. data/lib/merge_accounting_client/models/journal_line.rb +263 -0
  216. data/lib/merge_accounting_client/models/journal_line_request.rb +263 -0
  217. data/lib/merge_accounting_client/models/link_token.rb +237 -0
  218. data/lib/merge_accounting_client/models/linked_account_status.rb +237 -0
  219. data/lib/merge_accounting_client/models/meta_response.rb +262 -0
  220. data/lib/merge_accounting_client/models/method_enum.rb +42 -0
  221. data/lib/merge_accounting_client/models/model_operation.rb +272 -0
  222. data/lib/merge_accounting_client/models/multipart_form_field_request.rb +341 -0
  223. data/lib/merge_accounting_client/models/paginated_account_details_and_actions_list.rb +240 -0
  224. data/lib/merge_accounting_client/models/paginated_account_list.rb +240 -0
  225. data/lib/merge_accounting_client/models/paginated_accounting_attachment_list.rb +240 -0
  226. data/lib/merge_accounting_client/models/paginated_balance_sheet_list.rb +240 -0
  227. data/lib/merge_accounting_client/models/paginated_cash_flow_statement_list.rb +240 -0
  228. data/lib/merge_accounting_client/models/paginated_company_info_list.rb +240 -0
  229. data/lib/merge_accounting_client/models/paginated_contact_list.rb +240 -0
  230. data/lib/merge_accounting_client/models/paginated_credit_note_list.rb +240 -0
  231. data/lib/merge_accounting_client/models/paginated_expense_list.rb +240 -0
  232. data/lib/merge_accounting_client/models/paginated_income_statement_list.rb +240 -0
  233. data/lib/merge_accounting_client/models/paginated_invoice_list.rb +240 -0
  234. data/lib/merge_accounting_client/models/paginated_issue_list.rb +240 -0
  235. data/lib/merge_accounting_client/models/paginated_item_list.rb +240 -0
  236. data/lib/merge_accounting_client/models/paginated_journal_entry_list.rb +240 -0
  237. data/lib/merge_accounting_client/models/paginated_payment_list.rb +240 -0
  238. data/lib/merge_accounting_client/models/paginated_purchase_order_list.rb +240 -0
  239. data/lib/merge_accounting_client/models/paginated_sync_status_list.rb +240 -0
  240. data/lib/merge_accounting_client/models/paginated_tax_rate_list.rb +240 -0
  241. data/lib/merge_accounting_client/models/paginated_tracking_category_list.rb +240 -0
  242. data/lib/merge_accounting_client/models/paginated_webhook_receiver_list.rb +240 -0
  243. data/lib/merge_accounting_client/models/payment.rb +295 -0
  244. data/lib/merge_accounting_client/models/purchase_order.rb +341 -0
  245. data/lib/merge_accounting_client/models/purchase_order_line_item.rb +253 -0
  246. data/lib/merge_accounting_client/models/purchase_order_status_enum.rb +40 -0
  247. data/lib/merge_accounting_client/models/remote_data.rb +234 -0
  248. data/lib/merge_accounting_client/models/remote_data_request.rb +253 -0
  249. data/lib/merge_accounting_client/models/remote_key.rb +238 -0
  250. data/lib/merge_accounting_client/models/remote_key_for_regeneration_request.rb +243 -0
  251. data/lib/merge_accounting_client/models/remote_response.rb +279 -0
  252. data/lib/merge_accounting_client/models/report_item.rb +254 -0
  253. data/lib/merge_accounting_client/models/request_format_enum.rb +38 -0
  254. data/lib/merge_accounting_client/models/state_enum.rb +94 -0
  255. data/lib/merge_accounting_client/models/status7d1_enum.rb +37 -0
  256. data/lib/merge_accounting_client/models/sync_status.rb +294 -0
  257. data/lib/merge_accounting_client/models/sync_status_status_enum.rb +39 -0
  258. data/lib/merge_accounting_client/models/tax_rate.rb +275 -0
  259. data/lib/merge_accounting_client/models/tracking_category.rb +264 -0
  260. data/lib/merge_accounting_client/models/validation_problem_source.rb +223 -0
  261. data/lib/merge_accounting_client/models/warning_validation_problem.rb +260 -0
  262. data/lib/merge_accounting_client/models/webhook_receiver.rb +246 -0
  263. data/lib/merge_accounting_client/models/webhook_receiver_request.rb +280 -0
  264. data/lib/merge_accounting_client/version.rb +15 -0
  265. data/lib/merge_accounting_client.rb +167 -0
  266. data/merge_accounting_client.gemspec +38 -0
  267. data/pull_request_template.md +19 -0
  268. data/spec/api/account_details_api_spec.rb +46 -0
  269. data/spec/api/account_token_api_spec.rb +46 -0
  270. data/spec/api/accounts_api_spec.rb +68 -0
  271. data/spec/api/addresses_api_spec.rb +48 -0
  272. data/spec/api/attachments_api_spec.rb +68 -0
  273. data/spec/api/available_actions_api_spec.rb +46 -0
  274. data/spec/api/balance_sheets_api_spec.rb +68 -0
  275. data/spec/api/cash_flow_statements_api_spec.rb +68 -0
  276. data/spec/api/company_info_api_spec.rb +70 -0
  277. data/spec/api/contacts_api_spec.rb +70 -0
  278. data/spec/api/credit_notes_api_spec.rb +70 -0
  279. data/spec/api/delete_account_api_spec.rb +46 -0
  280. data/spec/api/expenses_api_spec.rb +70 -0
  281. data/spec/api/force_resync_api_spec.rb +46 -0
  282. data/spec/api/generate_key_api_spec.rb +46 -0
  283. data/spec/api/income_statements_api_spec.rb +68 -0
  284. data/spec/api/invoices_api_spec.rb +97 -0
  285. data/spec/api/issues_api_spec.rb +69 -0
  286. data/spec/api/items_api_spec.rb +70 -0
  287. data/spec/api/journal_entries_api_spec.rb +95 -0
  288. data/spec/api/link_token_api_spec.rb +46 -0
  289. data/spec/api/linked_accounts_api_spec.rb +57 -0
  290. data/spec/api/passthrough_api_spec.rb +47 -0
  291. data/spec/api/payments_api_spec.rb +72 -0
  292. data/spec/api/phone_numbers_api_spec.rb +48 -0
  293. data/spec/api/purchase_orders_api_spec.rb +70 -0
  294. data/spec/api/regenerate_key_api_spec.rb +46 -0
  295. data/spec/api/sync_status_api_spec.rb +48 -0
  296. data/spec/api/tax_rates_api_spec.rb +68 -0
  297. data/spec/api/tracking_categories_api_spec.rb +68 -0
  298. data/spec/api/webhook_receivers_api_spec.rb +58 -0
  299. data/spec/api_client_spec.rb +226 -0
  300. data/spec/configuration_spec.rb +42 -0
  301. data/spec/models/account_details_and_actions_integration_spec.rb +76 -0
  302. data/spec/models/account_details_and_actions_spec.rb +82 -0
  303. data/spec/models/account_details_and_actions_status_enum_spec.rb +28 -0
  304. data/spec/models/account_details_spec.rb +82 -0
  305. data/spec/models/account_integration_spec.rb +64 -0
  306. data/spec/models/account_spec.rb +94 -0
  307. data/spec/models/account_status_enum_spec.rb +28 -0
  308. data/spec/models/account_token_spec.rb +40 -0
  309. data/spec/models/accounting_attachment_spec.rb +58 -0
  310. data/spec/models/accounting_phone_number_spec.rb +40 -0
  311. data/spec/models/address_spec.rb +70 -0
  312. data/spec/models/address_type_enum_spec.rb +28 -0
  313. data/spec/models/available_actions_spec.rb +46 -0
  314. data/spec/models/balance_sheet_spec.rb +88 -0
  315. data/spec/models/cash_flow_statement_spec.rb +100 -0
  316. data/spec/models/categories_enum_spec.rb +28 -0
  317. data/spec/models/category_enum_spec.rb +28 -0
  318. data/spec/models/classification_enum_spec.rb +28 -0
  319. data/spec/models/company_info_spec.rb +106 -0
  320. data/spec/models/contact_spec.rb +106 -0
  321. data/spec/models/country_enum_spec.rb +28 -0
  322. data/spec/models/credit_note_spec.rb +94 -0
  323. data/spec/models/credit_note_status_enum_spec.rb +28 -0
  324. data/spec/models/currency_enum_spec.rb +28 -0
  325. data/spec/models/data_passthrough_request_spec.rb +70 -0
  326. data/spec/models/debug_mode_log_spec.rb +46 -0
  327. data/spec/models/debug_model_log_summary_spec.rb +46 -0
  328. data/spec/models/encoding_enum_spec.rb +28 -0
  329. data/spec/models/end_user_details_request_spec.rb +64 -0
  330. data/spec/models/error_validation_problem_spec.rb +52 -0
  331. data/spec/models/expense_line_spec.rb +64 -0
  332. data/spec/models/expense_spec.rb +94 -0
  333. data/spec/models/generate_remote_key_request_spec.rb +34 -0
  334. data/spec/models/income_statement_spec.rb +106 -0
  335. data/spec/models/invoice_endpoint_request_spec.rb +34 -0
  336. data/spec/models/invoice_line_item_request_spec.rb +70 -0
  337. data/spec/models/invoice_line_item_spec.rb +82 -0
  338. data/spec/models/invoice_request_spec.rb +124 -0
  339. data/spec/models/invoice_response_spec.rb +52 -0
  340. data/spec/models/invoice_spec.rb +142 -0
  341. data/spec/models/invoice_type_enum_spec.rb +28 -0
  342. data/spec/models/issue_spec.rb +70 -0
  343. data/spec/models/issue_status_enum_spec.rb +28 -0
  344. data/spec/models/item_spec.rb +88 -0
  345. data/spec/models/journal_entry_endpoint_request_spec.rb +34 -0
  346. data/spec/models/journal_entry_request_spec.rb +58 -0
  347. data/spec/models/journal_entry_response_spec.rb +52 -0
  348. data/spec/models/journal_entry_spec.rb +76 -0
  349. data/spec/models/journal_line_request_spec.rb +58 -0
  350. data/spec/models/journal_line_spec.rb +58 -0
  351. data/spec/models/link_token_spec.rb +40 -0
  352. data/spec/models/linked_account_status_spec.rb +40 -0
  353. data/spec/models/meta_response_spec.rb +52 -0
  354. data/spec/models/method_enum_spec.rb +28 -0
  355. data/spec/models/model_operation_spec.rb +52 -0
  356. data/spec/models/multipart_form_field_request_spec.rb +58 -0
  357. data/spec/models/paginated_account_details_and_actions_list_spec.rb +46 -0
  358. data/spec/models/paginated_account_list_spec.rb +46 -0
  359. data/spec/models/paginated_accounting_attachment_list_spec.rb +46 -0
  360. data/spec/models/paginated_balance_sheet_list_spec.rb +46 -0
  361. data/spec/models/paginated_cash_flow_statement_list_spec.rb +46 -0
  362. data/spec/models/paginated_company_info_list_spec.rb +46 -0
  363. data/spec/models/paginated_contact_list_spec.rb +46 -0
  364. data/spec/models/paginated_credit_note_list_spec.rb +46 -0
  365. data/spec/models/paginated_expense_list_spec.rb +46 -0
  366. data/spec/models/paginated_income_statement_list_spec.rb +46 -0
  367. data/spec/models/paginated_invoice_list_spec.rb +46 -0
  368. data/spec/models/paginated_issue_list_spec.rb +46 -0
  369. data/spec/models/paginated_item_list_spec.rb +46 -0
  370. data/spec/models/paginated_journal_entry_list_spec.rb +46 -0
  371. data/spec/models/paginated_payment_list_spec.rb +46 -0
  372. data/spec/models/paginated_purchase_order_list_spec.rb +46 -0
  373. data/spec/models/paginated_sync_status_list_spec.rb +46 -0
  374. data/spec/models/paginated_tax_rate_list_spec.rb +46 -0
  375. data/spec/models/paginated_tracking_category_list_spec.rb +46 -0
  376. data/spec/models/paginated_webhook_receiver_list_spec.rb +46 -0
  377. data/spec/models/payment_spec.rb +76 -0
  378. data/spec/models/purchase_order_line_item_spec.rb +52 -0
  379. data/spec/models/purchase_order_spec.rb +100 -0
  380. data/spec/models/purchase_order_status_enum_spec.rb +28 -0
  381. data/spec/models/remote_data_request_spec.rb +40 -0
  382. data/spec/models/remote_data_spec.rb +40 -0
  383. data/spec/models/remote_key_for_regeneration_request_spec.rb +34 -0
  384. data/spec/models/remote_key_spec.rb +40 -0
  385. data/spec/models/remote_response_spec.rb +58 -0
  386. data/spec/models/report_item_spec.rb +52 -0
  387. data/spec/models/request_format_enum_spec.rb +28 -0
  388. data/spec/models/state_enum_spec.rb +28 -0
  389. data/spec/models/status7d1_enum_spec.rb +28 -0
  390. data/spec/models/sync_status_spec.rb +64 -0
  391. data/spec/models/sync_status_status_enum_spec.rb +28 -0
  392. data/spec/models/tax_rate_spec.rb +64 -0
  393. data/spec/models/tracking_category_spec.rb +58 -0
  394. data/spec/models/validation_problem_source_spec.rb +34 -0
  395. data/spec/models/warning_validation_problem_spec.rb +52 -0
  396. data/spec/models/webhook_receiver_request_spec.rb +46 -0
  397. data/spec/models/webhook_receiver_spec.rb +46 -0
  398. data/spec/spec_helper.rb +111 -0
  399. metadata +612 -0
@@ -0,0 +1,196 @@
1
+ =begin
2
+ #Merge Accounting API
3
+
4
+ #The unified API for building rich integrations with multiple Accounting & Finance platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeAccountingClient
16
+ class ContactsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `Contact` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
29
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
30
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
31
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
32
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
33
+ # @option opts [Integer] :page_size Number of results to return per page.
34
+ # @option opts [String] :remote_id The API provider's ID for the given object.
35
+ # @return [PaginatedContactList]
36
+ def contacts_list(x_account_token, opts = {})
37
+ data, _status_code, _headers = contacts_list_with_http_info(x_account_token, opts)
38
+ data
39
+ end
40
+
41
+ # Returns a list of `Contact` objects.
42
+ # @param x_account_token [String] Token identifying the end user.
43
+ # @param [Hash] opts the optional parameters
44
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
45
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
46
+ # @option opts [String] :cursor The pagination cursor value.
47
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
48
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
49
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
50
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
51
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
52
+ # @option opts [Integer] :page_size Number of results to return per page.
53
+ # @option opts [String] :remote_id The API provider's ID for the given object.
54
+ # @return [Array<(PaginatedContactList, Integer, Hash)>] PaginatedContactList data, response status code and response headers
55
+ def contacts_list_with_http_info(x_account_token, opts = {})
56
+ if @api_client.config.debugging
57
+ @api_client.config.logger.debug 'Calling API: ContactsApi.contacts_list ...'
58
+ end
59
+ # verify the required parameter 'x_account_token' is set
60
+ if @api_client.config.client_side_validation && x_account_token.nil?
61
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling ContactsApi.contacts_list"
62
+ end
63
+ allowable_values = ["addresses", "addresses,phone_numbers", "phone_numbers"]
64
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
65
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
66
+ end
67
+ # resource path
68
+ local_var_path = '/contacts'
69
+
70
+ # query parameters
71
+ query_params = opts[:query_params] || {}
72
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
73
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
74
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
75
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
76
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
77
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
78
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
79
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
80
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
81
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
82
+
83
+ # header parameters
84
+ header_params = opts[:header_params] || {}
85
+ # HTTP header 'Accept' (if needed)
86
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
87
+ header_params[:'X-Account-Token'] = x_account_token
88
+
89
+ # form parameters
90
+ form_params = opts[:form_params] || {}
91
+
92
+ # http body (model)
93
+ post_body = opts[:debug_body]
94
+
95
+ # return_type
96
+ return_type = opts[:debug_return_type] || 'PaginatedContactList'
97
+
98
+ # auth_names
99
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
100
+
101
+ new_options = opts.merge(
102
+ :operation => :"ContactsApi.contacts_list",
103
+ :header_params => header_params,
104
+ :query_params => query_params,
105
+ :form_params => form_params,
106
+ :body => post_body,
107
+ :auth_names => auth_names,
108
+ :return_type => return_type
109
+ )
110
+
111
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
112
+ if @api_client.config.debugging
113
+ @api_client.config.logger.debug "API called: ContactsApi#contacts_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+
118
+ # Returns a `Contact` object with the given `id`.
119
+ # @param x_account_token [String] Token identifying the end user.
120
+ # @param id [String]
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
123
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
124
+ # @return [Contact]
125
+ def contacts_retrieve(x_account_token, id, opts = {})
126
+ data, _status_code, _headers = contacts_retrieve_with_http_info(x_account_token, id, opts)
127
+ data
128
+ end
129
+
130
+ # Returns a &#x60;Contact&#x60; object with the given &#x60;id&#x60;.
131
+ # @param x_account_token [String] Token identifying the end user.
132
+ # @param id [String]
133
+ # @param [Hash] opts the optional parameters
134
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
135
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
136
+ # @return [Array<(Contact, Integer, Hash)>] Contact data, response status code and response headers
137
+ def contacts_retrieve_with_http_info(x_account_token, id, opts = {})
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug 'Calling API: ContactsApi.contacts_retrieve ...'
140
+ end
141
+ # verify the required parameter 'x_account_token' is set
142
+ if @api_client.config.client_side_validation && x_account_token.nil?
143
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling ContactsApi.contacts_retrieve"
144
+ end
145
+ # verify the required parameter 'id' is set
146
+ if @api_client.config.client_side_validation && id.nil?
147
+ fail ArgumentError, "Missing the required parameter 'id' when calling ContactsApi.contacts_retrieve"
148
+ end
149
+ allowable_values = ["addresses", "addresses,phone_numbers", "phone_numbers"]
150
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
151
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
152
+ end
153
+ # resource path
154
+ local_var_path = '/contacts/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
159
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
160
+
161
+ # header parameters
162
+ header_params = opts[:header_params] || {}
163
+ # HTTP header 'Accept' (if needed)
164
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
165
+ header_params[:'X-Account-Token'] = x_account_token
166
+
167
+ # form parameters
168
+ form_params = opts[:form_params] || {}
169
+
170
+ # http body (model)
171
+ post_body = opts[:debug_body]
172
+
173
+ # return_type
174
+ return_type = opts[:debug_return_type] || 'Contact'
175
+
176
+ # auth_names
177
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
178
+
179
+ new_options = opts.merge(
180
+ :operation => :"ContactsApi.contacts_retrieve",
181
+ :header_params => header_params,
182
+ :query_params => query_params,
183
+ :form_params => form_params,
184
+ :body => post_body,
185
+ :auth_names => auth_names,
186
+ :return_type => return_type
187
+ )
188
+
189
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
190
+ if @api_client.config.debugging
191
+ @api_client.config.logger.debug "API called: ContactsApi#contacts_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
192
+ end
193
+ return data, status_code, headers
194
+ end
195
+ end
196
+ end
@@ -0,0 +1,196 @@
1
+ =begin
2
+ #Merge Accounting API
3
+
4
+ #The unified API for building rich integrations with multiple Accounting & Finance platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeAccountingClient
16
+ class CreditNotesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `CreditNote` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
29
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
30
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
31
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
32
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
33
+ # @option opts [Integer] :page_size Number of results to return per page.
34
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
35
+ # @return [PaginatedCreditNoteList]
36
+ def credit_notes_list(x_account_token, opts = {})
37
+ data, _status_code, _headers = credit_notes_list_with_http_info(x_account_token, opts)
38
+ data
39
+ end
40
+
41
+ # Returns a list of &#x60;CreditNote&#x60; objects.
42
+ # @param x_account_token [String] Token identifying the end user.
43
+ # @param [Hash] opts the optional parameters
44
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
45
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
46
+ # @option opts [String] :cursor The pagination cursor value.
47
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
48
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
49
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
50
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
51
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
52
+ # @option opts [Integer] :page_size Number of results to return per page.
53
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
54
+ # @return [Array<(PaginatedCreditNoteList, Integer, Hash)>] PaginatedCreditNoteList data, response status code and response headers
55
+ def credit_notes_list_with_http_info(x_account_token, opts = {})
56
+ if @api_client.config.debugging
57
+ @api_client.config.logger.debug 'Calling API: CreditNotesApi.credit_notes_list ...'
58
+ end
59
+ # verify the required parameter 'x_account_token' is set
60
+ if @api_client.config.client_side_validation && x_account_token.nil?
61
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling CreditNotesApi.credit_notes_list"
62
+ end
63
+ allowable_values = ["payments"]
64
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
65
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
66
+ end
67
+ # resource path
68
+ local_var_path = '/credit-notes'
69
+
70
+ # query parameters
71
+ query_params = opts[:query_params] || {}
72
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
73
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
74
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
75
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
76
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
77
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
78
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
79
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
80
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
81
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
82
+
83
+ # header parameters
84
+ header_params = opts[:header_params] || {}
85
+ # HTTP header 'Accept' (if needed)
86
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
87
+ header_params[:'X-Account-Token'] = x_account_token
88
+
89
+ # form parameters
90
+ form_params = opts[:form_params] || {}
91
+
92
+ # http body (model)
93
+ post_body = opts[:debug_body]
94
+
95
+ # return_type
96
+ return_type = opts[:debug_return_type] || 'PaginatedCreditNoteList'
97
+
98
+ # auth_names
99
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
100
+
101
+ new_options = opts.merge(
102
+ :operation => :"CreditNotesApi.credit_notes_list",
103
+ :header_params => header_params,
104
+ :query_params => query_params,
105
+ :form_params => form_params,
106
+ :body => post_body,
107
+ :auth_names => auth_names,
108
+ :return_type => return_type
109
+ )
110
+
111
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
112
+ if @api_client.config.debugging
113
+ @api_client.config.logger.debug "API called: CreditNotesApi#credit_notes_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+
118
+ # Returns a `CreditNote` object with the given `id`.
119
+ # @param x_account_token [String] Token identifying the end user.
120
+ # @param id [String]
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
123
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
124
+ # @return [CreditNote]
125
+ def credit_notes_retrieve(x_account_token, id, opts = {})
126
+ data, _status_code, _headers = credit_notes_retrieve_with_http_info(x_account_token, id, opts)
127
+ data
128
+ end
129
+
130
+ # Returns a &#x60;CreditNote&#x60; object with the given &#x60;id&#x60;.
131
+ # @param x_account_token [String] Token identifying the end user.
132
+ # @param id [String]
133
+ # @param [Hash] opts the optional parameters
134
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
135
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
136
+ # @return [Array<(CreditNote, Integer, Hash)>] CreditNote data, response status code and response headers
137
+ def credit_notes_retrieve_with_http_info(x_account_token, id, opts = {})
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug 'Calling API: CreditNotesApi.credit_notes_retrieve ...'
140
+ end
141
+ # verify the required parameter 'x_account_token' is set
142
+ if @api_client.config.client_side_validation && x_account_token.nil?
143
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling CreditNotesApi.credit_notes_retrieve"
144
+ end
145
+ # verify the required parameter 'id' is set
146
+ if @api_client.config.client_side_validation && id.nil?
147
+ fail ArgumentError, "Missing the required parameter 'id' when calling CreditNotesApi.credit_notes_retrieve"
148
+ end
149
+ allowable_values = ["payments"]
150
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
151
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
152
+ end
153
+ # resource path
154
+ local_var_path = '/credit-notes/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
159
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
160
+
161
+ # header parameters
162
+ header_params = opts[:header_params] || {}
163
+ # HTTP header 'Accept' (if needed)
164
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
165
+ header_params[:'X-Account-Token'] = x_account_token
166
+
167
+ # form parameters
168
+ form_params = opts[:form_params] || {}
169
+
170
+ # http body (model)
171
+ post_body = opts[:debug_body]
172
+
173
+ # return_type
174
+ return_type = opts[:debug_return_type] || 'CreditNote'
175
+
176
+ # auth_names
177
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
178
+
179
+ new_options = opts.merge(
180
+ :operation => :"CreditNotesApi.credit_notes_retrieve",
181
+ :header_params => header_params,
182
+ :query_params => query_params,
183
+ :form_params => form_params,
184
+ :body => post_body,
185
+ :auth_names => auth_names,
186
+ :return_type => return_type
187
+ )
188
+
189
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
190
+ if @api_client.config.debugging
191
+ @api_client.config.logger.debug "API called: CreditNotesApi#credit_notes_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
192
+ end
193
+ return data, status_code, headers
194
+ end
195
+ end
196
+ end
@@ -0,0 +1,82 @@
1
+ =begin
2
+ #Merge Accounting API
3
+
4
+ #The unified API for building rich integrations with multiple Accounting & Finance platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeAccountingClient
16
+ class DeleteAccountApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Delete a linked account.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [nil]
26
+ def delete_account_create(x_account_token, opts = {})
27
+ delete_account_create_with_http_info(x_account_token, opts)
28
+ nil
29
+ end
30
+
31
+ # Delete a linked account.
32
+ # @param x_account_token [String] Token identifying the end user.
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
35
+ def delete_account_create_with_http_info(x_account_token, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: DeleteAccountApi.delete_account_create ...'
38
+ end
39
+ # verify the required parameter 'x_account_token' is set
40
+ if @api_client.config.client_side_validation && x_account_token.nil?
41
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling DeleteAccountApi.delete_account_create"
42
+ end
43
+ # resource path
44
+ local_var_path = '/delete-account'
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ header_params[:'X-Account-Token'] = x_account_token
52
+
53
+ # form parameters
54
+ form_params = opts[:form_params] || {}
55
+
56
+ # http body (model)
57
+ post_body = opts[:debug_body]
58
+
59
+ # return_type
60
+ return_type = opts[:debug_return_type]
61
+
62
+ # auth_names
63
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
64
+
65
+ new_options = opts.merge(
66
+ :operation => :"DeleteAccountApi.delete_account_create",
67
+ :header_params => header_params,
68
+ :query_params => query_params,
69
+ :form_params => form_params,
70
+ :body => post_body,
71
+ :auth_names => auth_names,
72
+ :return_type => return_type
73
+ )
74
+
75
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
76
+ if @api_client.config.debugging
77
+ @api_client.config.logger.debug "API called: DeleteAccountApi#delete_account_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
78
+ end
79
+ return data, status_code, headers
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,196 @@
1
+ =begin
2
+ #Merge Accounting API
3
+
4
+ #The unified API for building rich integrations with multiple Accounting & Finance platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeAccountingClient
16
+ class ExpensesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `Expense` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
29
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
30
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
31
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
32
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
33
+ # @option opts [Integer] :page_size Number of results to return per page.
34
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
35
+ # @return [PaginatedExpenseList]
36
+ def expenses_list(x_account_token, opts = {})
37
+ data, _status_code, _headers = expenses_list_with_http_info(x_account_token, opts)
38
+ data
39
+ end
40
+
41
+ # Returns a list of &#x60;Expense&#x60; objects.
42
+ # @param x_account_token [String] Token identifying the end user.
43
+ # @param [Hash] opts the optional parameters
44
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
45
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
46
+ # @option opts [String] :cursor The pagination cursor value.
47
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
48
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
49
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
50
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
51
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
52
+ # @option opts [Integer] :page_size Number of results to return per page.
53
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
54
+ # @return [Array<(PaginatedExpenseList, Integer, Hash)>] PaginatedExpenseList data, response status code and response headers
55
+ def expenses_list_with_http_info(x_account_token, opts = {})
56
+ if @api_client.config.debugging
57
+ @api_client.config.logger.debug 'Calling API: ExpensesApi.expenses_list ...'
58
+ end
59
+ # verify the required parameter 'x_account_token' is set
60
+ if @api_client.config.client_side_validation && x_account_token.nil?
61
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling ExpensesApi.expenses_list"
62
+ end
63
+ allowable_values = ["account", "account,contact", "contact"]
64
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
65
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
66
+ end
67
+ # resource path
68
+ local_var_path = '/expenses'
69
+
70
+ # query parameters
71
+ query_params = opts[:query_params] || {}
72
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
73
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
74
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
75
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
76
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
77
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
78
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
79
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
80
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
81
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
82
+
83
+ # header parameters
84
+ header_params = opts[:header_params] || {}
85
+ # HTTP header 'Accept' (if needed)
86
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
87
+ header_params[:'X-Account-Token'] = x_account_token
88
+
89
+ # form parameters
90
+ form_params = opts[:form_params] || {}
91
+
92
+ # http body (model)
93
+ post_body = opts[:debug_body]
94
+
95
+ # return_type
96
+ return_type = opts[:debug_return_type] || 'PaginatedExpenseList'
97
+
98
+ # auth_names
99
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
100
+
101
+ new_options = opts.merge(
102
+ :operation => :"ExpensesApi.expenses_list",
103
+ :header_params => header_params,
104
+ :query_params => query_params,
105
+ :form_params => form_params,
106
+ :body => post_body,
107
+ :auth_names => auth_names,
108
+ :return_type => return_type
109
+ )
110
+
111
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
112
+ if @api_client.config.debugging
113
+ @api_client.config.logger.debug "API called: ExpensesApi#expenses_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+
118
+ # Returns an `Expense` object with the given `id`.
119
+ # @param x_account_token [String] Token identifying the end user.
120
+ # @param id [String]
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
123
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
124
+ # @return [Expense]
125
+ def expenses_retrieve(x_account_token, id, opts = {})
126
+ data, _status_code, _headers = expenses_retrieve_with_http_info(x_account_token, id, opts)
127
+ data
128
+ end
129
+
130
+ # Returns an &#x60;Expense&#x60; object with the given &#x60;id&#x60;.
131
+ # @param x_account_token [String] Token identifying the end user.
132
+ # @param id [String]
133
+ # @param [Hash] opts the optional parameters
134
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
135
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
136
+ # @return [Array<(Expense, Integer, Hash)>] Expense data, response status code and response headers
137
+ def expenses_retrieve_with_http_info(x_account_token, id, opts = {})
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug 'Calling API: ExpensesApi.expenses_retrieve ...'
140
+ end
141
+ # verify the required parameter 'x_account_token' is set
142
+ if @api_client.config.client_side_validation && x_account_token.nil?
143
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling ExpensesApi.expenses_retrieve"
144
+ end
145
+ # verify the required parameter 'id' is set
146
+ if @api_client.config.client_side_validation && id.nil?
147
+ fail ArgumentError, "Missing the required parameter 'id' when calling ExpensesApi.expenses_retrieve"
148
+ end
149
+ allowable_values = ["account", "account,contact", "contact"]
150
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
151
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
152
+ end
153
+ # resource path
154
+ local_var_path = '/expenses/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
159
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
160
+
161
+ # header parameters
162
+ header_params = opts[:header_params] || {}
163
+ # HTTP header 'Accept' (if needed)
164
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
165
+ header_params[:'X-Account-Token'] = x_account_token
166
+
167
+ # form parameters
168
+ form_params = opts[:form_params] || {}
169
+
170
+ # http body (model)
171
+ post_body = opts[:debug_body]
172
+
173
+ # return_type
174
+ return_type = opts[:debug_return_type] || 'Expense'
175
+
176
+ # auth_names
177
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
178
+
179
+ new_options = opts.merge(
180
+ :operation => :"ExpensesApi.expenses_retrieve",
181
+ :header_params => header_params,
182
+ :query_params => query_params,
183
+ :form_params => form_params,
184
+ :body => post_body,
185
+ :auth_names => auth_names,
186
+ :return_type => return_type
187
+ )
188
+
189
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
190
+ if @api_client.config.debugging
191
+ @api_client.config.logger.debug "API called: ExpensesApi#expenses_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
192
+ end
193
+ return data, status_code, headers
194
+ end
195
+ end
196
+ end