apimatic-ak-sdk 0.0.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 (229) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +190 -0
  4. data/bin/console +15 -0
  5. data/lib/akoya/api_helper.rb +10 -0
  6. data/lib/akoya/client.rb +117 -0
  7. data/lib/akoya/configuration.rb +195 -0
  8. data/lib/akoya/controllers/account_information_controller.rb +93 -0
  9. data/lib/akoya/controllers/balances_controller.rb +92 -0
  10. data/lib/akoya/controllers/base_controller.rb +65 -0
  11. data/lib/akoya/controllers/customers_controller.rb +112 -0
  12. data/lib/akoya/controllers/investments_controller.rb +95 -0
  13. data/lib/akoya/controllers/payments_controller.rb +70 -0
  14. data/lib/akoya/controllers/statements_controller.rb +158 -0
  15. data/lib/akoya/controllers/tokens_controller.rb +122 -0
  16. data/lib/akoya/controllers/transactions_controller.rb +108 -0
  17. data/lib/akoya/exceptions/api_exception.rb +21 -0
  18. data/lib/akoya/exceptions/error_entity_exception.rb +54 -0
  19. data/lib/akoya/exceptions/error_response_exception.rb +53 -0
  20. data/lib/akoya/http/api_response.rb +19 -0
  21. data/lib/akoya/http/auth/basic_auth.rb +62 -0
  22. data/lib/akoya/http/auth/bearer_auth.rb +53 -0
  23. data/lib/akoya/http/http_call_back.rb +10 -0
  24. data/lib/akoya/http/http_method_enum.rb +10 -0
  25. data/lib/akoya/http/http_request.rb +10 -0
  26. data/lib/akoya/http/http_response.rb +10 -0
  27. data/lib/akoya/http/proxy_settings.rb +22 -0
  28. data/lib/akoya/logging/configuration/api_logging_configuration.rb +186 -0
  29. data/lib/akoya/logging/sdk_logger.rb +17 -0
  30. data/lib/akoya/models/account.rb +86 -0
  31. data/lib/akoya/models/account_category.rb +50 -0
  32. data/lib/akoya/models/account_contact_entity.rb +132 -0
  33. data/lib/akoya/models/account_holder_entity.rb +178 -0
  34. data/lib/akoya/models/account_holder_relationship.rb +110 -0
  35. data/lib/akoya/models/account_holder_relationship_account_holder_entity.rb +110 -0
  36. data/lib/akoya/models/account_information.rb +335 -0
  37. data/lib/akoya/models/action.rb +48 -0
  38. data/lib/akoya/models/address.rb +144 -0
  39. data/lib/akoya/models/akoya_account_info_product.rb +88 -0
  40. data/lib/akoya/models/an_array_of_statements.rb +95 -0
  41. data/lib/akoya/models/an_investment_holding.rb +493 -0
  42. data/lib/akoya/models/annual_increase_type.rb +40 -0
  43. data/lib/akoya/models/annuity_account.rb +370 -0
  44. data/lib/akoya/models/annuity_account_info.rb +86 -0
  45. data/lib/akoya/models/annuity_balance_details.rb +87 -0
  46. data/lib/akoya/models/annuity_balances.rb +477 -0
  47. data/lib/akoya/models/annuity_product_type.rb +36 -0
  48. data/lib/akoya/models/annuity_value_basis.rb +36 -0
  49. data/lib/akoya/models/array_of_account_payment_networks.rb +85 -0
  50. data/lib/akoya/models/asset_class.rb +95 -0
  51. data/lib/akoya/models/asset_class_an_investment_holding.rb +85 -0
  52. data/lib/akoya/models/asset_class_asset_class.rb +56 -0
  53. data/lib/akoya/models/asset_class_citi_bank_investment_holdings.rb +86 -0
  54. data/lib/akoya/models/balance_type.rb +37 -0
  55. data/lib/akoya/models/balance_type_investment_balance_list.rb +36 -0
  56. data/lib/akoya/models/balances.rb +88 -0
  57. data/lib/akoya/models/base_model.rb +110 -0
  58. data/lib/akoya/models/business_customer_entity.rb +127 -0
  59. data/lib/akoya/models/business_customer_entity_account_holder_entity.rb +126 -0
  60. data/lib/akoya/models/business_customer_entity_customer.rb +126 -0
  61. data/lib/akoya/models/call_type.rb +44 -0
  62. data/lib/akoya/models/citi_bank_investment.rb +535 -0
  63. data/lib/akoya/models/citi_bank_investment_details.rb +75 -0
  64. data/lib/akoya/models/citi_bank_investment_holdings.rb +210 -0
  65. data/lib/akoya/models/compounding_period.rb +56 -0
  66. data/lib/akoya/models/contribution_entity.rb +266 -0
  67. data/lib/akoya/models/coupon_mature_frequency.rb +48 -0
  68. data/lib/akoya/models/currency.rb +108 -0
  69. data/lib/akoya/models/currency_citi_bank_investment_holdings.rb +86 -0
  70. data/lib/akoya/models/currency_entity.rb +109 -0
  71. data/lib/akoya/models/current_customer.rb +75 -0
  72. data/lib/akoya/models/customer.rb +164 -0
  73. data/lib/akoya/models/customer_current_customer.rb +164 -0
  74. data/lib/akoya/models/customer_name.rb +127 -0
  75. data/lib/akoya/models/customer_name_account_holder_entity.rb +127 -0
  76. data/lib/akoya/models/customer_name_customer.rb +127 -0
  77. data/lib/akoya/models/debit_credit_memo.rb +37 -0
  78. data/lib/akoya/models/debt_class.rb +44 -0
  79. data/lib/akoya/models/debt_security.rb +137 -0
  80. data/lib/akoya/models/debt_security_entity.rb +216 -0
  81. data/lib/akoya/models/debt_type.rb +36 -0
  82. data/lib/akoya/models/delivery_address.rb +153 -0
  83. data/lib/akoya/models/deposit_account.rb +375 -0
  84. data/lib/akoya/models/deposit_account_info.rb +86 -0
  85. data/lib/akoya/models/deposit_balance_details.rb +87 -0
  86. data/lib/akoya/models/deposit_balances.rb +438 -0
  87. data/lib/akoya/models/deposit_transaction.rb +369 -0
  88. data/lib/akoya/models/deposit_transaction_details.rb +87 -0
  89. data/lib/akoya/models/domicile.rb +85 -0
  90. data/lib/akoya/models/equity_grant.rb +199 -0
  91. data/lib/akoya/models/error_entity_account_information.rb +97 -0
  92. data/lib/akoya/models/error_entity_annuity_account.rb +97 -0
  93. data/lib/akoya/models/error_entity_annuity_balances.rb +97 -0
  94. data/lib/akoya/models/error_entity_citi_bank_investment.rb +97 -0
  95. data/lib/akoya/models/error_entity_deposit_account.rb +97 -0
  96. data/lib/akoya/models/error_entity_deposit_balances.rb +97 -0
  97. data/lib/akoya/models/error_entity_insurance_account.rb +97 -0
  98. data/lib/akoya/models/error_entity_insurance_balances.rb +97 -0
  99. data/lib/akoya/models/error_entity_investment_account.rb +97 -0
  100. data/lib/akoya/models/error_entity_investment_balances.rb +97 -0
  101. data/lib/akoya/models/error_entity_line_of_credit_balances.rb +97 -0
  102. data/lib/akoya/models/error_entity_loan_account.rb +97 -0
  103. data/lib/akoya/models/error_entity_loan_balances.rb +97 -0
  104. data/lib/akoya/models/error_entity_us_bank_investment.rb +97 -0
  105. data/lib/akoya/models/fi_asset_class.rb +95 -0
  106. data/lib/akoya/models/fi_asset_class_an_investment_holding.rb +85 -0
  107. data/lib/akoya/models/fi_attribute.rb +95 -0
  108. data/lib/akoya/models/fi_attribute_entity.rb +95 -0
  109. data/lib/akoya/models/frequency.rb +56 -0
  110. data/lib/akoya/models/hateoas_link.rb +105 -0
  111. data/lib/akoya/models/held_in_account.rb +44 -0
  112. data/lib/akoya/models/holding_sub_type.rb +36 -0
  113. data/lib/akoya/models/holding_type.rb +56 -0
  114. data/lib/akoya/models/income_type.rb +41 -0
  115. data/lib/akoya/models/industry_code.rb +85 -0
  116. data/lib/akoya/models/insurance_account.rb +349 -0
  117. data/lib/akoya/models/insurance_account_info.rb +87 -0
  118. data/lib/akoya/models/insurance_balance_details.rb +87 -0
  119. data/lib/akoya/models/insurance_balances.rb +420 -0
  120. data/lib/akoya/models/insurance_transaction.rb +351 -0
  121. data/lib/akoya/models/insurance_transaction_details.rb +87 -0
  122. data/lib/akoya/models/interest_rate_type.rb +36 -0
  123. data/lib/akoya/models/inv401_k_source.rb +56 -0
  124. data/lib/akoya/models/inv401_k_source_open_order_entity.rb +57 -0
  125. data/lib/akoya/models/inv401_k_surce.rb +56 -0
  126. data/lib/akoya/models/investment_account.rb +411 -0
  127. data/lib/akoya/models/investment_account_annuity_balance.rb +87 -0
  128. data/lib/akoya/models/investment_account_deposit_balance.rb +87 -0
  129. data/lib/akoya/models/investment_account_info.rb +87 -0
  130. data/lib/akoya/models/investment_account_insurance_balance.rb +87 -0
  131. data/lib/akoya/models/investment_account_loan_balance.rb +86 -0
  132. data/lib/akoya/models/investment_account_loc_balance.rb +86 -0
  133. data/lib/akoya/models/investment_balance_details.rb +87 -0
  134. data/lib/akoya/models/investment_balance_list.rb +148 -0
  135. data/lib/akoya/models/investment_balances.rb +525 -0
  136. data/lib/akoya/models/investment_details.rb +88 -0
  137. data/lib/akoya/models/investment_loan_entity.rb +271 -0
  138. data/lib/akoya/models/investment_transaction.rb +783 -0
  139. data/lib/akoya/models/investment_transaction_details.rb +87 -0
  140. data/lib/akoya/models/investments.rb +88 -0
  141. data/lib/akoya/models/line_item.rb +156 -0
  142. data/lib/akoya/models/line_of_credit_balances.rb +601 -0
  143. data/lib/akoya/models/links.rb +95 -0
  144. data/lib/akoya/models/loan_account.rb +417 -0
  145. data/lib/akoya/models/loan_account_info.rb +86 -0
  146. data/lib/akoya/models/loan_balance_details.rb +86 -0
  147. data/lib/akoya/models/loan_balances.rb +556 -0
  148. data/lib/akoya/models/loan_payment_frequency.rb +68 -0
  149. data/lib/akoya/models/loan_transaction.rb +360 -0
  150. data/lib/akoya/models/loan_transaction_details.rb +87 -0
  151. data/lib/akoya/models/loc_account_info.rb +86 -0
  152. data/lib/akoya/models/loc_balance_details.rb +86 -0
  153. data/lib/akoya/models/loc_transaction.rb +372 -0
  154. data/lib/akoya/models/loc_transaction_details.rb +86 -0
  155. data/lib/akoya/models/mnext.rb +84 -0
  156. data/lib/akoya/models/mode.rb +36 -0
  157. data/lib/akoya/models/mutual_fund_security.rb +99 -0
  158. data/lib/akoya/models/mutual_fund_security_entity.rb +150 -0
  159. data/lib/akoya/models/mutual_fund_type.rb +40 -0
  160. data/lib/akoya/models/obtain_tokens.rb +99 -0
  161. data/lib/akoya/models/open_order_entity.rb +228 -0
  162. data/lib/akoya/models/option_security.rb +125 -0
  163. data/lib/akoya/models/option_security_entity.rb +127 -0
  164. data/lib/akoya/models/option_type.rb +36 -0
  165. data/lib/akoya/models/order_duration.rb +40 -0
  166. data/lib/akoya/models/order_type.rb +60 -0
  167. data/lib/akoya/models/other_security_entity.rb +77 -0
  168. data/lib/akoya/models/paginated_array.rb +75 -0
  169. data/lib/akoya/models/payment_details.rb +142 -0
  170. data/lib/akoya/models/payment_frequency.rb +56 -0
  171. data/lib/akoya/models/payment_frequency_annuity_account.rb +44 -0
  172. data/lib/akoya/models/payment_frequency_annuity_balances.rb +44 -0
  173. data/lib/akoya/models/payment_network_supported_by_account.rb +129 -0
  174. data/lib/akoya/models/pension_source_entity.rb +143 -0
  175. data/lib/akoya/models/period_certain_guarantee.rb +48 -0
  176. data/lib/akoya/models/policy_premium_term.rb +36 -0
  177. data/lib/akoya/models/position_type.rb +36 -0
  178. data/lib/akoya/models/postion_type.rb +36 -0
  179. data/lib/akoya/models/prev.rb +84 -0
  180. data/lib/akoya/models/refresh_tokens.rb +103 -0
  181. data/lib/akoya/models/secured.rb +36 -0
  182. data/lib/akoya/models/security_id_type.rb +52 -0
  183. data/lib/akoya/models/security_id_type_investment_transaction.rb +52 -0
  184. data/lib/akoya/models/security_type.rb +56 -0
  185. data/lib/akoya/models/statement_entity.rb +136 -0
  186. data/lib/akoya/models/status.rb +56 -0
  187. data/lib/akoya/models/status_deposit_transaction.rb +44 -0
  188. data/lib/akoya/models/status_insurance_transaction.rb +44 -0
  189. data/lib/akoya/models/status_investment_transaction.rb +44 -0
  190. data/lib/akoya/models/status_loan_transaction.rb +44 -0
  191. data/lib/akoya/models/status_loc_transaction.rb +44 -0
  192. data/lib/akoya/models/status_statement_entity.rb +40 -0
  193. data/lib/akoya/models/status_transaction.rb +44 -0
  194. data/lib/akoya/models/stock_security_entity.rb +137 -0
  195. data/lib/akoya/models/stock_type.rb +56 -0
  196. data/lib/akoya/models/sub_account.rb +44 -0
  197. data/lib/akoya/models/sub_account_fund.rb +44 -0
  198. data/lib/akoya/models/sub_account_sec.rb +44 -0
  199. data/lib/akoya/models/sweep_security_entity.rb +118 -0
  200. data/lib/akoya/models/tax_lot.rb +137 -0
  201. data/lib/akoya/models/tax_lot_an_investment_holding.rb +139 -0
  202. data/lib/akoya/models/telephone.rb +95 -0
  203. data/lib/akoya/models/telephone_number.rb +95 -0
  204. data/lib/akoya/models/token_example_response.rb +101 -0
  205. data/lib/akoya/models/transaction.rb +328 -0
  206. data/lib/akoya/models/transaction_reason.rb +41 -0
  207. data/lib/akoya/models/transaction_type.rb +84 -0
  208. data/lib/akoya/models/transaction_type_insurance_transaction.rb +44 -0
  209. data/lib/akoya/models/transaction_type_investment_transaction.rb +192 -0
  210. data/lib/akoya/models/transaction_type_loan_transaction.rb +44 -0
  211. data/lib/akoya/models/transaction_type_loc_transaction.rb +84 -0
  212. data/lib/akoya/models/transactions_entity.rb +98 -0
  213. data/lib/akoya/models/transfer_action.rb +36 -0
  214. data/lib/akoya/models/type.rb +44 -0
  215. data/lib/akoya/models/type_hateoas_link.rb +52 -0
  216. data/lib/akoya/models/type_telephone_number.rb +44 -0
  217. data/lib/akoya/models/unit_type.rb +36 -0
  218. data/lib/akoya/models/unit_type_open_order_entity.rb +36 -0
  219. data/lib/akoya/models/us_bank_investment.rb +535 -0
  220. data/lib/akoya/models/us_bank_investment_details.rb +75 -0
  221. data/lib/akoya/models/us_bank_investment_holdings.rb +403 -0
  222. data/lib/akoya/models/vesting.rb +135 -0
  223. data/lib/akoya/models/vesting_entity.rb +185 -0
  224. data/lib/akoya/models/x_akoya_interaction_type.rb +36 -0
  225. data/lib/akoya/utilities/date_time_helper.rb +11 -0
  226. data/lib/akoya/utilities/file_wrapper.rb +28 -0
  227. data/lib/akoya/utilities/union_type_lookup.rb +91 -0
  228. data/lib/akoya.rb +250 -0
  229. metadata +312 -0
