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
@@ -0,0 +1,659 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ SnapTrade
5
+
6
+ Connect brokerage accounts to your app for live positions and trading
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Contact: api@snaptrade.com
10
+ Created by: https://snaptrade.com/
11
+ """
12
+
13
+ from dataclasses import dataclass
14
+ import typing_extensions
15
+ import urllib3
16
+ from snaptrade_client.request_before_hook import request_before_hook
17
+ import json
18
+ from urllib3._collections import HTTPHeaderDict
19
+
20
+ from snaptrade_client.api_response import AsyncGeneratorResponse
21
+ from snaptrade_client import api_client, exceptions
22
+ from datetime import date, datetime # noqa: F401
23
+ import decimal # noqa: F401
24
+ import functools # noqa: F401
25
+ import io # noqa: F401
26
+ import re # noqa: F401
27
+ import typing # noqa: F401
28
+ import typing_extensions # noqa: F401
29
+ import uuid # noqa: F401
30
+
31
+ import frozendict # noqa: F401
32
+
33
+ from snaptrade_client import schemas # noqa: F401
34
+
35
+ from snaptrade_client.model.model400_failed_request_response import Model400FailedRequestResponse as Model400FailedRequestResponseSchema
36
+ from snaptrade_client.model.mleg_price_effect_strict_nullable import MlegPriceEffectStrictNullable as MlegPriceEffectStrictNullableSchema
37
+ from snaptrade_client.model.mleg_leg import MlegLeg as MlegLegSchema
38
+ from snaptrade_client.model.mleg_order_type_strict import MlegOrderTypeStrict as MlegOrderTypeStrictSchema
39
+ from snaptrade_client.model.time_in_force_strict import TimeInForceStrict as TimeInForceStrictSchema
40
+ from snaptrade_client.model.mleg_trade_form import MlegTradeForm as MlegTradeFormSchema
41
+ from snaptrade_client.model.mleg_order_response import MlegOrderResponse as MlegOrderResponseSchema
42
+
43
+ from snaptrade_client.type.mleg_leg import MlegLeg
44
+ from snaptrade_client.type.mleg_trade_form import MlegTradeForm
45
+ from snaptrade_client.type.mleg_order_type_strict import MlegOrderTypeStrict
46
+ from snaptrade_client.type.model400_failed_request_response import Model400FailedRequestResponse
47
+ from snaptrade_client.type.time_in_force_strict import TimeInForceStrict
48
+ from snaptrade_client.type.mleg_order_response import MlegOrderResponse
49
+ from snaptrade_client.type.mleg_price_effect_strict_nullable import MlegPriceEffectStrictNullable
50
+
51
+ # Query params
52
+ UserIdSchema = schemas.StrSchema
53
+ UserSecretSchema = schemas.StrSchema
54
+ RequestRequiredQueryParams = typing_extensions.TypedDict(
55
+ 'RequestRequiredQueryParams',
56
+ {
57
+ 'userId': typing.Union[UserIdSchema, str, ],
58
+ 'userSecret': typing.Union[UserSecretSchema, str, ],
59
+ }
60
+ )
61
+ RequestOptionalQueryParams = typing_extensions.TypedDict(
62
+ 'RequestOptionalQueryParams',
63
+ {
64
+ },
65
+ total=False
66
+ )
67
+
68
+
69
+ class RequestQueryParams(RequestRequiredQueryParams, RequestOptionalQueryParams):
70
+ pass
71
+
72
+
73
+ request_query_user_id = api_client.QueryParameter(
74
+ name="userId",
75
+ style=api_client.ParameterStyle.FORM,
76
+ schema=UserIdSchema,
77
+ required=True,
78
+ explode=True,
79
+ )
80
+ request_query_user_secret = api_client.QueryParameter(
81
+ name="userSecret",
82
+ style=api_client.ParameterStyle.FORM,
83
+ schema=UserSecretSchema,
84
+ required=True,
85
+ explode=True,
86
+ )
87
+ # Path params
88
+ AccountIdSchema = schemas.UUIDSchema
89
+ RequestRequiredPathParams = typing_extensions.TypedDict(
90
+ 'RequestRequiredPathParams',
91
+ {
92
+ 'accountId': typing.Union[AccountIdSchema, str, uuid.UUID, ],
93
+ }
94
+ )
95
+ RequestOptionalPathParams = typing_extensions.TypedDict(
96
+ 'RequestOptionalPathParams',
97
+ {
98
+ },
99
+ total=False
100
+ )
101
+
102
+
103
+ class RequestPathParams(RequestRequiredPathParams, RequestOptionalPathParams):
104
+ pass
105
+
106
+
107
+ request_path_account_id = api_client.PathParameter(
108
+ name="accountId",
109
+ style=api_client.ParameterStyle.SIMPLE,
110
+ schema=AccountIdSchema,
111
+ required=True,
112
+ )
113
+ # body param
114
+ SchemaForRequestBodyApplicationJson = MlegTradeFormSchema
115
+
116
+
117
+ request_body_mleg_trade_form = api_client.RequestBody(
118
+ content={
119
+ 'application/json': api_client.MediaType(
120
+ schema=SchemaForRequestBodyApplicationJson),
121
+ },
122
+ required=True,
123
+ )
124
+ SchemaFor200ResponseBodyApplicationJson = MlegOrderResponseSchema
125
+
126
+
127
+ @dataclass
128
+ class ApiResponseFor200(api_client.ApiResponse):
129
+ body: MlegOrderResponse
130
+
131
+
132
+ @dataclass
133
+ class ApiResponseFor200Async(api_client.AsyncApiResponse):
134
+ body: MlegOrderResponse
135
+
136
+
137
+ _response_for_200 = api_client.OpenApiResponse(
138
+ response_cls=ApiResponseFor200,
139
+ response_cls_async=ApiResponseFor200Async,
140
+ content={
141
+ 'application/json': api_client.MediaType(
142
+ schema=SchemaFor200ResponseBodyApplicationJson),
143
+ },
144
+ )
145
+ SchemaFor400ResponseBodyApplicationJson = Model400FailedRequestResponseSchema
146
+
147
+
148
+ @dataclass
149
+ class ApiResponseFor400(api_client.ApiResponse):
150
+ body: Model400FailedRequestResponse
151
+
152
+
153
+ @dataclass
154
+ class ApiResponseFor400Async(api_client.AsyncApiResponse):
155
+ body: Model400FailedRequestResponse
156
+
157
+
158
+ _response_for_400 = api_client.OpenApiResponse(
159
+ response_cls=ApiResponseFor400,
160
+ response_cls_async=ApiResponseFor400Async,
161
+ content={
162
+ 'application/json': api_client.MediaType(
163
+ schema=SchemaFor400ResponseBodyApplicationJson),
164
+ },
165
+ )
166
+
167
+
168
+ @dataclass
169
+ class ApiResponseFor500(api_client.ApiResponse):
170
+ body: schemas.Unset = schemas.unset
171
+
172
+
173
+ @dataclass
174
+ class ApiResponseFor500Async(api_client.AsyncApiResponse):
175
+ body: schemas.Unset = schemas.unset
176
+
177
+
178
+ _response_for_500 = api_client.OpenApiResponse(
179
+ response_cls=ApiResponseFor500,
180
+ response_cls_async=ApiResponseFor500Async,
181
+ )
182
+ _all_accept_content_types = (
183
+ 'application/json',
184
+ )
185
+
186
+
187
+ class BaseApi(api_client.Api):
188
+
189
+ def _place_mleg_order_mapped_args(
190
+ self,
191
+ body: typing.Optional[MlegTradeForm] = None,
192
+ order_type: typing.Optional[MlegOrderTypeStrict] = None,
193
+ time_in_force: typing.Optional[TimeInForceStrict] = None,
194
+ legs: typing.Optional[typing.List[MlegLeg]] = None,
195
+ user_id: typing.Optional[str] = None,
196
+ user_secret: typing.Optional[str] = None,
197
+ account_id: typing.Optional[str] = None,
198
+ limit_price: typing.Optional[typing.Optional[str]] = None,
199
+ stop_price: typing.Optional[typing.Optional[str]] = None,
200
+ price_effect: typing.Optional[MlegPriceEffectStrictNullable] = None,
201
+ query_params: typing.Optional[dict] = {},
202
+ path_params: typing.Optional[dict] = {},
203
+ ) -> api_client.MappedArgs:
204
+ args: api_client.MappedArgs = api_client.MappedArgs()
205
+ _query_params = {}
206
+ _path_params = {}
207
+ _body = {}
208
+ if order_type is not None:
209
+ _body["order_type"] = order_type
210
+ if time_in_force is not None:
211
+ _body["time_in_force"] = time_in_force
212
+ if limit_price is not None:
213
+ _body["limit_price"] = limit_price
214
+ if stop_price is not None:
215
+ _body["stop_price"] = stop_price
216
+ if price_effect is not None:
217
+ _body["price_effect"] = price_effect
218
+ if legs is not None:
219
+ _body["legs"] = legs
220
+ args.body = body if body is not None else _body
221
+ if user_id is not None:
222
+ _query_params["userId"] = user_id
223
+ if user_secret is not None:
224
+ _query_params["userSecret"] = user_secret
225
+ if account_id is not None:
226
+ _path_params["accountId"] = account_id
227
+ args.query = query_params if query_params else _query_params
228
+ args.path = path_params if path_params else _path_params
229
+ return args
230
+
231
+ async def _aplace_mleg_order_oapg(
232
+ self,
233
+ body: typing.Any = None,
234
+ query_params: typing.Optional[dict] = {},
235
+ path_params: typing.Optional[dict] = {},
236
+ skip_deserialization: bool = True,
237
+ timeout: typing.Optional[typing.Union[float, typing.Tuple]] = None,
238
+ accept_content_types: typing.Tuple[str] = _all_accept_content_types,
239
+ content_type: str = 'application/json',
240
+ stream: bool = False,
241
+ **kwargs,
242
+ ) -> typing.Union[
243
+ ApiResponseFor200Async,
244
+ api_client.ApiResponseWithoutDeserializationAsync,
245
+ AsyncGeneratorResponse,
246
+ ]:
247
+ """
248
+ Place option order
249
+ :param skip_deserialization: If true then api_response.response will be set but
250
+ api_response.body and api_response.headers will not be deserialized into schema
251
+ class instances
252
+ """
253
+ self._verify_typed_dict_inputs_oapg(RequestQueryParams, query_params)
254
+ self._verify_typed_dict_inputs_oapg(RequestPathParams, path_params)
255
+ used_path = path.value
256
+
257
+ _path_params = {}
258
+ for parameter in (
259
+ request_path_account_id,
260
+ ):
261
+ parameter_data = path_params.get(parameter.name, schemas.unset)
262
+ if parameter_data is schemas.unset:
263
+ continue
264
+ serialized_data = parameter.serialize(parameter_data)
265
+ _path_params.update(serialized_data)
266
+
267
+ for k, v in _path_params.items():
268
+ used_path = used_path.replace('{%s}' % k, v)
269
+
270
+ prefix_separator_iterator = None
271
+ for parameter in (
272
+ request_query_user_id,
273
+ request_query_user_secret,
274
+ ):
275
+ parameter_data = query_params.get(parameter.name, schemas.unset)
276
+ if parameter_data is schemas.unset:
277
+ continue
278
+ if prefix_separator_iterator is None:
279
+ prefix_separator_iterator = parameter.get_prefix_separator_iterator()
280
+ serialized_data = parameter.serialize(parameter_data, prefix_separator_iterator)
281
+ for serialized_value in serialized_data.values():
282
+ used_path += serialized_value
283
+
284
+ _headers = HTTPHeaderDict()
285
+ # TODO add cookie handling
286
+ if accept_content_types:
287
+ for accept_content_type in accept_content_types:
288
+ _headers.add('Accept', accept_content_type)
289
+ method = 'post'.upper()
290
+ _headers.add('Content-Type', content_type)
291
+
292
+ if body is schemas.unset:
293
+ raise exceptions.ApiValueError(
294
+ 'The required body parameter has an invalid value of: unset. Set a valid value instead')
295
+ _fields = None
296
+ _body = None
297
+ request_before_hook(
298
+ resource_path=used_path,
299
+ method=method,
300
+ configuration=self.api_client.configuration,
301
+ path_template='/accounts/{accountId}/trading/options',
302
+ body=body,
303
+ auth_settings=_auth,
304
+ headers=_headers,
305
+ )
306
+ serialized_data = request_body_mleg_trade_form.serialize(body, content_type)
307
+ if 'fields' in serialized_data:
308
+ _fields = serialized_data['fields']
309
+ elif 'body' in serialized_data:
310
+ _body = serialized_data['body']
311
+
312
+ response = await self.api_client.async_call_api(
313
+ resource_path=used_path,
314
+ method=method,
315
+ headers=_headers,
316
+ fields=_fields,
317
+ serialized_body=_body,
318
+ body=body,
319
+ auth_settings=_auth,
320
+ prefix_separator_iterator=prefix_separator_iterator,
321
+ timeout=timeout,
322
+ **kwargs
323
+ )
324
+
325
+ if stream:
326
+ if not 200 <= response.http_response.status <= 299:
327
+ body = (await response.http_response.content.read()).decode("utf-8")
328
+ raise exceptions.ApiStreamingException(
329
+ status=response.http_response.status,
330
+ reason=response.http_response.reason,
331
+ body=body,
332
+ )
333
+
334
+ async def stream_iterator():
335
+ """
336
+ iterates over response.http_response.content and closes connection once iteration has finished
337
+ """
338
+ async for line in response.http_response.content:
339
+ if line == b'\r\n':
340
+ continue
341
+ yield line
342
+ response.http_response.close()
343
+ await response.session.close()
344
+ return AsyncGeneratorResponse(
345
+ content=stream_iterator(),
346
+ headers=response.http_response.headers,
347
+ status=response.http_response.status,
348
+ response=response.http_response
349
+ )
350
+
351
+ response_for_status = _status_code_to_response.get(str(response.http_response.status))
352
+ if response_for_status:
353
+ api_response = await response_for_status.deserialize_async(
354
+ response,
355
+ self.api_client.configuration,
356
+ skip_deserialization=skip_deserialization
357
+ )
358
+ else:
359
+ # If response data is JSON then deserialize for SDK consumer convenience
360
+ is_json = api_client.JSONDetector._content_type_is_json(response.http_response.headers.get('Content-Type', ''))
361
+ api_response = api_client.ApiResponseWithoutDeserializationAsync(
362
+ body=await response.http_response.json() if is_json else await response.http_response.text(),
363
+ response=response.http_response,
364
+ round_trip_time=response.round_trip_time,
365
+ status=response.http_response.status,
366
+ headers=response.http_response.headers,
367
+ )
368
+
369
+ if not 200 <= api_response.status <= 299:
370
+ raise exceptions.ApiException(api_response=api_response)
371
+
372
+ # cleanup session / response
373
+ response.http_response.close()
374
+ await response.session.close()
375
+
376
+ return api_response
377
+
378
+
379
+ def _place_mleg_order_oapg(
380
+ self,
381
+ body: typing.Any = None,
382
+ query_params: typing.Optional[dict] = {},
383
+ path_params: typing.Optional[dict] = {},
384
+ skip_deserialization: bool = True,
385
+ timeout: typing.Optional[typing.Union[float, typing.Tuple]] = None,
386
+ accept_content_types: typing.Tuple[str] = _all_accept_content_types,
387
+ content_type: str = 'application/json',
388
+ stream: bool = False,
389
+ ) -> typing.Union[
390
+ ApiResponseFor200,
391
+ api_client.ApiResponseWithoutDeserialization,
392
+ ]:
393
+ """
394
+ Place option order
395
+ :param skip_deserialization: If true then api_response.response will be set but
396
+ api_response.body and api_response.headers will not be deserialized into schema
397
+ class instances
398
+ """
399
+ self._verify_typed_dict_inputs_oapg(RequestQueryParams, query_params)
400
+ self._verify_typed_dict_inputs_oapg(RequestPathParams, path_params)
401
+ used_path = path.value
402
+
403
+ _path_params = {}
404
+ for parameter in (
405
+ request_path_account_id,
406
+ ):
407
+ parameter_data = path_params.get(parameter.name, schemas.unset)
408
+ if parameter_data is schemas.unset:
409
+ continue
410
+ serialized_data = parameter.serialize(parameter_data)
411
+ _path_params.update(serialized_data)
412
+
413
+ for k, v in _path_params.items():
414
+ used_path = used_path.replace('{%s}' % k, v)
415
+
416
+ prefix_separator_iterator = None
417
+ for parameter in (
418
+ request_query_user_id,
419
+ request_query_user_secret,
420
+ ):
421
+ parameter_data = query_params.get(parameter.name, schemas.unset)
422
+ if parameter_data is schemas.unset:
423
+ continue
424
+ if prefix_separator_iterator is None:
425
+ prefix_separator_iterator = parameter.get_prefix_separator_iterator()
426
+ serialized_data = parameter.serialize(parameter_data, prefix_separator_iterator)
427
+ for serialized_value in serialized_data.values():
428
+ used_path += serialized_value
429
+
430
+ _headers = HTTPHeaderDict()
431
+ # TODO add cookie handling
432
+ if accept_content_types:
433
+ for accept_content_type in accept_content_types:
434
+ _headers.add('Accept', accept_content_type)
435
+ method = 'post'.upper()
436
+ _headers.add('Content-Type', content_type)
437
+
438
+ if body is schemas.unset:
439
+ raise exceptions.ApiValueError(
440
+ 'The required body parameter has an invalid value of: unset. Set a valid value instead')
441
+ _fields = None
442
+ _body = None
443
+ request_before_hook(
444
+ resource_path=used_path,
445
+ method=method,
446
+ configuration=self.api_client.configuration,
447
+ path_template='/accounts/{accountId}/trading/options',
448
+ body=body,
449
+ auth_settings=_auth,
450
+ headers=_headers,
451
+ )
452
+ serialized_data = request_body_mleg_trade_form.serialize(body, content_type)
453
+ if 'fields' in serialized_data:
454
+ _fields = serialized_data['fields']
455
+ elif 'body' in serialized_data:
456
+ _body = serialized_data['body']
457
+
458
+ response = self.api_client.call_api(
459
+ resource_path=used_path,
460
+ method=method,
461
+ headers=_headers,
462
+ fields=_fields,
463
+ serialized_body=_body,
464
+ body=body,
465
+ auth_settings=_auth,
466
+ prefix_separator_iterator=prefix_separator_iterator,
467
+ timeout=timeout,
468
+ )
469
+
470
+ response_for_status = _status_code_to_response.get(str(response.http_response.status))
471
+ if response_for_status:
472
+ api_response = response_for_status.deserialize(
473
+ response,
474
+ self.api_client.configuration,
475
+ skip_deserialization=skip_deserialization
476
+ )
477
+ else:
478
+ # If response data is JSON then deserialize for SDK consumer convenience
479
+ is_json = api_client.JSONDetector._content_type_is_json(response.http_response.headers.get('Content-Type', ''))
480
+ api_response = api_client.ApiResponseWithoutDeserialization(
481
+ body=json.loads(response.http_response.data) if is_json else response.http_response.data,
482
+ response=response.http_response,
483
+ round_trip_time=response.round_trip_time,
484
+ status=response.http_response.status,
485
+ headers=response.http_response.headers,
486
+ )
487
+
488
+ if not 200 <= api_response.status <= 299:
489
+ raise exceptions.ApiException(api_response=api_response)
490
+
491
+ return api_response
492
+
493
+
494
+ class PlaceMlegOrder(BaseApi):
495
+ # this class is used by api classes that refer to endpoints with operationId fn names
496
+
497
+ async def aplace_mleg_order(
498
+ self,
499
+ body: typing.Optional[MlegTradeForm] = None,
500
+ order_type: typing.Optional[MlegOrderTypeStrict] = None,
501
+ time_in_force: typing.Optional[TimeInForceStrict] = None,
502
+ legs: typing.Optional[typing.List[MlegLeg]] = None,
503
+ user_id: typing.Optional[str] = None,
504
+ user_secret: typing.Optional[str] = None,
505
+ account_id: typing.Optional[str] = None,
506
+ limit_price: typing.Optional[typing.Optional[str]] = None,
507
+ stop_price: typing.Optional[typing.Optional[str]] = None,
508
+ price_effect: typing.Optional[MlegPriceEffectStrictNullable] = None,
509
+ query_params: typing.Optional[dict] = {},
510
+ path_params: typing.Optional[dict] = {},
511
+ **kwargs,
512
+ ) -> typing.Union[
513
+ ApiResponseFor200Async,
514
+ api_client.ApiResponseWithoutDeserializationAsync,
515
+ AsyncGeneratorResponse,
516
+ ]:
517
+ args = self._place_mleg_order_mapped_args(
518
+ body=body,
519
+ query_params=query_params,
520
+ path_params=path_params,
521
+ order_type=order_type,
522
+ time_in_force=time_in_force,
523
+ legs=legs,
524
+ user_id=user_id,
525
+ user_secret=user_secret,
526
+ account_id=account_id,
527
+ limit_price=limit_price,
528
+ stop_price=stop_price,
529
+ price_effect=price_effect,
530
+ )
531
+ return await self._aplace_mleg_order_oapg(
532
+ body=args.body,
533
+ query_params=args.query,
534
+ path_params=args.path,
535
+ **kwargs,
536
+ )
537
+
538
+ def place_mleg_order(
539
+ self,
540
+ body: typing.Optional[MlegTradeForm] = None,
541
+ order_type: typing.Optional[MlegOrderTypeStrict] = None,
542
+ time_in_force: typing.Optional[TimeInForceStrict] = None,
543
+ legs: typing.Optional[typing.List[MlegLeg]] = None,
544
+ user_id: typing.Optional[str] = None,
545
+ user_secret: typing.Optional[str] = None,
546
+ account_id: typing.Optional[str] = None,
547
+ limit_price: typing.Optional[typing.Optional[str]] = None,
548
+ stop_price: typing.Optional[typing.Optional[str]] = None,
549
+ price_effect: typing.Optional[MlegPriceEffectStrictNullable] = None,
550
+ query_params: typing.Optional[dict] = {},
551
+ path_params: typing.Optional[dict] = {},
552
+ ) -> typing.Union[
553
+ ApiResponseFor200,
554
+ api_client.ApiResponseWithoutDeserialization,
555
+ ]:
556
+ """ Places a multi-leg option order. Only supported on certain option trading brokerages. https://snaptrade.notion.site/brokerages has information on brokerage trading support """
557
+ args = self._place_mleg_order_mapped_args(
558
+ body=body,
559
+ query_params=query_params,
560
+ path_params=path_params,
561
+ order_type=order_type,
562
+ time_in_force=time_in_force,
563
+ legs=legs,
564
+ user_id=user_id,
565
+ user_secret=user_secret,
566
+ account_id=account_id,
567
+ limit_price=limit_price,
568
+ stop_price=stop_price,
569
+ price_effect=price_effect,
570
+ )
571
+ return self._place_mleg_order_oapg(
572
+ body=args.body,
573
+ query_params=args.query,
574
+ path_params=args.path,
575
+ )
576
+
577
+ class ApiForpost(BaseApi):
578
+ # this class is used by api classes that refer to endpoints by path and http method names
579
+
580
+ async def apost(
581
+ self,
582
+ body: typing.Optional[MlegTradeForm] = None,
583
+ order_type: typing.Optional[MlegOrderTypeStrict] = None,
584
+ time_in_force: typing.Optional[TimeInForceStrict] = None,
585
+ legs: typing.Optional[typing.List[MlegLeg]] = None,
586
+ user_id: typing.Optional[str] = None,
587
+ user_secret: typing.Optional[str] = None,
588
+ account_id: typing.Optional[str] = None,
589
+ limit_price: typing.Optional[typing.Optional[str]] = None,
590
+ stop_price: typing.Optional[typing.Optional[str]] = None,
591
+ price_effect: typing.Optional[MlegPriceEffectStrictNullable] = None,
592
+ query_params: typing.Optional[dict] = {},
593
+ path_params: typing.Optional[dict] = {},
594
+ **kwargs,
595
+ ) -> typing.Union[
596
+ ApiResponseFor200Async,
597
+ api_client.ApiResponseWithoutDeserializationAsync,
598
+ AsyncGeneratorResponse,
599
+ ]:
600
+ args = self._place_mleg_order_mapped_args(
601
+ body=body,
602
+ query_params=query_params,
603
+ path_params=path_params,
604
+ order_type=order_type,
605
+ time_in_force=time_in_force,
606
+ legs=legs,
607
+ user_id=user_id,
608
+ user_secret=user_secret,
609
+ account_id=account_id,
610
+ limit_price=limit_price,
611
+ stop_price=stop_price,
612
+ price_effect=price_effect,
613
+ )
614
+ return await self._aplace_mleg_order_oapg(
615
+ body=args.body,
616
+ query_params=args.query,
617
+ path_params=args.path,
618
+ **kwargs,
619
+ )
620
+
621
+ def post(
622
+ self,
623
+ body: typing.Optional[MlegTradeForm] = None,
624
+ order_type: typing.Optional[MlegOrderTypeStrict] = None,
625
+ time_in_force: typing.Optional[TimeInForceStrict] = None,
626
+ legs: typing.Optional[typing.List[MlegLeg]] = None,
627
+ user_id: typing.Optional[str] = None,
628
+ user_secret: typing.Optional[str] = None,
629
+ account_id: typing.Optional[str] = None,
630
+ limit_price: typing.Optional[typing.Optional[str]] = None,
631
+ stop_price: typing.Optional[typing.Optional[str]] = None,
632
+ price_effect: typing.Optional[MlegPriceEffectStrictNullable] = None,
633
+ query_params: typing.Optional[dict] = {},
634
+ path_params: typing.Optional[dict] = {},
635
+ ) -> typing.Union[
636
+ ApiResponseFor200,
637
+ api_client.ApiResponseWithoutDeserialization,
638
+ ]:
639
+ """ Places a multi-leg option order. Only supported on certain option trading brokerages. https://snaptrade.notion.site/brokerages has information on brokerage trading support """
640
+ args = self._place_mleg_order_mapped_args(
641
+ body=body,
642
+ query_params=query_params,
643
+ path_params=path_params,
644
+ order_type=order_type,
645
+ time_in_force=time_in_force,
646
+ legs=legs,
647
+ user_id=user_id,
648
+ user_secret=user_secret,
649
+ account_id=account_id,
650
+ limit_price=limit_price,
651
+ stop_price=stop_price,
652
+ price_effect=price_effect,
653
+ )
654
+ return self._place_mleg_order_oapg(
655
+ body=args.body,
656
+ query_params=args.query,
657
+ path_params=args.path,
658
+ )
659
+
@@ -0,0 +1,7 @@
1
+ # do not import all endpoints into this module because that uses a lot of memory and stack frames
2
+ # if you need the ability to import all endpoints from this module, import them with
3
+ # from snaptrade_client.paths.accounts_account_id_trading_replace import Api
4
+
5
+ from snaptrade_client.paths import PathValues
6
+
7
+ path = PathValues.ACCOUNTS_ACCOUNT_ID_TRADING_REPLACE