publicdotcom-cli 1.0.0__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 (146) hide show
  1. publicdotcom_cli/__init__.py +3 -0
  2. publicdotcom_cli/__main__.py +5 -0
  3. publicdotcom_cli/_generated/__init__.py +8 -0
  4. publicdotcom_cli/_generated/api/__init__.py +1 -0
  5. publicdotcom_cli/_generated/api/account_details/__init__.py +1 -0
  6. publicdotcom_cli/_generated/api/account_details/get_account_portfolio_v2.py +182 -0
  7. publicdotcom_cli/_generated/api/account_details/get_history.py +250 -0
  8. publicdotcom_cli/_generated/api/authorization/__init__.py +1 -0
  9. publicdotcom_cli/_generated/api/authorization/create_personal_access_token.py +230 -0
  10. publicdotcom_cli/_generated/api/instrument_details/__init__.py +1 -0
  11. publicdotcom_cli/_generated/api/instrument_details/get_all_instruments.py +303 -0
  12. publicdotcom_cli/_generated/api/instrument_details/get_instrument.py +170 -0
  13. publicdotcom_cli/_generated/api/list_accounts/__init__.py +1 -0
  14. publicdotcom_cli/_generated/api/list_accounts/get_accounts.py +172 -0
  15. publicdotcom_cli/_generated/api/market_data/__init__.py +1 -0
  16. publicdotcom_cli/_generated/api/market_data/get_option_chain.py +200 -0
  17. publicdotcom_cli/_generated/api/market_data/get_option_expirations.py +210 -0
  18. publicdotcom_cli/_generated/api/market_data/get_quotes.py +200 -0
  19. publicdotcom_cli/_generated/api/option_details/__init__.py +1 -0
  20. publicdotcom_cli/_generated/api/option_details/get_option_greeks.py +194 -0
  21. publicdotcom_cli/_generated/api/order_placement/__init__.py +1 -0
  22. publicdotcom_cli/_generated/api/order_placement/cancel_order.py +123 -0
  23. publicdotcom_cli/_generated/api/order_placement/get_order.py +206 -0
  24. publicdotcom_cli/_generated/api/order_placement/place_multileg_order.py +214 -0
  25. publicdotcom_cli/_generated/api/order_placement/place_order.py +222 -0
  26. publicdotcom_cli/_generated/api/order_placement/preflight_multi_leg.py +276 -0
  27. publicdotcom_cli/_generated/api/order_placement/preflight_single_leg.py +220 -0
  28. publicdotcom_cli/_generated/api/order_placement/replace_order.py +222 -0
  29. publicdotcom_cli/_generated/client.py +272 -0
  30. publicdotcom_cli/_generated/errors.py +16 -0
  31. publicdotcom_cli/_generated/models/__init__.py +417 -0
  32. publicdotcom_cli/_generated/models/com_hellopublic_holdingsystem_core_types_option_price_increment.py +71 -0
  33. publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_api_personal_create_access_token_request.py +84 -0
  34. publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_api_personal_create_access_token_response.py +61 -0
  35. publicdotcom_cli/_generated/models/com_hellopublic_userapiauthservice_domain_error_error_body.py +70 -0
  36. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings.py +161 -0
  37. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_account_type.py +14 -0
  38. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_brokerage_account_type.py +9 -0
  39. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_options_level.py +12 -0
  40. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_response.py +85 -0
  41. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_account_account_settings_trade_permissions.py +11 -0
  42. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_response_page.py +195 -0
  43. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction.py +263 -0
  44. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_direction.py +9 -0
  45. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_security_type.py +13 -0
  46. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_side.py +9 -0
  47. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_sub_type.py +19 -0
  48. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction_type.py +10 -0
  49. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_chain_request.py +85 -0
  50. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_chain_response.py +115 -0
  51. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_expirations_request.py +75 -0
  52. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_option_expirations_response.py +81 -0
  53. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote.py +272 -0
  54. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_outcome.py +9 -0
  55. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_request.py +84 -0
  56. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_gateway_quote_response.py +87 -0
  57. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_one_day_change.py +74 -0
  58. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_marketdata_quote_option_details.py +135 -0
  59. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_greek_response.py +113 -0
  60. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_greeks_response.py +86 -0
  61. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_options_option_greeks_type_0.py +117 -0
  62. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_cancel_replace_order_request.py +139 -0
  63. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_cancel_replace_order_request_order_type.py +11 -0
  64. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto.py +265 -0
  65. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_fractional_trading.py +10 -0
  66. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_option_spread_trading.py +10 -0
  67. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_option_trading.py +10 -0
  68. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_shorting_availability.py +10 -0
  69. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_dto_trading.py +10 -0
  70. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_instrument_response.py +87 -0
  71. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_multileg_order_request.py +141 -0
  72. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_multileg_order_request_type.py +11 -0
  73. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request.py +231 -0
  74. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_equity_market_session.py +9 -0
  75. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_open_close_indicator.py +9 -0
  76. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_order_side.py +9 -0
  77. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_request_order_type.py +11 -0
  78. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_api_order_result.py +69 -0
  79. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_leg_instrument.py +73 -0
  80. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_leg_instrument_type.py +9 -0
  81. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order.py +334 -0
  82. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_instrument.py +73 -0
  83. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_instrument_type.py +15 -0
  84. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg.py +125 -0
  85. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg_open_close_indicator.py +9 -0
  86. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_leg_side.py +9 -0
  87. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_open_close_indicator.py +9 -0
  88. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_side.py +9 -0
  89. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_status.py +17 -0
  90. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_order_type.py +11 -0
  91. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling.py +127 -0
  92. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling_availability.py +10 -0
  93. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_gateway_short_selling_uptick_rule.py +9 -0
  94. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details.py +67 -0
  95. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details_bond.py +74 -0
  96. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_instrumentdetails_api_instrument_details_crypto.py +92 -0
  97. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_order_expiration.py +87 -0
  98. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_order_order_expiration_time_in_force.py +9 -0
  99. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gain_type_0.py +88 -0
  100. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_buying_power.py +77 -0
  101. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_cost_basis_type_0.py +167 -0
  102. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_account_v2.py +233 -0
  103. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_account_v2_account_type.py +14 -0
  104. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_equity_v2.py +100 -0
  105. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_equity_v2_type.py +14 -0
  106. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_instrument.py +93 -0
  107. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_instrument_type.py +14 -0
  108. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_portfolio_position.py +352 -0
  109. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_strategy.py +276 -0
  110. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_gateway_strategy_leg.py +78 -0
  111. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_portfolio_price_type_0.py +79 -0
  112. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_margin_impact.py +70 -0
  113. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_margin_requirement.py +70 -0
  114. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_details.py +91 -0
  115. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_details_type.py +9 -0
  116. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_option_rebate.py +79 -0
  117. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_price_increment.py +80 -0
  118. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_gateway_regulatory_fees.py +118 -0
  119. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response.py +167 -0
  120. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response_open_close_indicator.py +9 -0
  121. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_leg_response_side.py +9 -0
  122. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_request.py +148 -0
  123. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_request_order_type.py +11 -0
  124. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_multi_leg_response.py +313 -0
  125. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request.py +225 -0
  126. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_equity_market_session.py +11 -0
  127. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_open_close_indicator.py +11 -0
  128. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_order_side.py +9 -0
  129. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_request_order_type.py +11 -0
  130. publicdotcom_cli/_generated/models/com_hellopublic_userapigateway_api_rest_preflight_preflight_single_leg_response.py +410 -0
  131. publicdotcom_cli/_generated/models/get_all_instruments_fractional_trading_filter_item.py +10 -0
  132. publicdotcom_cli/_generated/models/get_all_instruments_option_spread_trading_filter_item.py +10 -0
  133. publicdotcom_cli/_generated/models/get_all_instruments_option_trading_filter_item.py +10 -0
  134. publicdotcom_cli/_generated/models/get_all_instruments_trading_filter_item.py +10 -0
  135. publicdotcom_cli/_generated/models/get_all_instruments_type_filter_item.py +15 -0
  136. publicdotcom_cli/_generated/models/get_instrument_type.py +15 -0
  137. publicdotcom_cli/_generated/types.py +54 -0
  138. publicdotcom_cli/cli.py +761 -0
  139. publicdotcom_cli/client.py +83 -0
  140. publicdotcom_cli/config.py +222 -0
  141. publicdotcom_cli/output.py +77 -0
  142. publicdotcom_cli/payloads.py +36 -0
  143. publicdotcom_cli-1.0.0.dist-info/METADATA +256 -0
  144. publicdotcom_cli-1.0.0.dist-info/RECORD +146 -0
  145. publicdotcom_cli-1.0.0.dist-info/WHEEL +4 -0
  146. publicdotcom_cli-1.0.0.dist-info/entry_points.txt +2 -0
