hydrogen-integration-api 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (449) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +7 -0
  3. data/README.md +87 -0
  4. data/Rakefile +8 -0
  5. data/git_push.sh +55 -0
  6. data/integration_api.gemspec +46 -0
  7. data/lib/integration_api.rb +257 -0
  8. data/lib/integration_api/api/accounting_api.rb +870 -0
  9. data/lib/integration_api/api/ach_api.rb +1109 -0
  10. data/lib/integration_api/api/aggregation_api.rb +616 -0
  11. data/lib/integration_api/api/async_api.rb +263 -0
  12. data/lib/integration_api/api/baas_api.rb +518 -0
  13. data/lib/integration_api/api/brokerage_api.rb +1091 -0
  14. data/lib/integration_api/api/card_api.rb +1651 -0
  15. data/lib/integration_api/api/iav_api.rb +186 -0
  16. data/lib/integration_api/api/kms_api.rb +301 -0
  17. data/lib/integration_api/api/kyc_api.rb +138 -0
  18. data/lib/integration_api/api/market_data_api.rb +127 -0
  19. data/lib/integration_api/api/rtp_api.rb +479 -0
  20. data/lib/integration_api/api/sms_api.rb +129 -0
  21. data/lib/integration_api/api/smtp_api.rb +129 -0
  22. data/lib/integration_api/api/utils_api.rb +296 -0
  23. data/lib/integration_api/api/webhook_api.rb +301 -0
  24. data/lib/integration_api/api/wire_api.rb +479 -0
  25. data/lib/integration_api/api_client.rb +392 -0
  26. data/lib/integration_api/api_error.rb +38 -0
  27. data/lib/integration_api/auth_configuration.rb +181 -0
  28. data/lib/integration_api/configuration.rb +209 -0
  29. data/lib/integration_api/environment.rb +26 -0
  30. data/lib/integration_api/models/accounting_customer_response_vo.rb +200 -0
  31. data/lib/integration_api/models/accounting_customer_revenue_response_vo.rb +199 -0
  32. data/lib/integration_api/models/accounting_final_response_vo.rb +252 -0
  33. data/lib/integration_api/models/accounting_invoice_payment_response_vo.rb +199 -0
  34. data/lib/integration_api/models/accounting_invoice_response_vo.rb +199 -0
  35. data/lib/integration_api/models/accounting_stats_response_vo.rb +199 -0
  36. data/lib/integration_api/models/ach_balance_response_vo.rb +230 -0
  37. data/lib/integration_api/models/ach_bank_link_request_co.rb +199 -0
  38. data/lib/integration_api/models/ach_bank_link_response_vo.rb +235 -0
  39. data/lib/integration_api/models/ach_beneficial_owner_request_co.rb +190 -0
  40. data/lib/integration_api/models/ach_beneficial_owner_response_vo.rb +208 -0
  41. data/lib/integration_api/models/ach_business_balance_response_vo.rb +226 -0
  42. data/lib/integration_api/models/ach_business_request_co.rb +199 -0
  43. data/lib/integration_api/models/ach_business_response_vo.rb +217 -0
  44. data/lib/integration_api/models/ach_card_link_request_co.rb +190 -0
  45. data/lib/integration_api/models/ach_card_link_response_vo.rb +217 -0
  46. data/lib/integration_api/models/ach_card_load_response_vo.rb +190 -0
  47. data/lib/integration_api/models/ach_card_request_co.rb +182 -0
  48. data/lib/integration_api/models/ach_card_reserve_request_co.rb +181 -0
  49. data/lib/integration_api/models/ach_card_reserve_response_vo.rb +217 -0
  50. data/lib/integration_api/models/ach_card_response_vo.rb +218 -0
  51. data/lib/integration_api/models/ach_client_request_co.rb +199 -0
  52. data/lib/integration_api/models/ach_client_response_vo.rb +217 -0
  53. data/lib/integration_api/models/ach_reserve_link_request_co.rb +181 -0
  54. data/lib/integration_api/models/ach_reserve_link_response_vo.rb +219 -0
  55. data/lib/integration_api/models/ach_status_response_vo.rb +260 -0
  56. data/lib/integration_api/models/ach_transfer_request_co.rb +199 -0
  57. data/lib/integration_api/models/ach_transfer_response_vo.rb +244 -0
  58. data/lib/integration_api/models/acquiree.rb +199 -0
  59. data/lib/integration_api/models/acquirer.rb +199 -0
  60. data/lib/integration_api/models/address.rb +278 -0
  61. data/lib/integration_api/models/aggregation_account.rb +495 -0
  62. data/lib/integration_api/models/aggregation_account_balance.rb +292 -0
  63. data/lib/integration_api/models/aggregation_account_balance_response_vo.rb +208 -0
  64. data/lib/integration_api/models/aggregation_account_holding.rb +370 -0
  65. data/lib/integration_api/models/aggregation_account_holding_response_internal_object_vo.rb +199 -0
  66. data/lib/integration_api/models/aggregation_account_holding_response_vo.rb +210 -0
  67. data/lib/integration_api/models/aggregation_account_response_internal_object_vo.rb +199 -0
  68. data/lib/integration_api/models/aggregation_account_response_vo.rb +208 -0
  69. data/lib/integration_api/models/aggregation_account_transaction.rb +329 -0
  70. data/lib/integration_api/models/aggregation_account_transaction_response_internal_object_vo.rb +199 -0
  71. data/lib/integration_api/models/aggregation_account_transaction_response_vo.rb +221 -0
  72. data/lib/integration_api/models/aggregation_accounts_response_vo.rb +210 -0
  73. data/lib/integration_api/models/aggregation_request_object.rb +226 -0
  74. data/lib/integration_api/models/aggregation_vendor_request_co.rb +199 -0
  75. data/lib/integration_api/models/apple_payload.rb +199 -0
  76. data/lib/integration_api/models/async_transaction.rb +217 -0
  77. data/lib/integration_api/models/async_transaction_vo.rb +199 -0
  78. data/lib/integration_api/models/attachment_vo.rb +199 -0
  79. data/lib/integration_api/models/baas_account_co.rb +190 -0
  80. data/lib/integration_api/models/baas_account_vo.rb +253 -0
  81. data/lib/integration_api/models/baas_balance_vo.rb +221 -0
  82. data/lib/integration_api/models/baas_business_vo.rb +237 -0
  83. data/lib/integration_api/models/baas_client_vo.rb +237 -0
  84. data/lib/integration_api/models/baas_statement_vo.rb +226 -0
  85. data/lib/integration_api/models/baas_statements_vo.rb +201 -0
  86. data/lib/integration_api/models/baas_sub_account_co.rb +181 -0
  87. data/lib/integration_api/models/baas_sub_account_vo.rb +244 -0
  88. data/lib/integration_api/models/baas_transactions_vo.rb +221 -0
  89. data/lib/integration_api/models/balances.rb +223 -0
  90. data/lib/integration_api/models/bank_credit.rb +282 -0
  91. data/lib/integration_api/models/bank_link.rb +431 -0
  92. data/lib/integration_api/models/bank_link_response_internal_object_vo.rb +199 -0
  93. data/lib/integration_api/models/bank_link_vendor_data_vo.rb +190 -0
  94. data/lib/integration_api/models/base_response_vo.rb +199 -0
  95. data/lib/integration_api/models/brokerage_account_co.rb +192 -0
  96. data/lib/integration_api/models/brokerage_account_vo.rb +217 -0
  97. data/lib/integration_api/models/brokerage_balance_vo.rb +228 -0
  98. data/lib/integration_api/models/brokerage_bank_link_co.rb +181 -0
  99. data/lib/integration_api/models/brokerage_bank_link_vo.rb +226 -0
  100. data/lib/integration_api/models/brokerage_create_client_co.rb +192 -0
  101. data/lib/integration_api/models/brokerage_create_client_vo.rb +217 -0
  102. data/lib/integration_api/models/brokerage_deposit_co.rb +181 -0
  103. data/lib/integration_api/models/brokerage_deposit_vo.rb +217 -0
  104. data/lib/integration_api/models/brokerage_document_co.rb +190 -0
  105. data/lib/integration_api/models/brokerage_document_vo.rb +226 -0
  106. data/lib/integration_api/models/brokerage_holding_vo.rb +226 -0
  107. data/lib/integration_api/models/brokerage_order_co.rb +181 -0
  108. data/lib/integration_api/models/brokerage_order_vo.rb +226 -0
  109. data/lib/integration_api/models/brokerage_performance_vo.rb +226 -0
  110. data/lib/integration_api/models/brokerage_securities_vo.rb +217 -0
  111. data/lib/integration_api/models/brokerage_statement_vo.rb +199 -0
  112. data/lib/integration_api/models/brokerage_transaction_vo.rb +226 -0
  113. data/lib/integration_api/models/brokerage_update_client_co.rb +183 -0
  114. data/lib/integration_api/models/brokerage_update_client_vo.rb +237 -0
  115. data/lib/integration_api/models/brokerage_withdrawal_co.rb +181 -0
  116. data/lib/integration_api/models/brokerage_withdrawal_vo.rb +217 -0
  117. data/lib/integration_api/models/business_address.rb +253 -0
  118. data/lib/integration_api/models/business_status_response_vo.rb +217 -0
  119. data/lib/integration_api/models/business_vendor_request_data_vo.rb +313 -0
  120. data/lib/integration_api/models/card_auto_reload_request_co.rb +208 -0
  121. data/lib/integration_api/models/card_auto_reload_response_vo.rb +226 -0
  122. data/lib/integration_api/models/card_balance_response_vo.rb +230 -0
  123. data/lib/integration_api/models/card_base_request_co.rb +199 -0
  124. data/lib/integration_api/models/card_business_request_co.rb +181 -0
  125. data/lib/integration_api/models/card_client_request_co.rb +192 -0
  126. data/lib/integration_api/models/card_load_request_co.rb +190 -0
  127. data/lib/integration_api/models/card_load_unload_response_vo.rb +235 -0
  128. data/lib/integration_api/models/card_pin_request_co.rb +208 -0
  129. data/lib/integration_api/models/card_replace_response_vo.rb +235 -0
  130. data/lib/integration_api/models/card_reserve_account_response_vo.rb +235 -0
  131. data/lib/integration_api/models/card_reserve_transfer_request_co.rb +181 -0
  132. data/lib/integration_api/models/card_reserve_transfer_response_vo.rb +217 -0
  133. data/lib/integration_api/models/card_spending_control_request_co.rb +181 -0
  134. data/lib/integration_api/models/card_spending_control_response_vo.rb +217 -0
  135. data/lib/integration_api/models/card_token_request_co.rb +242 -0
  136. data/lib/integration_api/models/card_token_response_vo.rb +278 -0
  137. data/lib/integration_api/models/card_transaction_response_vo.rb +230 -0
  138. data/lib/integration_api/models/card_unload_request_co.rb +190 -0
  139. data/lib/integration_api/models/card_update_pin_request_co.rb +208 -0
  140. data/lib/integration_api/models/cash.rb +213 -0
  141. data/lib/integration_api/models/client_address.rb +283 -0
  142. data/lib/integration_api/models/client_vendor_request_data_vo.rb +340 -0
  143. data/lib/integration_api/models/contact.rb +356 -0
  144. data/lib/integration_api/models/contact_address.rb +268 -0
  145. data/lib/integration_api/models/create_baas_business_co.rb +192 -0
  146. data/lib/integration_api/models/create_baas_client_co.rb +192 -0
  147. data/lib/integration_api/models/create_business_response_vo.rb +217 -0
  148. data/lib/integration_api/models/create_card_client_response_vo.rb +217 -0
  149. data/lib/integration_api/models/create_user_request.rb +235 -0
  150. data/lib/integration_api/models/customer_revenue.rb +296 -0
  151. data/lib/integration_api/models/dividend.rb +199 -0
  152. data/lib/integration_api/models/dividend_tax.rb +190 -0
  153. data/lib/integration_api/models/email.rb +359 -0
  154. data/lib/integration_api/models/email_click.rb +220 -0
  155. data/lib/integration_api/models/email_open.rb +205 -0
  156. data/lib/integration_api/models/exchange_public_token_vo.rb +227 -0
  157. data/lib/integration_api/models/exchange_token_co.rb +235 -0
  158. data/lib/integration_api/models/financial_statement.rb +362 -0
  159. data/lib/integration_api/models/get_card_image_response_vo.rb +217 -0
  160. data/lib/integration_api/models/get_card_pci_details_response_vo.rb +235 -0
  161. data/lib/integration_api/models/get_card_statement_response_vo.rb +282 -0
  162. data/lib/integration_api/models/get_card_token_response_vo.rb +278 -0
  163. data/lib/integration_api/models/get_transactions_response.rb +183 -0
  164. data/lib/integration_api/models/google_payload.rb +181 -0
  165. data/lib/integration_api/models/iav_aggregation_response_vo.rb +190 -0
  166. data/lib/integration_api/models/iav_bank_link_response_vo.rb +192 -0
  167. data/lib/integration_api/models/iav_request_co.rb +244 -0
  168. data/lib/integration_api/models/iav_response_vo.rb +199 -0
  169. data/lib/integration_api/models/iav_token_exchange_vendor_response_vo.rb +172 -0
  170. data/lib/integration_api/models/iav_vendor_request_co.rb +199 -0
  171. data/lib/integration_api/models/identification.rb +235 -0
  172. data/lib/integration_api/models/instrument.rb +199 -0
  173. data/lib/integration_api/models/investment.rb +283 -0
  174. data/lib/integration_api/models/invoice.rb +472 -0
  175. data/lib/integration_api/models/invoice_payment.rb +269 -0
  176. data/lib/integration_api/models/json_node.rb +172 -0
  177. data/lib/integration_api/models/kms_config.rb +307 -0
  178. data/lib/integration_api/models/kyc_request_co.rb +255 -0
  179. data/lib/integration_api/models/kyc_response_vo.rb +271 -0
  180. data/lib/integration_api/models/kyc_vendor_request_data_vo.rb +385 -0
  181. data/lib/integration_api/models/line_items.rb +278 -0
  182. data/lib/integration_api/models/location.rb +253 -0
  183. data/lib/integration_api/models/mapstringobject.rb +172 -0
  184. data/lib/integration_api/models/md_history_item_vo.rb +235 -0
  185. data/lib/integration_api/models/md_history_request_co.rb +221 -0
  186. data/lib/integration_api/models/md_history_response_vo.rb +183 -0
  187. data/lib/integration_api/models/md_quote_item_vo.rb +352 -0
  188. data/lib/integration_api/models/md_quote_request_co.rb +246 -0
  189. data/lib/integration_api/models/md_quote_response_vo.rb +183 -0
  190. data/lib/integration_api/models/merger_acquisition.rb +199 -0
  191. data/lib/integration_api/models/nucleus_transfer_fields_co.rb +190 -0
  192. data/lib/integration_api/models/ownership.rb +190 -0
  193. data/lib/integration_api/models/page_ach_transfer_response_vo.rb +258 -0
  194. data/lib/integration_api/models/page_kms_config.rb +258 -0
  195. data/lib/integration_api/models/page_webhook.rb +258 -0
  196. data/lib/integration_api/models/pageobject.rb +258 -0
  197. data/lib/integration_api/models/politically_exposed_person_dto.rb +208 -0
  198. data/lib/integration_api/models/portfolio_asset_size_log.rb +329 -0
  199. data/lib/integration_api/models/property_value_response_vo.rb +226 -0
  200. data/lib/integration_api/models/response_entity.rb +233 -0
  201. data/lib/integration_api/models/rtp_bank_link_request_co.rb +190 -0
  202. data/lib/integration_api/models/rtp_bank_link_response_vo.rb +235 -0
  203. data/lib/integration_api/models/rtp_transfer_request_co.rb +190 -0
  204. data/lib/integration_api/models/rtp_transfer_response_vo.rb +226 -0
  205. data/lib/integration_api/models/samsung_payload.rb +181 -0
  206. data/lib/integration_api/models/sms.rb +335 -0
  207. data/lib/integration_api/models/sms_response_vo.rb +226 -0
  208. data/lib/integration_api/models/smsvo.rb +217 -0
  209. data/lib/integration_api/models/smtp_response_vo.rb +226 -0
  210. data/lib/integration_api/models/smtp_vo.rb +273 -0
  211. data/lib/integration_api/models/sort.rb +233 -0
  212. data/lib/integration_api/models/spending_control_vendor_request_data_vo.rb +255 -0
  213. data/lib/integration_api/models/stat.rb +203 -0
  214. data/lib/integration_api/models/transaction.rb +370 -0
  215. data/lib/integration_api/models/update_baas_business_co.rb +183 -0
  216. data/lib/integration_api/models/update_baas_client_co.rb +183 -0
  217. data/lib/integration_api/models/update_business_response_vo.rb +217 -0
  218. data/lib/integration_api/models/update_card_client_response_vo.rb +217 -0
  219. data/lib/integration_api/models/user_response_interface.rb +172 -0
  220. data/lib/integration_api/models/user_response_vo.rb +235 -0
  221. data/lib/integration_api/models/vendor_access_config_vo.rb +202 -0
  222. data/lib/integration_api/models/webhook.rb +277 -0
  223. data/lib/integration_api/models/widget_url_vo.rb +190 -0
  224. data/lib/integration_api/models/wire_bank_link_request_co.rb +190 -0
  225. data/lib/integration_api/models/wire_bank_link_response_vo.rb +235 -0
  226. data/lib/integration_api/models/wire_transfer_request_co.rb +190 -0
  227. data/lib/integration_api/models/wire_transfer_response_vo.rb +226 -0
  228. data/lib/integration_api/models/zillow_property_vendor_response_vo.rb +217 -0
  229. data/lib/integration_api/version.rb +15 -0
  230. data/spec/api/accounting_api_spec.rb +234 -0
  231. data/spec/api/ach_api_spec.rb +259 -0
  232. data/spec/api/aggregation_api_spec.rb +172 -0
  233. data/spec/api/async_api_spec.rb +88 -0
  234. data/spec/api/baas_api_spec.rb +143 -0
  235. data/spec/api/brokerage_api_spec.rb +264 -0
  236. data/spec/api/card_api_spec.rb +385 -0
  237. data/spec/api/iav_api_spec.rb +73 -0
  238. data/spec/api/kms_api_spec.rb +100 -0
  239. data/spec/api/kyc_api_spec.rb +63 -0
  240. data/spec/api/market_data_api_spec.rb +57 -0
  241. data/spec/api/rtp_api_spec.rb +134 -0
  242. data/spec/api/sms_api_spec.rb +59 -0
  243. data/spec/api/smtp_api_spec.rb +59 -0
  244. data/spec/api/utils_api_spec.rb +104 -0
  245. data/spec/api/webhook_api_spec.rb +100 -0
  246. data/spec/api/wire_api_spec.rb +134 -0
  247. data/spec/api_client_spec.rb +243 -0
  248. data/spec/configuration_spec.rb +42 -0
  249. data/spec/models/accounting_customer_response_vo_spec.rb +53 -0
  250. data/spec/models/accounting_customer_revenue_response_vo_spec.rb +53 -0
  251. data/spec/models/accounting_final_response_vo_spec.rb +83 -0
  252. data/spec/models/accounting_invoice_payment_response_vo_spec.rb +53 -0
  253. data/spec/models/accounting_invoice_response_vo_spec.rb +53 -0
  254. data/spec/models/accounting_stats_response_vo_spec.rb +53 -0
  255. data/spec/models/ach_balance_response_vo_spec.rb +71 -0
  256. data/spec/models/ach_bank_link_request_co_spec.rb +53 -0
  257. data/spec/models/ach_bank_link_response_vo_spec.rb +77 -0
  258. data/spec/models/ach_beneficial_owner_request_co_spec.rb +47 -0
  259. data/spec/models/ach_beneficial_owner_response_vo_spec.rb +59 -0
  260. data/spec/models/ach_business_balance_response_vo_spec.rb +71 -0
  261. data/spec/models/ach_business_request_co_spec.rb +53 -0
  262. data/spec/models/ach_business_response_vo_spec.rb +65 -0
  263. data/spec/models/ach_card_link_request_co_spec.rb +47 -0
  264. data/spec/models/ach_card_link_response_vo_spec.rb +65 -0
  265. data/spec/models/ach_card_load_response_vo_spec.rb +47 -0
  266. data/spec/models/ach_card_request_co_spec.rb +41 -0
  267. data/spec/models/ach_card_reserve_request_co_spec.rb +41 -0
  268. data/spec/models/ach_card_reserve_response_vo_spec.rb +65 -0
  269. data/spec/models/ach_card_response_vo_spec.rb +65 -0
  270. data/spec/models/ach_client_request_co_spec.rb +53 -0
  271. data/spec/models/ach_client_response_vo_spec.rb +65 -0
  272. data/spec/models/ach_reserve_link_request_co_spec.rb +41 -0
  273. data/spec/models/ach_reserve_link_response_vo_spec.rb +65 -0
  274. data/spec/models/ach_status_response_vo_spec.rb +75 -0
  275. data/spec/models/ach_transfer_request_co_spec.rb +53 -0
  276. data/spec/models/ach_transfer_response_vo_spec.rb +83 -0
  277. data/spec/models/acquiree_spec.rb +53 -0
  278. data/spec/models/acquirer_spec.rb +53 -0
  279. data/spec/models/address_spec.rb +87 -0
  280. data/spec/models/aggregation_account_balance_response_vo_spec.rb +59 -0
  281. data/spec/models/aggregation_account_balance_spec.rb +101 -0
  282. data/spec/models/aggregation_account_holding_response_internal_object_vo_spec.rb +53 -0
  283. data/spec/models/aggregation_account_holding_response_vo_spec.rb +59 -0
  284. data/spec/models/aggregation_account_holding_spec.rb +155 -0
  285. data/spec/models/aggregation_account_response_internal_object_vo_spec.rb +53 -0
  286. data/spec/models/aggregation_account_response_vo_spec.rb +59 -0
  287. data/spec/models/aggregation_account_spec.rb +221 -0
  288. data/spec/models/aggregation_account_transaction_response_internal_object_vo_spec.rb +53 -0
  289. data/spec/models/aggregation_account_transaction_response_vo_spec.rb +65 -0
  290. data/spec/models/aggregation_account_transaction_spec.rb +125 -0
  291. data/spec/models/aggregation_accounts_response_vo_spec.rb +59 -0
  292. data/spec/models/aggregation_request_object_spec.rb +71 -0
  293. data/spec/models/aggregation_vendor_request_co_spec.rb +53 -0
  294. data/spec/models/apple_payload_spec.rb +53 -0
  295. data/spec/models/async_transaction_spec.rb +65 -0
  296. data/spec/models/async_transaction_vo_spec.rb +53 -0
  297. data/spec/models/attachment_vo_spec.rb +53 -0
  298. data/spec/models/baas_account_co_spec.rb +47 -0
  299. data/spec/models/baas_account_vo_spec.rb +89 -0
  300. data/spec/models/baas_balance_vo_spec.rb +65 -0
  301. data/spec/models/baas_business_vo_spec.rb +77 -0
  302. data/spec/models/baas_client_vo_spec.rb +77 -0
  303. data/spec/models/baas_statement_vo_spec.rb +71 -0
  304. data/spec/models/baas_statements_vo_spec.rb +53 -0
  305. data/spec/models/baas_sub_account_co_spec.rb +41 -0
  306. data/spec/models/baas_sub_account_vo_spec.rb +83 -0
  307. data/spec/models/baas_transactions_vo_spec.rb +65 -0
  308. data/spec/models/balances_spec.rb +65 -0
  309. data/spec/models/bank_credit_spec.rb +95 -0
  310. data/spec/models/bank_link_response_internal_object_vo_spec.rb +53 -0
  311. data/spec/models/bank_link_spec.rb +179 -0
  312. data/spec/models/bank_link_vendor_data_vo_spec.rb +47 -0
  313. data/spec/models/base_response_vo_spec.rb +53 -0
  314. data/spec/models/brokerage_account_co_spec.rb +47 -0
  315. data/spec/models/brokerage_account_vo_spec.rb +65 -0
  316. data/spec/models/brokerage_balance_vo_spec.rb +71 -0
  317. data/spec/models/brokerage_bank_link_co_spec.rb +41 -0
  318. data/spec/models/brokerage_bank_link_vo_spec.rb +71 -0
  319. data/spec/models/brokerage_create_client_co_spec.rb +47 -0
  320. data/spec/models/brokerage_create_client_vo_spec.rb +65 -0
  321. data/spec/models/brokerage_deposit_co_spec.rb +41 -0
  322. data/spec/models/brokerage_deposit_vo_spec.rb +65 -0
  323. data/spec/models/brokerage_document_co_spec.rb +47 -0
  324. data/spec/models/brokerage_document_vo_spec.rb +71 -0
  325. data/spec/models/brokerage_holding_vo_spec.rb +71 -0
  326. data/spec/models/brokerage_order_co_spec.rb +41 -0
  327. data/spec/models/brokerage_order_vo_spec.rb +71 -0
  328. data/spec/models/brokerage_performance_vo_spec.rb +71 -0
  329. data/spec/models/brokerage_securities_vo_spec.rb +65 -0
  330. data/spec/models/brokerage_statement_vo_spec.rb +53 -0
  331. data/spec/models/brokerage_transaction_vo_spec.rb +71 -0
  332. data/spec/models/brokerage_update_client_co_spec.rb +41 -0
  333. data/spec/models/brokerage_update_client_vo_spec.rb +77 -0
  334. data/spec/models/brokerage_withdrawal_co_spec.rb +41 -0
  335. data/spec/models/brokerage_withdrawal_vo_spec.rb +65 -0
  336. data/spec/models/business_address_spec.rb +83 -0
  337. data/spec/models/business_status_response_vo_spec.rb +65 -0
  338. data/spec/models/business_vendor_request_data_vo_spec.rb +125 -0
  339. data/spec/models/card_auto_reload_request_co_spec.rb +59 -0
  340. data/spec/models/card_auto_reload_response_vo_spec.rb +71 -0
  341. data/spec/models/card_balance_response_vo_spec.rb +71 -0
  342. data/spec/models/card_base_request_co_spec.rb +53 -0
  343. data/spec/models/card_business_request_co_spec.rb +41 -0
  344. data/spec/models/card_client_request_co_spec.rb +47 -0
  345. data/spec/models/card_load_request_co_spec.rb +47 -0
  346. data/spec/models/card_load_unload_response_vo_spec.rb +77 -0
  347. data/spec/models/card_pin_request_co_spec.rb +59 -0
  348. data/spec/models/card_replace_response_vo_spec.rb +77 -0
  349. data/spec/models/card_reserve_account_response_vo_spec.rb +77 -0
  350. data/spec/models/card_reserve_transfer_request_co_spec.rb +41 -0
  351. data/spec/models/card_reserve_transfer_response_vo_spec.rb +65 -0
  352. data/spec/models/card_spending_control_request_co_spec.rb +41 -0
  353. data/spec/models/card_spending_control_response_vo_spec.rb +65 -0
  354. data/spec/models/card_token_request_co_spec.rb +63 -0
  355. data/spec/models/card_token_response_vo_spec.rb +87 -0
  356. data/spec/models/card_transaction_response_vo_spec.rb +71 -0
  357. data/spec/models/card_unload_request_co_spec.rb +47 -0
  358. data/spec/models/card_update_pin_request_co_spec.rb +59 -0
  359. data/spec/models/cash_spec.rb +53 -0
  360. data/spec/models/client_address_spec.rb +87 -0
  361. data/spec/models/client_vendor_request_data_vo_spec.rb +143 -0
  362. data/spec/models/contact_address_spec.rb +77 -0
  363. data/spec/models/contact_spec.rb +143 -0
  364. data/spec/models/create_baas_business_co_spec.rb +47 -0
  365. data/spec/models/create_baas_client_co_spec.rb +47 -0
  366. data/spec/models/create_business_response_vo_spec.rb +65 -0
  367. data/spec/models/create_card_client_response_vo_spec.rb +65 -0
  368. data/spec/models/create_user_request_spec.rb +77 -0
  369. data/spec/models/customer_revenue_spec.rb +95 -0
  370. data/spec/models/dividend_spec.rb +53 -0
  371. data/spec/models/dividend_tax_spec.rb +47 -0
  372. data/spec/models/email_click_spec.rb +59 -0
  373. data/spec/models/email_open_spec.rb +53 -0
  374. data/spec/models/email_spec.rb +149 -0
  375. data/spec/models/exchange_public_token_vo_spec.rb +71 -0
  376. data/spec/models/exchange_token_co_spec.rb +77 -0
  377. data/spec/models/financial_statement_spec.rb +137 -0
  378. data/spec/models/get_card_image_response_vo_spec.rb +65 -0
  379. data/spec/models/get_card_pci_details_response_vo_spec.rb +77 -0
  380. data/spec/models/get_card_statement_response_vo_spec.rb +107 -0
  381. data/spec/models/get_card_token_response_vo_spec.rb +87 -0
  382. data/spec/models/get_transactions_response_spec.rb +41 -0
  383. data/spec/models/google_payload_spec.rb +41 -0
  384. data/spec/models/iav_aggregation_response_vo_spec.rb +47 -0
  385. data/spec/models/iav_bank_link_response_vo_spec.rb +47 -0
  386. data/spec/models/iav_request_co_spec.rb +83 -0
  387. data/spec/models/iav_response_vo_spec.rb +53 -0
  388. data/spec/models/iav_token_exchange_vendor_response_vo_spec.rb +35 -0
  389. data/spec/models/iav_vendor_request_co_spec.rb +53 -0
  390. data/spec/models/identification_spec.rb +77 -0
  391. data/spec/models/instrument_spec.rb +53 -0
  392. data/spec/models/investment_spec.rb +89 -0
  393. data/spec/models/invoice_payment_spec.rb +83 -0
  394. data/spec/models/invoice_spec.rb +197 -0
  395. data/spec/models/json_node_spec.rb +35 -0
  396. data/spec/models/kms_config_spec.rb +107 -0
  397. data/spec/models/kyc_request_co_spec.rb +89 -0
  398. data/spec/models/kyc_response_vo_spec.rb +101 -0
  399. data/spec/models/kyc_vendor_request_data_vo_spec.rb +173 -0
  400. data/spec/models/line_items_spec.rb +83 -0
  401. data/spec/models/location_spec.rb +83 -0
  402. data/spec/models/mapstringobject_spec.rb +35 -0
  403. data/spec/models/md_history_item_vo_spec.rb +77 -0
  404. data/spec/models/md_history_request_co_spec.rb +65 -0
  405. data/spec/models/md_history_response_vo_spec.rb +41 -0
  406. data/spec/models/md_quote_item_vo_spec.rb +155 -0
  407. data/spec/models/md_quote_request_co_spec.rb +63 -0
  408. data/spec/models/md_quote_response_vo_spec.rb +41 -0
  409. data/spec/models/merger_acquisition_spec.rb +53 -0
  410. data/spec/models/nucleus_transfer_fields_co_spec.rb +47 -0
  411. data/spec/models/ownership_spec.rb +47 -0
  412. data/spec/models/page_ach_transfer_response_vo_spec.rb +89 -0
  413. data/spec/models/page_kms_config_spec.rb +89 -0
  414. data/spec/models/page_webhook_spec.rb +89 -0
  415. data/spec/models/pageobject_spec.rb +89 -0
  416. data/spec/models/politically_exposed_person_dto_spec.rb +59 -0
  417. data/spec/models/portfolio_asset_size_log_spec.rb +113 -0
  418. data/spec/models/property_value_response_vo_spec.rb +71 -0
  419. data/spec/models/response_entity_spec.rb +57 -0
  420. data/spec/models/rtp_bank_link_request_co_spec.rb +47 -0
  421. data/spec/models/rtp_bank_link_response_vo_spec.rb +77 -0
  422. data/spec/models/rtp_transfer_request_co_spec.rb +47 -0
  423. data/spec/models/rtp_transfer_response_vo_spec.rb +71 -0
  424. data/spec/models/samsung_payload_spec.rb +41 -0
  425. data/spec/models/sms_response_vo_spec.rb +71 -0
  426. data/spec/models/sms_spec.rb +137 -0
  427. data/spec/models/smsvo_spec.rb +65 -0
  428. data/spec/models/smtp_response_vo_spec.rb +71 -0
  429. data/spec/models/smtp_vo_spec.rb +101 -0
  430. data/spec/models/sort_spec.rb +71 -0
  431. data/spec/models/spending_control_vendor_request_data_vo_spec.rb +89 -0
  432. data/spec/models/stat_spec.rb +47 -0
  433. data/spec/models/transaction_spec.rb +167 -0
  434. data/spec/models/update_baas_business_co_spec.rb +41 -0
  435. data/spec/models/update_baas_client_co_spec.rb +41 -0
  436. data/spec/models/update_business_response_vo_spec.rb +65 -0
  437. data/spec/models/update_card_client_response_vo_spec.rb +65 -0
  438. data/spec/models/user_response_interface_spec.rb +35 -0
  439. data/spec/models/user_response_vo_spec.rb +77 -0
  440. data/spec/models/vendor_access_config_vo_spec.rb +53 -0
  441. data/spec/models/webhook_spec.rb +87 -0
  442. data/spec/models/widget_url_vo_spec.rb +47 -0
  443. data/spec/models/wire_bank_link_request_co_spec.rb +47 -0
  444. data/spec/models/wire_bank_link_response_vo_spec.rb +77 -0
  445. data/spec/models/wire_transfer_request_co_spec.rb +47 -0
  446. data/spec/models/wire_transfer_response_vo_spec.rb +71 -0
  447. data/spec/models/zillow_property_vendor_response_vo_spec.rb +65 -0
  448. data/spec/spec_helper.rb +111 -0
  449. metadata +909 -0
