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,352 @@
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 'date'
14
+ require 'time'
15
+
16
+ module MergeAccountingClient
17
+ # # The IncomeStatement Object ### Description The `IncomeStatement` object is used to represent a company's income statements. ### Usage Example Fetch from the `GET IncomeStatement` endpoint and view a company's income statement for a given period.
18
+ class IncomeStatement
19
+ attr_accessor :id
20
+
21
+ # The third-party API ID of the matching object.
22
+ attr_accessor :remote_id
23
+
24
+ attr_accessor :remote_data
25
+
26
+ # The income statement's name.
27
+ attr_accessor :name
28
+
29
+ # The income statement's start period.
30
+ attr_accessor :start_period
31
+
32
+ # The income statement's end period.
33
+ attr_accessor :end_period
34
+
35
+ attr_accessor :income
36
+
37
+ attr_accessor :cost_of_sales
38
+
39
+ # The income statement's gross profit.
40
+ attr_accessor :gross_profit
41
+
42
+ attr_accessor :operating_expenses
43
+
44
+ # The income statement's net operating profit.
45
+ attr_accessor :net_operating_income
46
+
47
+ attr_accessor :non_operating_expenses
48
+
49
+ # The income statement's net income.
50
+ attr_accessor :net_income
51
+
52
+ # Attribute mapping from ruby-style variable name to JSON key.
53
+ def self.attribute_map
54
+ {
55
+ :'id' => :'id',
56
+ :'remote_id' => :'remote_id',
57
+ :'remote_data' => :'remote_data',
58
+ :'name' => :'name',
59
+ :'start_period' => :'start_period',
60
+ :'end_period' => :'end_period',
61
+ :'income' => :'income',
62
+ :'cost_of_sales' => :'cost_of_sales',
63
+ :'gross_profit' => :'gross_profit',
64
+ :'operating_expenses' => :'operating_expenses',
65
+ :'net_operating_income' => :'net_operating_income',
66
+ :'non_operating_expenses' => :'non_operating_expenses',
67
+ :'net_income' => :'net_income'
68
+ }
69
+ end
70
+
71
+ # Returns all the JSON keys this model knows about
72
+ def self.acceptable_attributes
73
+ attribute_map.values
74
+ end
75
+
76
+ # Attribute type mapping.
77
+ def self.openapi_types
78
+ {
79
+ :'id' => :'String',
80
+ :'remote_id' => :'String',
81
+ :'remote_data' => :'Array<RemoteData>',
82
+ :'name' => :'String',
83
+ :'start_period' => :'Time',
84
+ :'end_period' => :'Time',
85
+ :'income' => :'Array<ReportItem>',
86
+ :'cost_of_sales' => :'Array<ReportItem>',
87
+ :'gross_profit' => :'Float',
88
+ :'operating_expenses' => :'Array<ReportItem>',
89
+ :'net_operating_income' => :'Float',
90
+ :'non_operating_expenses' => :'Array<ReportItem>',
91
+ :'net_income' => :'Float'
92
+ }
93
+ end
94
+
95
+ # List of attributes with nullable: true
96
+ def self.openapi_nullable
97
+ Set.new([
98
+ :'remote_id',
99
+ :'remote_data',
100
+ :'name',
101
+ :'start_period',
102
+ :'end_period',
103
+ :'gross_profit',
104
+ :'net_operating_income',
105
+ :'net_income'
106
+ ])
107
+ end
108
+
109
+ # Initializes the object
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ def initialize(attributes = {})
112
+ if (!attributes.is_a?(Hash))
113
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MergeAccountingClient::IncomeStatement` initialize method"
114
+ end
115
+
116
+ # check to see if the attribute exists and convert string to symbol for hash key
117
+ attributes = attributes.each_with_object({}) { |(k, v), h|
118
+ if (!self.class.attribute_map.key?(k.to_sym))
119
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MergeAccountingClient::IncomeStatement`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
120
+ end
121
+ h[k.to_sym] = v
122
+ }
123
+
124
+ if attributes.key?(:'id')
125
+ self.id = attributes[:'id']
126
+ end
127
+
128
+ if attributes.key?(:'remote_id')
129
+ self.remote_id = attributes[:'remote_id']
130
+ end
131
+
132
+ if attributes.key?(:'remote_data')
133
+ if (value = attributes[:'remote_data']).is_a?(Array)
134
+ self.remote_data = value
135
+ end
136
+ end
137
+
138
+ if attributes.key?(:'name')
139
+ self.name = attributes[:'name']
140
+ end
141
+
142
+ if attributes.key?(:'start_period')
143
+ self.start_period = attributes[:'start_period']
144
+ end
145
+
146
+ if attributes.key?(:'end_period')
147
+ self.end_period = attributes[:'end_period']
148
+ end
149
+
150
+ if attributes.key?(:'income')
151
+ if (value = attributes[:'income']).is_a?(Array)
152
+ self.income = value
153
+ end
154
+ end
155
+
156
+ if attributes.key?(:'cost_of_sales')
157
+ if (value = attributes[:'cost_of_sales']).is_a?(Array)
158
+ self.cost_of_sales = value
159
+ end
160
+ end
161
+
162
+ if attributes.key?(:'gross_profit')
163
+ self.gross_profit = attributes[:'gross_profit']
164
+ end
165
+
166
+ if attributes.key?(:'operating_expenses')
167
+ if (value = attributes[:'operating_expenses']).is_a?(Array)
168
+ self.operating_expenses = value
169
+ end
170
+ end
171
+
172
+ if attributes.key?(:'net_operating_income')
173
+ self.net_operating_income = attributes[:'net_operating_income']
174
+ end
175
+
176
+ if attributes.key?(:'non_operating_expenses')
177
+ if (value = attributes[:'non_operating_expenses']).is_a?(Array)
178
+ self.non_operating_expenses = value
179
+ end
180
+ end
181
+
182
+ if attributes.key?(:'net_income')
183
+ self.net_income = attributes[:'net_income']
184
+ end
185
+ end
186
+
187
+ # Show invalid properties with the reasons. Usually used together with valid?
188
+ # @return Array for valid properties with the reasons
189
+ def list_invalid_properties
190
+ invalid_properties = Array.new
191
+ invalid_properties
192
+ end
193
+
194
+ # Check to see if the all the properties in the model are valid
195
+ # @return true if the model is valid
196
+ def valid?
197
+ true
198
+ end
199
+
200
+ # Checks equality by comparing each attribute.
201
+ # @param [Object] Object to be compared
202
+ def ==(o)
203
+ return true if self.equal?(o)
204
+ self.class == o.class &&
205
+ id == o.id &&
206
+ remote_id == o.remote_id &&
207
+ remote_data == o.remote_data &&
208
+ name == o.name &&
209
+ start_period == o.start_period &&
210
+ end_period == o.end_period &&
211
+ income == o.income &&
212
+ cost_of_sales == o.cost_of_sales &&
213
+ gross_profit == o.gross_profit &&
214
+ operating_expenses == o.operating_expenses &&
215
+ net_operating_income == o.net_operating_income &&
216
+ non_operating_expenses == o.non_operating_expenses &&
217
+ net_income == o.net_income
218
+ end
219
+
220
+ # @see the `==` method
221
+ # @param [Object] Object to be compared
222
+ def eql?(o)
223
+ self == o
224
+ end
225
+
226
+ # Calculates hash code according to all attributes.
227
+ # @return [Integer] Hash code
228
+ def hash
229
+ [id, remote_id, remote_data, name, start_period, end_period, income, cost_of_sales, gross_profit, operating_expenses, net_operating_income, non_operating_expenses, net_income].hash
230
+ end
231
+
232
+ # Builds the object from hash
233
+ # @param [Hash] attributes Model attributes in the form of hash
234
+ # @return [Object] Returns the model itself
235
+ def self.build_from_hash(attributes)
236
+ new.build_from_hash(attributes)
237
+ end
238
+
239
+ # Builds the object from hash
240
+ # @param [Hash] attributes Model attributes in the form of hash
241
+ # @return [Object] Returns the model itself
242
+ def build_from_hash(attributes)
243
+ return nil unless attributes.is_a?(Hash)
244
+ self.class.openapi_types.each_pair do |key, type|
245
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
246
+ self.send("#{key}=", nil)
247
+ elsif type =~ /\AArray<(.*)>/i
248
+ # check to ensure the input is an array given that the attribute
249
+ # is documented as an array but the input is not
250
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
251
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
252
+ end
253
+ elsif !attributes[self.class.attribute_map[key]].nil?
254
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
255
+ end
256
+ end
257
+
258
+ self
259
+ end
260
+
261
+ # Deserializes the data based on type
262
+ # @param string type Data type
263
+ # @param string value Value to be deserialized
264
+ # @return [Object] Deserialized data
265
+ def _deserialize(type, value)
266
+ case type.to_sym
267
+ when :Time
268
+ Time.parse(value)
269
+ when :Date
270
+ Date.parse(value)
271
+ when :String
272
+ value
273
+ when :Integer
274
+ value.to_i
275
+ when :Float
276
+ value.to_f
277
+ when :Boolean
278
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
279
+ true
280
+ else
281
+ false
282
+ end
283
+ when :Object
284
+ # generic object (usually a Hash), return directly
285
+ value
286
+ when /\AArray<(?<inner_type>.+)>\z/
287
+ inner_type = Regexp.last_match[:inner_type]
288
+ value.map { |v| _deserialize(inner_type, v) }
289
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
290
+ k_type = Regexp.last_match[:k_type]
291
+ v_type = Regexp.last_match[:v_type]
292
+ {}.tap do |hash|
293
+ value.each do |k, v|
294
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
295
+ end
296
+ end
297
+ else # model
298
+ # models (e.g. Pet) or oneOf
299
+ klass = MergeAccountingClient.const_get(type)
300
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
301
+ end
302
+ end
303
+
304
+ # Returns the string representation of the object
305
+ # @return [String] String presentation of the object
306
+ def to_s
307
+ to_hash.to_s
308
+ end
309
+
310
+ # to_body is an alias to to_hash (backward compatibility)
311
+ # @return [Hash] Returns the object in the form of hash
312
+ def to_body
313
+ to_hash
314
+ end
315
+
316
+ # Returns the object in the form of hash
317
+ # @return [Hash] Returns the object in the form of hash
318
+ def to_hash
319
+ hash = {}
320
+ self.class.attribute_map.each_pair do |attr, param|
321
+ value = self.send(attr)
322
+ if value.nil?
323
+ is_nullable = self.class.openapi_nullable.include?(attr)
324
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
325
+ end
326
+
327
+ hash[param] = _to_hash(value)
328
+ end
329
+ hash
330
+ end
331
+
332
+ # Outputs non-array value in the form of hash
333
+ # For object, use to_hash. Otherwise, just return the value
334
+ # @param [Object] value Any valid value
335
+ # @return [Hash] Returns the value in the form of hash
336
+ def _to_hash(value)
337
+ if value.is_a?(Array)
338
+ value.compact.map { |v| _to_hash(v) }
339
+ elsif value.is_a?(Hash)
340
+ {}.tap do |hash|
341
+ value.each { |k, v| hash[k] = _to_hash(v) }
342
+ end
343
+ elsif value.respond_to? :to_hash
344
+ value.to_hash
345
+ else
346
+ value
347
+ end
348
+ end
349
+
350
+ end
351
+
352
+ end