snaptrade 1.16.0 → 1.16.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (299) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +10 -10
  3. data/Gemfile.lock +13 -11
  4. data/README.md +221 -221
  5. data/docs/APIStatusApi.md +57 -57
  6. data/docs/AccountInformationApi.md +535 -535
  7. data/docs/AuthenticationApi.md +314 -314
  8. data/docs/ConnectionsApi.md +265 -265
  9. data/docs/ErrorLogsApi.md +68 -68
  10. data/docs/OptionsApi.md +378 -378
  11. data/docs/ReferenceDataApi.md +595 -595
  12. data/docs/TradingApi.md +478 -478
  13. data/docs/TransactionsAndReportingApi.md +183 -183
  14. data/lib/snaptrade/api/account_information_api.rb +801 -801
  15. data/lib/snaptrade/api/api_status_api.rb +98 -98
  16. data/lib/snaptrade/api/authentication_api.rb +481 -481
  17. data/lib/snaptrade/api/connections_api.rb +398 -398
  18. data/lib/snaptrade/api/error_logs_api.rb +112 -112
  19. data/lib/snaptrade/api/options_api.rb +591 -591
  20. data/lib/snaptrade/api/reference_data_api.rb +894 -894
  21. data/lib/snaptrade/api/trading_api.rb +741 -741
  22. data/lib/snaptrade/api/transactions_and_reporting_api.rb +283 -283
  23. data/lib/snaptrade/api_client.rb +427 -427
  24. data/lib/snaptrade/api_client_custom.rb +32 -32
  25. data/lib/snaptrade/api_error.rb +6 -6
  26. data/lib/snaptrade/configuration.rb +341 -334
  27. data/lib/snaptrade/models/account.rb +6 -6
  28. data/lib/snaptrade/models/account_holdings.rb +6 -6
  29. data/lib/snaptrade/models/account_holdings_account.rb +6 -6
  30. data/lib/snaptrade/models/account_order_record.rb +6 -6
  31. data/lib/snaptrade/models/account_order_record_status.rb +6 -6
  32. data/lib/snaptrade/models/account_simple.rb +6 -6
  33. data/lib/snaptrade/models/account_sync_status.rb +6 -6
  34. data/lib/snaptrade/models/action.rb +6 -6
  35. data/lib/snaptrade/models/auth_type.rb +6 -6
  36. data/lib/snaptrade/models/authentication_login_snap_trade_user200_response.rb +6 -6
  37. data/lib/snaptrade/models/balance.rb +6 -6
  38. data/lib/snaptrade/models/brokerage.rb +6 -6
  39. data/lib/snaptrade/models/brokerage_authorization.rb +6 -6
  40. data/lib/snaptrade/models/brokerage_authorization_type.rb +6 -6
  41. data/lib/snaptrade/models/brokerage_authorization_type_read_only.rb +6 -6
  42. data/lib/snaptrade/models/brokerage_authorization_type_read_only_brokerage.rb +6 -6
  43. data/lib/snaptrade/models/brokerage_authorization_type_read_only_type.rb +6 -6
  44. data/lib/snaptrade/models/brokerage_authorization_type_type.rb +6 -6
  45. data/lib/snaptrade/models/brokerage_symbol.rb +6 -6
  46. data/lib/snaptrade/models/brokerage_symbol_option_symbol.rb +6 -6
  47. data/lib/snaptrade/models/brokerage_symbol_symbol.rb +6 -6
  48. data/lib/snaptrade/models/brokerage_type.rb +6 -6
  49. data/lib/snaptrade/models/calculated_trade.rb +6 -6
  50. data/lib/snaptrade/models/cash_restriction.rb +6 -6
  51. data/lib/snaptrade/models/connection_type.rb +6 -6
  52. data/lib/snaptrade/models/connections_session_events200_response_inner.rb +6 -6
  53. data/lib/snaptrade/models/currency.rb +6 -6
  54. data/lib/snaptrade/models/delete_user_response.rb +6 -6
  55. data/lib/snaptrade/models/dividend_at_date.rb +6 -6
  56. data/lib/snaptrade/models/encrypted_response.rb +6 -6
  57. data/lib/snaptrade/models/encrypted_response_encrypted_message_data.rb +6 -6
  58. data/lib/snaptrade/models/exchange.rb +6 -6
  59. data/lib/snaptrade/models/exchange_rate_pairs.rb +6 -6
  60. data/lib/snaptrade/models/excluded_asset.rb +6 -6
  61. data/lib/snaptrade/models/jwt.rb +6 -6
  62. data/lib/snaptrade/models/login_redirect_uri.rb +6 -6
  63. data/lib/snaptrade/models/manual_trade.rb +6 -6
  64. data/lib/snaptrade/models/manual_trade_and_impact.rb +6 -6
  65. data/lib/snaptrade/models/manual_trade_balance.rb +6 -6
  66. data/lib/snaptrade/models/manual_trade_form.rb +6 -6
  67. data/lib/snaptrade/models/manual_trade_symbol.rb +6 -6
  68. data/lib/snaptrade/models/model400_failed_request_response.rb +6 -6
  69. data/lib/snaptrade/models/model401_failed_request_response.rb +6 -6
  70. data/lib/snaptrade/models/model403_failed_request_response.rb +6 -6
  71. data/lib/snaptrade/models/model404_failed_request_response.rb +6 -6
  72. data/lib/snaptrade/models/model_asset_class.rb +6 -6
  73. data/lib/snaptrade/models/model_asset_class_details.rb +6 -6
  74. data/lib/snaptrade/models/model_asset_class_target.rb +6 -6
  75. data/lib/snaptrade/models/model_portfolio.rb +6 -6
  76. data/lib/snaptrade/models/model_portfolio_asset_class.rb +6 -6
  77. data/lib/snaptrade/models/model_portfolio_details.rb +6 -6
  78. data/lib/snaptrade/models/model_portfolio_security.rb +6 -6
  79. data/lib/snaptrade/models/model_type.rb +6 -6
  80. data/lib/snaptrade/models/monthly_dividends.rb +6 -6
  81. data/lib/snaptrade/models/net_contributions.rb +6 -6
  82. data/lib/snaptrade/models/net_dividend.rb +6 -6
  83. data/lib/snaptrade/models/option_chain_inner.rb +6 -6
  84. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner.rb +6 -6
  85. data/lib/snaptrade/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner.rb +6 -6
  86. data/lib/snaptrade/models/option_leg.rb +6 -6
  87. data/lib/snaptrade/models/option_leg_action.rb +6 -6
  88. data/lib/snaptrade/models/option_strategy.rb +6 -6
  89. data/lib/snaptrade/models/option_strategy_legs_inner.rb +6 -6
  90. data/lib/snaptrade/models/options_get_option_strategy_request.rb +6 -6
  91. data/lib/snaptrade/models/options_holdings.rb +6 -6
  92. data/lib/snaptrade/models/options_place_option_strategy_request.rb +6 -6
  93. data/lib/snaptrade/models/options_position.rb +6 -6
  94. data/lib/snaptrade/models/options_position_currency.rb +6 -6
  95. data/lib/snaptrade/models/options_symbol.rb +6 -6
  96. data/lib/snaptrade/models/order_strategy_execute_body_order_type.rb +6 -6
  97. data/lib/snaptrade/models/order_strategy_execute_body_time_in_force.rb +6 -6
  98. data/lib/snaptrade/models/order_type.rb +6 -6
  99. data/lib/snaptrade/models/partner_data.rb +6 -6
  100. data/lib/snaptrade/models/past_value.rb +6 -6
  101. data/lib/snaptrade/models/performance_custom.rb +6 -6
  102. data/lib/snaptrade/models/portfolio_group.rb +6 -6
  103. data/lib/snaptrade/models/portfolio_group_info.rb +6 -6
  104. data/lib/snaptrade/models/portfolio_group_position.rb +6 -6
  105. data/lib/snaptrade/models/portfolio_group_settings.rb +6 -6
  106. data/lib/snaptrade/models/position.rb +6 -6
  107. data/lib/snaptrade/models/position_symbol.rb +6 -6
  108. data/lib/snaptrade/models/redirect_tokenand_pin.rb +6 -6
  109. data/lib/snaptrade/models/security_type.rb +6 -6
  110. data/lib/snaptrade/models/session_event.rb +6 -6
  111. data/lib/snaptrade/models/session_event_type.rb +6 -6
  112. data/lib/snaptrade/models/snap_trade_api_disclaimer_accept_status.rb +6 -6
  113. data/lib/snaptrade/models/snap_trade_holdings_account.rb +6 -6
  114. data/lib/snaptrade/models/snap_trade_holdings_account_account_id.rb +6 -6
  115. data/lib/snaptrade/models/snap_trade_holdings_total_value.rb +7 -7
  116. data/lib/snaptrade/models/snap_trade_login_user_request_body.rb +6 -6
  117. data/lib/snaptrade/models/snap_trade_register_user_request_body.rb +6 -6
  118. data/lib/snaptrade/models/state.rb +6 -6
  119. data/lib/snaptrade/models/status.rb +6 -6
  120. data/lib/snaptrade/models/strategy_impact.rb +6 -6
  121. data/lib/snaptrade/models/strategy_impact_legs_inner.rb +6 -6
  122. data/lib/snaptrade/models/strategy_order_place.rb +6 -6
  123. data/lib/snaptrade/models/strategy_order_place_orders_inner.rb +6 -6
  124. data/lib/snaptrade/models/strategy_order_place_orders_inner_legs_inner.rb +6 -6
  125. data/lib/snaptrade/models/strategy_order_record.rb +6 -6
  126. data/lib/snaptrade/models/strategy_order_record_order_type.rb +6 -6
  127. data/lib/snaptrade/models/strategy_order_record_status.rb +6 -6
  128. data/lib/snaptrade/models/strategy_order_record_time_in_force.rb +6 -6
  129. data/lib/snaptrade/models/strategy_quotes.rb +6 -6
  130. data/lib/snaptrade/models/strategy_quotes_greek.rb +6 -6
  131. data/lib/snaptrade/models/strategy_type.rb +6 -6
  132. data/lib/snaptrade/models/sub_period_return_rate.rb +6 -6
  133. data/lib/snaptrade/models/symbol.rb +6 -6
  134. data/lib/snaptrade/models/symbol_query.rb +6 -6
  135. data/lib/snaptrade/models/symbols_quotes_inner.rb +6 -6
  136. data/lib/snaptrade/models/target_asset.rb +6 -6
  137. data/lib/snaptrade/models/time_in_force.rb +6 -6
  138. data/lib/snaptrade/models/trade.rb +6 -6
  139. data/lib/snaptrade/models/trade_action.rb +6 -6
  140. data/lib/snaptrade/models/trade_execution_status.rb +6 -6
  141. data/lib/snaptrade/models/trade_execution_status_action.rb +6 -6
  142. data/lib/snaptrade/models/trade_impact.rb +6 -6
  143. data/lib/snaptrade/models/trading_cancel_user_account_order_request.rb +6 -6
  144. data/lib/snaptrade/models/trading_place_oco_order_request.rb +6 -6
  145. data/lib/snaptrade/models/transactions_status.rb +6 -6
  146. data/lib/snaptrade/models/type.rb +6 -6
  147. data/lib/snaptrade/models/underlying_symbol.rb +6 -6
  148. data/lib/snaptrade/models/universal_activity.rb +6 -6
  149. data/lib/snaptrade/models/universal_symbol.rb +6 -6
  150. data/lib/snaptrade/models/universal_symbol_ticker.rb +6 -6
  151. data/lib/snaptrade/models/us_exchange.rb +6 -6
  152. data/lib/snaptrade/models/user_error_log.rb +6 -6
  153. data/lib/snaptrade/models/user_i_dand_secret.rb +6 -6
  154. data/lib/snaptrade/models/user_settings.rb +6 -6
  155. data/lib/snaptrade/version.rb +7 -7
  156. data/lib/snaptrade.rb +214 -214
  157. data/snaptrade.gemspec +41 -41
  158. data/spec/api/account_information_api_spec.rb +135 -135
  159. data/spec/api/api_status_api_spec.rb +42 -42
  160. data/spec/api/authentication_api_spec.rb +88 -88
  161. data/spec/api/connections_api_spec.rb +82 -82
  162. data/spec/api/error_logs_api_spec.rb +43 -43
  163. data/spec/api/options_api_spec.rb +101 -101
  164. data/spec/api/reference_data_api_spec.rb +150 -150
  165. data/spec/api/trading_api_spec.rb +112 -112
  166. data/spec/api/transactions_and_reporting_api_spec.rb +67 -67
  167. data/spec/api_client_spec.rb +193 -193
  168. data/spec/configuration_spec.rb +6 -6
  169. data/spec/getting_started_spec.rb +114 -108
  170. data/spec/models/account_holdings_account_spec.rb +54 -54
  171. data/spec/models/account_holdings_spec.rb +48 -48
  172. data/spec/models/account_order_record_spec.rb +132 -132
  173. data/spec/models/account_order_record_status_spec.rb +24 -24
  174. data/spec/models/account_simple_spec.rb +48 -48
  175. data/spec/models/account_spec.rb +84 -84
  176. data/spec/models/account_sync_status_spec.rb +30 -30
  177. data/spec/models/action_spec.rb +24 -24
  178. data/spec/models/auth_type_spec.rb +24 -24
  179. data/spec/models/authentication_login_snap_trade_user200_response_spec.rb +27 -27
  180. data/spec/models/balance_spec.rb +36 -36
  181. data/spec/models/brokerage_authorization_spec.rb +78 -78
  182. data/spec/models/brokerage_authorization_type_read_only_brokerage_spec.rb +42 -42
  183. data/spec/models/brokerage_authorization_type_read_only_spec.rb +48 -48
  184. data/spec/models/brokerage_authorization_type_read_only_type_spec.rb +24 -24
  185. data/spec/models/brokerage_authorization_type_spec.rb +30 -30
  186. data/spec/models/brokerage_authorization_type_type_spec.rb +24 -24
  187. data/spec/models/brokerage_spec.rb +132 -132
  188. data/spec/models/brokerage_symbol_option_symbol_spec.rb +72 -72
  189. data/spec/models/brokerage_symbol_spec.rb +60 -60
  190. data/spec/models/brokerage_symbol_symbol_spec.rb +72 -72
  191. data/spec/models/brokerage_type_spec.rb +36 -36
  192. data/spec/models/calculated_trade_spec.rb +36 -36
  193. data/spec/models/cash_restriction_spec.rb +54 -54
  194. data/spec/models/connection_type_spec.rb +24 -24
  195. data/spec/models/connections_session_events200_response_inner_spec.rb +66 -66
  196. data/spec/models/currency_spec.rb +42 -42
  197. data/spec/models/delete_user_response_spec.rb +36 -36
  198. data/spec/models/dividend_at_date_spec.rb +42 -42
  199. data/spec/models/encrypted_response_encrypted_message_data_spec.rb +42 -42
  200. data/spec/models/encrypted_response_spec.rb +36 -36
  201. data/spec/models/exchange_rate_pairs_spec.rb +42 -42
  202. data/spec/models/exchange_spec.rb +72 -72
  203. data/spec/models/excluded_asset_spec.rb +30 -30
  204. data/spec/models/jwt_spec.rb +30 -30
  205. data/spec/models/login_redirect_uri_spec.rb +36 -36
  206. data/spec/models/manual_trade_and_impact_spec.rb +42 -42
  207. data/spec/models/manual_trade_balance_spec.rb +42 -42
  208. data/spec/models/manual_trade_form_spec.rb +72 -72
  209. data/spec/models/manual_trade_spec.rb +72 -72
  210. data/spec/models/manual_trade_symbol_spec.rb +60 -60
  211. data/spec/models/model400_failed_request_response_spec.rb +36 -36
  212. data/spec/models/model401_failed_request_response_spec.rb +36 -36
  213. data/spec/models/model403_failed_request_response_spec.rb +36 -36
  214. data/spec/models/model404_failed_request_response_spec.rb +36 -36
  215. data/spec/models/model_asset_class_details_spec.rb +36 -36
  216. data/spec/models/model_asset_class_spec.rb +36 -36
  217. data/spec/models/model_asset_class_target_spec.rb +30 -30
  218. data/spec/models/model_portfolio_asset_class_spec.rb +36 -36
  219. data/spec/models/model_portfolio_details_spec.rb +42 -42
  220. data/spec/models/model_portfolio_security_spec.rb +36 -36
  221. data/spec/models/model_portfolio_spec.rb +42 -42
  222. data/spec/models/model_type_spec.rb +24 -24
  223. data/spec/models/monthly_dividends_spec.rb +36 -36
  224. data/spec/models/net_contributions_spec.rb +42 -42
  225. data/spec/models/net_dividend_spec.rb +42 -42
  226. data/spec/models/option_chain_inner_chain_per_root_inner_chain_per_strike_price_inner_spec.rb +42 -42
  227. data/spec/models/option_chain_inner_chain_per_root_inner_spec.rb +42 -42
  228. data/spec/models/option_chain_inner_spec.rb +54 -54
  229. data/spec/models/option_leg_action_spec.rb +24 -24
  230. data/spec/models/option_leg_spec.rb +42 -42
  231. data/spec/models/option_strategy_legs_inner_spec.rb +48 -48
  232. data/spec/models/option_strategy_spec.rb +54 -54
  233. data/spec/models/options_get_option_strategy_request_spec.rb +42 -42
  234. data/spec/models/options_holdings_spec.rb +60 -60
  235. data/spec/models/options_place_option_strategy_request_spec.rb +42 -42
  236. data/spec/models/options_position_currency_spec.rb +42 -42
  237. data/spec/models/options_position_spec.rb +66 -66
  238. data/spec/models/options_symbol_spec.rb +72 -72
  239. data/spec/models/order_strategy_execute_body_order_type_spec.rb +24 -24
  240. data/spec/models/order_strategy_execute_body_time_in_force_spec.rb +24 -24
  241. data/spec/models/order_type_spec.rb +24 -24
  242. data/spec/models/partner_data_spec.rb +96 -96
  243. data/spec/models/past_value_spec.rb +42 -42
  244. data/spec/models/performance_custom_spec.rb +138 -138
  245. data/spec/models/portfolio_group_info_spec.rb +90 -90
  246. data/spec/models/portfolio_group_position_spec.rb +42 -42
  247. data/spec/models/portfolio_group_settings_spec.rb +54 -54
  248. data/spec/models/portfolio_group_spec.rb +36 -36
  249. data/spec/models/position_spec.rb +60 -60
  250. data/spec/models/position_symbol_spec.rb +60 -60
  251. data/spec/models/redirect_tokenand_pin_spec.rb +36 -36
  252. data/spec/models/security_type_spec.rb +48 -48
  253. data/spec/models/session_event_spec.rb +66 -66
  254. data/spec/models/session_event_type_spec.rb +24 -24
  255. data/spec/models/snap_trade_api_disclaimer_accept_status_spec.rb +36 -36
  256. data/spec/models/snap_trade_holdings_account_account_id_spec.rb +78 -78
  257. data/spec/models/snap_trade_holdings_account_spec.rb +72 -72
  258. data/spec/models/snap_trade_holdings_total_value_spec.rb +36 -36
  259. data/spec/models/snap_trade_login_user_request_body_spec.rb +54 -54
  260. data/spec/models/snap_trade_register_user_request_body_spec.rb +36 -36
  261. data/spec/models/state_spec.rb +24 -24
  262. data/spec/models/status_spec.rb +42 -42
  263. data/spec/models/strategy_impact_legs_inner_spec.rb +66 -66
  264. data/spec/models/strategy_impact_spec.rb +90 -90
  265. data/spec/models/strategy_order_place_orders_inner_legs_inner_spec.rb +66 -66
  266. data/spec/models/strategy_order_place_orders_inner_spec.rb +282 -282
  267. data/spec/models/strategy_order_place_spec.rb +36 -36
  268. data/spec/models/strategy_order_record_order_type_spec.rb +24 -24
  269. data/spec/models/strategy_order_record_spec.rb +90 -90
  270. data/spec/models/strategy_order_record_status_spec.rb +24 -24
  271. data/spec/models/strategy_order_record_time_in_force_spec.rb +24 -24
  272. data/spec/models/strategy_quotes_greek_spec.rb +54 -54
  273. data/spec/models/strategy_quotes_spec.rb +60 -60
  274. data/spec/models/strategy_type_spec.rb +24 -24
  275. data/spec/models/sub_period_return_rate_spec.rb +42 -42
  276. data/spec/models/symbol_query_spec.rb +30 -30
  277. data/spec/models/symbol_spec.rb +66 -66
  278. data/spec/models/symbols_quotes_inner_spec.rb +60 -60
  279. data/spec/models/target_asset_spec.rb +60 -60
  280. data/spec/models/time_in_force_spec.rb +24 -24
  281. data/spec/models/trade_action_spec.rb +24 -24
  282. data/spec/models/trade_execution_status_action_spec.rb +24 -24
  283. data/spec/models/trade_execution_status_spec.rb +78 -78
  284. data/spec/models/trade_impact_spec.rb +54 -54
  285. data/spec/models/trade_spec.rb +72 -72
  286. data/spec/models/trading_cancel_user_account_order_request_spec.rb +30 -30
  287. data/spec/models/trading_place_oco_order_request_spec.rb +36 -36
  288. data/spec/models/transactions_status_spec.rb +36 -36
  289. data/spec/models/type_spec.rb +24 -24
  290. data/spec/models/underlying_symbol_spec.rb +66 -66
  291. data/spec/models/universal_activity_spec.rb +126 -126
  292. data/spec/models/universal_symbol_spec.rb +72 -72
  293. data/spec/models/universal_symbol_ticker_spec.rb +72 -72
  294. data/spec/models/us_exchange_spec.rb +78 -78
  295. data/spec/models/user_error_log_spec.rb +60 -60
  296. data/spec/models/user_i_dand_secret_spec.rb +36 -36
  297. data/spec/models/user_settings_spec.rb +84 -84
  298. data/spec/spec_helper.rb +6 -6
  299. metadata +116 -116
