lusid-sdk 2.1.242__py3-none-any.whl → 2.1.320__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 (104) hide show
  1. lusid/__init__.py +66 -0
  2. lusid/api/__init__.py +2 -0
  3. lusid/api/compliance_api.py +191 -0
  4. lusid/api/entities_api.py +360 -0
  5. lusid/api/fee_types_api.py +143 -0
  6. lusid/api/fund_configurations_api.py +944 -0
  7. lusid/api/funds_api.py +1 -1
  8. lusid/api/order_management_api.py +479 -1
  9. lusid/api/scopes_api.py +38 -9
  10. lusid/configuration.py +1 -1
  11. lusid/extensions/configuration_loaders.py +9 -1
  12. lusid/models/__init__.py +64 -0
  13. lusid/models/accounting_method.py +3 -0
  14. lusid/models/accumulation_event.py +3 -3
  15. lusid/models/amortisation_event.py +3 -3
  16. lusid/models/bond_coupon_event.py +3 -3
  17. lusid/models/bond_default_event.py +3 -3
  18. lusid/models/bond_principal_event.py +3 -3
  19. lusid/models/cancel_orders_response.py +153 -0
  20. lusid/models/cancel_placements_response.py +153 -0
  21. lusid/models/cancelled_order_result.py +73 -0
  22. lusid/models/cancelled_placement_result.py +83 -0
  23. lusid/models/capital_distribution_event.py +3 -3
  24. lusid/models/cash.py +93 -0
  25. lusid/models/cash_dividend_event.py +3 -3
  26. lusid/models/cash_flow_event.py +3 -3
  27. lusid/models/close_event.py +3 -3
  28. lusid/models/compliance_run_configuration.py +73 -0
  29. lusid/models/component_filter.py +85 -0
  30. lusid/models/component_rule.py +77 -0
  31. lusid/models/contract_for_difference.py +4 -2
  32. lusid/models/create_derived_transaction_portfolio_request.py +3 -3
  33. lusid/models/create_transaction_portfolio_request.py +3 -3
  34. lusid/models/dependency_source_filter.py +9 -2
  35. lusid/models/dividend_option_event.py +3 -3
  36. lusid/models/dividend_reinvestment_event.py +3 -3
  37. lusid/models/exercise_event.py +3 -3
  38. lusid/models/expiry_event.py +3 -3
  39. lusid/models/fee_transaction_template_specification.py +79 -0
  40. lusid/models/fund.py +6 -1
  41. lusid/models/fund_amount.py +69 -0
  42. lusid/models/fund_configuration.py +151 -0
  43. lusid/models/fund_configuration_properties.py +115 -0
  44. lusid/models/fund_configuration_request.py +136 -0
  45. lusid/models/fund_pnl_breakdown.py +110 -0
  46. lusid/models/fund_previous_nav.py +69 -0
  47. lusid/models/fund_request.py +6 -1
  48. lusid/models/fund_valuation_point_data.py +152 -0
  49. lusid/models/future_expiry_event.py +100 -0
  50. lusid/models/futures_contract_details.py +9 -2
  51. lusid/models/fx_forward_settlement_event.py +3 -3
  52. lusid/models/informational_error_event.py +3 -3
  53. lusid/models/informational_event.py +3 -3
  54. lusid/models/instrument_entity.py +146 -0
  55. lusid/models/instrument_event.py +6 -5
  56. lusid/models/instrument_event_type.py +1 -0
  57. lusid/models/lusid_instrument.py +3 -2
  58. lusid/models/market_data_key_rule.py +3 -3
  59. lusid/models/market_data_specific_rule.py +3 -3
  60. lusid/models/market_quote.py +3 -3
  61. lusid/models/maturity_event.py +3 -3
  62. lusid/models/merger_event.py +3 -3
  63. lusid/models/model_selection.py +3 -3
  64. lusid/models/open_event.py +3 -3
  65. lusid/models/paged_resource_list_of_fund_configuration.py +113 -0
  66. lusid/models/placement_update_request.py +116 -0
  67. lusid/models/portfolio.py +3 -3
  68. lusid/models/portfolio_details.py +3 -3
  69. lusid/models/portfolio_without_href.py +3 -3
  70. lusid/models/pre_trade_configuration.py +69 -0
  71. lusid/models/previous_fund_valuation_point_data.py +79 -0
  72. lusid/models/previous_nav.py +73 -0
  73. lusid/models/previous_share_class_breakdown.py +81 -0
  74. lusid/models/pricing_model.py +1 -0
  75. lusid/models/property_definition.py +7 -1
  76. lusid/models/property_definition_entity.py +146 -0
  77. lusid/models/quote_series_id.py +4 -20
  78. lusid/models/quote_type.py +3 -0
  79. lusid/models/raw_vendor_event.py +3 -3
  80. lusid/models/reset_event.py +3 -3
  81. lusid/models/reverse_stock_split_event.py +3 -3
  82. lusid/models/scrip_dividend_event.py +3 -3
  83. lusid/models/share_class_amount.py +73 -0
  84. lusid/models/share_class_breakdown.py +163 -0
  85. lusid/models/share_class_data.py +79 -0
  86. lusid/models/share_class_details.py +108 -0
  87. lusid/models/share_class_pnl_breakdown.py +110 -0
  88. lusid/models/spin_off_event.py +3 -3
  89. lusid/models/staged_modification.py +8 -1
  90. lusid/models/stock_dividend_event.py +3 -3
  91. lusid/models/stock_split_event.py +3 -3
  92. lusid/models/template_field.py +3 -1
  93. lusid/models/transaction_configuration_movement_data.py +2 -2
  94. lusid/models/transaction_configuration_movement_data_request.py +1 -1
  95. lusid/models/transaction_field_map.py +8 -3
  96. lusid/models/transaction_type_movement.py +2 -2
  97. lusid/models/transition_event.py +3 -3
  98. lusid/models/trigger_event.py +3 -3
  99. lusid/models/unitisation_data.py +73 -0
  100. lusid/models/update_placements_response.py +153 -0
  101. lusid/models/valuation_point_data_response.py +30 -9
  102. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/METADATA +53 -215
  103. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/RECORD +104 -71
  104. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/WHEEL +0 -0