@@ -0,0 +1,385 @@
1
+ =begin
2
+ #Hydrogen Integration API
3
+
4
+ #The Hydrogen Integration API
5
+
6
+ OpenAPI spec version: 1.3.1
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.21
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module IntegrationApi
16
+ class KycVendorRequestDataVO
17
+ attr_accessor :address
18
+
19
+ attr_accessor :business_addresses
20
+
21
+ attr_accessor :country_of_residence
22
+
23
+ attr_accessor :date_of_birth
24
+
25
+ attr_accessor :dba_name
26
+
27
+ attr_accessor :email
28
+
29
+ attr_accessor :first_name
30
+
31
+ attr_accessor :gender
32
+
33
+ attr_accessor :identification_number
34
+
35
+ attr_accessor :identification_number_type
36
+
37
+ attr_accessor :incorporation_date
38
+
39
+ attr_accessor :incorporation_state
40
+
41
+ attr_accessor :is_public
42
+
43
+ attr_accessor :last_name
44
+
45
+ attr_accessor :legal_name
46
+
47
+ attr_accessor :legal_structure
48
+
49
+ attr_accessor :metadata
50
+
51
+ attr_accessor :middle_name
52
+
53
+ attr_accessor :nucleus_document_id
54
+
55
+ attr_accessor :owners
56
+
57
+ attr_accessor :phone_number
58
+
59
+ attr_accessor :ticker
60
+
61
+ attr_accessor :website
62
+
63
+ # Attribute mapping from ruby-style variable name to JSON key.
64
+ def self.attribute_map
65
+ {
66
+ :'address' => :'address',
67
+ :'business_addresses' => :'business_addresses',
68
+ :'country_of_residence' => :'country_of_residence',
69
+ :'date_of_birth' => :'date_of_birth',
70
+ :'dba_name' => :'dba_name',
71
+ :'email' => :'email',
72
+ :'first_name' => :'first_name',
73
+ :'gender' => :'gender',
74
+ :'identification_number' => :'identification_number',
75
+ :'identification_number_type' => :'identification_number_type',
76
+ :'incorporation_date' => :'incorporation_date',
77
+ :'incorporation_state' => :'incorporation_state',
78
+ :'is_public' => :'is_public',
79
+ :'last_name' => :'last_name',
80
+ :'legal_name' => :'legal_name',
81
+ :'legal_structure' => :'legal_structure',
82
+ :'metadata' => :'metadata',
83
+ :'middle_name' => :'middle_name',
84
+ :'nucleus_document_id' => :'nucleus_document_id',
85
+ :'owners' => :'owners',
86
+ :'phone_number' => :'phone_number',
87
+ :'ticker' => :'ticker',
88
+ :'website' => :'website'
89
+ }
90
+ end
91
+
92
+ # Attribute type mapping.
93
+ def self.swagger_types
94
+ {
95
+ :'address' => :'Array<ClientAddress>',
96
+ :'business_addresses' => :'Array<BusinessAddress>',
97
+ :'country_of_residence' => :'String',
98
+ :'date_of_birth' => :'Date',
99
+ :'dba_name' => :'String',
100
+ :'email' => :'String',
101
+ :'first_name' => :'String',
102
+ :'gender' => :'String',
103
+ :'identification_number' => :'String',
104
+ :'identification_number_type' => :'String',
105
+ :'incorporation_date' => :'Date',
106
+ :'incorporation_state' => :'String',
107
+ :'is_public' => :'BOOLEAN',
108
+ :'last_name' => :'String',
109
+ :'legal_name' => :'String',
110
+ :'legal_structure' => :'String',
111
+ :'metadata' => :'Object',
112
+ :'middle_name' => :'String',
113
+ :'nucleus_document_id' => :'String',
114
+ :'owners' => :'Array<Ownership>',
115
+ :'phone_number' => :'String',
116
+ :'ticker' => :'String',
117
+ :'website' => :'String'
118
+ }
119
+ end
120
+
121
+ # Initializes the object
122
+ # @param [Hash] attributes Model attributes in the form of hash
123
+ def initialize(attributes = {})
124
+ return unless attributes.is_a?(Hash)
125
+
126
+ # convert string to symbol for hash key
127
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
128
+
129
+ if attributes.has_key?(:'address')
130
+ if (value = attributes[:'address']).is_a?(Array)
131
+ self.address = value
132
+ end
133
+ end
134
+
135
+ if attributes.has_key?(:'business_addresses')
136
+ if (value = attributes[:'business_addresses']).is_a?(Array)
137
+ self.business_addresses = value
138
+ end
139
+ end
140
+
141
+ if attributes.has_key?(:'country_of_residence')
142
+ self.country_of_residence = attributes[:'country_of_residence']
143
+ end
144
+
145
+ if attributes.has_key?(:'date_of_birth')
146
+ self.date_of_birth = attributes[:'date_of_birth']
147
+ end
148
+
149
+ if attributes.has_key?(:'dba_name')
150
+ self.dba_name = attributes[:'dba_name']
151
+ end
152
+
153
+ if attributes.has_key?(:'email')
154
+ self.email = attributes[:'email']
155
+ end
156
+
157
+ if attributes.has_key?(:'first_name')
158
+ self.first_name = attributes[:'first_name']
159
+ end
160
+
161
+ if attributes.has_key?(:'gender')
162
+ self.gender = attributes[:'gender']
163
+ end
164
+
165
+ if attributes.has_key?(:'identification_number')
166
+ self.identification_number = attributes[:'identification_number']
167
+ end
168
+
169
+ if attributes.has_key?(:'identification_number_type')
170
+ self.identification_number_type = attributes[:'identification_number_type']
171
+ end
172
+
173
+ if attributes.has_key?(:'incorporation_date')
174
+ self.incorporation_date = attributes[:'incorporation_date']
175
+ end
176
+
177
+ if attributes.has_key?(:'incorporation_state')
178
+ self.incorporation_state = attributes[:'incorporation_state']
179
+ end
180
+
181
+ if attributes.has_key?(:'is_public')
182
+ self.is_public = attributes[:'is_public']
183
+ end
184
+
185
+ if attributes.has_key?(:'last_name')
186
+ self.last_name = attributes[:'last_name']
187
+ end
188
+
189
+ if attributes.has_key?(:'legal_name')
190
+ self.legal_name = attributes[:'legal_name']
191
+ end
192
+
193
+ if attributes.has_key?(:'legal_structure')
194
+ self.legal_structure = attributes[:'legal_structure']
195
+ end
196
+
197
+ if attributes.has_key?(:'metadata')
198
+ self.metadata = attributes[:'metadata']
199
+ end
200
+
201
+ if attributes.has_key?(:'middle_name')
202
+ self.middle_name = attributes[:'middle_name']
203
+ end
204
+
205
+ if attributes.has_key?(:'nucleus_document_id')
206
+ self.nucleus_document_id = attributes[:'nucleus_document_id']
207
+ end
208
+
209
+ if attributes.has_key?(:'owners')
210
+ if (value = attributes[:'owners']).is_a?(Array)
211
+ self.owners = value
212
+ end
213
+ end
214
+
215
+ if attributes.has_key?(:'phone_number')
216
+ self.phone_number = attributes[:'phone_number']
217
+ end
218
+
219
+ if attributes.has_key?(:'ticker')
220
+ self.ticker = attributes[:'ticker']
221
+ end
222
+
223
+ if attributes.has_key?(:'website')
224
+ self.website = attributes[:'website']
225
+ end
226
+ end
227
+
228
+ # Show invalid properties with the reasons. Usually used together with valid?
229
+ # @return Array for valid properties with the reasons
230
+ def list_invalid_properties
231
+ invalid_properties = Array.new
232
+ invalid_properties
233
+ end
234
+
235
+ # Check to see if the all the properties in the model are valid
236
+ # @return true if the model is valid
237
+ def valid?
238
+ true
239
+ end
240
+
241
+ # Checks equality by comparing each attribute.
242
+ # @param [Object] Object to be compared
243
+ def ==(o)
244
+ return true if self.equal?(o)
245
+ self.class == o.class &&
246
+ address == o.address &&
247
+ business_addresses == o.business_addresses &&
248
+ country_of_residence == o.country_of_residence &&
249
+ date_of_birth == o.date_of_birth &&
250
+ dba_name == o.dba_name &&
251
+ email == o.email &&
252
+ first_name == o.first_name &&
253
+ gender == o.gender &&
254
+ identification_number == o.identification_number &&
255
+ identification_number_type == o.identification_number_type &&
256
+ incorporation_date == o.incorporation_date &&
257
+ incorporation_state == o.incorporation_state &&
258
+ is_public == o.is_public &&
259
+ last_name == o.last_name &&
260
+ legal_name == o.legal_name &&
261
+ legal_structure == o.legal_structure &&
262
+ metadata == o.metadata &&
263
+ middle_name == o.middle_name &&
264
+ nucleus_document_id == o.nucleus_document_id &&
265
+ owners == o.owners &&
266
+ phone_number == o.phone_number &&
267
+ ticker == o.ticker &&
268
+ website == o.website
269
+ end
270
+
271
+ # @see the `==` method
272
+ # @param [Object] Object to be compared
273
+ def eql?(o)
274
+ self == o
275
+ end
276
+
277
+ # Calculates hash code according to all attributes.
278
+ # @return [Fixnum] Hash code
279
+ def hash
280
+ [address, business_addresses, country_of_residence, date_of_birth, dba_name, email, first_name, gender, identification_number, identification_number_type, incorporation_date, incorporation_state, is_public, last_name, legal_name, legal_structure, metadata, middle_name, nucleus_document_id, owners, phone_number, ticker, website].hash
281
+ end
282
+
283
+ # Builds the object from hash
284
+ # @param [Hash] attributes Model attributes in the form of hash
285
+ # @return [Object] Returns the model itself
286
+ def build_from_hash(attributes)
287
+ self.class.swagger_types.each_pair do |key, type|
288
+ if type =~ /\AArray<(.*)>/i
289
+ # check to ensure the input is an array given that the attribute
290
+ # is documented as an array but the input is not
291
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
292
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
293
+ end
294
+ elsif !attributes[self.class.attribute_map[key]].nil?
295
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
296
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
297
+ end
298
+
299
+ self
300
+ end
301
+
302
+ # Deserializes the data based on type
303
+ # @param string type Data type
304
+ # @param string value Value to be deserialized
305
+ # @return [Object] Deserialized data
306
+ def _deserialize(type, value)
307
+ case type.to_sym
308
+ when :DateTime
309
+ value
310
+ when :Date
311
+ value
312
+ when :String
313
+ value.to_s
314
+ when :Integer
315
+ value.to_i
316
+ when :Float
317
+ value.to_f
318
+ when :BOOLEAN
319
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
320
+ true
321
+ else
322
+ false
323
+ end
324
+ when :Object
325
+ # generic object (usually a Hash), return directly
326
+ value
327
+ when /\AArray<(?<inner_type>.+)>\z/
328
+ inner_type = Regexp.last_match[:inner_type]
329
+ value.map { |v| _deserialize(inner_type, v) }
330
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
331
+ k_type = Regexp.last_match[:k_type]
332
+ v_type = Regexp.last_match[:v_type]
333
+ {}.tap do |hash|
334
+ value.each do |k, v|
335
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
336
+ end
337
+ end
338
+ else # model
339
+ temp_model = IntegrationApi.const_get(type).new
340
+ temp_model.build_from_hash(value)
341
+ end
342
+ end
343
+ # Returns the string representation of the object
344
+ # @return [String] String presentation of the object
345
+ def to_s
346
+ to_hash.to_s
347
+ end
348
+
349
+ # to_body is an alias to to_hash (backward compatibility)
350
+ # @return [Hash] Returns the object in the form of hash
351
+ def to_body
352
+ to_hash
353
+ end
354
+
355
+ # Returns the object in the form of hash
356
+ # @return [Hash] Returns the object in the form of hash
357
+ def to_hash
358
+ hash = {}
359
+ self.class.attribute_map.each_pair do |attr, param|
360
+ value = self.send(attr)
361
+ hash[param] = _to_hash(value)
362
+ end
363
+ hash
364
+ end
365
+
366
+ # Outputs non-array value in the form of hash
367
+ # For object, use to_hash. Otherwise, just return the value
368
+ # @param [Object] value Any valid value
369
+ # @return [Hash] Returns the value in the form of hash
370
+ def _to_hash(value)
371
+ if value.is_a?(Array)
372
+ value.compact.map { |v| _to_hash(v) }
373
+ elsif value.is_a?(Hash)
374
+ {}.tap do |hash|
375
+ value.each { |k, v| hash[k] = _to_hash(v) }
376
+ end
377
+ elsif value.respond_to? :to_hash
378
+ value.to_hash
379
+ else
380
+ value
381
+ end
382
+ end
383
+
384
+ end
385
+ end
@@ -0,0 +1,278 @@
1
+ =begin
2
+ #Hydrogen Integration API
3
+
4
+ #The Hydrogen Integration API
5
+
6
+ OpenAPI spec version: 1.3.1
7
+ Contact: info@hydrogenplatform.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.21
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module IntegrationApi
16
+ # LineItems Object
17
+ class LineItems
18
+ # amount
19
+ attr_accessor :amount
20
+
21
+ # currency_code
22
+ attr_accessor :currency_code
23
+
24
+ # description
25
+ attr_accessor :description
26
+
27
+ # lineItemId
28
+ attr_accessor :line_item_id
29
+
30
+ # quantity
31
+ attr_accessor :quantity
32
+
33
+ # rate
34
+ attr_accessor :rate
35
+
36
+ # subtotal
37
+ attr_accessor :subtotal
38
+
39
+ # tax
40
+ attr_accessor :tax
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ def self.attribute_map
44
+ {
45
+ :'amount' => :'amount',
46
+ :'currency_code' => :'currency_code',
47
+ :'description' => :'description',
48
+ :'line_item_id' => :'line_item_id',
49
+ :'quantity' => :'quantity',
50
+ :'rate' => :'rate',
51
+ :'subtotal' => :'subtotal',
52
+ :'tax' => :'tax'
53
+ }
54
+ end
55
+
56
+ # Attribute type mapping.
57
+ def self.swagger_types
58
+ {
59
+ :'amount' => :'Float',
60
+ :'currency_code' => :'String',
61
+ :'description' => :'String',
62
+ :'line_item_id' => :'String',
63
+ :'quantity' => :'Float',
64
+ :'rate' => :'Float',
65
+ :'subtotal' => :'Float',
66
+ :'tax' => :'Float'
67
+ }
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param [Hash] attributes Model attributes in the form of hash
72
+ def initialize(attributes = {})
73
+ return unless attributes.is_a?(Hash)
74
+
75
+ # convert string to symbol for hash key
76
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
77
+
78
+ if attributes.has_key?(:'amount')
79
+ self.amount = attributes[:'amount']
80
+ end
81
+
82
+ if attributes.has_key?(:'currency_code')
83
+ self.currency_code = attributes[:'currency_code']
84
+ end
85
+
86
+ if attributes.has_key?(:'description')
87
+ self.description = attributes[:'description']
88
+ end
89
+
90
+ if attributes.has_key?(:'line_item_id')
91
+ self.line_item_id = attributes[:'line_item_id']
92
+ end
93
+
94
+ if attributes.has_key?(:'quantity')
95
+ self.quantity = attributes[:'quantity']
96
+ end
97
+
98
+ if attributes.has_key?(:'rate')
99
+ self.rate = attributes[:'rate']
100
+ end
101
+
102
+ if attributes.has_key?(:'subtotal')
103
+ self.subtotal = attributes[:'subtotal']
104
+ end
105
+
106
+ if attributes.has_key?(:'tax')
107
+ self.tax = attributes[:'tax']
108
+ end
109
+ end
110
+
111
+ # Show invalid properties with the reasons. Usually used together with valid?
112
+ # @return Array for valid properties with the reasons
113
+ def list_invalid_properties
114
+ invalid_properties = Array.new
115
+ if @amount.nil?
116
+ invalid_properties.push('invalid value for "amount", amount cannot be nil.')
117
+ end
118
+
119
+ if @currency_code.nil?
120
+ invalid_properties.push('invalid value for "currency_code", currency_code cannot be nil.')
121
+ end
122
+
123
+ if @description.nil?
124
+ invalid_properties.push('invalid value for "description", description cannot be nil.')
125
+ end
126
+
127
+ if @quantity.nil?
128
+ invalid_properties.push('invalid value for "quantity", quantity cannot be nil.')
129
+ end
130
+
131
+ if @rate.nil?
132
+ invalid_properties.push('invalid value for "rate", rate cannot be nil.')
133
+ end
134
+
135
+ invalid_properties
136
+ end
137
+
138
+ # Check to see if the all the properties in the model are valid
139
+ # @return true if the model is valid
140
+ def valid?
141
+ return false if @amount.nil?
142
+ return false if @currency_code.nil?
143
+ return false if @description.nil?
144
+ return false if @quantity.nil?
145
+ return false if @rate.nil?
146
+ true
147
+ end
148
+
149
+ # Checks equality by comparing each attribute.
150
+ # @param [Object] Object to be compared
151
+ def ==(o)
152
+ return true if self.equal?(o)
153
+ self.class == o.class &&
154
+ amount == o.amount &&
155
+ currency_code == o.currency_code &&
156
+ description == o.description &&
157
+ line_item_id == o.line_item_id &&
158
+ quantity == o.quantity &&
159
+ rate == o.rate &&
160
+ subtotal == o.subtotal &&
161
+ tax == o.tax
162
+ end
163
+
164
+ # @see the `==` method
165
+ # @param [Object] Object to be compared
166
+ def eql?(o)
167
+ self == o
168
+ end
169
+
170
+ # Calculates hash code according to all attributes.
171
+ # @return [Fixnum] Hash code
172
+ def hash
173
+ [amount, currency_code, description, line_item_id, quantity, rate, subtotal, tax].hash
174
+ end
175
+
176
+ # Builds the object from hash
177
+ # @param [Hash] attributes Model attributes in the form of hash
178
+ # @return [Object] Returns the model itself
179
+ def build_from_hash(attributes)
180
+ self.class.swagger_types.each_pair do |key, type|
181
+ if type =~ /\AArray<(.*)>/i
182
+ # check to ensure the input is an array given that the attribute
183
+ # is documented as an array but the input is not
184
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
185
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
186
+ end
187
+ elsif !attributes[self.class.attribute_map[key]].nil?
188
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
189
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
190
+ end
191
+
192
+ self
193
+ end
194
+
195
+ # Deserializes the data based on type
196
+ # @param string type Data type
197
+ # @param string value Value to be deserialized
198
+ # @return [Object] Deserialized data
199
+ def _deserialize(type, value)
200
+ case type.to_sym
201
+ when :DateTime
202
+ value
203
+ when :Date
204
+ value
205
+ when :String
206
+ value.to_s
207
+ when :Integer
208
+ value.to_i
209
+ when :Float
210
+ value.to_f
211
+ when :BOOLEAN
212
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
213
+ true
214
+ else
215
+ false
216
+ end
217
+ when :Object
218
+ # generic object (usually a Hash), return directly
219
+ value
220
+ when /\AArray<(?<inner_type>.+)>\z/
221
+ inner_type = Regexp.last_match[:inner_type]
222
+ value.map { |v| _deserialize(inner_type, v) }
223
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
224
+ k_type = Regexp.last_match[:k_type]
225
+ v_type = Regexp.last_match[:v_type]
226
+ {}.tap do |hash|
227
+ value.each do |k, v|
228
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
229
+ end
230
+ end
231
+ else # model
232
+ temp_model = IntegrationApi.const_get(type).new
233
+ temp_model.build_from_hash(value)
234
+ end
235
+ end
236
+ # Returns the string representation of the object
237
+ # @return [String] String presentation of the object
238
+ def to_s
239
+ to_hash.to_s
240
+ end
241
+
242
+ # to_body is an alias to to_hash (backward compatibility)
243
+ # @return [Hash] Returns the object in the form of hash
244
+ def to_body
245
+ to_hash
246
+ end
247
+
248
+ # Returns the object in the form of hash
249
+ # @return [Hash] Returns the object in the form of hash
250
+ def to_hash
251
+ hash = {}
252
+ self.class.attribute_map.each_pair do |attr, param|
253
+ value = self.send(attr)
254
+ hash[param] = _to_hash(value)
255
+ end
256
+ hash
257
+ end
258
+
259
+ # Outputs non-array value in the form of hash
260
+ # For object, use to_hash. Otherwise, just return the value
261
+ # @param [Object] value Any valid value
262
+ # @return [Hash] Returns the value in the form of hash
263
+ def _to_hash(value)
264
+ if value.is_a?(Array)
265
+ value.compact.map { |v| _to_hash(v) }
266
+ elsif value.is_a?(Hash)
267
+ {}.tap do |hash|
268
+ value.each { |k, v| hash[k] = _to_hash(v) }
269
+ end
270
+ elsif value.respond_to? :to_hash
271
+ value.to_hash
272
+ else
273
+ value
274
+ end
275
+ end
276
+
277
+ end
278
+ end