snaptrade-python-sdk 10.9.0__py3-none-any.whl → 11.0.152__py3-none-any.whl

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 (920) hide show
  1. snaptrade_client/__init__.py +2 -2
  2. snaptrade_client/api_client.py +348 -97
  3. snaptrade_client/api_response.py +22 -2
  4. snaptrade_client/apis/path_to_api.py +102 -132
  5. snaptrade_client/apis/paths/accounts_account_id_activities.py +7 -0
  6. snaptrade_client/apis/paths/accounts_account_id_orders_details.py +7 -0
  7. snaptrade_client/apis/paths/accounts_account_id_orders_v2.py +7 -0
  8. snaptrade_client/apis/paths/accounts_account_id_recent_orders.py +7 -0
  9. snaptrade_client/apis/paths/accounts_account_id_recent_orders_v2.py +7 -0
  10. snaptrade_client/apis/paths/accounts_account_id_return_rates.py +7 -0
  11. snaptrade_client/apis/paths/accounts_account_id_trading_bracket.py +7 -0
  12. snaptrade_client/apis/paths/accounts_account_id_trading_cancel.py +7 -0
  13. snaptrade_client/apis/paths/accounts_account_id_trading_crypto.py +7 -0
  14. snaptrade_client/apis/paths/accounts_account_id_trading_crypto_preview.py +7 -0
  15. snaptrade_client/apis/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs.py +7 -0
  16. snaptrade_client/apis/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs_instrument_symbol_quote.py +7 -0
  17. snaptrade_client/apis/paths/accounts_account_id_trading_options.py +7 -0
  18. snaptrade_client/apis/paths/accounts_account_id_trading_replace.py +7 -0
  19. snaptrade_client/apis/paths/authorizations_authorization_id_disable.py +7 -0
  20. snaptrade_client/apis/paths/authorizations_authorization_id_refresh.py +7 -0
  21. snaptrade_client/apis/paths/authorizations_authorization_id_return_rates.py +7 -0
  22. snaptrade_client/apis/paths/brokerages_slug_instruments.py +7 -0
  23. snaptrade_client/apis/paths/snap_trade_reset_user_secret.py +7 -0
  24. snaptrade_client/apis/paths/symbols_query.py +7 -0
  25. snaptrade_client/apis/tag_to_api.py +6 -12
  26. snaptrade_client/apis/tags/__init__.py +2 -4
  27. snaptrade_client/apis/tags/account_information_api.py +2 -32
  28. snaptrade_client/apis/tags/account_information_api_generated.py +43 -0
  29. snaptrade_client/apis/tags/api_status_api.py +2 -18
  30. snaptrade_client/apis/tags/{api_disclaimer_api.py → api_status_api_generated.py} +4 -5
  31. snaptrade_client/apis/tags/authentication_api.py +2 -26
  32. snaptrade_client/apis/tags/authentication_api_generated.py +29 -0
  33. snaptrade_client/apis/tags/connections_api.py +2 -24
  34. snaptrade_client/apis/tags/connections_api_generated.py +33 -0
  35. snaptrade_client/apis/tags/experimental_endpoints_api.py +6 -0
  36. snaptrade_client/apis/tags/experimental_endpoints_api_generated.py +23 -0
  37. snaptrade_client/apis/tags/options_api.py +2 -26
  38. snaptrade_client/apis/tags/options_api_generated.py +23 -0
  39. snaptrade_client/apis/tags/reference_data_api.py +2 -38
  40. snaptrade_client/apis/tags/reference_data_api_generated.py +43 -0
  41. snaptrade_client/apis/tags/trading_api.py +2 -36
  42. snaptrade_client/apis/tags/trading_api_generated.py +45 -0
  43. snaptrade_client/apis/tags/transactions_and_reporting_api.py +2 -20
  44. snaptrade_client/apis/tags/{error_logs_api.py → transactions_and_reporting_api_generated.py} +6 -5
  45. snaptrade_client/client.py +21 -18
  46. snaptrade_client/client.pyi +48 -0
  47. snaptrade_client/client_custom.py +29 -0
  48. snaptrade_client/configuration.py +40 -40
  49. snaptrade_client/exceptions.py +65 -50
  50. snaptrade_client/model/account.py +209 -71
  51. snaptrade_client/model/account.pyi +209 -71
  52. snaptrade_client/model/account_balance.py +140 -0
  53. snaptrade_client/model/account_balance.pyi +140 -0
  54. snaptrade_client/model/{target_asset_list.py → account_cash_restrictions.py} +7 -12
  55. snaptrade_client/model/{target_asset_list.pyi → account_cash_restrictions.pyi} +7 -12
  56. snaptrade_client/model/account_holdings.py +17 -15
  57. snaptrade_client/model/account_holdings.pyi +17 -15
  58. snaptrade_client/model/account_holdings_account.py +99 -23
  59. snaptrade_client/model/account_holdings_account.pyi +99 -23
  60. snaptrade_client/model/{signature.py → account_id.py} +2 -2
  61. snaptrade_client/model/{signature.pyi → account_id.pyi} +2 -2
  62. snaptrade_client/model/account_ids.py +1 -1
  63. snaptrade_client/model/account_ids.pyi +1 -1
  64. snaptrade_client/model/account_meta.py +58 -0
  65. snaptrade_client/model/account_meta.pyi +58 -0
  66. snaptrade_client/model/account_order_record.py +455 -64
  67. snaptrade_client/model/account_order_record.pyi +455 -64
  68. snaptrade_client/model/account_order_record_leg.py +252 -0
  69. snaptrade_client/model/account_order_record_leg.pyi +252 -0
  70. snaptrade_client/model/{brokerage_symbol.py → account_order_record_leg_instrument.py} +34 -43
  71. snaptrade_client/model/{brokerage_symbol.pyi → account_order_record_leg_instrument.pyi} +34 -43
  72. snaptrade_client/model/account_order_record_status.py +21 -1
  73. snaptrade_client/model/account_order_record_status.pyi +21 -1
  74. snaptrade_client/model/account_order_record_status_v2.py +90 -0
  75. snaptrade_client/model/account_order_record_status_v2.pyi +75 -0
  76. snaptrade_client/model/account_order_record_status_v2_nullable.py +105 -0
  77. snaptrade_client/model/account_order_record_status_v2_nullable.pyi +105 -0
  78. snaptrade_client/model/account_order_record_v2.py +309 -0
  79. snaptrade_client/model/account_order_record_v2.pyi +309 -0
  80. snaptrade_client/model/account_orders_v2_response.py +110 -0
  81. snaptrade_client/model/account_orders_v2_response.pyi +110 -0
  82. snaptrade_client/model/account_simple.py +2 -2
  83. snaptrade_client/model/account_simple.pyi +2 -2
  84. snaptrade_client/model/account_sync_status.py +18 -4
  85. snaptrade_client/model/account_sync_status.pyi +18 -4
  86. snaptrade_client/model/account_universal_activity.py +354 -0
  87. snaptrade_client/model/account_universal_activity.pyi +354 -0
  88. snaptrade_client/model/action.py +2 -27
  89. snaptrade_client/model/action.pyi +2 -20
  90. snaptrade_client/model/action_strict.py +50 -0
  91. snaptrade_client/model/{percent.pyi → action_strict.pyi} +14 -4
  92. snaptrade_client/model/{consumer_key.py → action_strict_v2.py} +2 -2
  93. snaptrade_client/model/{consumer_key.pyi → action_strict_v2.pyi} +2 -2
  94. snaptrade_client/model/action_strict_with_options.py +70 -0
  95. snaptrade_client/model/action_strict_with_options.pyi +59 -0
  96. snaptrade_client/model/balance.py +72 -11
  97. snaptrade_client/model/balance.pyi +72 -11
  98. snaptrade_client/model/brokerage.py +69 -68
  99. snaptrade_client/model/brokerage.pyi +69 -68
  100. snaptrade_client/model/brokerage_auth_id.py +25 -0
  101. snaptrade_client/model/brokerage_auth_id.pyi +25 -0
  102. snaptrade_client/model/brokerage_auth_ids.py +1 -1
  103. snaptrade_client/model/brokerage_auth_ids.pyi +1 -1
  104. snaptrade_client/model/brokerage_authorization.py +46 -48
  105. snaptrade_client/model/brokerage_authorization.pyi +46 -48
  106. snaptrade_client/model/{model_asset_class_target.py → brokerage_authorization_disabled_confirmation.py} +13 -16
  107. snaptrade_client/model/{model_asset_class_target.pyi → brokerage_authorization_disabled_confirmation.pyi} +13 -16
  108. snaptrade_client/model/brokerage_authorization_meta.py +58 -0
  109. snaptrade_client/model/brokerage_authorization_meta.pyi +58 -0
  110. snaptrade_client/model/brokerage_authorization_refresh_confirmation.py +78 -0
  111. snaptrade_client/model/brokerage_authorization_refresh_confirmation.pyi +78 -0
  112. snaptrade_client/model/brokerage_authorization_type_read_only.py +10 -73
  113. snaptrade_client/model/brokerage_authorization_type_read_only.pyi +10 -73
  114. snaptrade_client/model/{portfolio_group.py → brokerage_authorization_type_read_only_brokerage.py} +15 -5
  115. snaptrade_client/model/{model_asset_class.py → brokerage_authorization_type_read_only_brokerage.pyi} +15 -5
  116. snaptrade_client/model/brokerage_exchanges.py +52 -0
  117. snaptrade_client/model/brokerage_exchanges.pyi +52 -0
  118. snaptrade_client/model/brokerage_id.py +25 -0
  119. snaptrade_client/model/brokerage_id.pyi +25 -0
  120. snaptrade_client/model/brokerage_instrument.py +202 -0
  121. snaptrade_client/model/brokerage_instrument.pyi +202 -0
  122. snaptrade_client/model/{model_portfolio_asset_class.py → brokerage_instruments_response.py} +31 -28
  123. snaptrade_client/model/brokerage_instruments_response.pyi +103 -0
  124. snaptrade_client/model/brokerage_order_id.py +25 -0
  125. snaptrade_client/model/brokerage_order_id.pyi +25 -0
  126. snaptrade_client/model/brokerage_symbol_id.py +25 -0
  127. snaptrade_client/model/brokerage_symbol_id.pyi +25 -0
  128. snaptrade_client/model/brokerage_type.py +2 -2
  129. snaptrade_client/model/brokerage_type.pyi +2 -2
  130. snaptrade_client/model/cancel_order_response.py +96 -0
  131. snaptrade_client/model/cancel_order_response.pyi +96 -0
  132. snaptrade_client/model/cancel_order_response_raw_response.py +62 -0
  133. snaptrade_client/model/cancel_order_response_raw_response.pyi +62 -0
  134. snaptrade_client/model/child_brokerage_order_ids.py +86 -0
  135. snaptrade_client/model/child_brokerage_order_ids.pyi +86 -0
  136. snaptrade_client/model/child_brokerage_order_ids_nullable.py +90 -0
  137. snaptrade_client/model/child_brokerage_order_ids_nullable.pyi +90 -0
  138. snaptrade_client/model/client_id.py +1 -1
  139. snaptrade_client/model/client_id.pyi +1 -1
  140. snaptrade_client/model/crypto_order_form.py +249 -0
  141. snaptrade_client/model/crypto_order_form.pyi +229 -0
  142. snaptrade_client/model/{excluded_asset.py → crypto_order_preview.py} +14 -14
  143. snaptrade_client/model/{excluded_asset.pyi → crypto_order_preview.pyi} +14 -14
  144. snaptrade_client/model/{redirect_tokenand_pin.py → crypto_order_preview_estimated_fee.py} +25 -18
  145. snaptrade_client/model/{redirect_tokenand_pin.pyi → crypto_order_preview_estimated_fee.pyi} +25 -18
  146. snaptrade_client/model/{model_portfolio_security.py → crypto_trading_instrument.py} +36 -23
  147. snaptrade_client/model/{brokerage_authorization_type.py → crypto_trading_instrument.pyi} +28 -18
  148. snaptrade_client/model/cryptocurrency_base_symbol.py +25 -0
  149. snaptrade_client/model/cryptocurrency_base_symbol.pyi +25 -0
  150. snaptrade_client/model/cryptocurrency_increment.py +25 -0
  151. snaptrade_client/model/cryptocurrency_increment.pyi +25 -0
  152. snaptrade_client/model/{stop_price.pyi → cryptocurrency_increment_nullable.py} +8 -7
  153. snaptrade_client/model/{stop_price.py → cryptocurrency_increment_nullable.pyi} +8 -7
  154. snaptrade_client/model/cryptocurrency_pair.py +120 -0
  155. snaptrade_client/model/cryptocurrency_pair.pyi +120 -0
  156. snaptrade_client/model/{snap_trade_api_disclaimer_accept_status.pyi → cryptocurrency_pair_quote.py} +40 -15
  157. snaptrade_client/model/{snap_trade_api_disclaimer_accept_status.py → cryptocurrency_pair_quote.pyi} +40 -15
  158. snaptrade_client/model/cryptocurrency_pair_symbol.py +25 -0
  159. snaptrade_client/model/cryptocurrency_pair_symbol.pyi +25 -0
  160. snaptrade_client/model/cryptocurrency_quote_symbol.py +25 -0
  161. snaptrade_client/model/cryptocurrency_quote_symbol.pyi +25 -0
  162. snaptrade_client/model/cryptocurrency_symbol.py +25 -0
  163. snaptrade_client/model/cryptocurrency_symbol.pyi +25 -0
  164. snaptrade_client/model/currency.py +2 -2
  165. snaptrade_client/model/currency.pyi +2 -2
  166. snaptrade_client/model/currency_id.py +25 -0
  167. snaptrade_client/model/currency_id.pyi +25 -0
  168. snaptrade_client/model/{model_asset_class.pyi → currency_nullable.py} +23 -7
  169. snaptrade_client/model/{portfolio_group.pyi → currency_nullable.pyi} +23 -7
  170. snaptrade_client/model/delete_user_response.py +13 -5
  171. snaptrade_client/model/delete_user_response.pyi +13 -5
  172. snaptrade_client/model/dividend_at_date.py +1 -1
  173. snaptrade_client/model/dividend_at_date.pyi +1 -1
  174. snaptrade_client/model/encrypted_response.py +11 -73
  175. snaptrade_client/model/encrypted_response.pyi +11 -73
  176. snaptrade_client/model/encrypted_response_encrypted_message_data.py +96 -0
  177. snaptrade_client/model/encrypted_response_encrypted_message_data.pyi +96 -0
  178. snaptrade_client/model/exchange.py +2 -2
  179. snaptrade_client/model/exchange.pyi +2 -2
  180. snaptrade_client/model/exchange_id.py +25 -0
  181. snaptrade_client/model/exchange_id.pyi +25 -0
  182. snaptrade_client/model/exchange_rate_pairs.py +1 -1
  183. snaptrade_client/model/exchange_rate_pairs.pyi +1 -1
  184. snaptrade_client/model/figi_instrument.py +126 -0
  185. snaptrade_client/model/figi_instrument.pyi +126 -0
  186. snaptrade_client/model/figi_instrument_nullable.py +130 -0
  187. snaptrade_client/model/figi_instrument_nullable.pyi +130 -0
  188. snaptrade_client/model/holdings_status.py +99 -0
  189. snaptrade_client/model/holdings_status.pyi +99 -0
  190. snaptrade_client/model/holdings_sync_status_date.py +54 -0
  191. snaptrade_client/model/holdings_sync_status_date.pyi +54 -0
  192. snaptrade_client/model/holdings_sync_status_date_nullable.py +54 -0
  193. snaptrade_client/model/holdings_sync_status_date_nullable.pyi +54 -0
  194. snaptrade_client/model/id.py +1 -1
  195. snaptrade_client/model/id.pyi +1 -1
  196. snaptrade_client/model/login_redirect_uri.py +3 -3
  197. snaptrade_client/model/login_redirect_uri.pyi +3 -3
  198. snaptrade_client/model/manual_trade.py +40 -36
  199. snaptrade_client/model/manual_trade.pyi +40 -36
  200. snaptrade_client/model/manual_trade_and_impact.py +6 -7
  201. snaptrade_client/model/manual_trade_and_impact.pyi +6 -7
  202. snaptrade_client/model/manual_trade_balance.py +31 -16
  203. snaptrade_client/model/manual_trade_balance.pyi +31 -16
  204. snaptrade_client/model/manual_trade_form.py +111 -46
  205. snaptrade_client/model/manual_trade_form.pyi +111 -46
  206. snaptrade_client/model/manual_trade_form_bracket.py +237 -0
  207. snaptrade_client/model/manual_trade_form_bracket.pyi +237 -0
  208. snaptrade_client/model/manual_trade_form_with_options.py +308 -0
  209. snaptrade_client/model/manual_trade_form_with_options.pyi +308 -0
  210. snaptrade_client/model/{trade_impact.py → manual_trade_impact.py} +80 -34
  211. snaptrade_client/model/{trade_impact.pyi → manual_trade_impact.pyi} +80 -34
  212. snaptrade_client/model/manual_trade_replace_form.py +215 -0
  213. snaptrade_client/model/manual_trade_replace_form.pyi +215 -0
  214. snaptrade_client/model/manual_trade_symbol.py +14 -14
  215. snaptrade_client/model/manual_trade_symbol.pyi +14 -14
  216. snaptrade_client/model/mleg_action_strict.py +70 -0
  217. snaptrade_client/model/mleg_action_strict.pyi +59 -0
  218. snaptrade_client/model/mleg_instrument_type.py +50 -0
  219. snaptrade_client/model/{percent.py → mleg_instrument_type.pyi} +14 -8
  220. snaptrade_client/model/mleg_leg.py +114 -0
  221. snaptrade_client/model/mleg_leg.pyi +114 -0
  222. snaptrade_client/model/mleg_order_response.py +120 -0
  223. snaptrade_client/model/mleg_order_response.pyi +120 -0
  224. snaptrade_client/model/mleg_order_type_strict.py +60 -0
  225. snaptrade_client/model/mleg_order_type_strict.pyi +51 -0
  226. snaptrade_client/model/mleg_price_effect_strict.py +55 -0
  227. snaptrade_client/model/mleg_price_effect_strict.pyi +47 -0
  228. snaptrade_client/model/mleg_price_effect_strict_nullable.py +70 -0
  229. snaptrade_client/model/mleg_price_effect_strict_nullable.pyi +70 -0
  230. snaptrade_client/model/mleg_trade_form.py +223 -0
  231. snaptrade_client/model/mleg_trade_form.pyi +223 -0
  232. snaptrade_client/model/{model_portfolio_security.pyi → mleg_trading_instrument.py} +24 -22
  233. snaptrade_client/model/mleg_trading_instrument.pyi +98 -0
  234. snaptrade_client/model/model400_failed_request_response.py +1 -1
  235. snaptrade_client/model/model400_failed_request_response.pyi +1 -1
  236. snaptrade_client/model/model401_failed_request_response.py +1 -1
  237. snaptrade_client/model/model401_failed_request_response.pyi +1 -1
  238. snaptrade_client/model/model402_brokerage_auth_already_disabled_exception.py +88 -0
  239. snaptrade_client/model/model402_brokerage_auth_already_disabled_exception.pyi +88 -0
  240. snaptrade_client/model/model402_brokerage_auth_disabled_response.py +88 -0
  241. snaptrade_client/model/model402_brokerage_auth_disabled_response.pyi +88 -0
  242. snaptrade_client/model/model403_failed_request_response.py +1 -1
  243. snaptrade_client/model/model403_failed_request_response.pyi +1 -1
  244. snaptrade_client/model/model403_feature_not_enabled_response.py +88 -0
  245. snaptrade_client/model/model403_feature_not_enabled_response.pyi +88 -0
  246. snaptrade_client/model/model404_failed_request_response.py +1 -1
  247. snaptrade_client/model/model404_failed_request_response.pyi +1 -1
  248. snaptrade_client/model/model425_failed_request_response.py +88 -0
  249. snaptrade_client/model/model425_failed_request_response.pyi +88 -0
  250. snaptrade_client/model/model500_unexpected_exception_response.py +98 -0
  251. snaptrade_client/model/model500_unexpected_exception_response.pyi +98 -0
  252. snaptrade_client/model/monthly_dividends.py +1 -1
  253. snaptrade_client/model/monthly_dividends.pyi +1 -1
  254. snaptrade_client/model/net_contributions.py +1 -1
  255. snaptrade_client/model/net_contributions.pyi +1 -1
  256. snaptrade_client/model/net_dividend.py +1 -1
  257. snaptrade_client/model/net_dividend.pyi +1 -1
  258. snaptrade_client/model/notional_value.py +68 -0
  259. snaptrade_client/model/notional_value.pyi +68 -0
  260. snaptrade_client/model/notional_value_nullable.py +68 -0
  261. snaptrade_client/model/notional_value_nullable.pyi +68 -0
  262. snaptrade_client/model/{model_portfolio.pyi → option_brokerage_symbol.py} +26 -36
  263. snaptrade_client/model/option_brokerage_symbol.pyi +103 -0
  264. snaptrade_client/model/option_chain.py +8 -343
  265. snaptrade_client/model/option_chain.pyi +8 -343
  266. snaptrade_client/model/option_chain_item.py +121 -0
  267. snaptrade_client/model/option_chain_item.pyi +121 -0
  268. snaptrade_client/model/option_chain_item_chain_per_root.py +55 -0
  269. snaptrade_client/model/option_chain_item_chain_per_root.pyi +55 -0
  270. snaptrade_client/model/option_chain_item_chain_per_root_item.py +101 -0
  271. snaptrade_client/model/option_chain_item_chain_per_root_item.pyi +101 -0
  272. snaptrade_client/model/option_chain_item_chain_per_root_item_chain_per_strike_price.py +55 -0
  273. snaptrade_client/model/option_chain_item_chain_per_root_item_chain_per_strike_price.pyi +55 -0
  274. snaptrade_client/model/option_chain_item_chain_per_root_item_chain_per_strike_price_item.py +168 -0
  275. snaptrade_client/model/option_chain_item_chain_per_root_item_chain_per_strike_price_item.pyi +168 -0
  276. snaptrade_client/model/option_leg.py +1 -1
  277. snaptrade_client/model/option_leg.pyi +1 -1
  278. snaptrade_client/model/option_strategy.py +9 -107
  279. snaptrade_client/model/option_strategy.pyi +9 -107
  280. snaptrade_client/model/option_strategy_legs.py +130 -0
  281. snaptrade_client/model/option_strategy_legs.pyi +130 -0
  282. snaptrade_client/model/option_symbol_id.py +25 -0
  283. snaptrade_client/model/option_symbol_id.pyi +25 -0
  284. snaptrade_client/model/options_position.py +43 -44
  285. snaptrade_client/model/options_position.pyi +43 -44
  286. snaptrade_client/model/options_symbol.py +66 -71
  287. snaptrade_client/model/options_symbol.pyi +59 -71
  288. snaptrade_client/model/options_symbol_nullable.py +170 -0
  289. snaptrade_client/model/options_symbol_nullable.pyi +163 -0
  290. snaptrade_client/model/order_type.py +16 -27
  291. snaptrade_client/model/order_type.pyi +18 -20
  292. snaptrade_client/model/order_type_strict.py +64 -0
  293. snaptrade_client/model/order_type_strict.pyi +55 -0
  294. snaptrade_client/model/{model_portfolio_asset_class.pyi → order_updated_response.py} +24 -24
  295. snaptrade_client/model/order_updated_response.pyi +96 -0
  296. snaptrade_client/model/paginated_universal_activity.py +119 -0
  297. snaptrade_client/model/paginated_universal_activity.pyi +119 -0
  298. snaptrade_client/model/pagination_details.py +98 -0
  299. snaptrade_client/model/pagination_details.pyi +98 -0
  300. snaptrade_client/model/partner_data.py +37 -37
  301. snaptrade_client/model/partner_data.pyi +37 -37
  302. snaptrade_client/model/past_value.py +1 -1
  303. snaptrade_client/model/past_value.pyi +1 -1
  304. snaptrade_client/model/performance_custom.py +9 -46
  305. snaptrade_client/model/performance_custom.pyi +9 -46
  306. snaptrade_client/model/performance_custom_bad_tickers.py +71 -0
  307. snaptrade_client/model/performance_custom_bad_tickers.pyi +71 -0
  308. snaptrade_client/model/portfolio_group_id.py +25 -0
  309. snaptrade_client/model/portfolio_group_id.pyi +25 -0
  310. snaptrade_client/model/position.py +88 -13
  311. snaptrade_client/model/position.pyi +88 -13
  312. snaptrade_client/model/position_symbol.py +15 -15
  313. snaptrade_client/model/position_symbol.pyi +15 -15
  314. snaptrade_client/model/price.py +26 -2
  315. snaptrade_client/model/price.pyi +26 -2
  316. snaptrade_client/model/rate_of_return_object.py +133 -0
  317. snaptrade_client/model/rate_of_return_object.pyi +123 -0
  318. snaptrade_client/model/rate_of_return_response.py +105 -0
  319. snaptrade_client/model/rate_of_return_response.pyi +105 -0
  320. snaptrade_client/model/{calculated_trade.py → recent_orders_response.py} +18 -28
  321. snaptrade_client/model/{calculated_trade.pyi → recent_orders_response.pyi} +18 -28
  322. snaptrade_client/model/reporting_date.py +1 -1
  323. snaptrade_client/model/reporting_date.pyi +1 -1
  324. snaptrade_client/model/reporting_frequency.py +1 -1
  325. snaptrade_client/model/reporting_frequency.pyi +1 -1
  326. snaptrade_client/model/security_type.py +2 -2
  327. snaptrade_client/model/security_type.pyi +2 -2
  328. snaptrade_client/model/security_type_id.py +25 -0
  329. snaptrade_client/model/security_type_id.pyi +25 -0
  330. snaptrade_client/model/session_event.py +47 -7
  331. snaptrade_client/model/session_event.pyi +37 -5
  332. snaptrade_client/model/simple_order_form.py +248 -0
  333. snaptrade_client/model/simple_order_form.pyi +228 -0
  334. snaptrade_client/model/snap_trade_holdings_account.py +9 -33
  335. snaptrade_client/model/snap_trade_holdings_account.pyi +9 -33
  336. snaptrade_client/model/snap_trade_holdings_account_meta.py +56 -0
  337. snaptrade_client/model/snap_trade_holdings_account_meta.pyi +56 -0
  338. snaptrade_client/model/snap_trade_holdings_total_value.py +47 -6
  339. snaptrade_client/model/snap_trade_holdings_total_value.pyi +47 -6
  340. snaptrade_client/model/snap_trade_login_user_request_body.py +63 -3
  341. snaptrade_client/model/snap_trade_login_user_request_body.pyi +54 -3
  342. snaptrade_client/model/snap_trade_register_user_request_body.py +10 -15
  343. snaptrade_client/model/snap_trade_register_user_request_body.pyi +10 -15
  344. snaptrade_client/model/status.py +1 -1
  345. snaptrade_client/model/status.pyi +1 -1
  346. snaptrade_client/model/{portfolio_group_position.py → stop_loss.py} +22 -37
  347. snaptrade_client/model/{portfolio_group_position.pyi → stop_loss.pyi} +22 -37
  348. snaptrade_client/model/strategy_order_record.py +25 -64
  349. snaptrade_client/model/strategy_order_record.pyi +25 -48
  350. snaptrade_client/model/strategy_quotes.py +31 -105
  351. snaptrade_client/model/strategy_quotes.pyi +31 -105
  352. snaptrade_client/model/strategy_quotes_greek.py +116 -0
  353. snaptrade_client/model/strategy_quotes_greek.pyi +116 -0
  354. snaptrade_client/model/sub_period_return_rate.py +1 -1
  355. snaptrade_client/model/sub_period_return_rate.pyi +1 -1
  356. snaptrade_client/model/symbol.py +150 -24
  357. snaptrade_client/model/symbol.pyi +150 -24
  358. snaptrade_client/model/symbol_nullable.py +281 -0
  359. snaptrade_client/model/symbol_nullable.pyi +281 -0
  360. snaptrade_client/model/symbol_query.py +1 -3
  361. snaptrade_client/model/symbol_query.pyi +1 -3
  362. snaptrade_client/model/symbols_quotes.py +111 -87
  363. snaptrade_client/model/symbols_quotes.pyi +111 -87
  364. snaptrade_client/model/sync_status_date.py +1 -1
  365. snaptrade_client/model/sync_status_date.pyi +1 -1
  366. snaptrade_client/model/sync_status_date_nullable.py +54 -0
  367. snaptrade_client/model/sync_status_date_nullable.pyi +54 -0
  368. snaptrade_client/model/{jwt.py → take_profit.py} +12 -12
  369. snaptrade_client/model/{jwt.pyi → take_profit.pyi} +12 -12
  370. snaptrade_client/model/time.py +1 -1
  371. snaptrade_client/model/time.pyi +1 -1
  372. snaptrade_client/model/time_in_force.py +2 -36
  373. snaptrade_client/model/time_in_force.pyi +2 -28
  374. snaptrade_client/model/time_in_force_strict.py +65 -0
  375. snaptrade_client/model/time_in_force_strict.pyi +56 -0
  376. snaptrade_client/model/{email.py → trade_id.py} +2 -2
  377. snaptrade_client/model/{email.pyi → trade_id.pyi} +2 -2
  378. snaptrade_client/model/trading_instrument.py +123 -0
  379. snaptrade_client/model/{brokerage_authorization_type.pyi → trading_instrument.pyi} +36 -11
  380. snaptrade_client/model/trading_session.py +53 -0
  381. snaptrade_client/model/trading_session.pyi +46 -0
  382. snaptrade_client/model/transactions_status.py +59 -9
  383. snaptrade_client/model/transactions_status.pyi +59 -9
  384. snaptrade_client/model/underlying_symbol.py +172 -23
  385. snaptrade_client/model/underlying_symbol.pyi +172 -23
  386. snaptrade_client/model/units.py +1 -1
  387. snaptrade_client/model/units.pyi +1 -1
  388. snaptrade_client/model/{cash.py → units_nullable.py} +4 -4
  389. snaptrade_client/model/{cash.pyi → units_nullable.pyi} +4 -4
  390. snaptrade_client/model/universal_activity.py +168 -73
  391. snaptrade_client/model/universal_activity.pyi +168 -73
  392. snaptrade_client/model/universal_symbol.py +171 -50
  393. snaptrade_client/model/universal_symbol.pyi +171 -50
  394. snaptrade_client/model/universal_symbol_id.py +25 -0
  395. snaptrade_client/model/universal_symbol_id.pyi +25 -0
  396. snaptrade_client/model/universal_symbol_id_nullable.py +54 -0
  397. snaptrade_client/model/universal_symbol_id_nullable.pyi +54 -0
  398. snaptrade_client/model/us_exchange.py +1 -1
  399. snaptrade_client/model/us_exchange.pyi +1 -1
  400. snaptrade_client/model/user_i_dand_secret.py +8 -9
  401. snaptrade_client/model/user_i_dand_secret.pyi +8 -9
  402. snaptrade_client/model/user_id.py +1 -1
  403. snaptrade_client/model/user_id.pyi +1 -1
  404. snaptrade_client/model/user_list.py +2 -2
  405. snaptrade_client/model/user_list.pyi +2 -2
  406. snaptrade_client/model/user_secret.py +1 -1
  407. snaptrade_client/model/user_secret.pyi +1 -1
  408. snaptrade_client/model/validated_trade_body.py +96 -0
  409. snaptrade_client/model/validated_trade_body.pyi +96 -0
  410. snaptrade_client/models/__init__.py +104 -43
  411. snaptrade_client/operation_parameter_map.py +895 -0
  412. snaptrade_client/paths/__init__.py +34 -44
  413. snaptrade_client/paths/accounts/get.py +244 -39
  414. snaptrade_client/paths/accounts/get.pyi +244 -39
  415. snaptrade_client/paths/accounts_account_id/get.py +284 -73
  416. snaptrade_client/paths/accounts_account_id/get.pyi +284 -73
  417. snaptrade_client/paths/accounts_account_id/put.py +285 -49
  418. snaptrade_client/paths/accounts_account_id/put.pyi +285 -49
  419. snaptrade_client/paths/{model_portfolio → accounts_account_id_activities}/__init__.py +2 -2
  420. snaptrade_client/paths/accounts_account_id_activities/get.py +647 -0
  421. snaptrade_client/paths/accounts_account_id_activities/get.pyi +628 -0
  422. snaptrade_client/paths/accounts_account_id_balances/get.py +291 -55
  423. snaptrade_client/paths/accounts_account_id_balances/get.pyi +291 -55
  424. snaptrade_client/paths/accounts_account_id_holdings/get.py +322 -59
  425. snaptrade_client/paths/accounts_account_id_holdings/get.pyi +321 -59
  426. snaptrade_client/paths/accounts_account_id_options/get.py +311 -50
  427. snaptrade_client/paths/accounts_account_id_options/get.pyi +311 -50
  428. snaptrade_client/paths/accounts_account_id_options_chain/get.py +298 -56
  429. snaptrade_client/paths/accounts_account_id_options_chain/get.pyi +298 -56
  430. snaptrade_client/paths/accounts_account_id_orders/get.py +329 -57
  431. snaptrade_client/paths/accounts_account_id_orders/get.pyi +325 -57
  432. snaptrade_client/paths/accounts_account_id_orders_cancel/post.py +356 -74
  433. snaptrade_client/paths/accounts_account_id_orders_cancel/post.pyi +356 -74
  434. snaptrade_client/paths/{model_portfolio_model_portfolio_id → accounts_account_id_orders_details}/__init__.py +2 -2
  435. snaptrade_client/paths/accounts_account_id_orders_details/post.py +691 -0
  436. snaptrade_client/paths/accounts_account_id_orders_details/post.pyi +678 -0
  437. snaptrade_client/paths/{portfolio_groups → accounts_account_id_orders_v2}/__init__.py +2 -2
  438. snaptrade_client/paths/accounts_account_id_orders_v2/get.py +592 -0
  439. snaptrade_client/paths/accounts_account_id_orders_v2/get.pyi +569 -0
  440. snaptrade_client/paths/accounts_account_id_positions/get.py +291 -55
  441. snaptrade_client/paths/accounts_account_id_positions/get.pyi +291 -55
  442. snaptrade_client/paths/accounts_account_id_quotes/get.py +310 -62
  443. snaptrade_client/paths/accounts_account_id_quotes/get.pyi +310 -62
  444. snaptrade_client/paths/accounts_account_id_recent_orders/__init__.py +7 -0
  445. snaptrade_client/paths/accounts_account_id_recent_orders/get.py +561 -0
  446. snaptrade_client/paths/accounts_account_id_recent_orders/get.pyi +549 -0
  447. snaptrade_client/paths/accounts_account_id_recent_orders_v2/__init__.py +7 -0
  448. snaptrade_client/paths/accounts_account_id_recent_orders_v2/get.py +561 -0
  449. snaptrade_client/paths/accounts_account_id_recent_orders_v2/get.pyi +549 -0
  450. snaptrade_client/paths/{model_asset_class → accounts_account_id_return_rates}/__init__.py +2 -2
  451. snaptrade_client/paths/accounts_account_id_return_rates/get.py +540 -0
  452. snaptrade_client/paths/accounts_account_id_return_rates/get.pyi +528 -0
  453. snaptrade_client/paths/accounts_account_id_symbols/post.py +338 -71
  454. snaptrade_client/paths/accounts_account_id_symbols/post.pyi +338 -71
  455. snaptrade_client/paths/{accounts_account_id_option_strategy → accounts_account_id_trading_bracket}/__init__.py +2 -2
  456. snaptrade_client/paths/accounts_account_id_trading_bracket/post.py +732 -0
  457. snaptrade_client/paths/accounts_account_id_trading_bracket/post.pyi +719 -0
  458. snaptrade_client/paths/accounts_account_id_trading_cancel/__init__.py +7 -0
  459. snaptrade_client/paths/accounts_account_id_trading_cancel/post.py +660 -0
  460. snaptrade_client/paths/accounts_account_id_trading_cancel/post.pyi +648 -0
  461. snaptrade_client/paths/accounts_account_id_trading_crypto/__init__.py +7 -0
  462. snaptrade_client/paths/accounts_account_id_trading_crypto/post.py +700 -0
  463. snaptrade_client/paths/accounts_account_id_trading_crypto/post.pyi +688 -0
  464. snaptrade_client/paths/accounts_account_id_trading_crypto_preview/__init__.py +7 -0
  465. snaptrade_client/paths/accounts_account_id_trading_crypto_preview/post.py +700 -0
  466. snaptrade_client/paths/accounts_account_id_trading_crypto_preview/post.pyi +688 -0
  467. snaptrade_client/paths/{accounts_account_id_option_strategy_option_strategy_id → accounts_account_id_trading_instruments_cryptocurrency_pairs}/__init__.py +2 -2
  468. snaptrade_client/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs/get.py +653 -0
  469. snaptrade_client/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs/get.pyi +641 -0
  470. snaptrade_client/paths/{accounts_account_id_option_strategy_option_strategy_id_execute → accounts_account_id_trading_instruments_cryptocurrency_pairs_instrument_symbol_quote}/__init__.py +2 -2
  471. snaptrade_client/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs_instrument_symbol_quote/get.py +554 -0
  472. snaptrade_client/paths/accounts_account_id_trading_instruments_cryptocurrency_pairs_instrument_symbol_quote/get.pyi +542 -0
  473. snaptrade_client/paths/accounts_account_id_trading_options/__init__.py +7 -0
  474. snaptrade_client/paths/accounts_account_id_trading_options/post.py +671 -0
  475. snaptrade_client/paths/accounts_account_id_trading_options/post.pyi +659 -0
  476. snaptrade_client/paths/accounts_account_id_trading_replace/__init__.py +7 -0
  477. snaptrade_client/paths/accounts_account_id_trading_replace/post.py +717 -0
  478. snaptrade_client/paths/accounts_account_id_trading_replace/post.pyi +704 -0
  479. snaptrade_client/paths/activities/get.py +316 -62
  480. snaptrade_client/paths/activities/get.pyi +316 -62
  481. snaptrade_client/paths/authorizations/get.py +244 -39
  482. snaptrade_client/paths/authorizations/get.pyi +244 -39
  483. snaptrade_client/paths/authorizations_authorization_id/delete.py +291 -43
  484. snaptrade_client/paths/authorizations_authorization_id/delete.pyi +291 -43
  485. snaptrade_client/paths/authorizations_authorization_id/get.py +285 -49
  486. snaptrade_client/paths/authorizations_authorization_id/get.pyi +285 -49
  487. snaptrade_client/paths/{model_asset_class_model_asset_class_id → authorizations_authorization_id_disable}/__init__.py +2 -2
  488. snaptrade_client/paths/authorizations_authorization_id_disable/post.py +588 -0
  489. snaptrade_client/paths/authorizations_authorization_id_disable/post.pyi +574 -0
  490. snaptrade_client/paths/authorizations_authorization_id_refresh/__init__.py +7 -0
  491. snaptrade_client/paths/authorizations_authorization_id_refresh/post.py +588 -0
  492. snaptrade_client/paths/authorizations_authorization_id_refresh/post.pyi +574 -0
  493. snaptrade_client/paths/authorizations_authorization_id_return_rates/__init__.py +7 -0
  494. snaptrade_client/paths/authorizations_authorization_id_return_rates/get.py +540 -0
  495. snaptrade_client/paths/authorizations_authorization_id_return_rates/get.pyi +528 -0
  496. snaptrade_client/paths/brokerage_authorization_types/get.py +232 -33
  497. snaptrade_client/paths/brokerage_authorization_types/get.pyi +232 -33
  498. snaptrade_client/paths/brokerages/get.py +188 -21
  499. snaptrade_client/paths/brokerages/get.pyi +188 -21
  500. snaptrade_client/paths/{snap_trade_list_user_errors → brokerages_slug_instruments}/__init__.py +2 -2
  501. snaptrade_client/paths/brokerages_slug_instruments/get.py +417 -0
  502. snaptrade_client/paths/brokerages_slug_instruments/get.pyi +406 -0
  503. snaptrade_client/paths/currencies/get.py +188 -21
  504. snaptrade_client/paths/currencies/get.pyi +188 -21
  505. snaptrade_client/paths/currencies_rates/get.py +175 -21
  506. snaptrade_client/paths/currencies_rates/get.pyi +175 -21
  507. snaptrade_client/paths/currencies_rates_currency_pair/get.py +218 -33
  508. snaptrade_client/paths/currencies_rates_currency_pair/get.pyi +218 -33
  509. snaptrade_client/paths/exchanges/get.py +175 -21
  510. snaptrade_client/paths/exchanges/get.pyi +175 -21
  511. snaptrade_client/paths/holdings/get.py +297 -55
  512. snaptrade_client/paths/holdings/get.pyi +296 -55
  513. snaptrade_client/paths/performance_custom/get.py +306 -67
  514. snaptrade_client/paths/performance_custom/get.pyi +306 -67
  515. snaptrade_client/paths/root/get.py +183 -19
  516. snaptrade_client/paths/root/get.pyi +183 -19
  517. snaptrade_client/paths/security_types/get.py +188 -21
  518. snaptrade_client/paths/security_types/get.pyi +188 -21
  519. snaptrade_client/paths/session_events/get.py +254 -43
  520. snaptrade_client/paths/session_events/get.pyi +254 -43
  521. snaptrade_client/paths/snap_trade_delete_user/delete.py +254 -47
  522. snaptrade_client/paths/snap_trade_delete_user/delete.pyi +254 -47
  523. snaptrade_client/paths/snap_trade_list_users/get.py +208 -31
  524. snaptrade_client/paths/snap_trade_list_users/get.pyi +208 -31
  525. snaptrade_client/paths/snap_trade_login/post.py +391 -93
  526. snaptrade_client/paths/snap_trade_login/post.pyi +391 -93
  527. snaptrade_client/paths/snap_trade_partners/get.py +210 -35
  528. snaptrade_client/paths/snap_trade_partners/get.pyi +210 -35
  529. snaptrade_client/paths/snap_trade_register_user/post.py +259 -55
  530. snaptrade_client/paths/snap_trade_register_user/post.pyi +259 -55
  531. snaptrade_client/paths/{snap_trade_accept_disclaimer → snap_trade_reset_user_secret}/__init__.py +2 -2
  532. snaptrade_client/paths/snap_trade_reset_user_secret/post.py +459 -0
  533. snaptrade_client/paths/snap_trade_reset_user_secret/post.pyi +446 -0
  534. snaptrade_client/paths/symbols/post.py +237 -39
  535. snaptrade_client/paths/symbols/post.pyi +237 -39
  536. snaptrade_client/paths/{trade_oco → symbols_query}/__init__.py +2 -2
  537. snaptrade_client/paths/symbols_query/get.py +441 -0
  538. snaptrade_client/paths/symbols_query/get.pyi +429 -0
  539. snaptrade_client/paths/trade_impact/post.py +403 -106
  540. snaptrade_client/paths/trade_impact/post.pyi +403 -106
  541. snaptrade_client/paths/trade_place/post.py +429 -108
  542. snaptrade_client/paths/trade_place/post.pyi +429 -108
  543. snaptrade_client/paths/trade_trade_id/post.py +358 -54
  544. snaptrade_client/paths/trade_trade_id/post.pyi +358 -54
  545. snaptrade_client/pydantic/__init__.py +0 -0
  546. snaptrade_client/request_before_hook.py +1 -0
  547. snaptrade_client/request_before_url_hook.py +26 -0
  548. snaptrade_client/rest.py +10 -3
  549. snaptrade_client/schemas.py +45 -37
  550. snaptrade_client/type/__init__.py +0 -0
  551. snaptrade_client/type/account.py +68 -0
  552. snaptrade_client/type/account_balance.py +27 -0
  553. snaptrade_client/type/account_cash_restrictions.py +19 -0
  554. snaptrade_client/type/account_holdings.py +37 -0
  555. snaptrade_client/type/account_holdings_account.py +47 -0
  556. snaptrade_client/type/account_id.py +19 -0
  557. snaptrade_client/type/account_ids.py +19 -0
  558. snaptrade_client/type/account_meta.py +19 -0
  559. snaptrade_client/type/account_order_record.py +94 -0
  560. snaptrade_client/type/account_order_record_leg.py +48 -0
  561. snaptrade_client/type/account_order_record_leg_instrument.py +39 -0
  562. snaptrade_client/type/account_order_record_status.py +19 -0
  563. snaptrade_client/type/account_order_record_status_v2.py +19 -0
  564. snaptrade_client/type/account_order_record_status_v2_nullable.py +19 -0
  565. snaptrade_client/type/account_order_record_v2.py +58 -0
  566. snaptrade_client/type/account_orders_v2_response.py +28 -0
  567. snaptrade_client/type/account_simple.py +36 -0
  568. snaptrade_client/type/account_sync_status.py +30 -0
  569. snaptrade_client/type/account_universal_activity.py +73 -0
  570. snaptrade_client/type/action.py +19 -0
  571. snaptrade_client/type/action_strict.py +19 -0
  572. snaptrade_client/type/action_strict_v2.py +19 -0
  573. snaptrade_client/type/action_strict_with_options.py +19 -0
  574. snaptrade_client/type/balance.py +34 -0
  575. snaptrade_client/type/brokerage.py +80 -0
  576. snaptrade_client/type/brokerage_auth_id.py +19 -0
  577. snaptrade_client/type/brokerage_auth_ids.py +19 -0
  578. snaptrade_client/type/brokerage_authorization.py +56 -0
  579. snaptrade_client/type/brokerage_authorization_disabled_confirmation.py +27 -0
  580. snaptrade_client/type/brokerage_authorization_meta.py +19 -0
  581. snaptrade_client/type/brokerage_authorization_refresh_confirmation.py +27 -0
  582. snaptrade_client/type/brokerage_authorization_type_read_only.py +33 -0
  583. snaptrade_client/type/brokerage_authorization_type_read_only_brokerage.py +32 -0
  584. snaptrade_client/type/brokerage_exchanges.py +19 -0
  585. snaptrade_client/type/brokerage_id.py +19 -0
  586. snaptrade_client/type/brokerage_instrument.py +38 -0
  587. snaptrade_client/type/brokerage_instruments_response.py +27 -0
  588. snaptrade_client/type/brokerage_order_id.py +19 -0
  589. snaptrade_client/type/brokerage_symbol_id.py +19 -0
  590. snaptrade_client/type/brokerage_type.py +28 -0
  591. snaptrade_client/type/cancel_order_response.py +29 -0
  592. snaptrade_client/type/cancel_order_response_raw_response.py +19 -0
  593. snaptrade_client/type/child_brokerage_order_ids.py +30 -0
  594. snaptrade_client/type/child_brokerage_order_ids_nullable.py +30 -0
  595. snaptrade_client/type/client_id.py +19 -0
  596. snaptrade_client/type/crypto_order_form.py +50 -0
  597. snaptrade_client/type/crypto_order_preview.py +27 -0
  598. snaptrade_client/type/crypto_order_preview_estimated_fee.py +29 -0
  599. snaptrade_client/type/crypto_trading_instrument.py +30 -0
  600. snaptrade_client/type/cryptocurrency_base_symbol.py +19 -0
  601. snaptrade_client/type/cryptocurrency_increment.py +19 -0
  602. snaptrade_client/type/cryptocurrency_increment_nullable.py +19 -0
  603. snaptrade_client/type/cryptocurrency_pair.py +35 -0
  604. snaptrade_client/type/cryptocurrency_pair_quote.py +35 -0
  605. snaptrade_client/type/cryptocurrency_pair_symbol.py +19 -0
  606. snaptrade_client/type/cryptocurrency_quote_symbol.py +19 -0
  607. snaptrade_client/type/cryptocurrency_symbol.py +19 -0
  608. snaptrade_client/type/currency.py +33 -0
  609. snaptrade_client/type/currency_id.py +19 -0
  610. snaptrade_client/type/currency_nullable.py +33 -0
  611. snaptrade_client/type/delete_user_response.py +33 -0
  612. snaptrade_client/type/dividend_at_date.py +33 -0
  613. snaptrade_client/type/encrypted_response.py +29 -0
  614. snaptrade_client/type/encrypted_response_encrypted_message_data.py +30 -0
  615. snaptrade_client/type/exchange.py +48 -0
  616. snaptrade_client/type/exchange_id.py +19 -0
  617. snaptrade_client/type/exchange_rate_pairs.py +31 -0
  618. snaptrade_client/type/figi_instrument.py +30 -0
  619. snaptrade_client/type/figi_instrument_nullable.py +30 -0
  620. snaptrade_client/type/holdings_status.py +30 -0
  621. snaptrade_client/type/holdings_sync_status_date.py +19 -0
  622. snaptrade_client/type/holdings_sync_status_date_nullable.py +19 -0
  623. snaptrade_client/type/id.py +19 -0
  624. snaptrade_client/type/login_redirect_uri.py +30 -0
  625. snaptrade_client/type/manual_trade.py +48 -0
  626. snaptrade_client/type/manual_trade_and_impact.py +34 -0
  627. snaptrade_client/type/manual_trade_balance.py +33 -0
  628. snaptrade_client/type/manual_trade_form.py +50 -0
  629. snaptrade_client/type/manual_trade_form_bracket.py +50 -0
  630. snaptrade_client/type/manual_trade_form_with_options.py +57 -0
  631. snaptrade_client/type/manual_trade_impact.py +39 -0
  632. snaptrade_client/type/manual_trade_replace_form.py +47 -0
  633. snaptrade_client/type/manual_trade_symbol.py +46 -0
  634. snaptrade_client/type/mleg_action_strict.py +19 -0
  635. snaptrade_client/type/mleg_instrument_type.py +19 -0
  636. snaptrade_client/type/mleg_leg.py +33 -0
  637. snaptrade_client/type/mleg_order_response.py +30 -0
  638. snaptrade_client/type/mleg_order_type_strict.py +19 -0
  639. snaptrade_client/type/mleg_price_effect_strict.py +19 -0
  640. snaptrade_client/type/mleg_price_effect_strict_nullable.py +19 -0
  641. snaptrade_client/type/mleg_trade_form.py +41 -0
  642. snaptrade_client/type/mleg_trading_instrument.py +30 -0
  643. snaptrade_client/type/model400_failed_request_response.py +28 -0
  644. snaptrade_client/type/model401_failed_request_response.py +28 -0
  645. snaptrade_client/type/model402_brokerage_auth_already_disabled_exception.py +28 -0
  646. snaptrade_client/type/model402_brokerage_auth_disabled_response.py +28 -0
  647. snaptrade_client/type/model403_failed_request_response.py +28 -0
  648. snaptrade_client/type/model403_feature_not_enabled_response.py +28 -0
  649. snaptrade_client/type/model404_failed_request_response.py +28 -0
  650. snaptrade_client/type/model425_failed_request_response.py +28 -0
  651. snaptrade_client/type/model500_unexpected_exception_response.py +30 -0
  652. snaptrade_client/type/monthly_dividends.py +30 -0
  653. snaptrade_client/type/net_contributions.py +31 -0
  654. snaptrade_client/type/net_dividend.py +31 -0
  655. snaptrade_client/type/notional_value.py +19 -0
  656. snaptrade_client/type/notional_value_nullable.py +19 -0
  657. snaptrade_client/type/option_brokerage_symbol.py +35 -0
  658. snaptrade_client/type/option_chain.py +20 -0
  659. snaptrade_client/type/option_chain_item.py +35 -0
  660. snaptrade_client/type/option_chain_item_chain_per_root.py +20 -0
  661. snaptrade_client/type/option_chain_item_chain_per_root_item.py +31 -0
  662. snaptrade_client/type/option_chain_item_chain_per_root_item_chain_per_strike_price.py +20 -0
  663. snaptrade_client/type/option_chain_item_chain_per_root_item_chain_per_strike_price_item.py +30 -0
  664. snaptrade_client/type/option_leg.py +31 -0
  665. snaptrade_client/type/option_strategy.py +36 -0
  666. snaptrade_client/type/option_strategy_legs.py +19 -0
  667. snaptrade_client/type/option_symbol_id.py +19 -0
  668. snaptrade_client/type/options_position.py +39 -0
  669. snaptrade_client/type/options_symbol.py +44 -0
  670. snaptrade_client/type/options_symbol_nullable.py +44 -0
  671. snaptrade_client/type/order_type.py +19 -0
  672. snaptrade_client/type/order_type_strict.py +19 -0
  673. snaptrade_client/type/order_updated_response.py +29 -0
  674. snaptrade_client/type/paginated_universal_activity.py +30 -0
  675. snaptrade_client/type/pagination_details.py +33 -0
  676. snaptrade_client/type/partner_data.py +62 -0
  677. snaptrade_client/type/past_value.py +31 -0
  678. snaptrade_client/type/performance_custom.py +78 -0
  679. snaptrade_client/type/performance_custom_bad_tickers.py +19 -0
  680. snaptrade_client/type/portfolio_group_id.py +19 -0
  681. snaptrade_client/type/position.py +50 -0
  682. snaptrade_client/type/position_symbol.py +47 -0
  683. snaptrade_client/type/price.py +19 -0
  684. snaptrade_client/type/rate_of_return_object.py +33 -0
  685. snaptrade_client/type/rate_of_return_response.py +28 -0
  686. snaptrade_client/type/recent_orders_response.py +28 -0
  687. snaptrade_client/type/reporting_date.py +19 -0
  688. snaptrade_client/type/reporting_frequency.py +19 -0
  689. snaptrade_client/type/security_type.py +37 -0
  690. snaptrade_client/type/security_type_id.py +19 -0
  691. snaptrade_client/type/session_event.py +40 -0
  692. snaptrade_client/type/simple_order_form.py +50 -0
  693. snaptrade_client/type/snap_trade_holdings_account.py +43 -0
  694. snaptrade_client/type/snap_trade_holdings_account_meta.py +19 -0
  695. snaptrade_client/type/snap_trade_holdings_total_value.py +30 -0
  696. snaptrade_client/type/snap_trade_login_user_request_body.py +48 -0
  697. snaptrade_client/type/snap_trade_register_user_request_body.py +27 -0
  698. snaptrade_client/type/status.py +30 -0
  699. snaptrade_client/type/stop_loss.py +28 -0
  700. snaptrade_client/type/strategy_order_record.py +52 -0
  701. snaptrade_client/type/strategy_quotes.py +39 -0
  702. snaptrade_client/type/strategy_quotes_greek.py +34 -0
  703. snaptrade_client/type/sub_period_return_rate.py +33 -0
  704. snaptrade_client/type/symbol.py +53 -0
  705. snaptrade_client/type/symbol_nullable.py +53 -0
  706. snaptrade_client/type/symbol_query.py +27 -0
  707. snaptrade_client/type/symbols_quotes.py +20 -0
  708. snaptrade_client/type/sync_status_date.py +19 -0
  709. snaptrade_client/type/sync_status_date_nullable.py +19 -0
  710. snaptrade_client/type/take_profit.py +26 -0
  711. snaptrade_client/type/time.py +19 -0
  712. snaptrade_client/type/time_in_force.py +19 -0
  713. snaptrade_client/type/time_in_force_strict.py +19 -0
  714. snaptrade_client/type/trade_id.py +19 -0
  715. snaptrade_client/type/trading_instrument.py +30 -0
  716. snaptrade_client/type/trading_session.py +19 -0
  717. snaptrade_client/type/transactions_status.py +34 -0
  718. snaptrade_client/type/underlying_symbol.py +58 -0
  719. snaptrade_client/type/units.py +19 -0
  720. snaptrade_client/type/units_nullable.py +19 -0
  721. snaptrade_client/type/universal_activity.py +76 -0
  722. snaptrade_client/type/universal_symbol.py +56 -0
  723. snaptrade_client/type/universal_symbol_id.py +19 -0
  724. snaptrade_client/type/universal_symbol_id_nullable.py +19 -0
  725. snaptrade_client/type/us_exchange.py +42 -0
  726. snaptrade_client/type/user_i_dand_secret.py +30 -0
  727. snaptrade_client/type/user_id.py +19 -0
  728. snaptrade_client/type/user_list.py +19 -0
  729. snaptrade_client/type/user_secret.py +19 -0
  730. snaptrade_client/type/validated_trade_body.py +27 -0
  731. snaptrade_client/type_util.py +23 -0
  732. {snaptrade_python_sdk-10.9.0.dist-info → snaptrade_python_sdk-11.0.152.dist-info}/LICENSE +1 -1
  733. snaptrade_python_sdk-11.0.152.dist-info/METADATA +2683 -0
  734. snaptrade_python_sdk-11.0.152.dist-info/RECORD +809 -0
  735. {snaptrade_python_sdk-10.9.0.dist-info → snaptrade_python_sdk-11.0.152.dist-info}/WHEEL +1 -1
  736. snaptrade_client/apis/paths/accounts_account_id_option_strategy.py +0 -7
  737. snaptrade_client/apis/paths/accounts_account_id_option_strategy_option_strategy_id.py +0 -7
  738. snaptrade_client/apis/paths/accounts_account_id_option_strategy_option_strategy_id_execute.py +0 -7
  739. snaptrade_client/apis/paths/model_asset_class.py +0 -9
  740. snaptrade_client/apis/paths/model_asset_class_model_asset_class_id.py +0 -11
  741. snaptrade_client/apis/paths/model_portfolio.py +0 -9
  742. snaptrade_client/apis/paths/model_portfolio_model_portfolio_id.py +0 -11
  743. snaptrade_client/apis/paths/portfolio_groups.py +0 -9
  744. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id.py +0 -11
  745. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_accounts.py +0 -7
  746. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_balances.py +0 -7
  747. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_calculatedtrades.py +0 -7
  748. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_impact.py +0 -7
  749. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id.py +0 -9
  750. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_place_orders.py +0 -7
  751. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_trade_id.py +0 -7
  752. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_excludedassets.py +0 -9
  753. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_excludedassets_symbol_id.py +0 -7
  754. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_import.py +0 -7
  755. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_info.py +0 -7
  756. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_positions.py +0 -7
  757. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_settings.py +0 -9
  758. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_symbols.py +0 -7
  759. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_targets.py +0 -9
  760. snaptrade_client/apis/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id.py +0 -11
  761. snaptrade_client/apis/paths/snap_trade_accept_disclaimer.py +0 -7
  762. snaptrade_client/apis/paths/snap_trade_encrypted_jwt.py +0 -7
  763. snaptrade_client/apis/paths/snap_trade_list_user_errors.py +0 -7
  764. snaptrade_client/apis/paths/symbols_ticker.py +0 -7
  765. snaptrade_client/apis/paths/trade_oco.py +0 -7
  766. snaptrade_client/apis/tags/portfolio_management_api.py +0 -86
  767. snaptrade_client/model/cash_restriction.py +0 -138
  768. snaptrade_client/model/cash_restriction.pyi +0 -131
  769. snaptrade_client/model/model_asset_class_details.py +0 -118
  770. snaptrade_client/model/model_asset_class_details.pyi +0 -118
  771. snaptrade_client/model/model_portfolio.py +0 -121
  772. snaptrade_client/model/model_portfolio_details.py +0 -154
  773. snaptrade_client/model/model_portfolio_details.pyi +0 -154
  774. snaptrade_client/model/options_holdings.py +0 -156
  775. snaptrade_client/model/options_holdings.pyi +0 -156
  776. snaptrade_client/model/portfolio_group_info.py +0 -415
  777. snaptrade_client/model/portfolio_group_info.pyi +0 -415
  778. snaptrade_client/model/portfolio_group_settings.py +0 -125
  779. snaptrade_client/model/portfolio_group_settings.pyi +0 -125
  780. snaptrade_client/model/rsa_public_key.py +0 -25
  781. snaptrade_client/model/rsa_public_key.pyi +0 -25
  782. snaptrade_client/model/signed_content.py +0 -25
  783. snaptrade_client/model/signed_content.pyi +0 -25
  784. snaptrade_client/model/snap_trade_holdings_account_account_id.py +0 -232
  785. snaptrade_client/model/snap_trade_holdings_account_account_id.pyi +0 -232
  786. snaptrade_client/model/snap_trade_user_id.py +0 -25
  787. snaptrade_client/model/snap_trade_user_id.pyi +0 -25
  788. snaptrade_client/model/snap_trade_user_secret.py +0 -25
  789. snaptrade_client/model/snap_trade_user_secret.pyi +0 -25
  790. snaptrade_client/model/strategy_impact.py +0 -308
  791. snaptrade_client/model/strategy_impact.pyi +0 -308
  792. snaptrade_client/model/strategy_order_place.py +0 -708
  793. snaptrade_client/model/strategy_order_place.pyi +0 -708
  794. snaptrade_client/model/strategy_order_quotes.py +0 -25
  795. snaptrade_client/model/strategy_order_quotes.pyi +0 -25
  796. snaptrade_client/model/target_asset.py +0 -170
  797. snaptrade_client/model/target_asset.pyi +0 -170
  798. snaptrade_client/model/timestamp.py +0 -25
  799. snaptrade_client/model/timestamp.pyi +0 -25
  800. snaptrade_client/model/trade.py +0 -182
  801. snaptrade_client/model/trade.pyi +0 -175
  802. snaptrade_client/model/trade_execution_status.py +0 -254
  803. snaptrade_client/model/trade_execution_status.pyi +0 -237
  804. snaptrade_client/model/universal_symbol_ticker.py +0 -186
  805. snaptrade_client/model/universal_symbol_ticker.pyi +0 -186
  806. snaptrade_client/model/user_error_log.py +0 -128
  807. snaptrade_client/model/user_error_log.pyi +0 -128
  808. snaptrade_client/model/user_settings.py +0 -173
  809. snaptrade_client/model/user_settings.pyi +0 -173
  810. snaptrade_client/paths/accounts_account_id_option_strategy/post.py +0 -452
  811. snaptrade_client/paths/accounts_account_id_option_strategy/post.pyi +0 -435
  812. snaptrade_client/paths/accounts_account_id_option_strategy_option_strategy_id/get.py +0 -295
  813. snaptrade_client/paths/accounts_account_id_option_strategy_option_strategy_id/get.pyi +0 -284
  814. snaptrade_client/paths/accounts_account_id_option_strategy_option_strategy_id_execute/post.py +0 -476
  815. snaptrade_client/paths/accounts_account_id_option_strategy_option_strategy_id_execute/post.pyi +0 -449
  816. snaptrade_client/paths/model_asset_class/get.py +0 -174
  817. snaptrade_client/paths/model_asset_class/get.pyi +0 -164
  818. snaptrade_client/paths/model_asset_class/post.py +0 -149
  819. snaptrade_client/paths/model_asset_class/post.pyi +0 -139
  820. snaptrade_client/paths/model_asset_class_model_asset_class_id/delete.py +0 -180
  821. snaptrade_client/paths/model_asset_class_model_asset_class_id/delete.pyi +0 -170
  822. snaptrade_client/paths/model_asset_class_model_asset_class_id/get.py +0 -200
  823. snaptrade_client/paths/model_asset_class_model_asset_class_id/get.pyi +0 -190
  824. snaptrade_client/paths/model_asset_class_model_asset_class_id/post.py +0 -233
  825. snaptrade_client/paths/model_asset_class_model_asset_class_id/post.pyi +0 -223
  826. snaptrade_client/paths/model_portfolio/get.py +0 -174
  827. snaptrade_client/paths/model_portfolio/get.pyi +0 -164
  828. snaptrade_client/paths/model_portfolio/post.py +0 -149
  829. snaptrade_client/paths/model_portfolio/post.pyi +0 -139
  830. snaptrade_client/paths/model_portfolio_model_portfolio_id/delete.py +0 -180
  831. snaptrade_client/paths/model_portfolio_model_portfolio_id/delete.pyi +0 -170
  832. snaptrade_client/paths/model_portfolio_model_portfolio_id/get.py +0 -200
  833. snaptrade_client/paths/model_portfolio_model_portfolio_id/get.pyi +0 -190
  834. snaptrade_client/paths/model_portfolio_model_portfolio_id/post.py +0 -239
  835. snaptrade_client/paths/model_portfolio_model_portfolio_id/post.pyi +0 -229
  836. snaptrade_client/paths/portfolio_groups/get.py +0 -262
  837. snaptrade_client/paths/portfolio_groups/get.pyi +0 -251
  838. snaptrade_client/paths/portfolio_groups/post.py +0 -320
  839. snaptrade_client/paths/portfolio_groups/post.pyi +0 -308
  840. snaptrade_client/paths/portfolio_groups_portfolio_group_id/__init__.py +0 -7
  841. snaptrade_client/paths/portfolio_groups_portfolio_group_id/delete.py +0 -241
  842. snaptrade_client/paths/portfolio_groups_portfolio_group_id/delete.pyi +0 -228
  843. snaptrade_client/paths/portfolio_groups_portfolio_group_id/get.py +0 -219
  844. snaptrade_client/paths/portfolio_groups_portfolio_group_id/get.pyi +0 -208
  845. snaptrade_client/paths/portfolio_groups_portfolio_group_id/patch.py +0 -288
  846. snaptrade_client/paths/portfolio_groups_portfolio_group_id/patch.pyi +0 -275
  847. snaptrade_client/paths/portfolio_groups_portfolio_group_id_accounts/__init__.py +0 -7
  848. snaptrade_client/paths/portfolio_groups_portfolio_group_id_accounts/get.py +0 -244
  849. snaptrade_client/paths/portfolio_groups_portfolio_group_id_accounts/get.pyi +0 -233
  850. snaptrade_client/paths/portfolio_groups_portfolio_group_id_balances/__init__.py +0 -7
  851. snaptrade_client/paths/portfolio_groups_portfolio_group_id_balances/get.py +0 -266
  852. snaptrade_client/paths/portfolio_groups_portfolio_group_id_balances/get.pyi +0 -253
  853. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades/__init__.py +0 -7
  854. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades/get.py +0 -200
  855. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades/get.pyi +0 -190
  856. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_impact/__init__.py +0 -7
  857. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_impact/get.py +0 -240
  858. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_impact/get.pyi +0 -230
  859. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id/__init__.py +0 -7
  860. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id/get.py +0 -230
  861. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id/get.pyi +0 -220
  862. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id/patch.py +0 -310
  863. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_modify_trade_id/patch.pyi +0 -300
  864. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_place_orders/__init__.py +0 -7
  865. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_place_orders/post.py +0 -240
  866. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_place_orders/post.pyi +0 -230
  867. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_trade_id/__init__.py +0 -7
  868. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_trade_id/get.py +0 -255
  869. snaptrade_client/paths/portfolio_groups_portfolio_group_id_calculatedtrades_calculated_trade_id_trade_id/get.pyi +0 -245
  870. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets/__init__.py +0 -7
  871. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets/get.py +0 -244
  872. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets/get.pyi +0 -233
  873. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets/post.py +0 -281
  874. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets/post.pyi +0 -271
  875. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets_symbol_id/__init__.py +0 -7
  876. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets_symbol_id/delete.py +0 -195
  877. snaptrade_client/paths/portfolio_groups_portfolio_group_id_excludedassets_symbol_id/delete.pyi +0 -185
  878. snaptrade_client/paths/portfolio_groups_portfolio_group_id_import/__init__.py +0 -7
  879. snaptrade_client/paths/portfolio_groups_portfolio_group_id_import/post.py +0 -244
  880. snaptrade_client/paths/portfolio_groups_portfolio_group_id_import/post.pyi +0 -233
  881. snaptrade_client/paths/portfolio_groups_portfolio_group_id_info/__init__.py +0 -7
  882. snaptrade_client/paths/portfolio_groups_portfolio_group_id_info/get.py +0 -219
  883. snaptrade_client/paths/portfolio_groups_portfolio_group_id_info/get.pyi +0 -208
  884. snaptrade_client/paths/portfolio_groups_portfolio_group_id_positions/__init__.py +0 -7
  885. snaptrade_client/paths/portfolio_groups_portfolio_group_id_positions/get.py +0 -266
  886. snaptrade_client/paths/portfolio_groups_portfolio_group_id_positions/get.pyi +0 -253
  887. snaptrade_client/paths/portfolio_groups_portfolio_group_id_settings/__init__.py +0 -7
  888. snaptrade_client/paths/portfolio_groups_portfolio_group_id_settings/get.py +0 -219
  889. snaptrade_client/paths/portfolio_groups_portfolio_group_id_settings/get.pyi +0 -208
  890. snaptrade_client/paths/portfolio_groups_portfolio_group_id_settings/patch.py +0 -219
  891. snaptrade_client/paths/portfolio_groups_portfolio_group_id_settings/patch.pyi +0 -208
  892. snaptrade_client/paths/portfolio_groups_portfolio_group_id_symbols/__init__.py +0 -7
  893. snaptrade_client/paths/portfolio_groups_portfolio_group_id_symbols/post.py +0 -283
  894. snaptrade_client/paths/portfolio_groups_portfolio_group_id_symbols/post.pyi +0 -272
  895. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets/__init__.py +0 -7
  896. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets/get.py +0 -266
  897. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets/get.pyi +0 -253
  898. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets/post.py +0 -273
  899. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets/post.pyi +0 -260
  900. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/__init__.py +0 -7
  901. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/delete.py +0 -256
  902. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/delete.pyi +0 -243
  903. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/get.py +0 -234
  904. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/get.pyi +0 -223
  905. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/patch.py +0 -321
  906. snaptrade_client/paths/portfolio_groups_portfolio_group_id_targets_target_asset_id/patch.pyi +0 -308
  907. snaptrade_client/paths/snap_trade_accept_disclaimer/post.py +0 -319
  908. snaptrade_client/paths/snap_trade_accept_disclaimer/post.pyi +0 -308
  909. snaptrade_client/paths/snap_trade_encrypted_jwt/__init__.py +0 -7
  910. snaptrade_client/paths/snap_trade_encrypted_jwt/get.py +0 -286
  911. snaptrade_client/paths/snap_trade_encrypted_jwt/get.pyi +0 -272
  912. snaptrade_client/paths/snap_trade_list_user_errors/get.py +0 -243
  913. snaptrade_client/paths/snap_trade_list_user_errors/get.pyi +0 -233
  914. snaptrade_client/paths/symbols_ticker/__init__.py +0 -7
  915. snaptrade_client/paths/symbols_ticker/get.py +0 -282
  916. snaptrade_client/paths/symbols_ticker/get.pyi +0 -270
  917. snaptrade_client/paths/trade_oco/post.py +0 -354
  918. snaptrade_client/paths/trade_oco/post.pyi +0 -342
  919. snaptrade_python_sdk-10.9.0.dist-info/METADATA +0 -314
  920. snaptrade_python_sdk-10.9.0.dist-info/RECORD +0 -563