lusid/api/entities_api.py CHANGED
@@ -26,7 +26,9 @@ from pydantic.v1 import Field, StrictStr, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
29
+ from lusid.models.instrument_entity import InstrumentEntity
29
30
  from lusid.models.portfolio_entity import PortfolioEntity
31
+ from lusid.models.property_definition_entity import PropertyDefinitionEntity
30
32
  from lusid.models.resource_list_of_change import ResourceListOfChange
31
33
 
32
34
  from lusid.api_client import ApiClient
@@ -49,6 +51,185 @@ class EntitiesApi:
49
51
  api_client = ApiClient.get_default()
50
52
  self.api_client = api_client
51
53
 
54
+ @overload
55
+ async def get_instrument_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the instrument definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> InstrumentEntity: # noqa: E501
56
+ ...
57
+
58
+ @overload
59
+ def get_instrument_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the instrument definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=True, **kwargs) -> InstrumentEntity: # noqa: E501
60
+ ...
61
+
62
+ @validate_arguments
63
+ def get_instrument_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the instrument definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InstrumentEntity, Awaitable[InstrumentEntity]]: # noqa: E501
64
+ """[EXPERIMENTAL] GetInstrumentByEntityUniqueId: Get instrument by EntityUniqueId # noqa: E501
65
+
66
+ Retrieve the definition of a particular instrument. If the instrument is deleted, this will return the state of the instrument immediately prior to deletion. # noqa: E501
67
+ This method makes a synchronous HTTP request by default. To make an
68
+ asynchronous HTTP request, please pass async_req=True
69
+
70
+ >>> thread = api.get_instrument_by_entity_unique_id(entity_unique_id, effective_at, as_at, previews, async_req=True)
71
+ >>> result = thread.get()
72
+
73
+ :param entity_unique_id: The universally unique identifier of the instrument definition. (required)
74
+ :type entity_unique_id: str
75
+ :param effective_at: The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.
76
+ :type effective_at: str
77
+ :param as_at: The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.
78
+ :type as_at: datetime
79
+ :param previews: The ids of the staged modifications to be previewed in the response.
80
+ :type previews: List[str]
81
+ :param async_req: Whether to execute the request asynchronously.
82
+ :type async_req: bool, optional
83
+ :param _request_timeout: timeout setting for this request.
84
+ If one number provided, it will be total request
85
+ timeout. It can also be a pair (tuple) of
86
+ (connection, read) timeouts.
87
+ :return: Returns the result object.
88
+ If the method is called asynchronously,
89
+ returns the request thread.
90
+ :rtype: InstrumentEntity
91
+ """
92
+ kwargs['_return_http_data_only'] = True
93
+ if '_preload_content' in kwargs:
94
+ message = "Error! Please call the get_instrument_by_entity_unique_id_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
95
+ raise ValueError(message)
96
+ if async_req is not None:
97
+ kwargs['async_req'] = async_req
98
+ return self.get_instrument_by_entity_unique_id_with_http_info(entity_unique_id, effective_at, as_at, previews, **kwargs) # noqa: E501
99
+
100
+ @validate_arguments
101
+ def get_instrument_by_entity_unique_id_with_http_info(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the instrument definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> ApiResponse: # noqa: E501
102
+ """[EXPERIMENTAL] GetInstrumentByEntityUniqueId: Get instrument by EntityUniqueId # noqa: E501
103
+
104
+ Retrieve the definition of a particular instrument. If the instrument is deleted, this will return the state of the instrument immediately prior to deletion. # noqa: E501
105
+ This method makes a synchronous HTTP request by default. To make an
106
+ asynchronous HTTP request, please pass async_req=True
107
+
108
+ >>> thread = api.get_instrument_by_entity_unique_id_with_http_info(entity_unique_id, effective_at, as_at, previews, async_req=True)
109
+ >>> result = thread.get()
110
+
111
+ :param entity_unique_id: The universally unique identifier of the instrument definition. (required)
112
+ :type entity_unique_id: str
113
+ :param effective_at: The effective datetime or cut label at which to retrieve the Instrument definition. Defaults to the current LUSID system datetime if not specified.
114
+ :type effective_at: str
115
+ :param as_at: The asAt datetime at which to retrieve the instrument definition. Defaults to returning the latest version of the instrument definition if not specified.
116
+ :type as_at: datetime
117
+ :param previews: The ids of the staged modifications to be previewed in the response.
118
+ :type previews: List[str]
119
+ :param async_req: Whether to execute the request asynchronously.
120
+ :type async_req: bool, optional
121
+ :param _preload_content: if False, the ApiResponse.data will
122
+ be set to none and raw_data will store the
123
+ HTTP response body without reading/decoding.
124
+ Default is True.
125
+ :type _preload_content: bool, optional
126
+ :param _return_http_data_only: response data instead of ApiResponse
127
+ object with status code, headers, etc
128
+ :type _return_http_data_only: bool, optional
129
+ :param _request_timeout: timeout setting for this request. If one
130
+ number provided, it will be total request
131
+ timeout. It can also be a pair (tuple) of
132
+ (connection, read) timeouts.
133
+ :param _request_auth: set to override the auth_settings for an a single
134
+ request; this effectively ignores the authentication
135
+ in the spec for a single request.
136
+ :type _request_auth: dict, optional
137
+ :type _content_type: string, optional: force content-type for the request
138
+ :return: Returns the result object.
139
+ If the method is called asynchronously,
140
+ returns the request thread.
141
+ :rtype: tuple(InstrumentEntity, status_code(int), headers(HTTPHeaderDict))
142
+ """
143
+
144
+ _params = locals()
145
+
146
+ _all_params = [
147
+ 'entity_unique_id',
148
+ 'effective_at',
149
+ 'as_at',
150
+ 'previews'
151
+ ]
152
+ _all_params.extend(
153
+ [
154
+ 'async_req',
155
+ '_return_http_data_only',
156
+ '_preload_content',
157
+ '_request_timeout',
158
+ '_request_auth',
159
+ '_content_type',
160
+ '_headers'
161
+ ]
162
+ )
163
+
164
+ # validate the arguments
165
+ for _key, _val in _params['kwargs'].items():
166
+ if _key not in _all_params:
167
+ raise ApiTypeError(
168
+ "Got an unexpected keyword argument '%s'"
169
+ " to method get_instrument_by_entity_unique_id" % _key
170
+ )
171
+ _params[_key] = _val
172
+ del _params['kwargs']
173
+
174
+ _collection_formats = {}
175
+
176
+ # process the path parameters
177
+ _path_params = {}
178
+ if _params['entity_unique_id']:
179
+ _path_params['entityUniqueId'] = _params['entity_unique_id']
180
+
181
+
182
+ # process the query parameters
183
+ _query_params = []
184
+ if _params.get('effective_at') is not None: # noqa: E501
185
+ _query_params.append(('effectiveAt', _params['effective_at']))
186
+
187
+ if _params.get('as_at') is not None: # noqa: E501
188
+ if isinstance(_params['as_at'], datetime):
189
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
190
+ else:
191
+ _query_params.append(('asAt', _params['as_at']))
192
+
193
+ if _params.get('previews') is not None: # noqa: E501
194
+ _query_params.append(('previews', _params['previews']))
195
+ _collection_formats['previews'] = 'multi'
196
+
197
+ # process the header parameters
198
+ _header_params = dict(_params.get('_headers', {}))
199
+ # process the form parameters
200
+ _form_params = []
201
+ _files = {}
202
+ # process the body parameter
203
+ _body_params = None
204
+ # set the HTTP header `Accept`
205
+ _header_params['Accept'] = self.api_client.select_header_accept(
206
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
207
+
208
+ # authentication setting
209
+ _auth_settings = ['oauth2'] # noqa: E501
210
+
211
+ _response_types_map = {
212
+ '200': "InstrumentEntity",
213
+ '400': "LusidValidationProblemDetails",
214
+ }
215
+
216
+ return self.api_client.call_api(
217
+ '/api/entities/instruments/{entityUniqueId}', 'GET',
218
+ _path_params,
219
+ _query_params,
220
+ _header_params,
221
+ body=_body_params,
222
+ post_params=_form_params,
223
+ files=_files,
224
+ response_types_map=_response_types_map,
225
+ auth_settings=_auth_settings,
226
+ async_req=_params.get('async_req'),
227
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
228
+ _preload_content=_params.get('_preload_content', True),
229
+ _request_timeout=_params.get('_request_timeout'),
230
+ collection_formats=_collection_formats,
231
+ _request_auth=_params.get('_request_auth'))
232
+
52
233
  @overload
53
234
  async def get_portfolio_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the portfolio definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the portfolio definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio definition. Defaults to returning the latest version of the portfolio definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> PortfolioEntity: # noqa: E501
54
235
  ...
@@ -397,3 +578,182 @@ class EntitiesApi:
397
578
  _request_timeout=_params.get('_request_timeout'),
398
579
  collection_formats=_collection_formats,
399
580
  _request_auth=_params.get('_request_auth'))
581
+
582
+ @overload
583
+ async def get_property_definition_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the property definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> PropertyDefinitionEntity: # noqa: E501
584
+ ...
585
+
586
+ @overload
587
+ def get_property_definition_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the property definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=True, **kwargs) -> PropertyDefinitionEntity: # noqa: E501
588
+ ...
589
+
590
+ @validate_arguments
591
+ def get_property_definition_by_entity_unique_id(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the property definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PropertyDefinitionEntity, Awaitable[PropertyDefinitionEntity]]: # noqa: E501
592
+ """[EXPERIMENTAL] GetPropertyDefinitionByEntityUniqueId: Get property definition by EntityUniqueId # noqa: E501
593
+
594
+ Retrieve a particular property definition. If the property definition is deleted, this will return the state of the property definition immediately prior to deletion. # noqa: E501
595
+ This method makes a synchronous HTTP request by default. To make an
596
+ asynchronous HTTP request, please pass async_req=True
597
+
598
+ >>> thread = api.get_property_definition_by_entity_unique_id(entity_unique_id, effective_at, as_at, previews, async_req=True)
599
+ >>> result = thread.get()
600
+
601
+ :param entity_unique_id: The universally unique identifier of the property definition. (required)
602
+ :type entity_unique_id: str
603
+ :param effective_at: The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.
604
+ :type effective_at: str
605
+ :param as_at: The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.
606
+ :type as_at: datetime
607
+ :param previews: The ids of the staged modifications to be previewed in the response.
608
+ :type previews: List[str]
609
+ :param async_req: Whether to execute the request asynchronously.
610
+ :type async_req: bool, optional
611
+ :param _request_timeout: timeout setting for this request.
612
+ If one number provided, it will be total request
613
+ timeout. It can also be a pair (tuple) of
614
+ (connection, read) timeouts.
615
+ :return: Returns the result object.
616
+ If the method is called asynchronously,
617
+ returns the request thread.
618
+ :rtype: PropertyDefinitionEntity
619
+ """
620
+ kwargs['_return_http_data_only'] = True
621
+ if '_preload_content' in kwargs:
622
+ message = "Error! Please call the get_property_definition_by_entity_unique_id_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
623
+ raise ValueError(message)
624
+ if async_req is not None:
625
+ kwargs['async_req'] = async_req
626
+ return self.get_property_definition_by_entity_unique_id_with_http_info(entity_unique_id, effective_at, as_at, previews, **kwargs) # noqa: E501
627
+
628
+ @validate_arguments
629
+ def get_property_definition_by_entity_unique_id_with_http_info(self, entity_unique_id : Annotated[constr(strict=True, max_length=40, min_length=30), Field(..., description="The universally unique identifier of the property definition.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.")] = None, previews : Annotated[Optional[conlist(StrictStr)], Field(description="The ids of the staged modifications to be previewed in the response.")] = None, **kwargs) -> ApiResponse: # noqa: E501
630
+ """[EXPERIMENTAL] GetPropertyDefinitionByEntityUniqueId: Get property definition by EntityUniqueId # noqa: E501
631
+
632
+ Retrieve a particular property definition. If the property definition is deleted, this will return the state of the property definition immediately prior to deletion. # noqa: E501
633
+ This method makes a synchronous HTTP request by default. To make an
634
+ asynchronous HTTP request, please pass async_req=True
635
+
636
+ >>> thread = api.get_property_definition_by_entity_unique_id_with_http_info(entity_unique_id, effective_at, as_at, previews, async_req=True)
637
+ >>> result = thread.get()
638
+
639
+ :param entity_unique_id: The universally unique identifier of the property definition. (required)
640
+ :type entity_unique_id: str
641
+ :param effective_at: The effective datetime at which to retrieve the property definition. Defaults to the current LUSID system datetime if not specified.
642
+ :type effective_at: str
643
+ :param as_at: The asAt datetime at which to retrieve the property definition. Defaults to returning the latest version of the property definition if not specified.
644
+ :type as_at: datetime
645
+ :param previews: The ids of the staged modifications to be previewed in the response.
646
+ :type previews: List[str]
647
+ :param async_req: Whether to execute the request asynchronously.
648
+ :type async_req: bool, optional
649
+ :param _preload_content: if False, the ApiResponse.data will
650
+ be set to none and raw_data will store the
651
+ HTTP response body without reading/decoding.
652
+ Default is True.
653
+ :type _preload_content: bool, optional
654
+ :param _return_http_data_only: response data instead of ApiResponse
655
+ object with status code, headers, etc
656
+ :type _return_http_data_only: bool, optional
657
+ :param _request_timeout: timeout setting for this request. If one
658
+ number provided, it will be total request
659
+ timeout. It can also be a pair (tuple) of
660
+ (connection, read) timeouts.
661
+ :param _request_auth: set to override the auth_settings for an a single
662
+ request; this effectively ignores the authentication
663
+ in the spec for a single request.
664
+ :type _request_auth: dict, optional
665
+ :type _content_type: string, optional: force content-type for the request
666
+ :return: Returns the result object.
667
+ If the method is called asynchronously,
668
+ returns the request thread.
669
+ :rtype: tuple(PropertyDefinitionEntity, status_code(int), headers(HTTPHeaderDict))
670
+ """
671
+
672
+ _params = locals()
673
+
674
+ _all_params = [
675
+ 'entity_unique_id',
676
+ 'effective_at',
677
+ 'as_at',
678
+ 'previews'
679
+ ]
680
+ _all_params.extend(
681
+ [
682
+ 'async_req',
683
+ '_return_http_data_only',
684
+ '_preload_content',
685
+ '_request_timeout',
686
+ '_request_auth',
687
+ '_content_type',
688
+ '_headers'
689
+ ]
690
+ )
691
+
692
+ # validate the arguments
693
+ for _key, _val in _params['kwargs'].items():
694
+ if _key not in _all_params:
695
+ raise ApiTypeError(
696
+ "Got an unexpected keyword argument '%s'"
697
+ " to method get_property_definition_by_entity_unique_id" % _key
698
+ )
699
+ _params[_key] = _val
700
+ del _params['kwargs']
701
+
702
+ _collection_formats = {}
703
+
704
+ # process the path parameters
705
+ _path_params = {}
706
+ if _params['entity_unique_id']:
707
+ _path_params['entityUniqueId'] = _params['entity_unique_id']
708
+
709
+
710
+ # process the query parameters
711
+ _query_params = []
712
+ if _params.get('effective_at') is not None: # noqa: E501
713
+ _query_params.append(('effectiveAt', _params['effective_at']))
714
+
715
+ if _params.get('as_at') is not None: # noqa: E501
716
+ if isinstance(_params['as_at'], datetime):
717
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
718
+ else:
719
+ _query_params.append(('asAt', _params['as_at']))
720
+
721
+ if _params.get('previews') is not None: # noqa: E501
722
+ _query_params.append(('previews', _params['previews']))
723
+ _collection_formats['previews'] = 'multi'
724
+
725
+ # process the header parameters
726
+ _header_params = dict(_params.get('_headers', {}))
727
+ # process the form parameters
728
+ _form_params = []
729
+ _files = {}
730
+ # process the body parameter
731
+ _body_params = None
732
+ # set the HTTP header `Accept`
733
+ _header_params['Accept'] = self.api_client.select_header_accept(
734
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
735
+
736
+ # authentication setting
737
+ _auth_settings = ['oauth2'] # noqa: E501
738
+
739
+ _response_types_map = {
740
+ '200': "PropertyDefinitionEntity",
741
+ '400': "LusidValidationProblemDetails",
742
+ }
743
+
744
+ return self.api_client.call_api(
745
+ '/api/entities/propertydefinitions/{entityUniqueId}', 'GET',
746
+ _path_params,
747
+ _query_params,
748
+ _header_params,
749
+ body=_body_params,
750
+ post_params=_form_params,
751
+ files=_files,
752
+ response_types_map=_response_types_map,
753
+ auth_settings=_auth_settings,
754
+ async_req=_params.get('async_req'),
755
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
756
+ _preload_content=_params.get('_preload_content', True),
757
+ _request_timeout=_params.get('_request_timeout'),
758
+ collection_formats=_collection_formats,
759
+ _request_auth=_params.get('_request_auth'))
@@ -27,6 +27,7 @@ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
27
27
  from typing import Optional
28
28
 
29
29
  from lusid.models.deleted_entity_response import DeletedEntityResponse
30
+ from lusid.models.fee_transaction_template_specification import FeeTransactionTemplateSpecification
30
31
  from lusid.models.fee_type import FeeType
31
32
  from lusid.models.fee_type_request import FeeTypeRequest
32
33
  from lusid.models.paged_resource_list_of_fee_type import PagedResourceListOfFeeType
@@ -377,6 +378,148 @@ class FeeTypesApi:
377
378
  collection_formats=_collection_formats,
378
379
  _request_auth=_params.get('_request_auth'))
