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 ItemsApi
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 `Item` 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 [PaginatedItemList]
36
+ def items_list(x_account_token, opts = {})
37
+ data, _status_code, _headers = items_list_with_http_info(x_account_token, opts)
38
+ data
39
+ end
40
+
41
+ # Returns a list of `Item` 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<(PaginatedItemList, Integer, Hash)>] PaginatedItemList data, response status code and response headers
55
+ def items_list_with_http_info(x_account_token, opts = {})
56
+ if @api_client.config.debugging
57
+ @api_client.config.logger.debug 'Calling API: ItemsApi.items_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 ItemsApi.items_list"
62
+ end
63
+ allowable_values = ["purchase_account", "purchase_account,sales_account", "sales_account"]
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 = '/items'
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] || 'PaginatedItemList'
97
+
98
+ # auth_names
99
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
100
+
101
+ new_options = opts.merge(
102
+ :operation => :"ItemsApi.items_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: ItemsApi#items_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+
118
+ # Returns an `Item` 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 [Item]
125
+ def items_retrieve(x_account_token, id, opts = {})
126
+ data, _status_code, _headers = items_retrieve_with_http_info(x_account_token, id, opts)
127
+ data
128
+ end
129
+
130
+ # Returns an &#x60;Item&#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<(Item, Integer, Hash)>] Item data, response status code and response headers
137
+ def items_retrieve_with_http_info(x_account_token, id, opts = {})
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug 'Calling API: ItemsApi.items_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 ItemsApi.items_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 ItemsApi.items_retrieve"
148
+ end
149
+ allowable_values = ["purchase_account", "purchase_account,sales_account", "sales_account"]
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 = '/items/{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] || 'Item'
175
+
176
+ # auth_names
177
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
178
+
179
+ new_options = opts.merge(
180
+ :operation => :"ItemsApi.items_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: ItemsApi#items_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,334 @@
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 JournalEntriesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a `JournalEntry` object with the given values.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param journal_entry_endpoint_request [JournalEntryEndpointRequest]
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
27
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
28
+ # @return [JournalEntryResponse]
29
+ def journal_entries_create(x_account_token, journal_entry_endpoint_request, opts = {})
30
+ data, _status_code, _headers = journal_entries_create_with_http_info(x_account_token, journal_entry_endpoint_request, opts)
31
+ data
32
+ end
33
+
34
+ # Creates a &#x60;JournalEntry&#x60; object with the given values.
35
+ # @param x_account_token [String] Token identifying the end user.
36
+ # @param journal_entry_endpoint_request [JournalEntryEndpointRequest]
37
+ # @param [Hash] opts the optional parameters
38
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
39
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
40
+ # @return [Array<(JournalEntryResponse, Integer, Hash)>] JournalEntryResponse data, response status code and response headers
41
+ def journal_entries_create_with_http_info(x_account_token, journal_entry_endpoint_request, opts = {})
42
+ if @api_client.config.debugging
43
+ @api_client.config.logger.debug 'Calling API: JournalEntriesApi.journal_entries_create ...'
44
+ end
45
+ # verify the required parameter 'x_account_token' is set
46
+ if @api_client.config.client_side_validation && x_account_token.nil?
47
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JournalEntriesApi.journal_entries_create"
48
+ end
49
+ # verify the required parameter 'journal_entry_endpoint_request' is set
50
+ if @api_client.config.client_side_validation && journal_entry_endpoint_request.nil?
51
+ fail ArgumentError, "Missing the required parameter 'journal_entry_endpoint_request' when calling JournalEntriesApi.journal_entries_create"
52
+ end
53
+ # resource path
54
+ local_var_path = '/journal-entries'
55
+
56
+ # query parameters
57
+ query_params = opts[:query_params] || {}
58
+ query_params[:'is_debug_mode'] = opts[:'is_debug_mode'] if !opts[:'is_debug_mode'].nil?
59
+ query_params[:'run_async'] = opts[:'run_async'] if !opts[:'run_async'].nil?
60
+
61
+ # header parameters
62
+ header_params = opts[:header_params] || {}
63
+ # HTTP header 'Accept' (if needed)
64
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
65
+ # HTTP header 'Content-Type'
66
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'application/x-www-form-urlencoded', 'multipart/form-data'])
67
+ header_params[:'X-Account-Token'] = x_account_token
68
+
69
+ # form parameters
70
+ form_params = opts[:form_params] || {}
71
+
72
+ # http body (model)
73
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(journal_entry_endpoint_request)
74
+
75
+ # return_type
76
+ return_type = opts[:debug_return_type] || 'JournalEntryResponse'
77
+
78
+ # auth_names
79
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
80
+
81
+ new_options = opts.merge(
82
+ :operation => :"JournalEntriesApi.journal_entries_create",
83
+ :header_params => header_params,
84
+ :query_params => query_params,
85
+ :form_params => form_params,
86
+ :body => post_body,
87
+ :auth_names => auth_names,
88
+ :return_type => return_type
89
+ )
90
+
91
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
92
+ if @api_client.config.debugging
93
+ @api_client.config.logger.debug "API called: JournalEntriesApi#journal_entries_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
94
+ end
95
+ return data, status_code, headers
96
+ end
97
+
98
+ # Returns a list of `JournalEntry` objects.
99
+ # @param x_account_token [String] Token identifying the end user.
100
+ # @param [Hash] opts the optional parameters
101
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
102
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
103
+ # @option opts [String] :cursor The pagination cursor value.
104
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
105
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
106
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
107
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
108
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
109
+ # @option opts [Integer] :page_size Number of results to return per page.
110
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
111
+ # @return [PaginatedJournalEntryList]
112
+ def journal_entries_list(x_account_token, opts = {})
113
+ data, _status_code, _headers = journal_entries_list_with_http_info(x_account_token, opts)
114
+ data
115
+ end
116
+
117
+ # Returns a list of &#x60;JournalEntry&#x60; objects.
118
+ # @param x_account_token [String] Token identifying the end user.
119
+ # @param [Hash] opts the optional parameters
120
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
121
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
122
+ # @option opts [String] :cursor The pagination cursor value.
123
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
124
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was deleted in the third-party service.
125
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
126
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
127
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
128
+ # @option opts [Integer] :page_size Number of results to return per page.
129
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
130
+ # @return [Array<(PaginatedJournalEntryList, Integer, Hash)>] PaginatedJournalEntryList data, response status code and response headers
131
+ def journal_entries_list_with_http_info(x_account_token, opts = {})
132
+ if @api_client.config.debugging
133
+ @api_client.config.logger.debug 'Calling API: JournalEntriesApi.journal_entries_list ...'
134
+ end
135
+ # verify the required parameter 'x_account_token' is set
136
+ if @api_client.config.client_side_validation && x_account_token.nil?
137
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JournalEntriesApi.journal_entries_list"
138
+ end
139
+ allowable_values = ["lines", "lines,payments", "payments"]
140
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
141
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
142
+ end
143
+ # resource path
144
+ local_var_path = '/journal-entries'
145
+
146
+ # query parameters
147
+ query_params = opts[:query_params] || {}
148
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
149
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
150
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
151
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
152
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
153
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
154
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
155
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
156
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
157
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
158
+
159
+ # header parameters
160
+ header_params = opts[:header_params] || {}
161
+ # HTTP header 'Accept' (if needed)
162
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
163
+ header_params[:'X-Account-Token'] = x_account_token
164
+
165
+ # form parameters
166
+ form_params = opts[:form_params] || {}
167
+
168
+ # http body (model)
169
+ post_body = opts[:debug_body]
170
+
171
+ # return_type
172
+ return_type = opts[:debug_return_type] || 'PaginatedJournalEntryList'
173
+
174
+ # auth_names
175
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
176
+
177
+ new_options = opts.merge(
178
+ :operation => :"JournalEntriesApi.journal_entries_list",
179
+ :header_params => header_params,
180
+ :query_params => query_params,
181
+ :form_params => form_params,
182
+ :body => post_body,
183
+ :auth_names => auth_names,
184
+ :return_type => return_type
185
+ )
186
+
187
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
188
+ if @api_client.config.debugging
189
+ @api_client.config.logger.debug "API called: JournalEntriesApi#journal_entries_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
190
+ end
191
+ return data, status_code, headers
192
+ end
193
+
194
+ # Returns metadata for `JournalEntry` POSTs.
195
+ # @param x_account_token [String] Token identifying the end user.
196
+ # @param [Hash] opts the optional parameters
197
+ # @return [MetaResponse]
198
+ def journal_entries_meta_post_retrieve(x_account_token, opts = {})
199
+ data, _status_code, _headers = journal_entries_meta_post_retrieve_with_http_info(x_account_token, opts)
200
+ data
201
+ end
202
+
203
+ # Returns metadata for &#x60;JournalEntry&#x60; POSTs.
204
+ # @param x_account_token [String] Token identifying the end user.
205
+ # @param [Hash] opts the optional parameters
206
+ # @return [Array<(MetaResponse, Integer, Hash)>] MetaResponse data, response status code and response headers
207
+ def journal_entries_meta_post_retrieve_with_http_info(x_account_token, opts = {})
208
+ if @api_client.config.debugging
209
+ @api_client.config.logger.debug 'Calling API: JournalEntriesApi.journal_entries_meta_post_retrieve ...'
210
+ end
211
+ # verify the required parameter 'x_account_token' is set
212
+ if @api_client.config.client_side_validation && x_account_token.nil?
213
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JournalEntriesApi.journal_entries_meta_post_retrieve"
214
+ end
215
+ # resource path
216
+ local_var_path = '/journal-entries/meta/post'
217
+
218
+ # query parameters
219
+ query_params = opts[:query_params] || {}
220
+
221
+ # header parameters
222
+ header_params = opts[:header_params] || {}
223
+ # HTTP header 'Accept' (if needed)
224
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
225
+ header_params[:'X-Account-Token'] = x_account_token
226
+
227
+ # form parameters
228
+ form_params = opts[:form_params] || {}
229
+
230
+ # http body (model)
231
+ post_body = opts[:debug_body]
232
+
233
+ # return_type
234
+ return_type = opts[:debug_return_type] || 'MetaResponse'
235
+
236
+ # auth_names
237
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
238
+
239
+ new_options = opts.merge(
240
+ :operation => :"JournalEntriesApi.journal_entries_meta_post_retrieve",
241
+ :header_params => header_params,
242
+ :query_params => query_params,
243
+ :form_params => form_params,
244
+ :body => post_body,
245
+ :auth_names => auth_names,
246
+ :return_type => return_type
247
+ )
248
+
249
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
250
+ if @api_client.config.debugging
251
+ @api_client.config.logger.debug "API called: JournalEntriesApi#journal_entries_meta_post_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
252
+ end
253
+ return data, status_code, headers
254
+ end
255
+
256
+ # Returns a `JournalEntry` object with the given `id`.
257
+ # @param x_account_token [String] Token identifying the end user.
258
+ # @param id [String]
259
+ # @param [Hash] opts the optional parameters
260
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
261
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
262
+ # @return [JournalEntry]
263
+ def journal_entries_retrieve(x_account_token, id, opts = {})
264
+ data, _status_code, _headers = journal_entries_retrieve_with_http_info(x_account_token, id, opts)
265
+ data
266
+ end
267
+
268
+ # Returns a &#x60;JournalEntry&#x60; object with the given &#x60;id&#x60;.
269
+ # @param x_account_token [String] Token identifying the end user.
270
+ # @param id [String]
271
+ # @param [Hash] opts the optional parameters
272
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
273
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
274
+ # @return [Array<(JournalEntry, Integer, Hash)>] JournalEntry data, response status code and response headers
275
+ def journal_entries_retrieve_with_http_info(x_account_token, id, opts = {})
276
+ if @api_client.config.debugging
277
+ @api_client.config.logger.debug 'Calling API: JournalEntriesApi.journal_entries_retrieve ...'
278
+ end
279
+ # verify the required parameter 'x_account_token' is set
280
+ if @api_client.config.client_side_validation && x_account_token.nil?
281
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JournalEntriesApi.journal_entries_retrieve"
282
+ end
283
+ # verify the required parameter 'id' is set
284
+ if @api_client.config.client_side_validation && id.nil?
285
+ fail ArgumentError, "Missing the required parameter 'id' when calling JournalEntriesApi.journal_entries_retrieve"
286
+ end
287
+ allowable_values = ["lines", "lines,payments", "payments"]
288
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
289
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
290
+ end
291
+ # resource path
292
+ local_var_path = '/journal-entries/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
293
+
294
+ # query parameters
295
+ query_params = opts[:query_params] || {}
296
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
297
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
298
+
299
+ # header parameters
300
+ header_params = opts[:header_params] || {}
301
+ # HTTP header 'Accept' (if needed)
302
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
303
+ header_params[:'X-Account-Token'] = x_account_token
304
+
305
+ # form parameters
306
+ form_params = opts[:form_params] || {}
307
+
308
+ # http body (model)
309
+ post_body = opts[:debug_body]
310
+
311
+ # return_type
312
+ return_type = opts[:debug_return_type] || 'JournalEntry'
313
+
314
+ # auth_names
315
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
316
+
317
+ new_options = opts.merge(
318
+ :operation => :"JournalEntriesApi.journal_entries_retrieve",
319
+ :header_params => header_params,
320
+ :query_params => query_params,
321
+ :form_params => form_params,
322
+ :body => post_body,
323
+ :auth_names => auth_names,
324
+ :return_type => return_type
325
+ )
326
+
327
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
328
+ if @api_client.config.debugging
329
+ @api_client.config.logger.debug "API called: JournalEntriesApi#journal_entries_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
330
+ end
331
+ return data, status_code, headers
332
+ end
333
+ end
334
+ end
@@ -0,0 +1,85 @@
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 LinkTokenApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a link token to be used when linking a new end user.
23
+ # @param end_user_details_request [EndUserDetailsRequest]
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [LinkToken]
26
+ def link_token_create(end_user_details_request, opts = {})
27
+ data, _status_code, _headers = link_token_create_with_http_info(end_user_details_request, opts)
28
+ data
29
+ end
30
+
31
+ # Creates a link token to be used when linking a new end user.
32
+ # @param end_user_details_request [EndUserDetailsRequest]
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(LinkToken, Integer, Hash)>] LinkToken data, response status code and response headers
35
+ def link_token_create_with_http_info(end_user_details_request, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: LinkTokenApi.link_token_create ...'
38
+ end
39
+ # verify the required parameter 'end_user_details_request' is set
40
+ if @api_client.config.client_side_validation && end_user_details_request.nil?
41
+ fail ArgumentError, "Missing the required parameter 'end_user_details_request' when calling LinkTokenApi.link_token_create"
42
+ end
43
+ # resource path
44
+ local_var_path = '/link-token'
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
53
+ # HTTP header 'Content-Type'
54
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'application/x-www-form-urlencoded', 'multipart/form-data'])
55
+
56
+ # form parameters
57
+ form_params = opts[:form_params] || {}
58
+
59
+ # http body (model)
60
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(end_user_details_request)
61
+
62
+ # return_type
63
+ return_type = opts[:debug_return_type] || 'LinkToken'
64
+
65
+ # auth_names
66
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
67
+
68
+ new_options = opts.merge(
69
+ :operation => :"LinkTokenApi.link_token_create",
70
+ :header_params => header_params,
71
+ :query_params => query_params,
72
+ :form_params => form_params,
73
+ :body => post_body,
74
+ :auth_names => auth_names,
75
+ :return_type => return_type
76
+ )
77
+
78
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
79
+ if @api_client.config.debugging
80
+ @api_client.config.logger.debug "API called: LinkTokenApi#link_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
+ end
82
+ return data, status_code, headers
83
+ end
84
+ end
85
+ end