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,70 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ from ..types import UNSET, Unset
10
+
11
+ T = TypeVar("T", bound="ComHellopublicUserapiauthserviceDomainErrorErrorBody")
12
+
13
+
14
+ @_attrs_define
15
+ class ComHellopublicUserapiauthserviceDomainErrorErrorBody:
16
+ """
17
+ Attributes:
18
+ error_code (str | Unset):
19
+ message (str | Unset):
20
+ """
21
+
22
+ error_code: str | Unset = UNSET
23
+ message: str | Unset = UNSET
24
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
25
+
26
+ def to_dict(self) -> dict[str, Any]:
27
+ error_code = self.error_code
28
+
29
+ message = self.message
30
+
31
+ field_dict: dict[str, Any] = {}
32
+ field_dict.update(self.additional_properties)
33
+ field_dict.update({})
34
+ if error_code is not UNSET:
35
+ field_dict["errorCode"] = error_code
36
+ if message is not UNSET:
37
+ field_dict["message"] = message
38
+
39
+ return field_dict
40
+
41
+ @classmethod
42
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
43
+ d = dict(src_dict)
44
+ error_code = d.pop("errorCode", UNSET)
45
+
46
+ message = d.pop("message", UNSET)
47
+
48
+ com_hellopublic_userapiauthservice_domain_error_error_body = cls(
49
+ error_code=error_code,
50
+ message=message,
51
+ )
52
+
53
+ com_hellopublic_userapiauthservice_domain_error_error_body.additional_properties = d
54
+ return com_hellopublic_userapiauthservice_domain_error_error_body
55
+
56
+ @property
57
+ def additional_keys(self) -> list[str]:
58
+ return list(self.additional_properties.keys())
59
+
60
+ def __getitem__(self, key: str) -> Any:
61
+ return self.additional_properties[key]
62
+
63
+ def __setitem__(self, key: str, value: Any) -> None:
64
+ self.additional_properties[key] = value
65
+
66
+ def __delitem__(self, key: str) -> None:
67
+ del self.additional_properties[key]
68
+
69
+ def __contains__(self, key: str) -> bool:
70
+ return key in self.additional_properties
@@ -0,0 +1,161 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings_account_type import (
10
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType,
11
+ )
12
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings_brokerage_account_type import (
13
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType,
14
+ )
15
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings_options_level import (
16
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel,
17
+ )
18
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings_trade_permissions import (
19
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions,
20
+ )
21
+ from ..types import UNSET, Unset
22
+
23
+ T = TypeVar("T", bound="ComHellopublicUserapigatewayApiRestAccountAccountSettings")
24
+
25
+
26
+ @_attrs_define
27
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettings:
28
+ """
29
+ Attributes:
30
+ account_id (str | Unset):
31
+ account_type (ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType | Unset):
32
+ options_level (ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel | Unset):
33
+ brokerage_account_type (ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType | Unset):
34
+ trade_permissions (ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions | Unset):
35
+ """
36
+
37
+ account_id: str | Unset = UNSET
38
+ account_type: ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType | Unset = (
39
+ UNSET
40
+ )
41
+ options_level: ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel | Unset = (
42
+ UNSET
43
+ )
44
+ brokerage_account_type: (
45
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType | Unset
46
+ ) = UNSET
47
+ trade_permissions: (
48
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions | Unset
49
+ ) = UNSET
50
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
51
+
52
+ def to_dict(self) -> dict[str, Any]:
53
+ account_id = self.account_id
54
+
55
+ account_type: str | Unset = UNSET
56
+ if not isinstance(self.account_type, Unset):
57
+ account_type = self.account_type.value
58
+
59
+ options_level: str | Unset = UNSET
60
+ if not isinstance(self.options_level, Unset):
61
+ options_level = self.options_level.value
62
+
63
+ brokerage_account_type: str | Unset = UNSET
64
+ if not isinstance(self.brokerage_account_type, Unset):
65
+ brokerage_account_type = self.brokerage_account_type.value
66
+
67
+ trade_permissions: str | Unset = UNSET
68
+ if not isinstance(self.trade_permissions, Unset):
69
+ trade_permissions = self.trade_permissions.value
70
+
71
+ field_dict: dict[str, Any] = {}
72
+ field_dict.update(self.additional_properties)
73
+ field_dict.update({})
74
+ if account_id is not UNSET:
75
+ field_dict["accountId"] = account_id
76
+ if account_type is not UNSET:
77
+ field_dict["accountType"] = account_type
78
+ if options_level is not UNSET:
79
+ field_dict["optionsLevel"] = options_level
80
+ if brokerage_account_type is not UNSET:
81
+ field_dict["brokerageAccountType"] = brokerage_account_type
82
+ if trade_permissions is not UNSET:
83
+ field_dict["tradePermissions"] = trade_permissions
84
+
85
+ return field_dict
86
+
87
+ @classmethod
88
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
89
+ d = dict(src_dict)
90
+ account_id = d.pop("accountId", UNSET)
91
+
92
+ _account_type = d.pop("accountType", UNSET)
93
+ account_type: ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType | Unset
94
+ if isinstance(_account_type, Unset):
95
+ account_type = UNSET
96
+ else:
97
+ account_type = ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType(
98
+ _account_type
99
+ )
100
+
101
+ _options_level = d.pop("optionsLevel", UNSET)
102
+ options_level: ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel | Unset
103
+ if isinstance(_options_level, Unset):
104
+ options_level = UNSET
105
+ else:
106
+ options_level = ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel(
107
+ _options_level
108
+ )
109
+
110
+ _brokerage_account_type = d.pop("brokerageAccountType", UNSET)
111
+ brokerage_account_type: (
112
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType | Unset
113
+ )
114
+ if isinstance(_brokerage_account_type, Unset):
115
+ brokerage_account_type = UNSET
116
+ else:
117
+ brokerage_account_type = (
118
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType(
119
+ _brokerage_account_type
120
+ )
121
+ )
122
+
123
+ _trade_permissions = d.pop("tradePermissions", UNSET)
124
+ trade_permissions: (
125
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions | Unset
126
+ )
127
+ if isinstance(_trade_permissions, Unset):
128
+ trade_permissions = UNSET
129
+ else:
130
+ trade_permissions = (
131
+ ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions(
132
+ _trade_permissions
133
+ )
134
+ )
135
+
136
+ com_hellopublic_userapigateway_api_rest_account_account_settings = cls(
137
+ account_id=account_id,
138
+ account_type=account_type,
139
+ options_level=options_level,
140
+ brokerage_account_type=brokerage_account_type,
141
+ trade_permissions=trade_permissions,
142
+ )
143
+
144
+ com_hellopublic_userapigateway_api_rest_account_account_settings.additional_properties = d
145
+ return com_hellopublic_userapigateway_api_rest_account_account_settings
146
+
147
+ @property
148
+ def additional_keys(self) -> list[str]:
149
+ return list(self.additional_properties.keys())
150
+
151
+ def __getitem__(self, key: str) -> Any:
152
+ return self.additional_properties[key]
153
+
154
+ def __setitem__(self, key: str, value: Any) -> None:
155
+ self.additional_properties[key] = value
156
+
157
+ def __delitem__(self, key: str) -> None:
158
+ del self.additional_properties[key]
159
+
160
+ def __contains__(self, key: str) -> bool:
161
+ return key in self.additional_properties
@@ -0,0 +1,14 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettingsAccountType(str, Enum):
5
+ BOND_ACCOUNT = "BOND_ACCOUNT"
6
+ BROKERAGE = "BROKERAGE"
7
+ HIGH_YIELD = "HIGH_YIELD"
8
+ RIA_ASSET = "RIA_ASSET"
9
+ ROTH_IRA = "ROTH_IRA"
10
+ TRADITIONAL_IRA = "TRADITIONAL_IRA"
11
+ TREASURY = "TREASURY"
12
+
13
+ def __str__(self) -> str:
14
+ return str(self.value)
@@ -0,0 +1,9 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettingsBrokerageAccountType(str, Enum):
5
+ CASH = "CASH"
6
+ MARGIN = "MARGIN"
7
+
8
+ def __str__(self) -> str:
9
+ return str(self.value)
@@ -0,0 +1,12 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettingsOptionsLevel(str, Enum):
5
+ LEVEL_1 = "LEVEL_1"
6
+ LEVEL_2 = "LEVEL_2"
7
+ LEVEL_3 = "LEVEL_3"
8
+ LEVEL_4 = "LEVEL_4"
9
+ NONE = "NONE"
10
+
11
+ def __str__(self) -> str:
12
+ return str(self.value)
@@ -0,0 +1,85 @@
1
+ from __future__ import annotations
2
+
3
+ from collections.abc import Mapping
4
+ from typing import TYPE_CHECKING, Any, TypeVar
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+
9
+ from ..types import UNSET, Unset
10
+
11
+ if TYPE_CHECKING:
12
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings import (
13
+ ComHellopublicUserapigatewayApiRestAccountAccountSettings,
14
+ )
15
+
16
+
17
+ T = TypeVar("T", bound="ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse")
18
+
19
+
20
+ @_attrs_define
21
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettingsResponse:
22
+ """
23
+ Attributes:
24
+ accounts (list[ComHellopublicUserapigatewayApiRestAccountAccountSettings] | Unset):
25
+ """
26
+
27
+ accounts: list[ComHellopublicUserapigatewayApiRestAccountAccountSettings] | Unset = UNSET
28
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
29
+
30
+ def to_dict(self) -> dict[str, Any]:
31
+ accounts: list[dict[str, Any]] | Unset = UNSET
32
+ if not isinstance(self.accounts, Unset):
33
+ accounts = []
34
+ for accounts_item_data in self.accounts:
35
+ accounts_item = accounts_item_data.to_dict()
36
+ accounts.append(accounts_item)
37
+
38
+ field_dict: dict[str, Any] = {}
39
+ field_dict.update(self.additional_properties)
40
+ field_dict.update({})
41
+ if accounts is not UNSET:
42
+ field_dict["accounts"] = accounts
43
+
44
+ return field_dict
45
+
46
+ @classmethod
47
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
48
+ from ..models.com_hellopublic_userapigateway_api_rest_account_account_settings import (
49
+ ComHellopublicUserapigatewayApiRestAccountAccountSettings,
50
+ )
51
+
52
+ d = dict(src_dict)
53
+ _accounts = d.pop("accounts", UNSET)
54
+ accounts: list[ComHellopublicUserapigatewayApiRestAccountAccountSettings] | Unset = UNSET
55
+ if _accounts is not UNSET:
56
+ accounts = []
57
+ for accounts_item_data in _accounts:
58
+ accounts_item = ComHellopublicUserapigatewayApiRestAccountAccountSettings.from_dict(
59
+ accounts_item_data
60
+ )
61
+
62
+ accounts.append(accounts_item)
63
+
64
+ com_hellopublic_userapigateway_api_rest_account_account_settings_response = cls(
65
+ accounts=accounts,
66
+ )
67
+
68
+ com_hellopublic_userapigateway_api_rest_account_account_settings_response.additional_properties = d
69
+ return com_hellopublic_userapigateway_api_rest_account_account_settings_response
70
+
71
+ @property
72
+ def additional_keys(self) -> list[str]:
73
+ return list(self.additional_properties.keys())
74
+
75
+ def __getitem__(self, key: str) -> Any:
76
+ return self.additional_properties[key]
77
+
78
+ def __setitem__(self, key: str, value: Any) -> None:
79
+ self.additional_properties[key] = value
80
+
81
+ def __delitem__(self, key: str) -> None:
82
+ del self.additional_properties[key]
83
+
84
+ def __contains__(self, key: str) -> bool:
85
+ return key in self.additional_properties
@@ -0,0 +1,11 @@
1
+ from enum import Enum
2
+
3
+
4
+ class ComHellopublicUserapigatewayApiRestAccountAccountSettingsTradePermissions(str, Enum):
5
+ BUY_AND_SELL = "BUY_AND_SELL"
6
+ RESTRICTED_CLOSE_ONLY = "RESTRICTED_CLOSE_ONLY"
7
+ RESTRICTED_NO_TRADING = "RESTRICTED_NO_TRADING"
8
+ RESTRICTED_SETTLED_FUNDS_ONLY = "RESTRICTED_SETTLED_FUNDS_ONLY"
9
+
10
+ def __str__(self) -> str:
11
+ return str(self.value)
@@ -0,0 +1,195 @@
1
+ from __future__ import annotations
2
+
3
+ import datetime
4
+ from collections.abc import Mapping
5
+ from typing import TYPE_CHECKING, Any, TypeVar, cast
6
+
7
+ from attrs import define as _attrs_define
8
+ from attrs import field as _attrs_field
9
+ from dateutil.parser import isoparse
10
+
11
+ from ..types import UNSET, Unset
12
+
13
+ if TYPE_CHECKING:
14
+ from ..models.com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction import (
15
+ ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction,
16
+ )
17
+
18
+
19
+ T = TypeVar("T", bound="ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage")
20
+
21
+
22
+ @_attrs_define
23
+ class ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryResponsePage:
24
+ """Gateway history response page
25
+
26
+ Attributes:
27
+ transactions (list[ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction] | Unset): List of
28
+ transactions
29
+ next_token (None | str | Unset): Token to retrieve the next page of results
30
+ start (datetime.datetime | None | Unset): Start timestamp of the history query
31
+ end (datetime.datetime | None | Unset): End timestamp of the history query
32
+ page_size (int | None | Unset): Number of items to return
33
+ """
34
+
35
+ transactions: (
36
+ list[ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction] | Unset
37
+ ) = UNSET
38
+ next_token: None | str | Unset = UNSET
39
+ start: datetime.datetime | None | Unset = UNSET
40
+ end: datetime.datetime | None | Unset = UNSET
41
+ page_size: int | None | Unset = UNSET
42
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
43
+
44
+ def to_dict(self) -> dict[str, Any]:
45
+ transactions: list[dict[str, Any]] | Unset = UNSET
46
+ if not isinstance(self.transactions, Unset):
47
+ transactions = []
48
+ for transactions_item_data in self.transactions:
49
+ transactions_item = transactions_item_data.to_dict()
50
+ transactions.append(transactions_item)
51
+
52
+ next_token: None | str | Unset
53
+ if isinstance(self.next_token, Unset):
54
+ next_token = UNSET
55
+ else:
56
+ next_token = self.next_token
57
+
58
+ start: None | str | Unset
59
+ if isinstance(self.start, Unset):
60
+ start = UNSET
61
+ elif isinstance(self.start, datetime.datetime):
62
+ start = self.start.isoformat()
63
+ else:
64
+ start = self.start
65
+
66
+ end: None | str | Unset
67
+ if isinstance(self.end, Unset):
68
+ end = UNSET
69
+ elif isinstance(self.end, datetime.datetime):
70
+ end = self.end.isoformat()
71
+ else:
72
+ end = self.end
73
+
74
+ page_size: int | None | Unset
75
+ if isinstance(self.page_size, Unset):
76
+ page_size = UNSET
77
+ else:
78
+ page_size = self.page_size
79
+
80
+ field_dict: dict[str, Any] = {}
81
+ field_dict.update(self.additional_properties)
82
+ field_dict.update({})
83
+ if transactions is not UNSET:
84
+ field_dict["transactions"] = transactions
85
+ if next_token is not UNSET:
86
+ field_dict["nextToken"] = next_token
87
+ if start is not UNSET:
88
+ field_dict["start"] = start
89
+ if end is not UNSET:
90
+ field_dict["end"] = end
91
+ if page_size is not UNSET:
92
+ field_dict["pageSize"] = page_size
93
+
94
+ return field_dict
95
+
96
+ @classmethod
97
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
98
+ from ..models.com_hellopublic_userapigateway_api_rest_history_gateway_history_transaction import (
99
+ ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction,
100
+ )
101
+
102
+ d = dict(src_dict)
103
+ _transactions = d.pop("transactions", UNSET)
104
+ transactions: (
105
+ list[ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction] | Unset
106
+ ) = UNSET
107
+ if _transactions is not UNSET:
108
+ transactions = []
109
+ for transactions_item_data in _transactions:
110
+ transactions_item = (
111
+ ComHellopublicUserapigatewayApiRestHistoryGatewayHistoryTransaction.from_dict(
112
+ transactions_item_data
113
+ )
114
+ )
115
+
116
+ transactions.append(transactions_item)
117
+
118
+ def _parse_next_token(data: object) -> None | str | Unset:
119
+ if data is None:
120
+ return data
121
+ if isinstance(data, Unset):
122
+ return data
123
+ return cast(None | str | Unset, data)
124
+
125
+ next_token = _parse_next_token(d.pop("nextToken", UNSET))
126
+
127
+ def _parse_start(data: object) -> datetime.datetime | None | Unset:
128
+ if data is None:
129
+ return data
130
+ if isinstance(data, Unset):
131
+ return data
132
+ try:
133
+ if not isinstance(data, str):
134
+ raise TypeError()
135
+ start_type_0 = isoparse(data)
136
+
137
+ return start_type_0
138
+ except (TypeError, ValueError, AttributeError, KeyError):
139
+ pass
140
+ return cast(datetime.datetime | None | Unset, data)
141
+
142
+ start = _parse_start(d.pop("start", UNSET))
143
+
144
+ def _parse_end(data: object) -> datetime.datetime | None | Unset:
145
+ if data is None:
146
+ return data
147
+ if isinstance(data, Unset):
148
+ return data
149
+ try:
150
+ if not isinstance(data, str):
151
+ raise TypeError()
152
+ end_type_0 = isoparse(data)
153
+
154
+ return end_type_0
155
+ except (TypeError, ValueError, AttributeError, KeyError):
156
+ pass
157
+ return cast(datetime.datetime | None | Unset, data)
158
+
159
+ end = _parse_end(d.pop("end", UNSET))
160
+
161
+ def _parse_page_size(data: object) -> int | None | Unset:
162
+ if data is None:
163
+ return data
164
+ if isinstance(data, Unset):
165
+ return data
166
+ return cast(int | None | Unset, data)
167
+
168
+ page_size = _parse_page_size(d.pop("pageSize", UNSET))
169
+
170
+ com_hellopublic_userapigateway_api_rest_history_gateway_history_response_page = cls(
171
+ transactions=transactions,
172
+ next_token=next_token,
173
+ start=start,
174
+ end=end,
175
+ page_size=page_size,
176
+ )
177
+
178
+ com_hellopublic_userapigateway_api_rest_history_gateway_history_response_page.additional_properties = d
179
+ return com_hellopublic_userapigateway_api_rest_history_gateway_history_response_page
180
+
181
+ @property
182
+ def additional_keys(self) -> list[str]:
183
+ return list(self.additional_properties.keys())
184
+
185
+ def __getitem__(self, key: str) -> Any:
186
+ return self.additional_properties[key]
187
+
188
+ def __setitem__(self, key: str, value: Any) -> None:
189
+ self.additional_properties[key] = value
190
+
191
+ def __delitem__(self, key: str) -> None:
192
+ del self.additional_properties[key]
193
+
194
+ def __contains__(self, key: str) -> bool:
195
+ return key in self.additional_properties