379
380
 
381
+ @overload
382
+ async def get_fee_template_specifications(self, **kwargs) -> FeeTransactionTemplateSpecification: # noqa: E501
383
+ ...
384
+
385
+ @overload
386
+ def get_fee_template_specifications(self, async_req: Optional[bool]=True, **kwargs) -> FeeTransactionTemplateSpecification: # noqa: E501
387
+ ...
388
+
389
+ @validate_arguments
390
+ def get_fee_template_specifications(self, async_req: Optional[bool]=None, **kwargs) -> Union[FeeTransactionTemplateSpecification, Awaitable[FeeTransactionTemplateSpecification]]: # noqa: E501
391
+ """[EXPERIMENTAL] GetFeeTemplateSpecifications: Get FeeTemplateSpecifications used in the FeeType. # noqa: E501
392
+
393
+ Get FeeTemplateSpecifications used in the FeeType. # noqa: E501
394
+ This method makes a synchronous HTTP request by default. To make an
395
+ asynchronous HTTP request, please pass async_req=True
396
+
397
+ >>> thread = api.get_fee_template_specifications(async_req=True)
398
+ >>> result = thread.get()
399
+
400
+ :param async_req: Whether to execute the request asynchronously.
401
+ :type async_req: bool, optional
402
+ :param _request_timeout: timeout setting for this request.
403
+ If one number provided, it will be total request
404
+ timeout. It can also be a pair (tuple) of
405
+ (connection, read) timeouts.
406
+ :return: Returns the result object.
407
+ If the method is called asynchronously,
408
+ returns the request thread.
409
+ :rtype: FeeTransactionTemplateSpecification
410
+ """
411
+ kwargs['_return_http_data_only'] = True
412
+ if '_preload_content' in kwargs:
413
+ message = "Error! Please call the get_fee_template_specifications_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
414
+ raise ValueError(message)
415
+ if async_req is not None:
416
+ kwargs['async_req'] = async_req
417
+ return self.get_fee_template_specifications_with_http_info(**kwargs) # noqa: E501
418
+
419
+ @validate_arguments
420
+ def get_fee_template_specifications_with_http_info(self, **kwargs) -> ApiResponse: # noqa: E501
421
+ """[EXPERIMENTAL] GetFeeTemplateSpecifications: Get FeeTemplateSpecifications used in the FeeType. # noqa: E501
422
+
423
+ Get FeeTemplateSpecifications used in the FeeType. # noqa: E501
424
+ This method makes a synchronous HTTP request by default. To make an
425
+ asynchronous HTTP request, please pass async_req=True
426
+
427
+ >>> thread = api.get_fee_template_specifications_with_http_info(async_req=True)
428
+ >>> result = thread.get()
429
+
430
+ :param async_req: Whether to execute the request asynchronously.
431
+ :type async_req: bool, optional
432
+ :param _preload_content: if False, the ApiResponse.data will
433
+ be set to none and raw_data will store the
434
+ HTTP response body without reading/decoding.
435
+ Default is True.
436
+ :type _preload_content: bool, optional
437
+ :param _return_http_data_only: response data instead of ApiResponse
438
+ object with status code, headers, etc
439
+ :type _return_http_data_only: bool, optional
440
+ :param _request_timeout: timeout setting for this request. If one
441
+ number provided, it will be total request
442
+ timeout. It can also be a pair (tuple) of
443
+ (connection, read) timeouts.
444
+ :param _request_auth: set to override the auth_settings for an a single
445
+ request; this effectively ignores the authentication
446
+ in the spec for a single request.
447
+ :type _request_auth: dict, optional
448
+ :type _content_type: string, optional: force content-type for the request
449
+ :return: Returns the result object.
450
+ If the method is called asynchronously,
451
+ returns the request thread.
452
+ :rtype: tuple(FeeTransactionTemplateSpecification, status_code(int), headers(HTTPHeaderDict))
453
+ """
454
+
455
+ _params = locals()
456
+
457
+ _all_params = [
458
+ ]
459
+ _all_params.extend(
460
+ [
461
+ 'async_req',
462
+ '_return_http_data_only',
463
+ '_preload_content',
464
+ '_request_timeout',
465
+ '_request_auth',
466
+ '_content_type',
467
+ '_headers'
468
+ ]
469
+ )
470
+
471
+ # validate the arguments
472
+ for _key, _val in _params['kwargs'].items():
473
+ if _key not in _all_params:
474
+ raise ApiTypeError(
475
+ "Got an unexpected keyword argument '%s'"
476
+ " to method get_fee_template_specifications" % _key
477
+ )
478
+ _params[_key] = _val
479
+ del _params['kwargs']
480
+
481
+ _collection_formats = {}
482
+
483
+ # process the path parameters
484
+ _path_params = {}
485
+
486
+ # process the query parameters
487
+ _query_params = []
488
+ # process the header parameters
489
+ _header_params = dict(_params.get('_headers', {}))
490
+ # process the form parameters
491
+ _form_params = []
492
+ _files = {}
493
+ # process the body parameter
494
+ _body_params = None
495
+ # set the HTTP header `Accept`
496
+ _header_params['Accept'] = self.api_client.select_header_accept(
497
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
498
+
499
+ # authentication setting
500
+ _auth_settings = ['oauth2'] # noqa: E501
501
+
502
+ _response_types_map = {
503
+ '200': "FeeTransactionTemplateSpecification",
504
+ }
505
+
506
+ return self.api_client.call_api(
507
+ '/api/feetypes/feetransactiontemplatespecification', 'GET',
508
+ _path_params,
509
+ _query_params,
510
+ _header_params,
511
+ body=_body_params,
512
+ post_params=_form_params,
513
+ files=_files,
514
+ response_types_map=_response_types_map,
515
+ auth_settings=_auth_settings,
516
+ async_req=_params.get('async_req'),
517
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
518
+ _preload_content=_params.get('_preload_content', True),
519
+ _request_timeout=_params.get('_request_timeout'),
520
+ collection_formats=_collection_formats,
521
+ _request_auth=_params.get('_request_auth'))
522
+
380
523
  @overload
381
524
  async def get_fee_type(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the FeeType")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the FeeType")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the FeeType. Defaults to returning the latest version of the FeeType, if not specified.")] = None, **kwargs) -> FeeType: # noqa: E501
382
525
  ...