@@ -1,481 +1,481 @@
1
- =begin
2
- #SnapTrade
3
-
4
- #Connect brokerage accounts to your app for live positions and trading
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: api@snaptrade.com
8
-
9
- =end
10
-
11
- require 'cgi'
12
-
13
- module SnapTrade
14
- class AuthenticationApi
15
- attr_accessor :api_client
16
-
17
- def initialize(api_client = ApiClient.default)
18
- @api_client = api_client
19
- end
20
-
21
- # Delete SnapTrade user
22
- # @param user_id [String]
23
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
24
- def delete_snap_trade_user(user_id:, extra: {})
25
-
26
- data, _status_code, _headers = delete_snap_trade_user_with_http_info_impl(user_id, extra)
27
- data
28
- end
29
-
30
- # Delete SnapTrade user
31
- # @param user_id [String]
32
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
33
- def delete_snap_trade_user_with_http_info(user_id:, extra: {})
34
-
35
- delete_snap_trade_user_with_http_info_impl(user_id, extra)
36
- end
37
-
38
- # Delete SnapTrade user
39
- # @param user_id [String]
40
- # @param [Hash] opts the optional parameters
41
- # @return [DeleteUserResponse]
42
- def delete_snap_trade_user_impl(user_id, opts = {})
43
- data, _status_code, _headers = delete_snap_trade_user_with_http_info(user_id, opts)
44
- data
45
- end
46
-
47
- # Delete SnapTrade user
48
- # @param user_id [String]
49
- # @param [Hash] opts the optional parameters
50
- # @return [Array<(DeleteUserResponse, Integer, Hash)>] DeleteUserResponse data, response status code and response headers
51
- def delete_snap_trade_user_with_http_info_impl(user_id, opts = {})
52
- if @api_client.config.debugging
53
- @api_client.config.logger.debug 'Calling API: AuthenticationApi.delete_snap_trade_user ...'
54
- end
55
- # verify the required parameter 'user_id' is set
56
- if @api_client.config.client_side_validation && user_id.nil?
57
- fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.delete_snap_trade_user"
58
- end
59
- # resource path
60
- local_var_path = '/snapTrade/deleteUser'
61
-
62
- # query parameters
63
- query_params = opts[:query_params] || {}
64
- query_params[:'userId'] = user_id
65
-
66
- # header parameters
67
- header_params = opts[:header_params] || {}
68
- # HTTP header 'Accept' (if needed)
69
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
70
-
71
- # form parameters
72
- form_params = opts[:form_params] || {}
73
-
74
- # http body (model)
75
- post_body = opts[:debug_body]
76
-
77
- # return_type
78
- return_type = opts[:debug_return_type] || 'DeleteUserResponse'
79
-
80
- # auth_names
81
- auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
82
-
83
- new_options = opts.merge(
84
- :operation => :"AuthenticationApi.delete_snap_trade_user",
85
- :header_params => header_params,
86
- :query_params => query_params,
87
- :form_params => form_params,
88
- :body => post_body,
89
- :auth_names => auth_names,
90
- :return_type => return_type
91
- )
92
-
93
- data, status_code, headers, response = @api_client.call_api(:DELETE, local_var_path, new_options)
94
- if @api_client.config.debugging
95
- @api_client.config.logger.debug "API called: AuthenticationApi#delete_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
96
- end
97
- return data, status_code, headers, response
98
- end
99
-
100
-
101
- # Generate encrypted JWT token
102
- # @param user_id [String]
103
- # @param user_secret [String]
104
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
105
- def get_user_jwt(user_id:, user_secret:, extra: {})
106
-
107
- data, _status_code, _headers = get_user_jwt_with_http_info_impl(user_id, user_secret, extra)
108
- data
109
- end
110
-
111
- # Generate encrypted JWT token
112
- # @param user_id [String]
113
- # @param user_secret [String]
114
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
115
- def get_user_jwt_with_http_info(user_id:, user_secret:, extra: {})
116
-
117
- get_user_jwt_with_http_info_impl(user_id, user_secret, extra)
118
- end
119
-
120
- # Generate encrypted JWT token
121
- # @param user_id [String]
122
- # @param user_secret [String]
123
- # @param [Hash] opts the optional parameters
124
- # @return [EncryptedResponse]
125
- def get_user_jwt_impl(user_id, user_secret, opts = {})
126
- data, _status_code, _headers = get_user_jwt_with_http_info(user_id, user_secret, opts)
127
- data
128
- end
129
-
130
- # Generate encrypted JWT token
131
- # @param user_id [String]
132
- # @param user_secret [String]
133
- # @param [Hash] opts the optional parameters
134
- # @return [Array<(EncryptedResponse, Integer, Hash)>] EncryptedResponse data, response status code and response headers
135
- def get_user_jwt_with_http_info_impl(user_id, user_secret, opts = {})
136
- if @api_client.config.debugging
137
- @api_client.config.logger.debug 'Calling API: AuthenticationApi.get_user_jwt ...'
138
- end
139
- # verify the required parameter 'user_id' is set
140
- if @api_client.config.client_side_validation && user_id.nil?
141
- fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.get_user_jwt"
142
- end
143
- # verify the required parameter 'user_secret' is set
144
- if @api_client.config.client_side_validation && user_secret.nil?
145
- fail ArgumentError, "Missing the required parameter 'user_secret' when calling AuthenticationApi.get_user_jwt"
146
- end
147
- # resource path
148
- local_var_path = '/snapTrade/encryptedJWT'
149
-
150
- # query parameters
151
- query_params = opts[:query_params] || {}
152
- query_params[:'userId'] = user_id
153
- query_params[:'userSecret'] = user_secret
154
-
155
- # header parameters
156
- header_params = opts[:header_params] || {}
157
- # HTTP header 'Accept' (if needed)
158
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
159
-
160
- # form parameters
161
- form_params = opts[:form_params] || {}
162
-
163
- # http body (model)
164
- post_body = opts[:debug_body]
165
-
166
- # return_type
167
- return_type = opts[:debug_return_type] || 'EncryptedResponse'
168
-
169
- # auth_names
170
- auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
171
-
172
- new_options = opts.merge(
173
- :operation => :"AuthenticationApi.get_user_jwt",
174
- :header_params => header_params,
175
- :query_params => query_params,
176
- :form_params => form_params,
177
- :body => post_body,
178
- :auth_names => auth_names,
179
- :return_type => return_type
180
- )
181
-
182
- data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
183
- if @api_client.config.debugging
184
- @api_client.config.logger.debug "API called: AuthenticationApi#get_user_jwt\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
185
- end
186
- return data, status_code, headers, response
187
- end
188
-
189
-
190
- # List SnapTrade users
191
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
192
- def list_snap_trade_users(extra: {})
193
-
194
- data, _status_code, _headers = list_snap_trade_users_with_http_info_impl(extra)
195
- data
196
- end
197
-
198
- # List SnapTrade users
199
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
200
- def list_snap_trade_users_with_http_info(extra: {})
201
-
202
- list_snap_trade_users_with_http_info_impl(extra)
203
- end
204
-
205
- # List SnapTrade users
206
- # @param [Hash] opts the optional parameters
207
- # @return [Array<String>]
208
- def list_snap_trade_users_impl(opts = {})
209
- data, _status_code, _headers = list_snap_trade_users_with_http_info(opts)
210
- data
211
- end
212
-
213
- # List SnapTrade users
214
- # @param [Hash] opts the optional parameters
215
- # @return [Array<(Array<String>, Integer, Hash)>] Array<String> data, response status code and response headers
216
- def list_snap_trade_users_with_http_info_impl(opts = {})
217
- if @api_client.config.debugging
218
- @api_client.config.logger.debug 'Calling API: AuthenticationApi.list_snap_trade_users ...'
219
- end
220
- # resource path
221
- local_var_path = '/snapTrade/listUsers'
222
-
223
- # query parameters
224
- query_params = opts[:query_params] || {}
225
-
226
- # header parameters
227
- header_params = opts[:header_params] || {}
228
- # HTTP header 'Accept' (if needed)
229
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
230
-
231
- # form parameters
232
- form_params = opts[:form_params] || {}
233
-
234
- # http body (model)
235
- post_body = opts[:debug_body]
236
-
237
- # return_type
238
- return_type = opts[:debug_return_type] || 'Array<String>'
239
-
240
- # auth_names
241
- auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
242
-
243
- new_options = opts.merge(
244
- :operation => :"AuthenticationApi.list_snap_trade_users",
245
- :header_params => header_params,
246
- :query_params => query_params,
247
- :form_params => form_params,
248
- :body => post_body,
249
- :auth_names => auth_names,
250
- :return_type => return_type
251
- )
252
-
253
- data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
254
- if @api_client.config.debugging
255
- @api_client.config.logger.debug "API called: AuthenticationApi#list_snap_trade_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
256
- end
257
- return data, status_code, headers, response
258
- end
259
-
260
-
261
- # Login user & generate connection link
262
- # @param user_id [String]
263
- # @param user_secret [String]
264
- # @param broker [String]
265
- # @param immediate_redirect [Boolean]
266
- # @param custom_redirect [String]
267
- # @param reconnect [String]
268
- # @param connection_type [ConnectionType]
269
- # @param body [SnapTradeLoginUserRequestBody]
270
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
271
- def login_snap_trade_user(user_id:, user_secret:, broker: SENTINEL, immediate_redirect: SENTINEL, custom_redirect: SENTINEL, reconnect: SENTINEL, connection_type: SENTINEL, extra: {})
272
- _body = {}
273
- _body[:broker] = broker if broker != SENTINEL
274
- _body[:immediateRedirect] = immediate_redirect if immediate_redirect != SENTINEL
275
- _body[:customRedirect] = custom_redirect if custom_redirect != SENTINEL
276
- _body[:reconnect] = reconnect if reconnect != SENTINEL
277
- _body[:connectionType] = connection_type if connection_type != SENTINEL
278
- extra[:snap_trade_login_user_request_body] = _body if !_body.empty?
279
-
280
- data, _status_code, _headers = login_snap_trade_user_with_http_info_impl(user_id, user_secret, extra)
281
- data
282
- end
283
-
284
- # Login user & generate connection link
285
- # @param user_id [String]
286
- # @param user_secret [String]
287
- # @param broker [String]
288
- # @param immediate_redirect [Boolean]
289
- # @param custom_redirect [String]
290
- # @param reconnect [String]
291
- # @param connection_type [ConnectionType]
292
- # @param body [SnapTradeLoginUserRequestBody]
293
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
294
- def login_snap_trade_user_with_http_info(user_id:, user_secret:, broker: SENTINEL, immediate_redirect: SENTINEL, custom_redirect: SENTINEL, reconnect: SENTINEL, connection_type: SENTINEL, extra: {})
295
- _body = {}
296
- _body[:broker] = broker if broker != SENTINEL
297
- _body[:immediateRedirect] = immediate_redirect if immediate_redirect != SENTINEL
298
- _body[:customRedirect] = custom_redirect if custom_redirect != SENTINEL
299
- _body[:reconnect] = reconnect if reconnect != SENTINEL
300
- _body[:connectionType] = connection_type if connection_type != SENTINEL
301
- extra[:snap_trade_login_user_request_body] = _body if !_body.empty?
302
-
303
- login_snap_trade_user_with_http_info_impl(user_id, user_secret, extra)
304
- end
305
-
306
- # Login user & generate connection link
307
- # @param user_id [String]
308
- # @param user_secret [String]
309
- # @param [Hash] opts the optional parameters
310
- # @option opts [SnapTradeLoginUserRequestBody] :snap_trade_login_user_request_body
311
- # @return [AuthenticationLoginSnapTradeUser200Response]
312
- def login_snap_trade_user_impl(user_id, user_secret, opts = {})
313
- data, _status_code, _headers = login_snap_trade_user_with_http_info(user_id, user_secret, opts)
314
- data
315
- end
316
-
317
- # Login user &amp; generate connection link
318
- # @param user_id [String]
319
- # @param user_secret [String]
320
- # @param [Hash] opts the optional parameters
321
- # @option opts [SnapTradeLoginUserRequestBody] :snap_trade_login_user_request_body
322
- # @return [Array<(AuthenticationLoginSnapTradeUser200Response, Integer, Hash)>] AuthenticationLoginSnapTradeUser200Response data, response status code and response headers
323
- def login_snap_trade_user_with_http_info_impl(user_id, user_secret, opts = {})
324
- if @api_client.config.debugging
325
- @api_client.config.logger.debug 'Calling API: AuthenticationApi.login_snap_trade_user ...'
326
- end
327
- # verify the required parameter 'user_id' is set
328
- if @api_client.config.client_side_validation && user_id.nil?
329
- fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.login_snap_trade_user"
330
- end
331
- # verify the required parameter 'user_secret' is set
332
- if @api_client.config.client_side_validation && user_secret.nil?
333
- fail ArgumentError, "Missing the required parameter 'user_secret' when calling AuthenticationApi.login_snap_trade_user"
334
- end
335
- # resource path
336
- local_var_path = '/snapTrade/login'
337
-
338
- # query parameters
339
- query_params = opts[:query_params] || {}
340
- query_params[:'userId'] = user_id
341
- query_params[:'userSecret'] = user_secret
342
-
343
- # header parameters
344
- header_params = opts[:header_params] || {}
345
- # HTTP header 'Accept' (if needed)
346
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
347
- # HTTP header 'Content-Type'
348
- content_type = @api_client.select_header_content_type(['application/json'])
349
- if !content_type.nil?
350
- header_params['Content-Type'] = content_type
351
- end
352
-
353
- # form parameters
354
- form_params = opts[:form_params] || {}
355
-
356
- # http body (model)
357
- post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'snap_trade_login_user_request_body'])
358
-
359
- # return_type
360
- return_type = opts[:debug_return_type] || 'AuthenticationLoginSnapTradeUser200Response'
361
-
362
- # auth_names
363
- auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
364
-
365
- new_options = opts.merge(
366
- :operation => :"AuthenticationApi.login_snap_trade_user",
367
- :header_params => header_params,
368
- :query_params => query_params,
369
- :form_params => form_params,
370
- :body => post_body,
371
- :auth_names => auth_names,
372
- :return_type => return_type
373
- )
374
-
375
- data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
376
- if @api_client.config.debugging
377
- @api_client.config.logger.debug "API called: AuthenticationApi#login_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
378
- end
379
- return data, status_code, headers, response
380
- end
381
-
382
-
383
- # Create SnapTrade user
384
- # @param user_id [String] SnapTrade User ID. Provided by SnapTrade Partner. Can be any string, as long as it&#39;s unique to a user
385
- # @param rsa_public_key [String] Open SSH RSA public key
386
- # @param body [SnapTradeRegisterUserRequestBody]
387
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
388
- def register_snap_trade_user(user_id: SENTINEL, rsa_public_key: SENTINEL, extra: {})
389
- _body = {}
390
- _body[:userId] = user_id if user_id != SENTINEL
391
- _body[:rsaPublicKey] = rsa_public_key if rsa_public_key != SENTINEL
392
- snap_trade_register_user_request_body = _body
393
-
394
- data, _status_code, _headers = register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, extra)
395
- data
396
- end
397
-
398
- # Create SnapTrade user
399
- # @param user_id [String] SnapTrade User ID. Provided by SnapTrade Partner. Can be any string, as long as it&#39;s unique to a user
400
- # @param rsa_public_key [String] Open SSH RSA public key
401
- # @param body [SnapTradeRegisterUserRequestBody]
402
- # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
403
- def register_snap_trade_user_with_http_info(user_id: SENTINEL, rsa_public_key: SENTINEL, extra: {})
404
- _body = {}
405
- _body[:userId] = user_id if user_id != SENTINEL
406
- _body[:rsaPublicKey] = rsa_public_key if rsa_public_key != SENTINEL
407
- snap_trade_register_user_request_body = _body
408
-
409
- register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, extra)
410
- end
411
-
412
- # Create SnapTrade user
413
- # @param snap_trade_register_user_request_body [SnapTradeRegisterUserRequestBody]
414
- # @param [Hash] opts the optional parameters
415
- # @return [UserIDandSecret]
416
- def register_snap_trade_user_impl(snap_trade_register_user_request_body, opts = {})
417
- data, _status_code, _headers = register_snap_trade_user_with_http_info(snap_trade_register_user_request_body, opts)
418
- data
419
- end
420
-
421
- # Create SnapTrade user
422
- # @param snap_trade_register_user_request_body [SnapTradeRegisterUserRequestBody]
423
- # @param [Hash] opts the optional parameters
424
- # @return [Array<(UserIDandSecret, Integer, Hash)>] UserIDandSecret data, response status code and response headers
425
- def register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, opts = {})
426
- if @api_client.config.debugging
427
- @api_client.config.logger.debug 'Calling API: AuthenticationApi.register_snap_trade_user ...'
428
- end
429
- # verify the required parameter 'snap_trade_register_user_request_body' is set
430
- if @api_client.config.client_side_validation && snap_trade_register_user_request_body.nil?
431
- fail ArgumentError, "Missing the required parameter 'snap_trade_register_user_request_body' when calling AuthenticationApi.register_snap_trade_user"
432
- end
433
- # resource path
434
- local_var_path = '/snapTrade/registerUser'
435
-
436
- # query parameters
437
- query_params = opts[:query_params] || {}
438
-
439
- # header parameters
440
- header_params = opts[:header_params] || {}
441
- # HTTP header 'Accept' (if needed)
442
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
443
- # HTTP header 'Content-Type'
444
- content_type = @api_client.select_header_content_type(['application/json'])
445
- if !content_type.nil?
446
- header_params['Content-Type'] = content_type
447
- end
448
-
449
- # form parameters
450
- form_params = opts[:form_params] || {}
451
-
452
- # http body (model)
453
- post_body = opts[:debug_body] || @api_client.object_to_http_body(snap_trade_register_user_request_body)
454
-
455
- # return_type
456
- return_type = opts[:debug_return_type] || 'UserIDandSecret'
457
-
458
- # auth_names
459
- auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
460
-
461
- new_options = opts.merge(
462
- :operation => :"AuthenticationApi.register_snap_trade_user",
463
- :header_params => header_params,
464
- :query_params => query_params,
465
- :form_params => form_params,
466
- :body => post_body,
467
- :auth_names => auth_names,
468
- :return_type => return_type
469
- )
470
-
471
- data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
472
- if @api_client.config.debugging
473
- @api_client.config.logger.debug "API called: AuthenticationApi#register_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
474
- end
475
- return data, status_code, headers, response
476
- end
477
- end
478
-
479
- # top-level client access to avoid having the user to insantiate their own API instances
480
- Authentication = AuthenticationApi::new
481
- end
1
+ =begin
2
+ #SnapTrade
3
+
4
+ #Connect brokerage accounts to your app for live positions and trading
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: api@snaptrade.com
8
+
9
+ =end
10
+
11
+ require 'cgi'
12
+
13
+ module SnapTrade
14
+ class AuthenticationApi
15
+ attr_accessor :api_client
16
+
17
+ def initialize(api_client = ApiClient.default)
18
+ @api_client = api_client
19
+ end
20
+
21
+ # Delete SnapTrade user
22
+ # @param user_id [String]
23
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
24
+ def delete_snap_trade_user(user_id:, extra: {})
25
+
26
+ data, _status_code, _headers = delete_snap_trade_user_with_http_info_impl(user_id, extra)
27
+ data
28
+ end
29
+
30
+ # Delete SnapTrade user
31
+ # @param user_id [String]
32
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
33
+ def delete_snap_trade_user_with_http_info(user_id:, extra: {})
34
+
35
+ delete_snap_trade_user_with_http_info_impl(user_id, extra)
36
+ end
37
+
38
+ # Delete SnapTrade user
39
+ # @param user_id [String]
40
+ # @param [Hash] opts the optional parameters
41
+ # @return [DeleteUserResponse]
42
+ def delete_snap_trade_user_impl(user_id, opts = {})
43
+ data, _status_code, _headers = delete_snap_trade_user_with_http_info(user_id, opts)
44
+ data
45
+ end
46
+
47
+ # Delete SnapTrade user
48
+ # @param user_id [String]
49
+ # @param [Hash] opts the optional parameters
50
+ # @return [Array<(DeleteUserResponse, Integer, Hash)>] DeleteUserResponse data, response status code and response headers
51
+ def delete_snap_trade_user_with_http_info_impl(user_id, opts = {})
52
+ if @api_client.config.debugging
53
+ @api_client.config.logger.debug 'Calling API: AuthenticationApi.delete_snap_trade_user ...'
54
+ end
55
+ # verify the required parameter 'user_id' is set
56
+ if @api_client.config.client_side_validation && user_id.nil?
57
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.delete_snap_trade_user"
58
+ end
59
+ # resource path
60
+ local_var_path = '/snapTrade/deleteUser'
61
+
62
+ # query parameters
63
+ query_params = opts[:query_params] || {}
64
+ query_params[:'userId'] = user_id
65
+
66
+ # header parameters
67
+ header_params = opts[:header_params] || {}
68
+ # HTTP header 'Accept' (if needed)
69
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
70
+
71
+ # form parameters
72
+ form_params = opts[:form_params] || {}
73
+
74
+ # http body (model)
75
+ post_body = opts[:debug_body]
76
+
77
+ # return_type
78
+ return_type = opts[:debug_return_type] || 'DeleteUserResponse'
79
+
80
+ # auth_names
81
+ auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
82
+
83
+ new_options = opts.merge(
84
+ :operation => :"AuthenticationApi.delete_snap_trade_user",
85
+ :header_params => header_params,
86
+ :query_params => query_params,
87
+ :form_params => form_params,
88
+ :body => post_body,
89
+ :auth_names => auth_names,
90
+ :return_type => return_type
91
+ )
92
+
93
+ data, status_code, headers, response = @api_client.call_api(:DELETE, local_var_path, new_options)
94
+ if @api_client.config.debugging
95
+ @api_client.config.logger.debug "API called: AuthenticationApi#delete_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
96
+ end
97
+ return data, status_code, headers, response
98
+ end
99
+
100
+
101
+ # Generate encrypted JWT token
102
+ # @param user_id [String]
103
+ # @param user_secret [String]
104
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
105
+ def get_user_jwt(user_id:, user_secret:, extra: {})
106
+
107
+ data, _status_code, _headers = get_user_jwt_with_http_info_impl(user_id, user_secret, extra)
108
+ data
109
+ end
110
+
111
+ # Generate encrypted JWT token
112
+ # @param user_id [String]
113
+ # @param user_secret [String]
114
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
115
+ def get_user_jwt_with_http_info(user_id:, user_secret:, extra: {})
116
+
117
+ get_user_jwt_with_http_info_impl(user_id, user_secret, extra)
118
+ end
119
+
120
+ # Generate encrypted JWT token
121
+ # @param user_id [String]
122
+ # @param user_secret [String]
123
+ # @param [Hash] opts the optional parameters
124
+ # @return [EncryptedResponse]
125
+ def get_user_jwt_impl(user_id, user_secret, opts = {})
126
+ data, _status_code, _headers = get_user_jwt_with_http_info(user_id, user_secret, opts)
127
+ data
128
+ end
129
+
130
+ # Generate encrypted JWT token
131
+ # @param user_id [String]
132
+ # @param user_secret [String]
133
+ # @param [Hash] opts the optional parameters
134
+ # @return [Array<(EncryptedResponse, Integer, Hash)>] EncryptedResponse data, response status code and response headers
135
+ def get_user_jwt_with_http_info_impl(user_id, user_secret, opts = {})
136
+ if @api_client.config.debugging
137
+ @api_client.config.logger.debug 'Calling API: AuthenticationApi.get_user_jwt ...'
138
+ end
139
+ # verify the required parameter 'user_id' is set
140
+ if @api_client.config.client_side_validation && user_id.nil?
141
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.get_user_jwt"
142
+ end
143
+ # verify the required parameter 'user_secret' is set
144
+ if @api_client.config.client_side_validation && user_secret.nil?
145
+ fail ArgumentError, "Missing the required parameter 'user_secret' when calling AuthenticationApi.get_user_jwt"
146
+ end
147
+ # resource path
148
+ local_var_path = '/snapTrade/encryptedJWT'
149
+
150
+ # query parameters
151
+ query_params = opts[:query_params] || {}
152
+ query_params[:'userId'] = user_id
153
+ query_params[:'userSecret'] = user_secret
154
+
155
+ # header parameters
156
+ header_params = opts[:header_params] || {}
157
+ # HTTP header 'Accept' (if needed)
158
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
159
+
160
+ # form parameters
161
+ form_params = opts[:form_params] || {}
162
+
163
+ # http body (model)
164
+ post_body = opts[:debug_body]
165
+
166
+ # return_type
167
+ return_type = opts[:debug_return_type] || 'EncryptedResponse'
168
+
169
+ # auth_names
170
+ auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
171
+
172
+ new_options = opts.merge(
173
+ :operation => :"AuthenticationApi.get_user_jwt",
174
+ :header_params => header_params,
175
+ :query_params => query_params,
176
+ :form_params => form_params,
177
+ :body => post_body,
178
+ :auth_names => auth_names,
179
+ :return_type => return_type
180
+ )
181
+
182
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
183
+ if @api_client.config.debugging
184
+ @api_client.config.logger.debug "API called: AuthenticationApi#get_user_jwt\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
185
+ end
186
+ return data, status_code, headers, response
187
+ end
188
+
189
+
190
+ # List SnapTrade users
191
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
192
+ def list_snap_trade_users(extra: {})
193
+
194
+ data, _status_code, _headers = list_snap_trade_users_with_http_info_impl(extra)
195
+ data
196
+ end
197
+
198
+ # List SnapTrade users
199
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
200
+ def list_snap_trade_users_with_http_info(extra: {})
201
+
202
+ list_snap_trade_users_with_http_info_impl(extra)
203
+ end
204
+
205
+ # List SnapTrade users
206
+ # @param [Hash] opts the optional parameters
207
+ # @return [Array<String>]
208
+ def list_snap_trade_users_impl(opts = {})
209
+ data, _status_code, _headers = list_snap_trade_users_with_http_info(opts)
210
+ data
211
+ end
212
+
213
+ # List SnapTrade users
214
+ # @param [Hash] opts the optional parameters
215
+ # @return [Array<(Array<String>, Integer, Hash)>] Array<String> data, response status code and response headers
216
+ def list_snap_trade_users_with_http_info_impl(opts = {})
217
+ if @api_client.config.debugging
218
+ @api_client.config.logger.debug 'Calling API: AuthenticationApi.list_snap_trade_users ...'
219
+ end
220
+ # resource path
221
+ local_var_path = '/snapTrade/listUsers'
222
+
223
+ # query parameters
224
+ query_params = opts[:query_params] || {}
225
+
226
+ # header parameters
227
+ header_params = opts[:header_params] || {}
228
+ # HTTP header 'Accept' (if needed)
229
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
230
+
231
+ # form parameters
232
+ form_params = opts[:form_params] || {}
233
+
234
+ # http body (model)
235
+ post_body = opts[:debug_body]
236
+
237
+ # return_type
238
+ return_type = opts[:debug_return_type] || 'Array<String>'
239
+
240
+ # auth_names
241
+ auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
242
+
243
+ new_options = opts.merge(
244
+ :operation => :"AuthenticationApi.list_snap_trade_users",
245
+ :header_params => header_params,
246
+ :query_params => query_params,
247
+ :form_params => form_params,
248
+ :body => post_body,
249
+ :auth_names => auth_names,
250
+ :return_type => return_type
251
+ )
252
+
253
+ data, status_code, headers, response = @api_client.call_api(:GET, local_var_path, new_options)
254
+ if @api_client.config.debugging
255
+ @api_client.config.logger.debug "API called: AuthenticationApi#list_snap_trade_users\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
256
+ end
257
+ return data, status_code, headers, response
258
+ end
259
+
260
+
261
+ # Login user & generate connection link
262
+ # @param user_id [String]
263
+ # @param user_secret [String]
264
+ # @param broker [String]
265
+ # @param immediate_redirect [Boolean]
266
+ # @param custom_redirect [String]
267
+ # @param reconnect [String]
268
+ # @param connection_type [ConnectionType]
269
+ # @param body [SnapTradeLoginUserRequestBody]
270
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
271
+ def login_snap_trade_user(user_id:, user_secret:, broker: SENTINEL, immediate_redirect: SENTINEL, custom_redirect: SENTINEL, reconnect: SENTINEL, connection_type: SENTINEL, extra: {})
272
+ _body = {}
273
+ _body[:broker] = broker if broker != SENTINEL
274
+ _body[:immediateRedirect] = immediate_redirect if immediate_redirect != SENTINEL
275
+ _body[:customRedirect] = custom_redirect if custom_redirect != SENTINEL
276
+ _body[:reconnect] = reconnect if reconnect != SENTINEL
277
+ _body[:connectionType] = connection_type if connection_type != SENTINEL
278
+ extra[:snap_trade_login_user_request_body] = _body if !_body.empty?
279
+
280
+ data, _status_code, _headers = login_snap_trade_user_with_http_info_impl(user_id, user_secret, extra)
281
+ data
282
+ end
283
+
284
+ # Login user & generate connection link
285
+ # @param user_id [String]
286
+ # @param user_secret [String]
287
+ # @param broker [String]
288
+ # @param immediate_redirect [Boolean]
289
+ # @param custom_redirect [String]
290
+ # @param reconnect [String]
291
+ # @param connection_type [ConnectionType]
292
+ # @param body [SnapTradeLoginUserRequestBody]
293
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
294
+ def login_snap_trade_user_with_http_info(user_id:, user_secret:, broker: SENTINEL, immediate_redirect: SENTINEL, custom_redirect: SENTINEL, reconnect: SENTINEL, connection_type: SENTINEL, extra: {})
295
+ _body = {}
296
+ _body[:broker] = broker if broker != SENTINEL
297
+ _body[:immediateRedirect] = immediate_redirect if immediate_redirect != SENTINEL
298
+ _body[:customRedirect] = custom_redirect if custom_redirect != SENTINEL
299
+ _body[:reconnect] = reconnect if reconnect != SENTINEL
300
+ _body[:connectionType] = connection_type if connection_type != SENTINEL
301
+ extra[:snap_trade_login_user_request_body] = _body if !_body.empty?
302
+
303
+ login_snap_trade_user_with_http_info_impl(user_id, user_secret, extra)
304
+ end
305
+
306
+ # Login user & generate connection link
307
+ # @param user_id [String]
308
+ # @param user_secret [String]
309
+ # @param [Hash] opts the optional parameters
310
+ # @option opts [SnapTradeLoginUserRequestBody] :snap_trade_login_user_request_body
311
+ # @return [AuthenticationLoginSnapTradeUser200Response]
312
+ def login_snap_trade_user_impl(user_id, user_secret, opts = {})
313
+ data, _status_code, _headers = login_snap_trade_user_with_http_info(user_id, user_secret, opts)
314
+ data
315
+ end
316
+
317
+ # Login user &amp; generate connection link
318
+ # @param user_id [String]
319
+ # @param user_secret [String]
320
+ # @param [Hash] opts the optional parameters
321
+ # @option opts [SnapTradeLoginUserRequestBody] :snap_trade_login_user_request_body
322
+ # @return [Array<(AuthenticationLoginSnapTradeUser200Response, Integer, Hash)>] AuthenticationLoginSnapTradeUser200Response data, response status code and response headers
323
+ def login_snap_trade_user_with_http_info_impl(user_id, user_secret, opts = {})
324
+ if @api_client.config.debugging
325
+ @api_client.config.logger.debug 'Calling API: AuthenticationApi.login_snap_trade_user ...'
326
+ end
327
+ # verify the required parameter 'user_id' is set
328
+ if @api_client.config.client_side_validation && user_id.nil?
329
+ fail ArgumentError, "Missing the required parameter 'user_id' when calling AuthenticationApi.login_snap_trade_user"
330
+ end
331
+ # verify the required parameter 'user_secret' is set
332
+ if @api_client.config.client_side_validation && user_secret.nil?
333
+ fail ArgumentError, "Missing the required parameter 'user_secret' when calling AuthenticationApi.login_snap_trade_user"
334
+ end
335
+ # resource path
336
+ local_var_path = '/snapTrade/login'
337
+
338
+ # query parameters
339
+ query_params = opts[:query_params] || {}
340
+ query_params[:'userId'] = user_id
341
+ query_params[:'userSecret'] = user_secret
342
+
343
+ # header parameters
344
+ header_params = opts[:header_params] || {}
345
+ # HTTP header 'Accept' (if needed)
346
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
347
+ # HTTP header 'Content-Type'
348
+ content_type = @api_client.select_header_content_type(['application/json'])
349
+ if !content_type.nil?
350
+ header_params['Content-Type'] = content_type
351
+ end
352
+
353
+ # form parameters
354
+ form_params = opts[:form_params] || {}
355
+
356
+ # http body (model)
357
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'snap_trade_login_user_request_body'])
358
+
359
+ # return_type
360
+ return_type = opts[:debug_return_type] || 'AuthenticationLoginSnapTradeUser200Response'
361
+
362
+ # auth_names
363
+ auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
364
+
365
+ new_options = opts.merge(
366
+ :operation => :"AuthenticationApi.login_snap_trade_user",
367
+ :header_params => header_params,
368
+ :query_params => query_params,
369
+ :form_params => form_params,
370
+ :body => post_body,
371
+ :auth_names => auth_names,
372
+ :return_type => return_type
373
+ )
374
+
375
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
376
+ if @api_client.config.debugging
377
+ @api_client.config.logger.debug "API called: AuthenticationApi#login_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
378
+ end
379
+ return data, status_code, headers, response
380
+ end
381
+
382
+
383
+ # Create SnapTrade user
384
+ # @param user_id [String] SnapTrade User ID. Provided by SnapTrade Partner. Can be any string, as long as it&#39;s unique to a user
385
+ # @param rsa_public_key [String] Open SSH RSA public key
386
+ # @param body [SnapTradeRegisterUserRequestBody]
387
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
388
+ def register_snap_trade_user(user_id: SENTINEL, rsa_public_key: SENTINEL, extra: {})
389
+ _body = {}
390
+ _body[:userId] = user_id if user_id != SENTINEL
391
+ _body[:rsaPublicKey] = rsa_public_key if rsa_public_key != SENTINEL
392
+ snap_trade_register_user_request_body = _body
393
+
394
+ data, _status_code, _headers = register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, extra)
395
+ data
396
+ end
397
+
398
+ # Create SnapTrade user
399
+ # @param user_id [String] SnapTrade User ID. Provided by SnapTrade Partner. Can be any string, as long as it&#39;s unique to a user
400
+ # @param rsa_public_key [String] Open SSH RSA public key
401
+ # @param body [SnapTradeRegisterUserRequestBody]
402
+ # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
403
+ def register_snap_trade_user_with_http_info(user_id: SENTINEL, rsa_public_key: SENTINEL, extra: {})
404
+ _body = {}
405
+ _body[:userId] = user_id if user_id != SENTINEL
406
+ _body[:rsaPublicKey] = rsa_public_key if rsa_public_key != SENTINEL
407
+ snap_trade_register_user_request_body = _body
408
+
409
+ register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, extra)
410
+ end
411
+
412
+ # Create SnapTrade user
413
+ # @param snap_trade_register_user_request_body [SnapTradeRegisterUserRequestBody]
414
+ # @param [Hash] opts the optional parameters
415
+ # @return [UserIDandSecret]
416
+ def register_snap_trade_user_impl(snap_trade_register_user_request_body, opts = {})
417
+ data, _status_code, _headers = register_snap_trade_user_with_http_info(snap_trade_register_user_request_body, opts)
418
+ data
419
+ end
420
+
421
+ # Create SnapTrade user
422
+ # @param snap_trade_register_user_request_body [SnapTradeRegisterUserRequestBody]
423
+ # @param [Hash] opts the optional parameters
424
+ # @return [Array<(UserIDandSecret, Integer, Hash)>] UserIDandSecret data, response status code and response headers
425
+ def register_snap_trade_user_with_http_info_impl(snap_trade_register_user_request_body, opts = {})
426
+ if @api_client.config.debugging
427
+ @api_client.config.logger.debug 'Calling API: AuthenticationApi.register_snap_trade_user ...'
428
+ end
429
+ # verify the required parameter 'snap_trade_register_user_request_body' is set
430
+ if @api_client.config.client_side_validation && snap_trade_register_user_request_body.nil?
431
+ fail ArgumentError, "Missing the required parameter 'snap_trade_register_user_request_body' when calling AuthenticationApi.register_snap_trade_user"
432
+ end
433
+ # resource path
434
+ local_var_path = '/snapTrade/registerUser'
435
+
436
+ # query parameters
437
+ query_params = opts[:query_params] || {}
438
+
439
+ # header parameters
440
+ header_params = opts[:header_params] || {}
441
+ # HTTP header 'Accept' (if needed)
442
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
443
+ # HTTP header 'Content-Type'
444
+ content_type = @api_client.select_header_content_type(['application/json'])
445
+ if !content_type.nil?
446
+ header_params['Content-Type'] = content_type
447
+ end
448
+
449
+ # form parameters
450
+ form_params = opts[:form_params] || {}
451
+
452
+ # http body (model)
453
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(snap_trade_register_user_request_body)
454
+
455
+ # return_type
456
+ return_type = opts[:debug_return_type] || 'UserIDandSecret'
457
+
458
+ # auth_names
459
+ auth_names = opts[:debug_auth_names] || ['PartnerClientId', 'PartnerSignature', 'PartnerTimestamp']
460
+
461
+ new_options = opts.merge(
462
+ :operation => :"AuthenticationApi.register_snap_trade_user",
463
+ :header_params => header_params,
464
+ :query_params => query_params,
465
+ :form_params => form_params,
466
+ :body => post_body,
467
+ :auth_names => auth_names,
468
+ :return_type => return_type
469
+ )
470
+
471
+ data, status_code, headers, response = @api_client.call_api(:POST, local_var_path, new_options)
472
+ if @api_client.config.debugging
473
+ @api_client.config.logger.debug "API called: AuthenticationApi#register_snap_trade_user\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
474
+ end
475
+ return data, status_code, headers, response
476
+ end
477
+ end
478
+
479
+ # top-level client access to avoid having the user to insantiate their own API instances
480
+ Authentication = AuthenticationApi::new
481
+ end