@@ -0,0 +1,303 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.com_hellopublic_userapigateway_api_rest_order_api_instrument_response import (
9
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse,
10
+ )
11
+ from ...models.get_all_instruments_fractional_trading_filter_item import (
12
+ GetAllInstrumentsFractionalTradingFilterItem,
13
+ )
14
+ from ...models.get_all_instruments_option_spread_trading_filter_item import (
15
+ GetAllInstrumentsOptionSpreadTradingFilterItem,
16
+ )
17
+ from ...models.get_all_instruments_option_trading_filter_item import (
18
+ GetAllInstrumentsOptionTradingFilterItem,
19
+ )
20
+ from ...models.get_all_instruments_trading_filter_item import GetAllInstrumentsTradingFilterItem
21
+ from ...models.get_all_instruments_type_filter_item import GetAllInstrumentsTypeFilterItem
22
+ from ...types import UNSET, Response, Unset
23
+
24
+
25
+ def _get_kwargs(
26
+ *,
27
+ type_filter: list[GetAllInstrumentsTypeFilterItem] | Unset = UNSET,
28
+ trading_filter: list[GetAllInstrumentsTradingFilterItem] | Unset = UNSET,
29
+ fractional_trading_filter: list[GetAllInstrumentsFractionalTradingFilterItem] | Unset = UNSET,
30
+ option_trading_filter: list[GetAllInstrumentsOptionTradingFilterItem] | Unset = UNSET,
31
+ option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
32
+ | Unset = UNSET,
33
+ ) -> dict[str, Any]:
34
+
35
+ params: dict[str, Any] = {}
36
+
37
+ json_type_filter: list[str] | Unset = UNSET
38
+ if not isinstance(type_filter, Unset):
39
+ json_type_filter = []
40
+ for type_filter_item_data in type_filter:
41
+ type_filter_item = type_filter_item_data.value
42
+ json_type_filter.append(type_filter_item)
43
+
44
+ params["typeFilter"] = json_type_filter
45
+
46
+ json_trading_filter: list[str] | Unset = UNSET
47
+ if not isinstance(trading_filter, Unset):
48
+ json_trading_filter = []
49
+ for trading_filter_item_data in trading_filter:
50
+ trading_filter_item = trading_filter_item_data.value
51
+ json_trading_filter.append(trading_filter_item)
52
+
53
+ params["tradingFilter"] = json_trading_filter
54
+
55
+ json_fractional_trading_filter: list[str] | Unset = UNSET
56
+ if not isinstance(fractional_trading_filter, Unset):
57
+ json_fractional_trading_filter = []
58
+ for fractional_trading_filter_item_data in fractional_trading_filter:
59
+ fractional_trading_filter_item = fractional_trading_filter_item_data.value
60
+ json_fractional_trading_filter.append(fractional_trading_filter_item)
61
+
62
+ params["fractionalTradingFilter"] = json_fractional_trading_filter
63
+
64
+ json_option_trading_filter: list[str] | Unset = UNSET
65
+ if not isinstance(option_trading_filter, Unset):
66
+ json_option_trading_filter = []
67
+ for option_trading_filter_item_data in option_trading_filter:
68
+ option_trading_filter_item = option_trading_filter_item_data.value
69
+ json_option_trading_filter.append(option_trading_filter_item)
70
+
71
+ params["optionTradingFilter"] = json_option_trading_filter
72
+
73
+ json_option_spread_trading_filter: list[str] | Unset = UNSET
74
+ if not isinstance(option_spread_trading_filter, Unset):
75
+ json_option_spread_trading_filter = []
76
+ for option_spread_trading_filter_item_data in option_spread_trading_filter:
77
+ option_spread_trading_filter_item = option_spread_trading_filter_item_data.value
78
+ json_option_spread_trading_filter.append(option_spread_trading_filter_item)
79
+
80
+ params["optionSpreadTradingFilter"] = json_option_spread_trading_filter
81
+
82
+ params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
83
+
84
+ _kwargs: dict[str, Any] = {
85
+ "method": "get",
86
+ "url": "/userapigateway/trading/instruments",
87
+ "params": params,
88
+ }
89
+
90
+ return _kwargs
91
+
92
+
93
+ def _parse_response(
94
+ *, client: AuthenticatedClient | Client, response: httpx.Response
95
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse | None:
96
+ if response.status_code == 200:
97
+ response_200 = ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse.from_dict(
98
+ response.json()
99
+ )
100
+
101
+ return response_200
102
+
103
+ if client.raise_on_unexpected_status:
104
+ raise errors.UnexpectedStatus(response.status_code, response.content)
105
+ else:
106
+ return None
107
+
108
+
109
+ def _build_response(
110
+ *, client: AuthenticatedClient | Client, response: httpx.Response
111
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]:
112
+ return Response(
113
+ status_code=HTTPStatus(response.status_code),
114
+ content=response.content,
115
+ headers=response.headers,
116
+ parsed=_parse_response(client=client, response=response),
117
+ )
118
+
119
+
120
+ def sync_detailed(
121
+ *,
122
+ client: AuthenticatedClient | Client,
123
+ type_filter: list[GetAllInstrumentsTypeFilterItem] | Unset = UNSET,
124
+ trading_filter: list[GetAllInstrumentsTradingFilterItem] | Unset = UNSET,
125
+ fractional_trading_filter: list[GetAllInstrumentsFractionalTradingFilterItem] | Unset = UNSET,
126
+ option_trading_filter: list[GetAllInstrumentsOptionTradingFilterItem] | Unset = UNSET,
127
+ option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
128
+ | Unset = UNSET,
129
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]:
130
+ """Retrieves all available trading instruments with optional filtering capabilities.
131
+
132
+ Retrieves all available trading instruments with optional filtering capabilities.
133
+
134
+ This endpoint returns a comprehensive list of instruments available for trading,
135
+ with support for filtering by security type and various trading capabilities.
136
+ All filter parameters are optional and can be combined to narrow down results.
137
+
138
+ Args:
139
+ type_filter (list[GetAllInstrumentsTypeFilterItem] | Unset):
140
+ trading_filter (list[GetAllInstrumentsTradingFilterItem] | Unset):
141
+ fractional_trading_filter (list[GetAllInstrumentsFractionalTradingFilterItem] | Unset):
142
+ option_trading_filter (list[GetAllInstrumentsOptionTradingFilterItem] | Unset):
143
+ option_spread_trading_filter (list[GetAllInstrumentsOptionSpreadTradingFilterItem] |
144
+ Unset):
145
+
146
+ Raises:
147
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
148
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
149
+
150
+ Returns:
151
+ Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]
152
+ """
153
+
154
+ kwargs = _get_kwargs(
155
+ type_filter=type_filter,
156
+ trading_filter=trading_filter,
157
+ fractional_trading_filter=fractional_trading_filter,
158
+ option_trading_filter=option_trading_filter,
159
+ option_spread_trading_filter=option_spread_trading_filter,
160
+ )
161
+
162
+ response = client.get_httpx_client().request(
163
+ **kwargs,
164
+ )
165
+
166
+ return _build_response(client=client, response=response)
167
+
168
+
169
+ def sync(
170
+ *,
171
+ client: AuthenticatedClient | Client,
172
+ type_filter: list[GetAllInstrumentsTypeFilterItem] | Unset = UNSET,
173
+ trading_filter: list[GetAllInstrumentsTradingFilterItem] | Unset = UNSET,
174
+ fractional_trading_filter: list[GetAllInstrumentsFractionalTradingFilterItem] | Unset = UNSET,
175
+ option_trading_filter: list[GetAllInstrumentsOptionTradingFilterItem] | Unset = UNSET,
176
+ option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
177
+ | Unset = UNSET,
178
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse | None:
179
+ """Retrieves all available trading instruments with optional filtering capabilities.
180
+
181
+ Retrieves all available trading instruments with optional filtering capabilities.
182
+
183
+ This endpoint returns a comprehensive list of instruments available for trading,
184
+ with support for filtering by security type and various trading capabilities.
185
+ All filter parameters are optional and can be combined to narrow down results.
186
+
187
+ Args:
188
+ type_filter (list[GetAllInstrumentsTypeFilterItem] | Unset):
189
+ trading_filter (list[GetAllInstrumentsTradingFilterItem] | Unset):
190
+ fractional_trading_filter (list[GetAllInstrumentsFractionalTradingFilterItem] | Unset):
191
+ option_trading_filter (list[GetAllInstrumentsOptionTradingFilterItem] | Unset):
192
+ option_spread_trading_filter (list[GetAllInstrumentsOptionSpreadTradingFilterItem] |
193
+ Unset):
194
+
195
+ Raises:
196
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
197
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
198
+
199
+ Returns:
200
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse
201
+ """
202
+
203
+ return sync_detailed(
204
+ client=client,
205
+ type_filter=type_filter,
206
+ trading_filter=trading_filter,
207
+ fractional_trading_filter=fractional_trading_filter,
208
+ option_trading_filter=option_trading_filter,
209
+ option_spread_trading_filter=option_spread_trading_filter,
210
+ ).parsed
211
+
212
+
213
+ async def asyncio_detailed(
214
+ *,
215
+ client: AuthenticatedClient | Client,
216
+ type_filter: list[GetAllInstrumentsTypeFilterItem] | Unset = UNSET,
217
+ trading_filter: list[GetAllInstrumentsTradingFilterItem] | Unset = UNSET,
218
+ fractional_trading_filter: list[GetAllInstrumentsFractionalTradingFilterItem] | Unset = UNSET,
219
+ option_trading_filter: list[GetAllInstrumentsOptionTradingFilterItem] | Unset = UNSET,
220
+ option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
221
+ | Unset = UNSET,
222
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]:
223
+ """Retrieves all available trading instruments with optional filtering capabilities.
224
+
225
+ Retrieves all available trading instruments with optional filtering capabilities.
226
+
227
+ This endpoint returns a comprehensive list of instruments available for trading,
228
+ with support for filtering by security type and various trading capabilities.
229
+ All filter parameters are optional and can be combined to narrow down results.
230
+
231
+ Args:
232
+ type_filter (list[GetAllInstrumentsTypeFilterItem] | Unset):
233
+ trading_filter (list[GetAllInstrumentsTradingFilterItem] | Unset):
234
+ fractional_trading_filter (list[GetAllInstrumentsFractionalTradingFilterItem] | Unset):
235
+ option_trading_filter (list[GetAllInstrumentsOptionTradingFilterItem] | Unset):
236
+ option_spread_trading_filter (list[GetAllInstrumentsOptionSpreadTradingFilterItem] |
237
+ Unset):
238
+
239
+ Raises:
240
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
241
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
242
+
243
+ Returns:
244
+ Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse]
245
+ """
246
+
247
+ kwargs = _get_kwargs(
248
+ type_filter=type_filter,
249
+ trading_filter=trading_filter,
250
+ fractional_trading_filter=fractional_trading_filter,
251
+ option_trading_filter=option_trading_filter,
252
+ option_spread_trading_filter=option_spread_trading_filter,
253
+ )
254
+
255
+ response = await client.get_async_httpx_client().request(**kwargs)
256
+
257
+ return _build_response(client=client, response=response)
258
+
259
+
260
+ async def asyncio(
261
+ *,
262
+ client: AuthenticatedClient | Client,
263
+ type_filter: list[GetAllInstrumentsTypeFilterItem] | Unset = UNSET,
264
+ trading_filter: list[GetAllInstrumentsTradingFilterItem] | Unset = UNSET,
265
+ fractional_trading_filter: list[GetAllInstrumentsFractionalTradingFilterItem] | Unset = UNSET,
266
+ option_trading_filter: list[GetAllInstrumentsOptionTradingFilterItem] | Unset = UNSET,
267
+ option_spread_trading_filter: list[GetAllInstrumentsOptionSpreadTradingFilterItem]
268
+ | Unset = UNSET,
269
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse | None:
270
+ """Retrieves all available trading instruments with optional filtering capabilities.
271
+
272
+ Retrieves all available trading instruments with optional filtering capabilities.
273
+
274
+ This endpoint returns a comprehensive list of instruments available for trading,
275
+ with support for filtering by security type and various trading capabilities.
276
+ All filter parameters are optional and can be combined to narrow down results.
277
+
278
+ Args:
279
+ type_filter (list[GetAllInstrumentsTypeFilterItem] | Unset):
280
+ trading_filter (list[GetAllInstrumentsTradingFilterItem] | Unset):
281
+ fractional_trading_filter (list[GetAllInstrumentsFractionalTradingFilterItem] | Unset):
282
+ option_trading_filter (list[GetAllInstrumentsOptionTradingFilterItem] | Unset):
283
+ option_spread_trading_filter (list[GetAllInstrumentsOptionSpreadTradingFilterItem] |
284
+ Unset):
285
+
286
+ Raises:
287
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
288
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
289
+
290
+ Returns:
291
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentResponse
292
+ """
293
+
294
+ return (
295
+ await asyncio_detailed(
296
+ client=client,
297
+ type_filter=type_filter,
298
+ trading_filter=trading_filter,
299
+ fractional_trading_filter=fractional_trading_filter,
300
+ option_trading_filter=option_trading_filter,
301
+ option_spread_trading_filter=option_spread_trading_filter,
302
+ )
303
+ ).parsed
@@ -0,0 +1,170 @@
1
+ from http import HTTPStatus
2
+ from typing import Any
3
+ from urllib.parse import quote
4
+
5
+ import httpx
6
+
7
+ from ... import errors
8
+ from ...client import AuthenticatedClient, Client
9
+ from ...models.com_hellopublic_userapigateway_api_rest_order_api_instrument_dto import (
10
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto,
11
+ )
12
+ from ...models.get_instrument_type import GetInstrumentType
13
+ from ...types import Response
14
+
15
+
16
+ def _get_kwargs(
17
+ symbol: str,
18
+ type_: GetInstrumentType,
19
+ ) -> dict[str, Any]:
20
+
21
+ _kwargs: dict[str, Any] = {
22
+ "method": "get",
23
+ "url": "/userapigateway/trading/instruments/{symbol}/{type_}".format(
24
+ symbol=quote(str(symbol), safe=""),
25
+ type_=quote(str(type_), safe=""),
26
+ ),
27
+ }
28
+
29
+ return _kwargs
30
+
31
+
32
+ def _parse_response(
33
+ *, client: AuthenticatedClient | Client, response: httpx.Response
34
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
35
+ if response.status_code == 200:
36
+ response_200 = ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto.from_dict(
37
+ response.json()
38
+ )
39
+
40
+ return response_200
41
+
42
+ if client.raise_on_unexpected_status:
43
+ raise errors.UnexpectedStatus(response.status_code, response.content)
44
+ else:
45
+ return None
46
+
47
+
48
+ def _build_response(
49
+ *, client: AuthenticatedClient | Client, response: httpx.Response
50
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
51
+ return Response(
52
+ status_code=HTTPStatus(response.status_code),
53
+ content=response.content,
54
+ headers=response.headers,
55
+ parsed=_parse_response(client=client, response=response),
56
+ )
57
+
58
+
59
+ def sync_detailed(
60
+ symbol: str,
61
+ type_: GetInstrumentType,
62
+ *,
63
+ client: AuthenticatedClient | Client,
64
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
65
+ """
66
+ Args:
67
+ symbol (str):
68
+ type_ (GetInstrumentType):
69
+
70
+ Raises:
71
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
72
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
73
+
74
+ Returns:
75
+ Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
76
+ """
77
+
78
+ kwargs = _get_kwargs(
79
+ symbol=symbol,
80
+ type_=type_,
81
+ )
82
+
83
+ response = client.get_httpx_client().request(
84
+ **kwargs,
85
+ )
86
+
87
+ return _build_response(client=client, response=response)
88
+
89
+
90
+ def sync(
91
+ symbol: str,
92
+ type_: GetInstrumentType,
93
+ *,
94
+ client: AuthenticatedClient | Client,
95
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
96
+ """
97
+ Args:
98
+ symbol (str):
99
+ type_ (GetInstrumentType):
100
+
101
+ Raises:
102
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
103
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
104
+
105
+ Returns:
106
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
107
+ """
108
+
109
+ return sync_detailed(
110
+ symbol=symbol,
111
+ type_=type_,
112
+ client=client,
113
+ ).parsed
114
+
115
+
116
+ async def asyncio_detailed(
117
+ symbol: str,
118
+ type_: GetInstrumentType,
119
+ *,
120
+ client: AuthenticatedClient | Client,
121
+ ) -> Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]:
122
+ """
123
+ Args:
124
+ symbol (str):
125
+ type_ (GetInstrumentType):
126
+
127
+ Raises:
128
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
129
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
130
+
131
+ Returns:
132
+ Response[ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto]
133
+ """
134
+
135
+ kwargs = _get_kwargs(
136
+ symbol=symbol,
137
+ type_=type_,
138
+ )
139
+
140
+ response = await client.get_async_httpx_client().request(**kwargs)
141
+
142
+ return _build_response(client=client, response=response)
143
+
144
+
145
+ async def asyncio(
146
+ symbol: str,
147
+ type_: GetInstrumentType,
148
+ *,
149
+ client: AuthenticatedClient | Client,
150
+ ) -> ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto | None:
151
+ """
152
+ Args:
153
+ symbol (str):
154
+ type_ (GetInstrumentType):
155
+
156
+ Raises:
157
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
158
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
159
+
160
+ Returns:
161
+ ComHellopublicUserapigatewayApiRestOrderApiInstrumentDto
162
+ """
163
+
164
+ return (
165
+ await asyncio_detailed(
166
+ symbol=symbol,
167
+ type_=type_,
168
+ client=client,
169
+ )
170
+ ).parsed
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""
@@ -0,0 +1,172 @@
1
+ from http import HTTPStatus
2
+ from typing import Any, cast
3
+
4
+ import httpx
5
+
6
+ from ... import errors
7
+ from ...client import AuthenticatedClient, Client
8
+ from ...models.com_hellopublic_userapigateway_api_rest_account_account_settings_response import (
9
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse,
10
+ )
11
+ from ...types import Response
12
+
13
+
14
+ def _get_kwargs() -> dict[str, Any]:
15
+
16
+ _kwargs: dict[str, Any] = {
17
+ "method": "get",
18
+ "url": "/userapigateway/trading/account",
19
+ }
20
+
21
+ return _kwargs
22
+
23
+
24
+ def _parse_response(
25
+ *, client: AuthenticatedClient | Client, response: httpx.Response
26
+ ) -> Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse | None:
27
+ if response.status_code == 200:
28
+ response_200 = ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse.from_dict(
29
+ response.json()
30
+ )
31
+
32
+ return response_200
33
+
34
+ if response.status_code == 401:
35
+ response_401 = cast(Any, None)
36
+ return response_401
37
+
38
+ if response.status_code == 404:
39
+ response_404 = cast(Any, None)
40
+ return response_404
41
+
42
+ if client.raise_on_unexpected_status:
43
+ raise errors.UnexpectedStatus(response.status_code, response.content)
44
+ else:
45
+ return None
46
+
47
+
48
+ def _build_response(
49
+ *, client: AuthenticatedClient | Client, response: httpx.Response
50
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse]:
51
+ return Response(
52
+ status_code=HTTPStatus(response.status_code),
53
+ content=response.content,
54
+ headers=response.headers,
55
+ parsed=_parse_response(client=client, response=response),
56
+ )
57
+
58
+
59
+ def sync_detailed(
60
+ *,
61
+ client: AuthenticatedClient | Client,
62
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse]:
63
+ """Get accounts
64
+
65
+ Retrieves the list of financial accounts associated with the authenticated user.
66
+ This includes brokerage, retirement, and high-yield cash accounts.
67
+
68
+ The response contains account objects that represent each available account.
69
+
70
+ Note: The `accountId` returned by this endpoint is required for most subsequent API operations.
71
+ It serves as a stable, persistent identifier for the lifetime of the account.
72
+
73
+ Raises:
74
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
75
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
76
+
77
+ Returns:
78
+ Response[Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse]
79
+ """
80
+
81
+ kwargs = _get_kwargs()
82
+
83
+ response = client.get_httpx_client().request(
84
+ **kwargs,
85
+ )
86
+
87
+ return _build_response(client=client, response=response)
88
+
89
+
90
+ def sync(
91
+ *,
92
+ client: AuthenticatedClient | Client,
93
+ ) -> Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse | None:
94
+ """Get accounts
95
+
96
+ Retrieves the list of financial accounts associated with the authenticated user.
97
+ This includes brokerage, retirement, and high-yield cash accounts.
98
+
99
+ The response contains account objects that represent each available account.
100
+
101
+ Note: The `accountId` returned by this endpoint is required for most subsequent API operations.
102
+ It serves as a stable, persistent identifier for the lifetime of the account.
103
+
104
+ Raises:
105
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
106
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
107
+
108
+ Returns:
109
+ Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse
110
+ """
111
+
112
+ return sync_detailed(
113
+ client=client,
114
+ ).parsed
115
+
116
+
117
+ async def asyncio_detailed(
118
+ *,
119
+ client: AuthenticatedClient | Client,
120
+ ) -> Response[Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse]:
121
+ """Get accounts
122
+
123
+ Retrieves the list of financial accounts associated with the authenticated user.
124
+ This includes brokerage, retirement, and high-yield cash accounts.
125
+
126
+ The response contains account objects that represent each available account.
127
+
128
+ Note: The `accountId` returned by this endpoint is required for most subsequent API operations.
129
+ It serves as a stable, persistent identifier for the lifetime of the account.
130
+
131
+ Raises:
132
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
133
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
134
+
135
+ Returns:
136
+ Response[Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse]
137
+ """
138
+
139
+ kwargs = _get_kwargs()
140
+
141
+ response = await client.get_async_httpx_client().request(**kwargs)
142
+
143
+ return _build_response(client=client, response=response)
144
+
145
+
146
+ async def asyncio(
147
+ *,
148
+ client: AuthenticatedClient | Client,
149
+ ) -> Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse | None:
150
+ """Get accounts
151
+
152
+ Retrieves the list of financial accounts associated with the authenticated user.
153
+ This includes brokerage, retirement, and high-yield cash accounts.
154
+
155
+ The response contains account objects that represent each available account.
156
+
157
+ Note: The `accountId` returned by this endpoint is required for most subsequent API operations.
158
+ It serves as a stable, persistent identifier for the lifetime of the account.
159
+
160
+ Raises:
161
+ errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
162
+ httpx.TimeoutException: If the request takes longer than Client.timeout.
163
+
164
+ Returns:
165
+ Any | ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse
166
+ """
167
+
168
+ return (
169
+ await asyncio_detailed(
170
+ client=client,
171
+ )
172
+ ).parsed
@@ -0,0 +1 @@
1
+ """Contains endpoint functions for accessing the API"""