@@ -0,0 +1,52 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # Security identifier type
8
+ class SecurityIdType
9
+ SECURITY_ID_TYPE = [
10
+ # TODO: Write general description for CUSIP
11
+ CUSIP = 'CUSIP'.freeze,
12
+
13
+ # TODO: Write general description for ISIN
14
+ ISIN = 'ISIN'.freeze,
15
+
16
+ # TODO: Write general description for SEDOL
17
+ SEDOL = 'SEDOL'.freeze,
18
+
19
+ # TODO: Write general description for SICC
20
+ SICC = 'SICC'.freeze,
21
+
22
+ # TODO: Write general description for VALOR
23
+ VALOR = 'VALOR'.freeze,
24
+
25
+ # TODO: Write general description for WKN
26
+ WKN = 'WKN'.freeze
27
+ ].freeze
28
+
29
+ def self.validate(value)
30
+ return false if value.nil?
31
+
32
+ true
33
+ end
34
+
35
+ def self.from_value(value, default_value = CUSIP)
36
+ return default_value if value.nil?
37
+
38
+ str = value.to_s.strip
39
+
40
+ case str.downcase
41
+ when 'cusip' then CUSIP
42
+ when 'isin' then ISIN
43
+ when 'sedol' then SEDOL
44
+ when 'sicc' then SICC
45
+ when 'valor' then VALOR
46
+ when 'wkn' then WKN
47
+ else
48
+ default_value
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,52 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # Security identifier type.
8
+ class SecurityIdTypeInvestmentTransaction
9
+ SECURITY_ID_TYPE_INVESTMENT_TRANSACTION = [
10
+ # TODO: Write general description for BUSIP
11
+ BUSIP = 'BUSIP'.freeze,
12
+
13
+ # TODO: Write general description for ISIN
14
+ ISIN = 'ISIN'.freeze,
15
+
16
+ # TODO: Write general description for SEDOL
17
+ SEDOL = 'SEDOL'.freeze,
18
+
19
+ # TODO: Write general description for SICC
20
+ SICC = 'SICC'.freeze,
21
+
22
+ # TODO: Write general description for VALOR
23
+ VALOR = 'VALOR'.freeze,
24
+
25
+ # TODO: Write general description for WKN
26
+ WKN = 'WKN'.freeze
27
+ ].freeze
28
+
29
+ def self.validate(value)
30
+ return false if value.nil?
31
+
32
+ true
33
+ end
34
+
35
+ def self.from_value(value, default_value = BUSIP)
36
+ return default_value if value.nil?
37
+
38
+ str = value.to_s.strip
39
+
40
+ case str.downcase
41
+ when 'busip' then BUSIP
42
+ when 'isin' then ISIN
43
+ when 'sedol' then SEDOL
44
+ when 'sicc' then SICC
45
+ when 'valor' then VALOR
46
+ when 'wkn' then WKN
47
+ else
48
+ default_value
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,56 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # SecurityType.
8
+ class SecurityType
9
+ SECURITY_TYPE = [
10
+ # TODO: Write general description for STOCK
11
+ STOCK = 'STOCK'.freeze,
12
+
13
+ # TODO: Write general description for MUTUALFUND
14
+ MUTUALFUND = 'MUTUALFUND'.freeze,
15
+
16
+ # TODO: Write general description for DEBT
17
+ DEBT = 'DEBT'.freeze,
18
+
19
+ # TODO: Write general description for OPTION
20
+ OPTION = 'OPTION'.freeze,
21
+
22
+ # TODO: Write general description for SWEEP
23
+ SWEEP = 'SWEEP'.freeze,
24
+
25
+ # TODO: Write general description for OTHER
26
+ OTHER = 'OTHER'.freeze,
27
+
28
+ # TODO: Write general description for BOND
29
+ BOND = 'BOND'.freeze
30
+ ].freeze
31
+
32
+ def self.validate(value)
33
+ return false if value.nil?
34
+
35
+ true
36
+ end
37
+
38
+ def self.from_value(value, default_value = STOCK)
39
+ return default_value if value.nil?
40
+
41
+ str = value.to_s.strip
42
+
43
+ case str.downcase
44
+ when 'stock' then STOCK
45
+ when 'mutualfund' then MUTUALFUND
46
+ when 'debt' then DEBT
47
+ when 'option' then OPTION
48
+ when 'sweep' then SWEEP
49
+ when 'other' then OTHER
50
+ when 'bond' then BOND
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,136 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # An account statement
8
+ class StatementEntity < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Corresponds to accountId in Account entity
13
+ # @return [String]
14
+ attr_accessor :account_id
15
+
16
+ # Long-term persistent identity of the statement
17
+ # @return [String]
18
+ attr_accessor :statement_id
19
+
20
+ # Date of the statement in ISO 8601.
21
+ # @return [Date]
22
+ attr_accessor :statement_date
23
+
24
+ # Description of statement. Should include description of type of statement:
25
+ # monthly, quarterly, yearly.
26
+ # @return [String]
27
+ attr_accessor :description
28
+
29
+ # The links to retrieve this account statement, or to invoke other APIs
30
+ # @return [Array[HateoasLink]]
31
+ attr_accessor :links
32
+
33
+ # Availability status of statement
34
+ # @return [StatusStatementEntity]
35
+ attr_accessor :status
36
+
37
+ # A mapping from model property names to API property names.
38
+ def self.names
39
+ @_hash = {} if @_hash.nil?
40
+ @_hash['account_id'] = 'accountId'
41
+ @_hash['statement_id'] = 'statementId'
42
+ @_hash['statement_date'] = 'statementDate'
43
+ @_hash['description'] = 'description'
44
+ @_hash['links'] = 'links'
45
+ @_hash['status'] = 'status'
46
+ @_hash
47
+ end
48
+
49
+ # An array for optional fields
50
+ def self.optionals
51
+ %w[
52
+ account_id
53
+ statement_id
54
+ statement_date
55
+ description
56
+ links
57
+ status
58
+ ]
59
+ end
60
+
61
+ # An array for nullable fields
62
+ def self.nullables
63
+ []
64
+ end
65
+
66
+ def initialize(account_id: SKIP, statement_id: SKIP, statement_date: SKIP,
67
+ description: SKIP, links: SKIP, status: SKIP,
68
+ additional_properties: nil)
69
+ # Add additional model properties to the instance
70
+ additional_properties = {} if additional_properties.nil?
71
+
72
+ @account_id = account_id unless account_id == SKIP
73
+ @statement_id = statement_id unless statement_id == SKIP
74
+ @statement_date = statement_date unless statement_date == SKIP
75
+ @description = description unless description == SKIP
76
+ @links = links unless links == SKIP
77
+ @status = status unless status == SKIP
78
+ @additional_properties = additional_properties
79
+ end
80
+
81
+ # Creates an instance of the object from a hash.
82
+ def self.from_hash(hash)
83
+ return nil unless hash
84
+
85
+ # Extract variables from the hash.
86
+ account_id = hash.key?('accountId') ? hash['accountId'] : SKIP
87
+ statement_id = hash.key?('statementId') ? hash['statementId'] : SKIP
88
+ statement_date = hash.key?('statementDate') ? hash['statementDate'] : SKIP
89
+ description = hash.key?('description') ? hash['description'] : SKIP
90
+ # Parameter is an array, so we need to iterate through it
91
+ links = nil
92
+ unless hash['links'].nil?
93
+ links = []
94
+ hash['links'].each do |structure|
95
+ links << (HateoasLink.from_hash(structure) if structure)
96
+ end
97
+ end
98
+
99
+ links = SKIP unless hash.key?('links')
100
+ status = hash.key?('status') ? hash['status'] : SKIP
101
+
102
+ # Create a new hash for additional properties, removing known properties.
103
+ new_hash = hash.reject { |k, _| names.value?(k) }
104
+
105
+ additional_properties = APIHelper.get_additional_properties(
106
+ new_hash, proc { |value| value }
107
+ )
108
+
109
+ # Create object from extracted values.
110
+ StatementEntity.new(account_id: account_id,
111
+ statement_id: statement_id,
112
+ statement_date: statement_date,
113
+ description: description,
114
+ links: links,
115
+ status: status,
116
+ additional_properties: additional_properties)
117
+ end
118
+
119
+ # Provides a human-readable string representation of the object.
120
+ def to_s
121
+ class_name = self.class.name.split('::').last
122
+ "<#{class_name} account_id: #{@account_id}, statement_id: #{@statement_id}, statement_date:"\
123
+ " #{@statement_date}, description: #{@description}, links: #{@links}, status: #{@status},"\
124
+ " additional_properties: #{@additional_properties}>"
125
+ end
126
+
127
+ # Provides a debugging-friendly string with detailed object information.
128
+ def inspect
129
+ class_name = self.class.name.split('::').last
130
+ "<#{class_name} account_id: #{@account_id.inspect}, statement_id: #{@statement_id.inspect},"\
131
+ " statement_date: #{@statement_date.inspect}, description: #{@description.inspect}, links:"\
132
+ " #{@links.inspect}, status: #{@status.inspect}, additional_properties:"\
133
+ " #{@additional_properties}>"
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,56 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # The status of an account.
8
+ class Status
9
+ STATUS = [
10
+ # TODO: Write general description for OPEN
11
+ OPEN = 'OPEN'.freeze,
12
+
13
+ # TODO: Write general description for CLOSED
14
+ CLOSED = 'CLOSED'.freeze,
15
+
16
+ # TODO: Write general description for PENDINGOPEN
17
+ PENDINGOPEN = 'PENDINGOPEN'.freeze,
18
+
19
+ # TODO: Write general description for PENDINGCLOSE
20
+ PENDINGCLOSE = 'PENDINGCLOSE'.freeze,
21
+
22
+ # TODO: Write general description for DELINQUENT
23
+ DELINQUENT = 'DELINQUENT'.freeze,
24
+
25
+ # TODO: Write general description for PAID
26
+ PAID = 'PAID'.freeze,
27
+
28
+ # TODO: Write general description for NEGATIVECURRENTBALANCE
29
+ NEGATIVECURRENTBALANCE = 'NEGATIVECURRENTBALANCE'.freeze
30
+ ].freeze
31
+
32
+ def self.validate(value)
33
+ return false if value.nil?
34
+
35
+ true
36
+ end
37
+
38
+ def self.from_value(value, default_value = OPEN)
39
+ return default_value if value.nil?
40
+
41
+ str = value.to_s.strip
42
+
43
+ case str.downcase
44
+ when 'open' then OPEN
45
+ when 'closed' then CLOSED
46
+ when 'pendingopen' then PENDINGOPEN
47
+ when 'pendingclose' then PENDINGCLOSE
48
+ when 'delinquent' then DELINQUENT
49
+ when 'paid' then PAID
50
+ when 'negativecurrentbalance' then NEGATIVECURRENTBALANCE
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusDepositTransaction
9
+ STATUS_DEPOSIT_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusInsuranceTransaction
9
+ STATUS_INSURANCE_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusInvestmentTransaction
9
+ STATUS_INVESTMENT_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusLoanTransaction
9
+ STATUS_LOAN_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusLocTransaction
9
+ STATUS_LOC_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,40 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # Availability status of statement
8
+ class StatusStatementEntity
9
+ STATUS_STATEMENT_ENTITY = [
10
+ # TODO: Write general description for AVAILABLE
11
+ AVAILABLE = 'AVAILABLE'.freeze,
12
+
13
+ # TODO: Write general description for PROCESSING
14
+ PROCESSING = 'PROCESSING'.freeze,
15
+
16
+ # TODO: Write general description for FAILED
17
+ FAILED = 'FAILED'.freeze
18
+ ].freeze
19
+
20
+ def self.validate(value)
21
+ return false if value.nil?
22
+
23
+ true
24
+ end
25
+
26
+ def self.from_value(value, default_value = AVAILABLE)
27
+ return default_value if value.nil?
28
+
29
+ str = value.to_s.strip
30
+
31
+ case str.downcase
32
+ when 'available' then AVAILABLE
33
+ when 'processing' then PROCESSING
34
+ when 'failed' then FAILED
35
+ else
36
+ default_value
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,44 @@
1
+ # akoya
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module Akoya
7
+ # AUTHORIZATION, MEMO, PENDING, or POSTED
8
+ class StatusTransaction
9
+ STATUS_TRANSACTION = [
10
+ # TODO: Write general description for PENDING
11
+ PENDING = 'PENDING'.freeze,
12
+
13
+ # TODO: Write general description for MEMO
14
+ MEMO = 'MEMO'.freeze,
15
+
16
+ # TODO: Write general description for POSTED
17
+ POSTED = 'POSTED'.freeze,
18
+
19
+ # TODO: Write general description for AUTHORIZATION
20
+ AUTHORIZATION = 'AUTHORIZATION'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ true
27
+ end
28
+
29
+ def self.from_value(value, default_value = PENDING)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'pending' then PENDING
36
+ when 'memo' then MEMO
37
+ when 'posted' then POSTED
38
+ when 'authorization' then AUTHORIZATION
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end