@@ -7,15 +7,17 @@
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Contact: api@snaptrade.com
10
- Generated by: https://konfigthis.com
10
+ Created by: https://snaptrade.com/
11
11
  """
12
12
 
13
13
  from dataclasses import dataclass
14
14
  import typing_extensions
15
15
  import urllib3
16
+ from snaptrade_client.request_before_hook import request_before_hook
16
17
  import json
17
18
  from urllib3._collections import HTTPHeaderDict
18
19
 
20
+ from snaptrade_client.api_response import AsyncGeneratorResponse
19
21
  from snaptrade_client import api_client, exceptions
20
22
  from datetime import date, datetime # noqa: F401
21
23
  import decimal # noqa: F401
@@ -30,12 +32,19 @@ import frozendict # noqa: F401
30
32
 
31
33
  from snaptrade_client import schemas # noqa: F401
32
34
 
33
- from snaptrade_client.model.model404_failed_request_response import Model404FailedRequestResponse
34
- from snaptrade_client.model.encrypted_response import EncryptedResponse
35
- from snaptrade_client.model.snap_trade_login_user_request_body import SnapTradeLoginUserRequestBody
36
- from snaptrade_client.model.model400_failed_request_response import Model400FailedRequestResponse
37
- from snaptrade_client.model.login_redirect_uri import LoginRedirectURI
38
- from snaptrade_client.model.model403_failed_request_response import Model403FailedRequestResponse
35
+ from snaptrade_client.model.model400_failed_request_response import Model400FailedRequestResponse as Model400FailedRequestResponseSchema
36
+ from snaptrade_client.model.login_redirect_uri import LoginRedirectURI as LoginRedirectURISchema
37
+ from snaptrade_client.model.snap_trade_login_user_request_body import SnapTradeLoginUserRequestBody as SnapTradeLoginUserRequestBodySchema
38
+ from snaptrade_client.model.model403_failed_request_response import Model403FailedRequestResponse as Model403FailedRequestResponseSchema
39
+ from snaptrade_client.model.model404_failed_request_response import Model404FailedRequestResponse as Model404FailedRequestResponseSchema
40
+ from snaptrade_client.model.encrypted_response import EncryptedResponse as EncryptedResponseSchema
41
+
42
+ from snaptrade_client.type.snap_trade_login_user_request_body import SnapTradeLoginUserRequestBody
43
+ from snaptrade_client.type.login_redirect_uri import LoginRedirectURI
44
+ from snaptrade_client.type.encrypted_response import EncryptedResponse
45
+ from snaptrade_client.type.model400_failed_request_response import Model400FailedRequestResponse
46
+ from snaptrade_client.type.model403_failed_request_response import Model403FailedRequestResponse
47
+ from snaptrade_client.type.model404_failed_request_response import Model404FailedRequestResponse
39
48
 
40
49
  # Query params
41
50
  UserIdSchema = schemas.StrSchema
@@ -74,7 +83,7 @@ request_query_user_secret = api_client.QueryParameter(
74
83
  explode=True,
75
84
  )
76
85
  # body param
77
- SchemaForRequestBodyApplicationJson = SnapTradeLoginUserRequestBody
86
+ SchemaForRequestBodyApplicationJson = SnapTradeLoginUserRequestBodySchema
78
87
 
79
88
 
80
89
  request_body_snap_trade_login_user_request_body = api_client.RequestBody(
@@ -124,64 +133,80 @@ class SchemaFor200ResponseBodyApplicationJson(
124
133
 
125
134
  @dataclass
126
135
  class ApiResponseFor200(api_client.ApiResponse):
127
- body: typing.Union[
128
- SchemaFor200ResponseBodyApplicationJson,
129
- ]
136
+ body: typing.Union[LoginRedirectURI, EncryptedResponse]
137
+
138
+
139
+ @dataclass
140
+ class ApiResponseFor200Async(api_client.AsyncApiResponse):
141
+ body: typing.Union[LoginRedirectURI, EncryptedResponse]
130
142
 
131
143
 
132
144
  _response_for_200 = api_client.OpenApiResponse(
133
145
  response_cls=ApiResponseFor200,
146
+ response_cls_async=ApiResponseFor200Async,
134
147
  content={
135
148
  'application/json': api_client.MediaType(
136
149
  schema=SchemaFor200ResponseBodyApplicationJson),
137
150
  },
138
151
  )
139
- SchemaFor400ResponseBodyApplicationJson = Model400FailedRequestResponse
152
+ SchemaFor400ResponseBodyApplicationJson = Model400FailedRequestResponseSchema
140
153
 
141
154
 
142
155
  @dataclass
143
156
  class ApiResponseFor400(api_client.ApiResponse):
144
- body: typing.Union[
145
- SchemaFor400ResponseBodyApplicationJson,
146
- ]
157
+ body: Model400FailedRequestResponse
158
+
159
+
160
+ @dataclass
161
+ class ApiResponseFor400Async(api_client.AsyncApiResponse):
162
+ body: Model400FailedRequestResponse
147
163
 
148
164
 
149
165
  _response_for_400 = api_client.OpenApiResponse(
150
166
  response_cls=ApiResponseFor400,
167
+ response_cls_async=ApiResponseFor400Async,
151
168
  content={
152
169
  'application/json': api_client.MediaType(
153
170
  schema=SchemaFor400ResponseBodyApplicationJson),
154
171
  },
155
172
  )
156
- SchemaFor403ResponseBodyApplicationJson = Model403FailedRequestResponse
173
+ SchemaFor403ResponseBodyApplicationJson = Model403FailedRequestResponseSchema
157
174
 
158
175
 
159
176
  @dataclass
160
177
  class ApiResponseFor403(api_client.ApiResponse):
161
- body: typing.Union[
162
- SchemaFor403ResponseBodyApplicationJson,
163
- ]
178
+ body: Model403FailedRequestResponse
179
+
180
+
181
+ @dataclass
182
+ class ApiResponseFor403Async(api_client.AsyncApiResponse):
183
+ body: Model403FailedRequestResponse
164
184
 
165
185
 
166
186
  _response_for_403 = api_client.OpenApiResponse(
167
187
  response_cls=ApiResponseFor403,
188
+ response_cls_async=ApiResponseFor403Async,
168
189
  content={
169
190
  'application/json': api_client.MediaType(
170
191
  schema=SchemaFor403ResponseBodyApplicationJson),
171
192
  },
172
193
  )
173
- SchemaFor404ResponseBodyApplicationJson = Model404FailedRequestResponse
194
+ SchemaFor404ResponseBodyApplicationJson = Model404FailedRequestResponseSchema
174
195
 
175
196
 
176
197
  @dataclass
177
198
  class ApiResponseFor404(api_client.ApiResponse):
178
- body: typing.Union[
179
- SchemaFor404ResponseBodyApplicationJson,
180
- ]
199
+ body: Model404FailedRequestResponse
200
+
201
+
202
+ @dataclass
203
+ class ApiResponseFor404Async(api_client.AsyncApiResponse):
204
+ body: Model404FailedRequestResponse
181
205
 
182
206
 
183
207
  _response_for_404 = api_client.OpenApiResponse(
184
208
  response_cls=ApiResponseFor404,
209
+ response_cls_async=ApiResponseFor404Async,
185
210
  content={
186
211
  'application/json': api_client.MediaType(
187
212
  schema=SchemaFor404ResponseBodyApplicationJson),
@@ -194,8 +219,14 @@ class ApiResponseFor500(api_client.ApiResponse):
194
219
  body: schemas.Unset = schemas.unset
195
220
 
196
221
 
222
+ @dataclass
223
+ class ApiResponseFor500Async(api_client.AsyncApiResponse):
224
+ body: schemas.Unset = schemas.unset
225
+
226
+
197
227
  _response_for_500 = api_client.OpenApiResponse(
198
228
  response_cls=ApiResponseFor500,
229
+ response_cls_async=ApiResponseFor500Async,
199
230
  )
200
231
  _all_accept_content_types = (
201
232
  'application/json',
@@ -204,27 +235,201 @@ _all_accept_content_types = (
204
235
 
205
236
  class BaseApi(api_client.Api):
206
237
 
238
+ def _login_snap_trade_user_mapped_args(
239
+ self,
240
+ body: typing.Optional[SnapTradeLoginUserRequestBody] = None,
241
+ user_id: typing.Optional[str] = None,
242
+ user_secret: typing.Optional[str] = None,
243
+ broker: typing.Optional[str] = None,
244
+ immediate_redirect: typing.Optional[bool] = None,
245
+ custom_redirect: typing.Optional[str] = None,
246
+ reconnect: typing.Optional[str] = None,
247
+ connection_type: typing.Optional[str] = None,
248
+ show_close_button: typing.Optional[bool] = None,
249
+ dark_mode: typing.Optional[bool] = None,
250
+ connection_portal_version: typing.Optional[str] = None,
251
+ query_params: typing.Optional[dict] = {},
252
+ ) -> api_client.MappedArgs:
253
+ args: api_client.MappedArgs = api_client.MappedArgs()
254
+ _query_params = {}
255
+ _body = {}
256
+ if broker is not None:
257
+ _body["broker"] = broker
258
+ if immediate_redirect is not None:
259
+ _body["immediateRedirect"] = immediate_redirect
260
+ if custom_redirect is not None:
261
+ _body["customRedirect"] = custom_redirect
262
+ if reconnect is not None:
263
+ _body["reconnect"] = reconnect
264
+ if connection_type is not None:
265
+ _body["connectionType"] = connection_type
266
+ if show_close_button is not None:
267
+ _body["showCloseButton"] = show_close_button
268
+ if dark_mode is not None:
269
+ _body["darkMode"] = dark_mode
270
+ if connection_portal_version is not None:
271
+ _body["connectionPortalVersion"] = connection_portal_version
272
+ args.body = body if body is not None else _body
273
+ if user_id is not None:
274
+ _query_params["userId"] = user_id
275
+ if user_secret is not None:
276
+ _query_params["userSecret"] = user_secret
277
+ args.query = query_params if query_params else _query_params
278
+ return args
279
+
280
+ async def _alogin_snap_trade_user_oapg(
281
+ self,
282
+ body: typing.Any = None,
283
+ query_params: typing.Optional[dict] = {},
284
+ skip_deserialization: bool = True,
285
+ timeout: typing.Optional[typing.Union[float, typing.Tuple]] = None,
286
+ accept_content_types: typing.Tuple[str] = _all_accept_content_types,
287
+ content_type: str = 'application/json',
288
+ stream: bool = False,
289
+ **kwargs,
290
+ ) -> typing.Union[
291
+ ApiResponseFor200Async,
292
+ api_client.ApiResponseWithoutDeserializationAsync,
293
+ AsyncGeneratorResponse,
294
+ ]:
295
+ """
296
+ Generate Connection Portal URL
297
+ :param skip_deserialization: If true then api_response.response will be set but
298
+ api_response.body and api_response.headers will not be deserialized into schema
299
+ class instances
300
+ """
301
+ self._verify_typed_dict_inputs_oapg(RequestQueryParams, query_params)
302
+ used_path = path.value
303
+
304
+ prefix_separator_iterator = None
305
+ for parameter in (
306
+ request_query_user_id,
307
+ request_query_user_secret,
308
+ ):
309
+ parameter_data = query_params.get(parameter.name, schemas.unset)
310
+ if parameter_data is schemas.unset:
311
+ continue
312
+ if prefix_separator_iterator is None:
313
+ prefix_separator_iterator = parameter.get_prefix_separator_iterator()
314
+ serialized_data = parameter.serialize(parameter_data, prefix_separator_iterator)
315
+ for serialized_value in serialized_data.values():
316
+ used_path += serialized_value
317
+
318
+ _headers = HTTPHeaderDict()
319
+ # TODO add cookie handling
320
+ if accept_content_types:
321
+ for accept_content_type in accept_content_types:
322
+ _headers.add('Accept', accept_content_type)
323
+ method = 'post'.upper()
324
+ _headers.add('Content-Type', content_type)
325
+
326
+ _fields = None
327
+ _body = None
328
+ request_before_hook(
329
+ resource_path=used_path,
330
+ method=method,
331
+ configuration=self.api_client.configuration,
332
+ path_template='/snapTrade/login',
333
+ body=body,
334
+ auth_settings=_auth,
335
+ headers=_headers,
336
+ )
337
+ if body is not schemas.unset:
338
+ serialized_data = request_body_snap_trade_login_user_request_body.serialize(body, content_type)
339
+ if 'fields' in serialized_data:
340
+ _fields = serialized_data['fields']
341
+ elif 'body' in serialized_data:
342
+ _body = serialized_data['body']
343
+
344
+ response = await self.api_client.async_call_api(
345
+ resource_path=used_path,
346
+ method=method,
347
+ headers=_headers,
348
+ fields=_fields,
349
+ serialized_body=_body,
350
+ body=body,
351
+ auth_settings=_auth,
352
+ prefix_separator_iterator=prefix_separator_iterator,
353
+ timeout=timeout,
354
+ **kwargs
355
+ )
356
+
357
+ if stream:
358
+ if not 200 <= response.http_response.status <= 299:
359
+ body = (await response.http_response.content.read()).decode("utf-8")
360
+ raise exceptions.ApiStreamingException(
361
+ status=response.http_response.status,
362
+ reason=response.http_response.reason,
363
+ body=body,
364
+ )
365
+
366
+ async def stream_iterator():
367
+ """
368
+ iterates over response.http_response.content and closes connection once iteration has finished
369
+ """
370
+ async for line in response.http_response.content:
371
+ if line == b'\r\n':
372
+ continue
373
+ yield line
374
+ response.http_response.close()
375
+ await response.session.close()
376
+ return AsyncGeneratorResponse(
377
+ content=stream_iterator(),
378
+ headers=response.http_response.headers,
379
+ status=response.http_response.status,
380
+ response=response.http_response
381
+ )
382
+
383
+ response_for_status = _status_code_to_response.get(str(response.http_response.status))
384
+ if response_for_status:
385
+ api_response = await response_for_status.deserialize_async(
386
+ response,
387
+ self.api_client.configuration,
388
+ skip_deserialization=skip_deserialization
389
+ )
390
+ else:
391
+ # If response data is JSON then deserialize for SDK consumer convenience
392
+ is_json = api_client.JSONDetector._content_type_is_json(response.http_response.headers.get('Content-Type', ''))
393
+ api_response = api_client.ApiResponseWithoutDeserializationAsync(
394
+ body=await response.http_response.json() if is_json else await response.http_response.text(),
395
+ response=response.http_response,
396
+ round_trip_time=response.round_trip_time,
397
+ status=response.http_response.status,
398
+ headers=response.http_response.headers,
399
+ )
400
+
401
+ if not 200 <= api_response.status <= 299:
402
+ raise exceptions.ApiException(api_response=api_response)
403
+
404
+ # cleanup session / response
405
+ response.http_response.close()
406
+ await response.session.close()
407
+
408
+ return api_response
409
+
410
+
207
411
  def _login_snap_trade_user_oapg(
208
412
  self,
413
+ body: typing.Any = None,
414
+ query_params: typing.Optional[dict] = {},
209
415
  skip_deserialization: bool = True,
210
- timeout: typing.Optional[typing.Union[int, typing.Tuple]] = None,
416
+ timeout: typing.Optional[typing.Union[float, typing.Tuple]] = None,
211
417
  accept_content_types: typing.Tuple[str] = _all_accept_content_types,
212
418
  content_type: str = 'application/json',
213
- body: typing.Union[SchemaForRequestBodyApplicationJson, None, dict, list, schemas.Primitive] = None,
214
- query_params: typing.Union[RequestQueryParams, dict] = {},
419
+ stream: bool = False,
215
420
  ) -> typing.Union[
216
421
  ApiResponseFor200,
217
422
  api_client.ApiResponseWithoutDeserialization,
218
423
  ]:
219
424
  """
220
- Generate a redirect URI to securely login a user to the SnapTrade Connection Portal
425
+ Generate Connection Portal URL
221
426
  :param skip_deserialization: If true then api_response.response will be set but
222
427
  api_response.body and api_response.headers will not be deserialized into schema
223
428
  class instances
224
429
  """
225
430
  self._verify_typed_dict_inputs_oapg(RequestQueryParams, query_params)
226
431
  used_path = path.value
227
-
432
+
228
433
  prefix_separator_iterator = None
229
434
  for parameter in (
230
435
  request_query_user_id,
@@ -238,25 +443,36 @@ class BaseApi(api_client.Api):
238
443
  serialized_data = parameter.serialize(parameter_data, prefix_separator_iterator)
239
444
  for serialized_value in serialized_data.values():
240
445
  used_path += serialized_value
241
-
446
+
242
447
  _headers = HTTPHeaderDict()
243
448
  # TODO add cookie handling
244
449
  if accept_content_types:
245
450
  for accept_content_type in accept_content_types:
246
451
  _headers.add('Accept', accept_content_type)
247
-
452
+ method = 'post'.upper()
453
+ _headers.add('Content-Type', content_type)
454
+
248
455
  _fields = None
249
456
  _body = None
457
+ request_before_hook(
458
+ resource_path=used_path,
459
+ method=method,
460
+ configuration=self.api_client.configuration,
461
+ path_template='/snapTrade/login',
462
+ body=body,
463
+ auth_settings=_auth,
464
+ headers=_headers,
465
+ )
250
466
  if body is not schemas.unset:
251
467
  serialized_data = request_body_snap_trade_login_user_request_body.serialize(body, content_type)
252
- _headers.add('Content-Type', content_type)
253
468
  if 'fields' in serialized_data:
254
469
  _fields = serialized_data['fields']
255
470
  elif 'body' in serialized_data:
256
471
  _body = serialized_data['body']
472
+
257
473
  response = self.api_client.call_api(
258
474
  resource_path=used_path,
259
- method='post'.upper(),
475
+ method=method,
260
476
  headers=_headers,
261
477
  fields=_fields,
262
478
  serialized_body=_body,
@@ -265,14 +481,14 @@ class BaseApi(api_client.Api):
265
481
  prefix_separator_iterator=prefix_separator_iterator,
266
482
  timeout=timeout,
267
483
  )
268
-
484
+
269
485
  response_for_status = _status_code_to_response.get(str(response.http_response.status))
270
486
  if response_for_status:
271
487
  api_response = response_for_status.deserialize(
272
- response,
273
- self.api_client.configuration,
274
- skip_deserialization=skip_deserialization
275
- )
488
+ response,
489
+ self.api_client.configuration,
490
+ skip_deserialization=skip_deserialization
491
+ )
276
492
  else:
277
493
  # If response data is JSON then deserialize for SDK consumer convenience
278
494
  is_json = api_client.JSONDetector._content_type_is_json(response.http_response.headers.get('Content-Type', ''))
@@ -283,90 +499,172 @@ class BaseApi(api_client.Api):
283
499
  status=response.http_response.status,
284
500
  headers=response.http_response.headers,
285
501
  )
286
-
502
+
287
503
  if not 200 <= api_response.status <= 299:
288
504
  raise exceptions.ApiException(api_response=api_response)
289
-
505
+
290
506
  return api_response
291
507
 
292
508
 
293
509
  class LoginSnapTradeUser(BaseApi):
294
510
  # this class is used by api classes that refer to endpoints with operationId fn names
295
511
 
512
+ async def alogin_snap_trade_user(
513
+ self,
514
+ body: typing.Optional[SnapTradeLoginUserRequestBody] = None,
515
+ user_id: typing.Optional[str] = None,
516
+ user_secret: typing.Optional[str] = None,
517
+ broker: typing.Optional[str] = None,
518
+ immediate_redirect: typing.Optional[bool] = None,
519
+ custom_redirect: typing.Optional[str] = None,
520
+ reconnect: typing.Optional[str] = None,
521
+ connection_type: typing.Optional[str] = None,
522
+ show_close_button: typing.Optional[bool] = None,
523
+ dark_mode: typing.Optional[bool] = None,
524
+ connection_portal_version: typing.Optional[str] = None,
525
+ query_params: typing.Optional[dict] = {},
526
+ **kwargs,
527
+ ) -> typing.Union[
528
+ ApiResponseFor200Async,
529
+ api_client.ApiResponseWithoutDeserializationAsync,
530
+ AsyncGeneratorResponse,
531
+ ]:
532
+ args = self._login_snap_trade_user_mapped_args(
533
+ body=body,
534
+ query_params=query_params,
535
+ user_id=user_id,
536
+ user_secret=user_secret,
537
+ broker=broker,
538
+ immediate_redirect=immediate_redirect,
539
+ custom_redirect=custom_redirect,
540
+ reconnect=reconnect,
541
+ connection_type=connection_type,
542
+ show_close_button=show_close_button,
543
+ dark_mode=dark_mode,
544
+ connection_portal_version=connection_portal_version,
545
+ )
546
+ return await self._alogin_snap_trade_user_oapg(
547
+ body=args.body,
548
+ query_params=args.query,
549
+ **kwargs,
550
+ )
551
+
296
552
  def login_snap_trade_user(
297
553
  self,
298
- body: typing.Union[SchemaForRequestBodyApplicationJson, None, dict, list, schemas.Primitive] = None,
299
- user_id: typing.Any = None,
300
- user_secret: typing.Any = None,
301
- broker: typing.Any = None,
302
- immediate_redirect: typing.Any = None,
303
- custom_redirect: typing.Any = None,
304
- reconnect: typing.Any = None,
305
- connection_type: typing.Any = None,
306
- query_params: typing.Union[RequestQueryParams, dict] = {},
554
+ body: typing.Optional[SnapTradeLoginUserRequestBody] = None,
555
+ user_id: typing.Optional[str] = None,
556
+ user_secret: typing.Optional[str] = None,
557
+ broker: typing.Optional[str] = None,
558
+ immediate_redirect: typing.Optional[bool] = None,
559
+ custom_redirect: typing.Optional[str] = None,
560
+ reconnect: typing.Optional[str] = None,
561
+ connection_type: typing.Optional[str] = None,
562
+ show_close_button: typing.Optional[bool] = None,
563
+ dark_mode: typing.Optional[bool] = None,
564
+ connection_portal_version: typing.Optional[str] = None,
565
+ query_params: typing.Optional[dict] = {},
307
566
  ) -> typing.Union[
308
567
  ApiResponseFor200,
309
568
  api_client.ApiResponseWithoutDeserialization,
310
569
  ]:
311
- if body is None:
312
- body = {}
313
- if isinstance(body, dict) and broker is not None:
314
- body["broker"] = broker
315
- if isinstance(body, dict) and immediate_redirect is not None:
316
- body["immediateRedirect"] = immediate_redirect
317
- if isinstance(body, dict) and custom_redirect is not None:
318
- body["customRedirect"] = custom_redirect
319
- if isinstance(body, dict) and reconnect is not None:
320
- body["reconnect"] = reconnect
321
- if isinstance(body, dict) and connection_type is not None:
322
- body["connectionType"] = connection_type
323
- if user_id is not None:
324
- query_params["userId"] = user_id
325
- if user_secret is not None:
326
- query_params["userSecret"] = user_secret
327
- return self._login_snap_trade_user_oapg(
570
+ """ Authenticates a SnapTrade user and returns the Connection Portal URL used for connecting brokerage accounts. Please check [this guide](/docs/implement-connection-portal) for how to integrate the Connection Portal into your app. Please note that the returned URL expires in 5 minutes. """
571
+ args = self._login_snap_trade_user_mapped_args(
328
572
  body=body,
329
573
  query_params=query_params,
574
+ user_id=user_id,
575
+ user_secret=user_secret,
576
+ broker=broker,
577
+ immediate_redirect=immediate_redirect,
578
+ custom_redirect=custom_redirect,
579
+ reconnect=reconnect,
580
+ connection_type=connection_type,
581
+ show_close_button=show_close_button,
582
+ dark_mode=dark_mode,
583
+ connection_portal_version=connection_portal_version,
584
+ )
585
+ return self._login_snap_trade_user_oapg(
586
+ body=args.body,
587
+ query_params=args.query,
330
588
  )
331
-
332
589
 
333
590
  class ApiForpost(BaseApi):
334
591
  # this class is used by api classes that refer to endpoints by path and http method names
335
592
 
593
+ async def apost(
594
+ self,
595
+ body: typing.Optional[SnapTradeLoginUserRequestBody] = None,
596
+ user_id: typing.Optional[str] = None,
597
+ user_secret: typing.Optional[str] = None,
598
+ broker: typing.Optional[str] = None,
599
+ immediate_redirect: typing.Optional[bool] = None,
600
+ custom_redirect: typing.Optional[str] = None,
601
+ reconnect: typing.Optional[str] = None,
602
+ connection_type: typing.Optional[str] = None,
603
+ show_close_button: typing.Optional[bool] = None,
604
+ dark_mode: typing.Optional[bool] = None,
605
+ connection_portal_version: typing.Optional[str] = None,
606
+ query_params: typing.Optional[dict] = {},
607
+ **kwargs,
608
+ ) -> typing.Union[
609
+ ApiResponseFor200Async,
610
+ api_client.ApiResponseWithoutDeserializationAsync,
611
+ AsyncGeneratorResponse,
612
+ ]:
613
+ args = self._login_snap_trade_user_mapped_args(
614
+ body=body,
615
+ query_params=query_params,
616
+ user_id=user_id,
617
+ user_secret=user_secret,
618
+ broker=broker,
619
+ immediate_redirect=immediate_redirect,
620
+ custom_redirect=custom_redirect,
621
+ reconnect=reconnect,
622
+ connection_type=connection_type,
623
+ show_close_button=show_close_button,
624
+ dark_mode=dark_mode,
625
+ connection_portal_version=connection_portal_version,
626
+ )
627
+ return await self._alogin_snap_trade_user_oapg(
628
+ body=args.body,
629
+ query_params=args.query,
630
+ **kwargs,
631
+ )
632
+
336
633
  def post(
337
634
  self,
338
- body: typing.Union[SchemaForRequestBodyApplicationJson, None, dict, list, schemas.Primitive] = None,
339
- user_id: typing.Any = None,
340
- user_secret: typing.Any = None,
341
- broker: typing.Any = None,
342
- immediate_redirect: typing.Any = None,
343
- custom_redirect: typing.Any = None,
344
- reconnect: typing.Any = None,
345
- connection_type: typing.Any = None,
346
- query_params: typing.Union[RequestQueryParams, dict] = {},
635
+ body: typing.Optional[SnapTradeLoginUserRequestBody] = None,
636
+ user_id: typing.Optional[str] = None,
637
+ user_secret: typing.Optional[str] = None,
638
+ broker: typing.Optional[str] = None,
639
+ immediate_redirect: typing.Optional[bool] = None,
640
+ custom_redirect: typing.Optional[str] = None,
641
+ reconnect: typing.Optional[str] = None,
642
+ connection_type: typing.Optional[str] = None,
643
+ show_close_button: typing.Optional[bool] = None,
644
+ dark_mode: typing.Optional[bool] = None,
645
+ connection_portal_version: typing.Optional[str] = None,
646
+ query_params: typing.Optional[dict] = {},
347
647
  ) -> typing.Union[
348
648
  ApiResponseFor200,
349
649
  api_client.ApiResponseWithoutDeserialization,
350
650
  ]:
351
- if body is None:
352
- body = {}
353
- if isinstance(body, dict) and broker is not None:
354
- body["broker"] = broker
355
- if isinstance(body, dict) and immediate_redirect is not None:
356
- body["immediateRedirect"] = immediate_redirect
357
- if isinstance(body, dict) and custom_redirect is not None:
358
- body["customRedirect"] = custom_redirect
359
- if isinstance(body, dict) and reconnect is not None:
360
- body["reconnect"] = reconnect
361
- if isinstance(body, dict) and connection_type is not None:
362
- body["connectionType"] = connection_type
363
- if user_id is not None:
364
- query_params["userId"] = user_id
365
- if user_secret is not None:
366
- query_params["userSecret"] = user_secret
367
- return self._login_snap_trade_user_oapg(
651
+ """ Authenticates a SnapTrade user and returns the Connection Portal URL used for connecting brokerage accounts. Please check [this guide](/docs/implement-connection-portal) for how to integrate the Connection Portal into your app. Please note that the returned URL expires in 5 minutes. """
652
+ args = self._login_snap_trade_user_mapped_args(
368
653
  body=body,
369
654
  query_params=query_params,
655
+ user_id=user_id,
656
+ user_secret=user_secret,
657
+ broker=broker,
658
+ immediate_redirect=immediate_redirect,
659
+ custom_redirect=custom_redirect,
660
+ reconnect=reconnect,
661
+ connection_type=connection_type,
662
+ show_close_button=show_close_button,
663
+ dark_mode=dark_mode,
664
+ connection_portal_version=connection_portal_version,
665
+ )
666
+ return self._login_snap_trade_user_oapg(
667
+ body=args.body,
668
+ query_params=args.query,
370
669
  )
371
-
372
670