lusid-sdk 2.1.405__py3-none-any.whl → 2.1.462__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 (247) hide show
  1. lusid/__init__.py +80 -8
  2. lusid/api/__init__.py +2 -2
  3. lusid/api/abor_api.py +126 -133
  4. lusid/api/abor_configuration_api.py +46 -45
  5. lusid/api/address_key_definition_api.py +28 -27
  6. lusid/api/aggregation_api.py +37 -36
  7. lusid/api/allocations_api.py +39 -38
  8. lusid/api/amortisation_rule_sets_api.py +55 -54
  9. lusid/api/application_metadata_api.py +28 -27
  10. lusid/api/blocks_api.py +37 -36
  11. lusid/api/calendars_api.py +469 -111
  12. lusid/api/chart_of_accounts_api.py +454 -279
  13. lusid/api/complex_market_data_api.py +37 -36
  14. lusid/api/compliance_api.py +136 -135
  15. lusid/api/configuration_recipe_api.py +100 -99
  16. lusid/api/conventions_api.py +109 -108
  17. lusid/api/corporate_action_sources_api.py +82 -81
  18. lusid/api/counterparties_api.py +73 -72
  19. lusid/api/custom_entities_api.py +102 -101
  20. lusid/api/custom_entity_definitions_api.py +37 -36
  21. lusid/api/custom_entity_types_api.py +37 -36
  22. lusid/api/cut_label_definitions_api.py +46 -45
  23. lusid/api/data_types_api.py +248 -72
  24. lusid/api/derived_transaction_portfolios_api.py +19 -18
  25. lusid/api/entities_api.py +431 -46
  26. lusid/api/executions_api.py +37 -36
  27. lusid/api/fee_types_api.py +55 -54
  28. lusid/api/{fund_configurations_api.py → fund_configuration_api.py} +222 -46
  29. lusid/api/funds_api.py +337 -162
  30. lusid/api/group_reconciliations_api.py +1437 -45
  31. lusid/api/instrument_event_types_api.py +64 -63
  32. lusid/api/instrument_events_api.py +46 -45
  33. lusid/api/instruments_api.py +187 -186
  34. lusid/api/legacy_compliance_api.py +73 -72
  35. lusid/api/legal_entities_api.py +167 -166
  36. lusid/api/order_graph_api.py +32 -31
  37. lusid/api/order_instructions_api.py +37 -36
  38. lusid/api/order_management_api.py +251 -90
  39. lusid/api/orders_api.py +37 -36
  40. lusid/api/packages_api.py +37 -36
  41. lusid/api/participations_api.py +37 -36
  42. lusid/api/persons_api.py +163 -162
  43. lusid/api/placements_api.py +37 -36
  44. lusid/api/portfolio_groups_api.py +235 -234
  45. lusid/api/portfolios_api.py +307 -309
  46. lusid/api/property_definitions_api.py +100 -99
  47. lusid/api/queryable_keys_api.py +10 -9
  48. lusid/api/quotes_api.py +82 -81
  49. lusid/api/reconciliations_api.py +136 -135
  50. lusid/api/reference_lists_api.py +39 -38
  51. lusid/api/reference_portfolio_api.py +213 -36
  52. lusid/api/relation_definitions_api.py +28 -27
  53. lusid/api/relations_api.py +19 -18
  54. lusid/api/relationship_definitions_api.py +46 -45
  55. lusid/api/relationships_api.py +19 -18
  56. lusid/api/schemas_api.py +37 -36
  57. lusid/api/scopes_api.py +19 -18
  58. lusid/api/scripted_translation_api.py +73 -72
  59. lusid/api/search_api.py +37 -36
  60. lusid/api/sequences_api.py +37 -36
  61. lusid/api/staged_modifications_api.py +37 -36
  62. lusid/api/staging_rule_set_api.py +46 -45
  63. lusid/api/structured_result_data_api.py +82 -81
  64. lusid/api/system_configuration_api.py +64 -63
  65. lusid/api/tax_rule_sets_api.py +46 -45
  66. lusid/api/transaction_configuration_api.py +100 -99
  67. lusid/api/transaction_fees_api.py +46 -45
  68. lusid/api/transaction_portfolios_api.py +569 -326
  69. lusid/api/translation_api.py +19 -18
  70. lusid/api/workspace_api.py +181 -180
  71. lusid/api_client.py +26 -17
  72. lusid/configuration.py +87 -2
  73. lusid/extensions/api_client.py +25 -17
  74. lusid/extensions/api_client_factory.py +14 -5
  75. lusid/extensions/api_configuration.py +50 -1
  76. lusid/extensions/configuration_loaders.py +39 -11
  77. lusid/extensions/configuration_options.py +67 -0
  78. lusid/extensions/rest.py +78 -26
  79. lusid/extensions/retry.py +109 -37
  80. lusid/models/__init__.py +78 -6
  81. lusid/models/access_metadata_value.py +1 -1
  82. lusid/models/accounting_method.py +7 -0
  83. lusid/models/accumulation_event.py +3 -3
  84. lusid/models/address_key_list.py +3 -3
  85. lusid/models/amortisation_event.py +3 -3
  86. lusid/models/amount.py +69 -0
  87. lusid/models/basket.py +3 -3
  88. lusid/models/batch_upsert_dates_for_calendar_response.py +146 -0
  89. lusid/models/batch_upsert_portfolio_access_metadata_request.py +27 -17
  90. lusid/models/batch_upsert_portfolio_access_metadata_response.py +56 -16
  91. lusid/models/{metadata_key_value.py → batch_upsert_portfolio_access_metadata_response_item.py} +15 -9
  92. lusid/models/bond.py +3 -3
  93. lusid/models/bond_coupon_event.py +3 -3
  94. lusid/models/bond_default_event.py +3 -3
  95. lusid/models/bond_principal_event.py +3 -3
  96. lusid/models/bonus_issue_event.py +166 -0
  97. lusid/models/{component_rule.py → break_code_source.py} +17 -21
  98. lusid/models/cancel_order_and_move_remaining_result.py +84 -0
  99. lusid/models/cancel_orders_and_move_remaining_request.py +83 -0
  100. lusid/models/cancel_orders_and_move_remaining_response.py +153 -0
  101. lusid/models/cap_floor.py +3 -3
  102. lusid/models/capital_distribution_event.py +3 -3
  103. lusid/models/cash.py +3 -3
  104. lusid/models/cash_dividend_event.py +3 -3
  105. lusid/models/cash_flow_event.py +3 -3
  106. lusid/models/cash_perpetual.py +3 -3
  107. lusid/models/cds_credit_event.py +6 -6
  108. lusid/models/cds_index.py +3 -3
  109. lusid/models/cdx_credit_event.py +6 -6
  110. lusid/models/change_interval.py +123 -0
  111. lusid/models/change_interval_with_order_management_detail.py +3 -3
  112. lusid/models/close_event.py +3 -3
  113. lusid/models/complex_bond.py +3 -3
  114. lusid/models/contract_for_difference.py +3 -3
  115. lusid/models/create_derived_transaction_portfolio_request.py +3 -3
  116. lusid/models/create_group_reconciliation_definition_request.py +113 -0
  117. lusid/models/create_transaction_portfolio_request.py +3 -3
  118. lusid/models/credit_default_swap.py +3 -3
  119. lusid/models/credit_premium_cash_flow_event.py +3 -3
  120. lusid/models/custom_entity_entity.py +146 -0
  121. lusid/models/custom_entity_response.py +7 -1
  122. lusid/models/decimal_list.py +3 -3
  123. lusid/models/diary_entry_request.py +10 -1
  124. lusid/models/dividend_option_event.py +3 -3
  125. lusid/models/dividend_reinvestment_event.py +3 -3
  126. lusid/models/effective_range.py +71 -0
  127. lusid/models/equity.py +3 -3
  128. lusid/models/equity_option.py +3 -3
  129. lusid/models/equity_swap.py +3 -3
  130. lusid/models/exchange_traded_option.py +3 -3
  131. lusid/models/exercise_event.py +3 -3
  132. lusid/models/exotic_instrument.py +3 -3
  133. lusid/models/expiry_event.py +3 -3
  134. lusid/models/fee.py +8 -8
  135. lusid/models/fee_request.py +8 -8
  136. lusid/models/fee_type.py +4 -4
  137. lusid/models/fee_type_request.py +3 -3
  138. lusid/models/fixed_leg.py +3 -3
  139. lusid/models/fixed_schedule.py +3 -3
  140. lusid/models/flexible_loan.py +3 -3
  141. lusid/models/float_schedule.py +4 -4
  142. lusid/models/floating_leg.py +3 -3
  143. lusid/models/flow_conventions.py +7 -1
  144. lusid/models/forward_rate_agreement.py +3 -3
  145. lusid/models/fund_configuration.py +44 -17
  146. lusid/models/fund_configuration_request.py +31 -19
  147. lusid/models/fund_id_list.py +99 -0
  148. lusid/models/fund_share_class.py +23 -8
  149. lusid/models/funding_leg.py +3 -3
  150. lusid/models/future.py +3 -3
  151. lusid/models/future_expiry_event.py +3 -3
  152. lusid/models/fx_forward.py +3 -3
  153. lusid/models/fx_forward_settlement_event.py +3 -3
  154. lusid/models/fx_option.py +3 -3
  155. lusid/models/fx_swap.py +3 -3
  156. lusid/models/group_reconciliation_aggregate_attribute_rule.py +2 -2
  157. lusid/models/group_reconciliation_aggregate_comparison_rule_operand.py +1 -1
  158. lusid/models/group_reconciliation_core_comparison_rule_operand.py +1 -1
  159. lusid/models/group_reconciliation_definition.py +136 -0
  160. lusid/models/group_reconciliation_definition_comparison_ruleset_ids.py +83 -0
  161. lusid/models/group_reconciliation_definition_currencies.py +71 -0
  162. lusid/models/group_reconciliation_definition_portfolio_entity_ids.py +86 -0
  163. lusid/models/group_reconciliation_definition_recipe_ids.py +78 -0
  164. lusid/models/holding_contributor.py +11 -4
  165. lusid/models/holding_ids_request.py +69 -0
  166. lusid/models/inflation_leg.py +3 -3
  167. lusid/models/inflation_linked_bond.py +3 -3
  168. lusid/models/inflation_swap.py +3 -3
  169. lusid/models/informational_error_event.py +3 -3
  170. lusid/models/informational_event.py +3 -3
  171. lusid/models/instrument.py +7 -1
  172. lusid/models/instrument_definition.py +8 -2
  173. lusid/models/instrument_event.py +12 -5
  174. lusid/models/instrument_event_holder.py +9 -1
  175. lusid/models/instrument_event_type.py +7 -0
  176. lusid/models/instrument_leg.py +3 -3
  177. lusid/models/instrument_list.py +3 -3
  178. lusid/models/instrument_type.py +2 -0
  179. lusid/models/interest_rate_swap.py +3 -3
  180. lusid/models/interest_rate_swaption.py +3 -3
  181. lusid/models/lapse_election.py +73 -0
  182. lusid/models/loan_facility.py +97 -0
  183. lusid/models/lusid_instrument.py +7 -5
  184. lusid/models/market_data_key_rule.py +5 -3
  185. lusid/models/market_data_specific_rule.py +5 -3
  186. lusid/models/mastered_instrument.py +139 -0
  187. lusid/models/maturity_event.py +3 -3
  188. lusid/models/mbs_coupon_event.py +97 -0
  189. lusid/models/mbs_interest_deferral_event.py +97 -0
  190. lusid/models/mbs_interest_shortfall_event.py +97 -0
  191. lusid/models/mbs_principal_event.py +97 -0
  192. lusid/models/mbs_principal_write_off_event.py +97 -0
  193. lusid/models/merger_event.py +22 -22
  194. lusid/models/open_event.py +3 -3
  195. lusid/models/output_transaction.py +9 -2
  196. lusid/models/paged_resource_list_of_group_reconciliation_comparison_ruleset.py +113 -0
  197. lusid/models/paged_resource_list_of_group_reconciliation_definition.py +113 -0
  198. lusid/models/portfolio.py +3 -3
  199. lusid/models/portfolio_details.py +3 -3
  200. lusid/models/portfolio_group_id_list.py +3 -3
  201. lusid/models/portfolio_id_list.py +3 -3
  202. lusid/models/portfolio_without_href.py +3 -3
  203. lusid/models/property_list.py +3 -3
  204. lusid/models/raw_vendor_event.py +3 -3
  205. lusid/models/reference_instrument.py +3 -3
  206. lusid/models/reference_list.py +6 -5
  207. lusid/models/reference_list_type.py +1 -0
  208. lusid/models/repo.py +3 -3
  209. lusid/models/reset_event.py +3 -3
  210. lusid/models/resource_list_of_change_interval.py +113 -0
  211. lusid/models/reverse_stock_split_event.py +21 -7
  212. lusid/models/scrip_dividend_event.py +3 -3
  213. lusid/models/settlement_cycle.py +79 -0
  214. lusid/models/share_class_dealing_breakdown.py +3 -2
  215. lusid/models/share_class_details.py +18 -1
  216. lusid/models/simple_cash_flow_loan.py +3 -3
  217. lusid/models/simple_instrument.py +3 -3
  218. lusid/models/simple_rounding_convention.py +76 -0
  219. lusid/models/spin_off_event.py +3 -3
  220. lusid/models/staged_modification_effective_range.py +2 -2
  221. lusid/models/stock_dividend_event.py +20 -6
  222. lusid/models/stock_split_event.py +3 -3
  223. lusid/models/string_list.py +3 -3
  224. lusid/models/swap_cash_flow_event.py +3 -3
  225. lusid/models/swap_principal_event.py +3 -3
  226. lusid/models/tender_event.py +172 -0
  227. lusid/models/term_deposit.py +3 -3
  228. lusid/models/total_return_swap.py +3 -3
  229. lusid/models/transaction.py +9 -2
  230. lusid/models/transaction_date_windows.py +85 -0
  231. lusid/models/transaction_request.py +9 -2
  232. lusid/models/transition_event.py +3 -3
  233. lusid/models/trigger_event.py +3 -3
  234. lusid/models/update_fee_type_request.py +4 -4
  235. lusid/models/update_group_reconciliation_comparison_ruleset_request.py +91 -0
  236. lusid/models/update_group_reconciliation_definition_request.py +107 -0
  237. lusid/models/update_reference_data_request.py +87 -0
  238. lusid/models/upsert_custom_entities_response.py +20 -1
  239. lusid/models/upsert_reference_portfolio_constituent_properties_request.py +84 -0
  240. lusid/models/upsert_reference_portfolio_constituent_properties_response.py +115 -0
  241. lusid/models/valuation_point_data_query_parameters.py +3 -3
  242. lusid/models/valuation_point_data_response.py +8 -13
  243. lusid/rest.py +70 -20
  244. {lusid_sdk-2.1.405.dist-info → lusid_sdk-2.1.462.dist-info}/METADATA +79 -24
  245. {lusid_sdk-2.1.405.dist-info → lusid_sdk-2.1.462.dist-info}/RECORD +246 -209
  246. lusid/models/metadata_key_value_response.py +0 -86
  247. {lusid_sdk-2.1.405.dist-info → lusid_sdk-2.1.462.dist-info}/WHEEL +0 -0
@@ -22,12 +22,19 @@ from typing import overload, Optional, Union, Awaitable
22
22
  from typing_extensions import Annotated
23
23
  from datetime import datetime
24
24
 
25
- from pydantic.v1 import Field, constr, validator
25
+ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
29
29
  from lusid.models.create_group_reconciliation_comparison_ruleset_request import CreateGroupReconciliationComparisonRulesetRequest
30
+ from lusid.models.create_group_reconciliation_definition_request import CreateGroupReconciliationDefinitionRequest
31
+ from lusid.models.deleted_entity_response import DeletedEntityResponse
30
32
  from lusid.models.group_reconciliation_comparison_ruleset import GroupReconciliationComparisonRuleset
33
+ from lusid.models.group_reconciliation_definition import GroupReconciliationDefinition
34
+ from lusid.models.paged_resource_list_of_group_reconciliation_comparison_ruleset import PagedResourceListOfGroupReconciliationComparisonRuleset
35
+ from lusid.models.paged_resource_list_of_group_reconciliation_definition import PagedResourceListOfGroupReconciliationDefinition
36
+ from lusid.models.update_group_reconciliation_comparison_ruleset_request import UpdateGroupReconciliationComparisonRulesetRequest
37
+ from lusid.models.update_group_reconciliation_definition_request import UpdateGroupReconciliationDefinitionRequest
31
38
 
32
39
  from lusid.api_client import ApiClient
33
40
  from lusid.api_response import ApiResponse
@@ -35,6 +42,7 @@ from lusid.exceptions import ( # noqa: F401
35
42
  ApiTypeError,
36
43
  ApiValueError
37
44
  )
45
+ from lusid.extensions.configuration_options import ConfigurationOptions
38
46
 
39
47
 
40
48
  class GroupReconciliationsApi:
@@ -72,10 +80,9 @@ class GroupReconciliationsApi:
72
80
  :type create_group_reconciliation_comparison_ruleset_request: CreateGroupReconciliationComparisonRulesetRequest
73
81
  :param async_req: Whether to execute the request asynchronously.
74
82
  :type async_req: bool, optional
75
- :param _request_timeout: timeout setting for this request.
76
- If one number provided, it will be total request
77
- timeout. It can also be a pair (tuple) of
78
- (connection, read) timeouts.
83
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
84
+ :param opts: Configuration options for this request
85
+ :type opts: ConfigurationOptions, optional
79
86
  :return: Returns the result object.
80
87
  If the method is called asynchronously,
81
88
  returns the request thread.
@@ -112,10 +119,9 @@ class GroupReconciliationsApi:
112
119
  :param _return_http_data_only: response data instead of ApiResponse
113
120
  object with status code, headers, etc
114
121
  :type _return_http_data_only: bool, optional
115
- :param _request_timeout: timeout setting for this request. If one
116
- number provided, it will be total request
117
- timeout. It can also be a pair (tuple) of
118
- (connection, read) timeouts.
122
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
123
+ :param opts: Configuration options for this request
124
+ :type opts: ConfigurationOptions, optional
119
125
  :param _request_auth: set to override the auth_settings for an a single
120
126
  request; this effectively ignores the authentication
121
127
  in the spec for a single request.
@@ -140,7 +146,8 @@ class GroupReconciliationsApi:
140
146
  '_request_timeout',
141
147
  '_request_auth',
142
148
  '_content_type',
143
- '_headers'
149
+ '_headers',
150
+ 'opts'
144
151
  ]
145
152
  )
146
153
 
@@ -204,6 +211,483 @@ class GroupReconciliationsApi:
204
211
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
205
212
  _preload_content=_params.get('_preload_content', True),
206
213
  _request_timeout=_params.get('_request_timeout'),
214
+ opts=_params.get('opts'),
215
+ collection_formats=_collection_formats,
216
+ _request_auth=_params.get('_request_auth'))
217
+
218
+ @overload
219
+ async def create_group_reconciliation_definition(self, create_group_reconciliation_definition_request : Annotated[Optional[CreateGroupReconciliationDefinitionRequest], Field(description="The definition Group Reconciliation Definition details")] = None, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
220
+ ...
221
+
222
+ @overload
223
+ def create_group_reconciliation_definition(self, create_group_reconciliation_definition_request : Annotated[Optional[CreateGroupReconciliationDefinitionRequest], Field(description="The definition Group Reconciliation Definition details")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
224
+ ...
225
+
226
+ @validate_arguments
227
+ def create_group_reconciliation_definition(self, create_group_reconciliation_definition_request : Annotated[Optional[CreateGroupReconciliationDefinitionRequest], Field(description="The definition Group Reconciliation Definition details")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationDefinition, Awaitable[GroupReconciliationDefinition]]: # noqa: E501
228
+ """[EXPERIMENTAL] CreateGroupReconciliationDefinition: Create Group Reconciliation Definition # noqa: E501
229
+
230
+ Creates a Group Reconciliation Definition # noqa: E501
231
+ This method makes a synchronous HTTP request by default. To make an
232
+ asynchronous HTTP request, please pass async_req=True
233
+
234
+ >>> thread = api.create_group_reconciliation_definition(create_group_reconciliation_definition_request, async_req=True)
235
+ >>> result = thread.get()
236
+
237
+ :param create_group_reconciliation_definition_request: The definition Group Reconciliation Definition details
238
+ :type create_group_reconciliation_definition_request: CreateGroupReconciliationDefinitionRequest
239
+ :param async_req: Whether to execute the request asynchronously.
240
+ :type async_req: bool, optional
241
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
242
+ :param opts: Configuration options for this request
243
+ :type opts: ConfigurationOptions, optional
244
+ :return: Returns the result object.
245
+ If the method is called asynchronously,
246
+ returns the request thread.
247
+ :rtype: GroupReconciliationDefinition
248
+ """
249
+ kwargs['_return_http_data_only'] = True
250
+ if '_preload_content' in kwargs:
251
+ message = "Error! Please call the create_group_reconciliation_definition_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
252
+ raise ValueError(message)
253
+ if async_req is not None:
254
+ kwargs['async_req'] = async_req
255
+ return self.create_group_reconciliation_definition_with_http_info(create_group_reconciliation_definition_request, **kwargs) # noqa: E501
256
+
257
+ @validate_arguments
258
+ def create_group_reconciliation_definition_with_http_info(self, create_group_reconciliation_definition_request : Annotated[Optional[CreateGroupReconciliationDefinitionRequest], Field(description="The definition Group Reconciliation Definition details")] = None, **kwargs) -> ApiResponse: # noqa: E501
259
+ """[EXPERIMENTAL] CreateGroupReconciliationDefinition: Create Group Reconciliation Definition # noqa: E501
260
+
261
+ Creates a Group Reconciliation Definition # noqa: E501
262
+ This method makes a synchronous HTTP request by default. To make an
263
+ asynchronous HTTP request, please pass async_req=True
264
+
265
+ >>> thread = api.create_group_reconciliation_definition_with_http_info(create_group_reconciliation_definition_request, async_req=True)
266
+ >>> result = thread.get()
267
+
268
+ :param create_group_reconciliation_definition_request: The definition Group Reconciliation Definition details
269
+ :type create_group_reconciliation_definition_request: CreateGroupReconciliationDefinitionRequest
270
+ :param async_req: Whether to execute the request asynchronously.
271
+ :type async_req: bool, optional
272
+ :param _preload_content: if False, the ApiResponse.data will
273
+ be set to none and raw_data will store the
274
+ HTTP response body without reading/decoding.
275
+ Default is True.
276
+ :type _preload_content: bool, optional
277
+ :param _return_http_data_only: response data instead of ApiResponse
278
+ object with status code, headers, etc
279
+ :type _return_http_data_only: bool, optional
280
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
281
+ :param opts: Configuration options for this request
282
+ :type opts: ConfigurationOptions, optional
283
+ :param _request_auth: set to override the auth_settings for an a single
284
+ request; this effectively ignores the authentication
285
+ in the spec for a single request.
286
+ :type _request_auth: dict, optional
287
+ :type _content_type: string, optional: force content-type for the request
288
+ :return: Returns the result object.
289
+ If the method is called asynchronously,
290
+ returns the request thread.
291
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
292
+ """
293
+
294
+ _params = locals()
295
+
296
+ _all_params = [
297
+ 'create_group_reconciliation_definition_request'
298
+ ]
299
+ _all_params.extend(
300
+ [
301
+ 'async_req',
302
+ '_return_http_data_only',
303
+ '_preload_content',
304
+ '_request_timeout',
305
+ '_request_auth',
306
+ '_content_type',
307
+ '_headers',
308
+ 'opts'
309
+ ]
310
+ )
311
+
312
+ # validate the arguments
313
+ for _key, _val in _params['kwargs'].items():
314
+ if _key not in _all_params:
315
+ raise ApiTypeError(
316
+ "Got an unexpected keyword argument '%s'"
317
+ " to method create_group_reconciliation_definition" % _key
318
+ )
319
+ _params[_key] = _val
320
+ del _params['kwargs']
321
+
322
+ _collection_formats = {}
323
+
324
+ # process the path parameters
325
+ _path_params = {}
326
+
327
+ # process the query parameters
328
+ _query_params = []
329
+ # process the header parameters
330
+ _header_params = dict(_params.get('_headers', {}))
331
+ # process the form parameters
332
+ _form_params = []
333
+ _files = {}
334
+ # process the body parameter
335
+ _body_params = None
336
+ if _params['create_group_reconciliation_definition_request'] is not None:
337
+ _body_params = _params['create_group_reconciliation_definition_request']
338
+
339
+ # set the HTTP header `Accept`
340
+ _header_params['Accept'] = self.api_client.select_header_accept(
341
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
342
+
343
+ # set the HTTP header `Content-Type`
344
+ _content_types_list = _params.get('_content_type',
345
+ self.api_client.select_header_content_type(
346
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
347
+ if _content_types_list:
348
+ _header_params['Content-Type'] = _content_types_list
349
+
350
+ # authentication setting
351
+ _auth_settings = ['oauth2'] # noqa: E501
352
+
353
+ _response_types_map = {
354
+ '201': "GroupReconciliationDefinition",
355
+ '400': "LusidValidationProblemDetails",
356
+ }
357
+
358
+ return self.api_client.call_api(
359
+ '/api/reconciliations/groupreconciliationdefinitions', 'POST',
360
+ _path_params,
361
+ _query_params,
362
+ _header_params,
363
+ body=_body_params,
364
+ post_params=_form_params,
365
+ files=_files,
366
+ response_types_map=_response_types_map,
367
+ auth_settings=_auth_settings,
368
+ async_req=_params.get('async_req'),
369
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
370
+ _preload_content=_params.get('_preload_content', True),
371
+ _request_timeout=_params.get('_request_timeout'),
372
+ opts=_params.get('opts'),
373
+ collection_formats=_collection_formats,
374
+ _request_auth=_params.get('_request_auth'))
375
+
376
+ @overload
377
+ async def delete_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
378
+ ...
379
+
380
+ @overload
381
+ def delete_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
382
+ ...
383
+
384
+ @validate_arguments
385
+ def delete_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
386
+ """[EXPERIMENTAL] DeleteComparisonRuleset: Deletes a particular Group Reconciliation Comparison Ruleset # noqa: E501
387
+
388
+ The deletion will take effect from the reconciliation comparison ruleset deletion datetime. i.e. will no longer exist at any asAt datetime after the asAt datetime of deletion. # noqa: E501
389
+ This method makes a synchronous HTTP request by default. To make an
390
+ asynchronous HTTP request, please pass async_req=True
391
+
392
+ >>> thread = api.delete_comparison_ruleset(scope, code, async_req=True)
393
+ >>> result = thread.get()
394
+
395
+ :param scope: The scope of the specified comparison ruleset. (required)
396
+ :type scope: str
397
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
398
+ :type code: str
399
+ :param async_req: Whether to execute the request asynchronously.
400
+ :type async_req: bool, optional
401
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
402
+ :param opts: Configuration options for this request
403
+ :type opts: ConfigurationOptions, optional
404
+ :return: Returns the result object.
405
+ If the method is called asynchronously,
406
+ returns the request thread.
407
+ :rtype: DeletedEntityResponse
408
+ """
409
+ kwargs['_return_http_data_only'] = True
410
+ if '_preload_content' in kwargs:
411
+ message = "Error! Please call the delete_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
412
+ raise ValueError(message)
413
+ if async_req is not None:
414
+ kwargs['async_req'] = async_req
415
+ return self.delete_comparison_ruleset_with_http_info(scope, code, **kwargs) # noqa: E501
416
+
417
+ @validate_arguments
418
+ def delete_comparison_ruleset_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], **kwargs) -> ApiResponse: # noqa: E501
419
+ """[EXPERIMENTAL] DeleteComparisonRuleset: Deletes a particular Group Reconciliation Comparison Ruleset # noqa: E501
420
+
421
+ The deletion will take effect from the reconciliation comparison ruleset deletion datetime. i.e. will no longer exist at any asAt datetime after the asAt datetime of deletion. # noqa: E501
422
+ This method makes a synchronous HTTP request by default. To make an
423
+ asynchronous HTTP request, please pass async_req=True
424
+
425
+ >>> thread = api.delete_comparison_ruleset_with_http_info(scope, code, async_req=True)
426
+ >>> result = thread.get()
427
+
428
+ :param scope: The scope of the specified comparison ruleset. (required)
429
+ :type scope: str
430
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
431
+ :type code: str
432
+ :param async_req: Whether to execute the request asynchronously.
433
+ :type async_req: bool, optional
434
+ :param _preload_content: if False, the ApiResponse.data will
435
+ be set to none and raw_data will store the
436
+ HTTP response body without reading/decoding.
437
+ Default is True.
438
+ :type _preload_content: bool, optional
439
+ :param _return_http_data_only: response data instead of ApiResponse
440
+ object with status code, headers, etc
441
+ :type _return_http_data_only: bool, optional
442
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
443
+ :param opts: Configuration options for this request
444
+ :type opts: ConfigurationOptions, optional
445
+ :param _request_auth: set to override the auth_settings for an a single
446
+ request; this effectively ignores the authentication
447
+ in the spec for a single request.
448
+ :type _request_auth: dict, optional
449
+ :type _content_type: string, optional: force content-type for the request
450
+ :return: Returns the result object.
451
+ If the method is called asynchronously,
452
+ returns the request thread.
453
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
454
+ """
455
+
456
+ _params = locals()
457
+
458
+ _all_params = [
459
+ 'scope',
460
+ 'code'
461
+ ]
462
+ _all_params.extend(
463
+ [
464
+ 'async_req',
465
+ '_return_http_data_only',
466
+ '_preload_content',
467
+ '_request_timeout',
468
+ '_request_auth',
469
+ '_content_type',
470
+ '_headers',
471
+ 'opts'
472
+ ]
473
+ )
474
+
475
+ # validate the arguments
476
+ for _key, _val in _params['kwargs'].items():
477
+ if _key not in _all_params:
478
+ raise ApiTypeError(
479
+ "Got an unexpected keyword argument '%s'"
480
+ " to method delete_comparison_ruleset" % _key
481
+ )
482
+ _params[_key] = _val
483
+ del _params['kwargs']
484
+
485
+ _collection_formats = {}
486
+
487
+ # process the path parameters
488
+ _path_params = {}
489
+ if _params['scope']:
490
+ _path_params['scope'] = _params['scope']
491
+
492
+ if _params['code']:
493
+ _path_params['code'] = _params['code']
494
+
495
+
496
+ # process the query parameters
497
+ _query_params = []
498
+ # process the header parameters
499
+ _header_params = dict(_params.get('_headers', {}))
500
+ # process the form parameters
501
+ _form_params = []
502
+ _files = {}
503
+ # process the body parameter
504
+ _body_params = None
505
+ # set the HTTP header `Accept`
506
+ _header_params['Accept'] = self.api_client.select_header_accept(
507
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
508
+
509
+ # authentication setting
510
+ _auth_settings = ['oauth2'] # noqa: E501
511
+
512
+ _response_types_map = {
513
+ '200': "DeletedEntityResponse",
514
+ '400': "LusidValidationProblemDetails",
515
+ }
516
+
517
+ return self.api_client.call_api(
518
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'DELETE',
519
+ _path_params,
520
+ _query_params,
521
+ _header_params,
522
+ body=_body_params,
523
+ post_params=_form_params,
524
+ files=_files,
525
+ response_types_map=_response_types_map,
526
+ auth_settings=_auth_settings,
527
+ async_req=_params.get('async_req'),
528
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
529
+ _preload_content=_params.get('_preload_content', True),
530
+ _request_timeout=_params.get('_request_timeout'),
531
+ opts=_params.get('opts'),
532
+ collection_formats=_collection_formats,
533
+ _request_auth=_params.get('_request_auth'))
534
+
535
+ @overload
536
+ async def delete_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to delete.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
537
+ ...
538
+
539
+ @overload
540
+ def delete_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to delete.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
541
+ ...
542
+
543
+ @validate_arguments
544
+ def delete_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to delete.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
545
+ """[EXPERIMENTAL] DeleteGroupReconciliationDefinition: Delete Group Reconciliation Definition # noqa: E501
546
+
547
+ Delete the group reconciliation definition. # noqa: E501
548
+ This method makes a synchronous HTTP request by default. To make an
549
+ asynchronous HTTP request, please pass async_req=True
550
+
551
+ >>> thread = api.delete_group_reconciliation_definition(scope, code, async_req=True)
552
+ >>> result = thread.get()
553
+
554
+ :param scope: The scope of the group reconciliation definition to delete. (required)
555
+ :type scope: str
556
+ :param code: The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete. (required)
557
+ :type code: str
558
+ :param async_req: Whether to execute the request asynchronously.
559
+ :type async_req: bool, optional
560
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
561
+ :param opts: Configuration options for this request
562
+ :type opts: ConfigurationOptions, optional
563
+ :return: Returns the result object.
564
+ If the method is called asynchronously,
565
+ returns the request thread.
566
+ :rtype: DeletedEntityResponse
567
+ """
568
+ kwargs['_return_http_data_only'] = True
569
+ if '_preload_content' in kwargs:
570
+ message = "Error! Please call the delete_group_reconciliation_definition_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
571
+ raise ValueError(message)
572
+ if async_req is not None:
573
+ kwargs['async_req'] = async_req
574
+ return self.delete_group_reconciliation_definition_with_http_info(scope, code, **kwargs) # noqa: E501
575
+
576
+ @validate_arguments
577
+ def delete_group_reconciliation_definition_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to delete.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete.")], **kwargs) -> ApiResponse: # noqa: E501
578
+ """[EXPERIMENTAL] DeleteGroupReconciliationDefinition: Delete Group Reconciliation Definition # noqa: E501
579
+
580
+ Delete the group reconciliation definition. # noqa: E501
581
+ This method makes a synchronous HTTP request by default. To make an
582
+ asynchronous HTTP request, please pass async_req=True
583
+
584
+ >>> thread = api.delete_group_reconciliation_definition_with_http_info(scope, code, async_req=True)
585
+ >>> result = thread.get()
586
+
587
+ :param scope: The scope of the group reconciliation definition to delete. (required)
588
+ :type scope: str
589
+ :param code: The code of the group reconciliation definition to delete. Together with the scope this uniquely identifies the group reconciliation definition to delete. (required)
590
+ :type code: str
591
+ :param async_req: Whether to execute the request asynchronously.
592
+ :type async_req: bool, optional
593
+ :param _preload_content: if False, the ApiResponse.data will
594
+ be set to none and raw_data will store the
595
+ HTTP response body without reading/decoding.
596
+ Default is True.
597
+ :type _preload_content: bool, optional
598
+ :param _return_http_data_only: response data instead of ApiResponse
599
+ object with status code, headers, etc
600
+ :type _return_http_data_only: bool, optional
601
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
602
+ :param opts: Configuration options for this request
603
+ :type opts: ConfigurationOptions, optional
604
+ :param _request_auth: set to override the auth_settings for an a single
605
+ request; this effectively ignores the authentication
606
+ in the spec for a single request.
607
+ :type _request_auth: dict, optional
608
+ :type _content_type: string, optional: force content-type for the request
609
+ :return: Returns the result object.
610
+ If the method is called asynchronously,
611
+ returns the request thread.
612
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
613
+ """
614
+
615
+ _params = locals()
616
+
617
+ _all_params = [
618
+ 'scope',
619
+ 'code'
620
+ ]
621
+ _all_params.extend(
622
+ [
623
+ 'async_req',
624
+ '_return_http_data_only',
625
+ '_preload_content',
626
+ '_request_timeout',
627
+ '_request_auth',
628
+ '_content_type',
629
+ '_headers',
630
+ 'opts'
631
+ ]
632
+ )
633
+
634
+ # validate the arguments
635
+ for _key, _val in _params['kwargs'].items():
636
+ if _key not in _all_params:
637
+ raise ApiTypeError(
638
+ "Got an unexpected keyword argument '%s'"
639
+ " to method delete_group_reconciliation_definition" % _key
640
+ )
641
+ _params[_key] = _val
642
+ del _params['kwargs']
643
+
644
+ _collection_formats = {}
645
+
646
+ # process the path parameters
647
+ _path_params = {}
648
+ if _params['scope']:
649
+ _path_params['scope'] = _params['scope']
650
+
651
+ if _params['code']:
652
+ _path_params['code'] = _params['code']
653
+
654
+
655
+ # process the query parameters
656
+ _query_params = []
657
+ # process the header parameters
658
+ _header_params = dict(_params.get('_headers', {}))
659
+ # process the form parameters
660
+ _form_params = []
661
+ _files = {}
662
+ # process the body parameter
663
+ _body_params = None
664
+ # set the HTTP header `Accept`
665
+ _header_params['Accept'] = self.api_client.select_header_accept(
666
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
667
+
668
+ # authentication setting
669
+ _auth_settings = ['oauth2'] # noqa: E501
670
+
671
+ _response_types_map = {
672
+ '200': "DeletedEntityResponse",
673
+ '400': "LusidValidationProblemDetails",
674
+ }
675
+
676
+ return self.api_client.call_api(
677
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'DELETE',
678
+ _path_params,
679
+ _query_params,
680
+ _header_params,
681
+ body=_body_params,
682
+ post_params=_form_params,
683
+ files=_files,
684
+ response_types_map=_response_types_map,
685
+ auth_settings=_auth_settings,
686
+ async_req=_params.get('async_req'),
687
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
688
+ _preload_content=_params.get('_preload_content', True),
689
+ _request_timeout=_params.get('_request_timeout'),
690
+ opts=_params.get('opts'),
207
691
  collection_formats=_collection_formats,
208
692
  _request_auth=_params.get('_request_auth'))
209
693
 
@@ -212,32 +696,761 @@ class GroupReconciliationsApi:
212
696
  ...
213
697
 
214
698
  @overload
215
- def get_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
699
+ def get_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
700
+ ...
701
+
702
+ @validate_arguments
703
+ def get_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationComparisonRuleset, Awaitable[GroupReconciliationComparisonRuleset]]: # noqa: E501
704
+ """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
705
+
706
+ Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
707
+ This method makes a synchronous HTTP request by default. To make an
708
+ asynchronous HTTP request, please pass async_req=True
709
+
710
+ >>> thread = api.get_comparison_ruleset(scope, code, as_at, async_req=True)
711
+ >>> result = thread.get()
712
+
713
+ :param scope: The scope of the specified comparison ruleset. (required)
714
+ :type scope: str
715
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
716
+ :type code: str
717
+ :param as_at: The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.
718
+ :type as_at: datetime
719
+ :param async_req: Whether to execute the request asynchronously.
720
+ :type async_req: bool, optional
721
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
722
+ :param opts: Configuration options for this request
723
+ :type opts: ConfigurationOptions, optional
724
+ :return: Returns the result object.
725
+ If the method is called asynchronously,
726
+ returns the request thread.
727
+ :rtype: GroupReconciliationComparisonRuleset
728
+ """
729
+ kwargs['_return_http_data_only'] = True
730
+ if '_preload_content' in kwargs:
731
+ message = "Error! Please call the get_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
732
+ raise ValueError(message)
733
+ if async_req is not None:
734
+ kwargs['async_req'] = async_req
735
+ return self.get_comparison_ruleset_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
736
+
737
+ @validate_arguments
738
+ def get_comparison_ruleset_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
739
+ """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
740
+
741
+ Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
742
+ This method makes a synchronous HTTP request by default. To make an
743
+ asynchronous HTTP request, please pass async_req=True
744
+
745
+ >>> thread = api.get_comparison_ruleset_with_http_info(scope, code, as_at, async_req=True)
746
+ >>> result = thread.get()
747
+
748
+ :param scope: The scope of the specified comparison ruleset. (required)
749
+ :type scope: str
750
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
751
+ :type code: str
752
+ :param as_at: The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.
753
+ :type as_at: datetime
754
+ :param async_req: Whether to execute the request asynchronously.
755
+ :type async_req: bool, optional
756
+ :param _preload_content: if False, the ApiResponse.data will
757
+ be set to none and raw_data will store the
758
+ HTTP response body without reading/decoding.
759
+ Default is True.
760
+ :type _preload_content: bool, optional
761
+ :param _return_http_data_only: response data instead of ApiResponse
762
+ object with status code, headers, etc
763
+ :type _return_http_data_only: bool, optional
764
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
765
+ :param opts: Configuration options for this request
766
+ :type opts: ConfigurationOptions, optional
767
+ :param _request_auth: set to override the auth_settings for an a single
768
+ request; this effectively ignores the authentication
769
+ in the spec for a single request.
770
+ :type _request_auth: dict, optional
771
+ :type _content_type: string, optional: force content-type for the request
772
+ :return: Returns the result object.
773
+ If the method is called asynchronously,
774
+ returns the request thread.
775
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
776
+ """
777
+
778
+ _params = locals()
779
+
780
+ _all_params = [
781
+ 'scope',
782
+ 'code',
783
+ 'as_at'
784
+ ]
785
+ _all_params.extend(
786
+ [
787
+ 'async_req',
788
+ '_return_http_data_only',
789
+ '_preload_content',
790
+ '_request_timeout',
791
+ '_request_auth',
792
+ '_content_type',
793
+ '_headers',
794
+ 'opts'
795
+ ]
796
+ )
797
+
798
+ # validate the arguments
799
+ for _key, _val in _params['kwargs'].items():
800
+ if _key not in _all_params:
801
+ raise ApiTypeError(
802
+ "Got an unexpected keyword argument '%s'"
803
+ " to method get_comparison_ruleset" % _key
804
+ )
805
+ _params[_key] = _val
806
+ del _params['kwargs']
807
+
808
+ _collection_formats = {}
809
+
810
+ # process the path parameters
811
+ _path_params = {}
812
+ if _params['scope']:
813
+ _path_params['scope'] = _params['scope']
814
+
815
+ if _params['code']:
816
+ _path_params['code'] = _params['code']
817
+
818
+
819
+ # process the query parameters
820
+ _query_params = []
821
+ if _params.get('as_at') is not None: # noqa: E501
822
+ if isinstance(_params['as_at'], datetime):
823
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
824
+ else:
825
+ _query_params.append(('asAt', _params['as_at']))
826
+
827
+ # process the header parameters
828
+ _header_params = dict(_params.get('_headers', {}))
829
+ # process the form parameters
830
+ _form_params = []
831
+ _files = {}
832
+ # process the body parameter
833
+ _body_params = None
834
+ # set the HTTP header `Accept`
835
+ _header_params['Accept'] = self.api_client.select_header_accept(
836
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
837
+
838
+ # authentication setting
839
+ _auth_settings = ['oauth2'] # noqa: E501
840
+
841
+ _response_types_map = {
842
+ '200': "GroupReconciliationComparisonRuleset",
843
+ '400': "LusidValidationProblemDetails",
844
+ }
845
+
846
+ return self.api_client.call_api(
847
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'GET',
848
+ _path_params,
849
+ _query_params,
850
+ _header_params,
851
+ body=_body_params,
852
+ post_params=_form_params,
853
+ files=_files,
854
+ response_types_map=_response_types_map,
855
+ auth_settings=_auth_settings,
856
+ async_req=_params.get('async_req'),
857
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
858
+ _preload_content=_params.get('_preload_content', True),
859
+ _request_timeout=_params.get('_request_timeout'),
860
+ opts=_params.get('opts'),
861
+ collection_formats=_collection_formats,
862
+ _request_auth=_params.get('_request_auth'))
863
+
864
+ @overload
865
+ async def get_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve the group reconciliation 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 group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.")] = None, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
866
+ ...
867
+
868
+ @overload
869
+ def get_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve the group reconciliation 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 group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
870
+ ...
871
+
872
+ @validate_arguments
873
+ def get_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve the group reconciliation 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 group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationDefinition, Awaitable[GroupReconciliationDefinition]]: # noqa: E501
874
+ """[EXPERIMENTAL] GetGroupReconciliationDefinition: Get group reconciliation definition # noqa: E501
875
+
876
+ Retrieves a Group Reconciliation Definition by scope and code # noqa: E501
877
+ This method makes a synchronous HTTP request by default. To make an
878
+ asynchronous HTTP request, please pass async_req=True
879
+
880
+ >>> thread = api.get_group_reconciliation_definition(scope, code, effective_at, as_at, async_req=True)
881
+ >>> result = thread.get()
882
+
883
+ :param scope: The scope of the group reconciliation definition to retrieve. (required)
884
+ :type scope: str
885
+ :param code: The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition. (required)
886
+ :type code: str
887
+ :param effective_at: The effective datetime or cut label at which to retrieve the group reconciliation definition. Defaults to the current LUSID system datetime if not specified.
888
+ :type effective_at: str
889
+ :param as_at: The asAt datetime at which to retrieve the group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.
890
+ :type as_at: datetime
891
+ :param async_req: Whether to execute the request asynchronously.
892
+ :type async_req: bool, optional
893
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
894
+ :param opts: Configuration options for this request
895
+ :type opts: ConfigurationOptions, optional
896
+ :return: Returns the result object.
897
+ If the method is called asynchronously,
898
+ returns the request thread.
899
+ :rtype: GroupReconciliationDefinition
900
+ """
901
+ kwargs['_return_http_data_only'] = True
902
+ if '_preload_content' in kwargs:
903
+ message = "Error! Please call the get_group_reconciliation_definition_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
904
+ raise ValueError(message)
905
+ if async_req is not None:
906
+ kwargs['async_req'] = async_req
907
+ return self.get_group_reconciliation_definition_with_http_info(scope, code, effective_at, as_at, **kwargs) # noqa: E501
908
+
909
+ @validate_arguments
910
+ def get_group_reconciliation_definition_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve the group reconciliation 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 group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
911
+ """[EXPERIMENTAL] GetGroupReconciliationDefinition: Get group reconciliation definition # noqa: E501
912
+
913
+ Retrieves a Group Reconciliation Definition by scope and code # noqa: E501
914
+ This method makes a synchronous HTTP request by default. To make an
915
+ asynchronous HTTP request, please pass async_req=True
916
+
917
+ >>> thread = api.get_group_reconciliation_definition_with_http_info(scope, code, effective_at, as_at, async_req=True)
918
+ >>> result = thread.get()
919
+
920
+ :param scope: The scope of the group reconciliation definition to retrieve. (required)
921
+ :type scope: str
922
+ :param code: The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition. (required)
923
+ :type code: str
924
+ :param effective_at: The effective datetime or cut label at which to retrieve the group reconciliation definition. Defaults to the current LUSID system datetime if not specified.
925
+ :type effective_at: str
926
+ :param as_at: The asAt datetime at which to retrieve the group reconciliation definition. Defaults to return the latest version of the portfolio group definition if not specified.
927
+ :type as_at: datetime
928
+ :param async_req: Whether to execute the request asynchronously.
929
+ :type async_req: bool, optional
930
+ :param _preload_content: if False, the ApiResponse.data will
931
+ be set to none and raw_data will store the
932
+ HTTP response body without reading/decoding.
933
+ Default is True.
934
+ :type _preload_content: bool, optional
935
+ :param _return_http_data_only: response data instead of ApiResponse
936
+ object with status code, headers, etc
937
+ :type _return_http_data_only: bool, optional
938
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
939
+ :param opts: Configuration options for this request
940
+ :type opts: ConfigurationOptions, optional
941
+ :param _request_auth: set to override the auth_settings for an a single
942
+ request; this effectively ignores the authentication
943
+ in the spec for a single request.
944
+ :type _request_auth: dict, optional
945
+ :type _content_type: string, optional: force content-type for the request
946
+ :return: Returns the result object.
947
+ If the method is called asynchronously,
948
+ returns the request thread.
949
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
950
+ """
951
+
952
+ _params = locals()
953
+
954
+ _all_params = [
955
+ 'scope',
956
+ 'code',
957
+ 'effective_at',
958
+ 'as_at'
959
+ ]
960
+ _all_params.extend(
961
+ [
962
+ 'async_req',
963
+ '_return_http_data_only',
964
+ '_preload_content',
965
+ '_request_timeout',
966
+ '_request_auth',
967
+ '_content_type',
968
+ '_headers',
969
+ 'opts'
970
+ ]
971
+ )
972
+
973
+ # validate the arguments
974
+ for _key, _val in _params['kwargs'].items():
975
+ if _key not in _all_params:
976
+ raise ApiTypeError(
977
+ "Got an unexpected keyword argument '%s'"
978
+ " to method get_group_reconciliation_definition" % _key
979
+ )
980
+ _params[_key] = _val
981
+ del _params['kwargs']
982
+
983
+ _collection_formats = {}
984
+
985
+ # process the path parameters
986
+ _path_params = {}
987
+ if _params['scope']:
988
+ _path_params['scope'] = _params['scope']
989
+
990
+ if _params['code']:
991
+ _path_params['code'] = _params['code']
992
+
993
+
994
+ # process the query parameters
995
+ _query_params = []
996
+ if _params.get('effective_at') is not None: # noqa: E501
997
+ _query_params.append(('effectiveAt', _params['effective_at']))
998
+
999
+ if _params.get('as_at') is not None: # noqa: E501
1000
+ if isinstance(_params['as_at'], datetime):
1001
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1002
+ else:
1003
+ _query_params.append(('asAt', _params['as_at']))
1004
+
1005
+ # process the header parameters
1006
+ _header_params = dict(_params.get('_headers', {}))
1007
+ # process the form parameters
1008
+ _form_params = []
1009
+ _files = {}
1010
+ # process the body parameter
1011
+ _body_params = None
1012
+ # set the HTTP header `Accept`
1013
+ _header_params['Accept'] = self.api_client.select_header_accept(
1014
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1015
+
1016
+ # authentication setting
1017
+ _auth_settings = ['oauth2'] # noqa: E501
1018
+
1019
+ _response_types_map = {
1020
+ '200': "GroupReconciliationDefinition",
1021
+ '400': "LusidValidationProblemDetails",
1022
+ }
1023
+
1024
+ return self.api_client.call_api(
1025
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'GET',
1026
+ _path_params,
1027
+ _query_params,
1028
+ _header_params,
1029
+ body=_body_params,
1030
+ post_params=_form_params,
1031
+ files=_files,
1032
+ response_types_map=_response_types_map,
1033
+ auth_settings=_auth_settings,
1034
+ async_req=_params.get('async_req'),
1035
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1036
+ _preload_content=_params.get('_preload_content', True),
1037
+ _request_timeout=_params.get('_request_timeout'),
1038
+ opts=_params.get('opts'),
1039
+ collection_formats=_collection_formats,
1040
+ _request_auth=_params.get('_request_auth'))
1041
+
1042
+ @overload
1043
+ async def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfGroupReconciliationComparisonRuleset: # noqa: E501
1044
+ ...
1045
+
1046
+ @overload
1047
+ def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfGroupReconciliationComparisonRuleset: # noqa: E501
1048
+ ...
1049
+
1050
+ @validate_arguments
1051
+ def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfGroupReconciliationComparisonRuleset, Awaitable[PagedResourceListOfGroupReconciliationComparisonRuleset]]: # noqa: E501
1052
+ """[EXPERIMENTAL] ListComparisonRulesets: Get a set of Group Reconciliation Comparison Rulesets # noqa: E501
1053
+
1054
+ Retrieves all Group Reconciliation Comparison Ruleset that fit the filter, in a specific order if sortBy is provided Supports pagination # noqa: E501
1055
+ This method makes a synchronous HTTP request by default. To make an
1056
+ asynchronous HTTP request, please pass async_req=True
1057
+
1058
+ >>> thread = api.list_comparison_rulesets(as_at, page, sort_by, limit, filter, async_req=True)
1059
+ >>> result = thread.get()
1060
+
1061
+ :param as_at: The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.
1062
+ :type as_at: datetime
1063
+ :param page: The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
1064
+ :type page: str
1065
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1066
+ :type sort_by: List[str]
1067
+ :param limit: When paginating, limit the number of returned results to this many per page.
1068
+ :type limit: int
1069
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1070
+ :type filter: str
1071
+ :param async_req: Whether to execute the request asynchronously.
1072
+ :type async_req: bool, optional
1073
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1074
+ :param opts: Configuration options for this request
1075
+ :type opts: ConfigurationOptions, optional
1076
+ :return: Returns the result object.
1077
+ If the method is called asynchronously,
1078
+ returns the request thread.
1079
+ :rtype: PagedResourceListOfGroupReconciliationComparisonRuleset
1080
+ """
1081
+ kwargs['_return_http_data_only'] = True
1082
+ if '_preload_content' in kwargs:
1083
+ message = "Error! Please call the list_comparison_rulesets_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1084
+ raise ValueError(message)
1085
+ if async_req is not None:
1086
+ kwargs['async_req'] = async_req
1087
+ return self.list_comparison_rulesets_with_http_info(as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
1088
+
1089
+ @validate_arguments
1090
+ def list_comparison_rulesets_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1091
+ """[EXPERIMENTAL] ListComparisonRulesets: Get a set of Group Reconciliation Comparison Rulesets # noqa: E501
1092
+
1093
+ Retrieves all Group Reconciliation Comparison Ruleset that fit the filter, in a specific order if sortBy is provided Supports pagination # noqa: E501
1094
+ This method makes a synchronous HTTP request by default. To make an
1095
+ asynchronous HTTP request, please pass async_req=True
1096
+
1097
+ >>> thread = api.list_comparison_rulesets_with_http_info(as_at, page, sort_by, limit, filter, async_req=True)
1098
+ >>> result = thread.get()
1099
+
1100
+ :param as_at: The asAt datetime at which to retrieve the staging rule sets. Defaults to return the latest version of the staging rule sets if not specified.
1101
+ :type as_at: datetime
1102
+ :param page: The pagination token to use to continue listing comparison rulesets from a previous call to list comparison rulesets. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
1103
+ :type page: str
1104
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1105
+ :type sort_by: List[str]
1106
+ :param limit: When paginating, limit the number of returned results to this many per page.
1107
+ :type limit: int
1108
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1109
+ :type filter: str
1110
+ :param async_req: Whether to execute the request asynchronously.
1111
+ :type async_req: bool, optional
1112
+ :param _preload_content: if False, the ApiResponse.data will
1113
+ be set to none and raw_data will store the
1114
+ HTTP response body without reading/decoding.
1115
+ Default is True.
1116
+ :type _preload_content: bool, optional
1117
+ :param _return_http_data_only: response data instead of ApiResponse
1118
+ object with status code, headers, etc
1119
+ :type _return_http_data_only: bool, optional
1120
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1121
+ :param opts: Configuration options for this request
1122
+ :type opts: ConfigurationOptions, optional
1123
+ :param _request_auth: set to override the auth_settings for an a single
1124
+ request; this effectively ignores the authentication
1125
+ in the spec for a single request.
1126
+ :type _request_auth: dict, optional
1127
+ :type _content_type: string, optional: force content-type for the request
1128
+ :return: Returns the result object.
1129
+ If the method is called asynchronously,
1130
+ returns the request thread.
1131
+ :rtype: tuple(PagedResourceListOfGroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
1132
+ """
1133
+
1134
+ _params = locals()
1135
+
1136
+ _all_params = [
1137
+ 'as_at',
1138
+ 'page',
1139
+ 'sort_by',
1140
+ 'limit',
1141
+ 'filter'
1142
+ ]
1143
+ _all_params.extend(
1144
+ [
1145
+ 'async_req',
1146
+ '_return_http_data_only',
1147
+ '_preload_content',
1148
+ '_request_timeout',
1149
+ '_request_auth',
1150
+ '_content_type',
1151
+ '_headers',
1152
+ 'opts'
1153
+ ]
1154
+ )
1155
+
1156
+ # validate the arguments
1157
+ for _key, _val in _params['kwargs'].items():
1158
+ if _key not in _all_params:
1159
+ raise ApiTypeError(
1160
+ "Got an unexpected keyword argument '%s'"
1161
+ " to method list_comparison_rulesets" % _key
1162
+ )
1163
+ _params[_key] = _val
1164
+ del _params['kwargs']
1165
+
1166
+ _collection_formats = {}
1167
+
1168
+ # process the path parameters
1169
+ _path_params = {}
1170
+
1171
+ # process the query parameters
1172
+ _query_params = []
1173
+ if _params.get('as_at') is not None: # noqa: E501
1174
+ if isinstance(_params['as_at'], datetime):
1175
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1176
+ else:
1177
+ _query_params.append(('asAt', _params['as_at']))
1178
+
1179
+ if _params.get('page') is not None: # noqa: E501
1180
+ _query_params.append(('page', _params['page']))
1181
+
1182
+ if _params.get('sort_by') is not None: # noqa: E501
1183
+ _query_params.append(('sortBy', _params['sort_by']))
1184
+ _collection_formats['sortBy'] = 'multi'
1185
+
1186
+ if _params.get('limit') is not None: # noqa: E501
1187
+ _query_params.append(('limit', _params['limit']))
1188
+
1189
+ if _params.get('filter') is not None: # noqa: E501
1190
+ _query_params.append(('filter', _params['filter']))
1191
+
1192
+ # process the header parameters
1193
+ _header_params = dict(_params.get('_headers', {}))
1194
+ # process the form parameters
1195
+ _form_params = []
1196
+ _files = {}
1197
+ # process the body parameter
1198
+ _body_params = None
1199
+ # set the HTTP header `Accept`
1200
+ _header_params['Accept'] = self.api_client.select_header_accept(
1201
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1202
+
1203
+ # authentication setting
1204
+ _auth_settings = ['oauth2'] # noqa: E501
1205
+
1206
+ _response_types_map = {
1207
+ '200': "PagedResourceListOfGroupReconciliationComparisonRuleset",
1208
+ '400': "LusidValidationProblemDetails",
1209
+ }
1210
+
1211
+ return self.api_client.call_api(
1212
+ '/api/reconciliations/comparisonrulesets', 'GET',
1213
+ _path_params,
1214
+ _query_params,
1215
+ _header_params,
1216
+ body=_body_params,
1217
+ post_params=_form_params,
1218
+ files=_files,
1219
+ response_types_map=_response_types_map,
1220
+ auth_settings=_auth_settings,
1221
+ async_req=_params.get('async_req'),
1222
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1223
+ _preload_content=_params.get('_preload_content', True),
1224
+ _request_timeout=_params.get('_request_timeout'),
1225
+ opts=_params.get('opts'),
1226
+ collection_formats=_collection_formats,
1227
+ _request_auth=_params.get('_request_auth'))
1228
+
1229
+ @overload
1230
+ async def list_group_reconciliation_definitions(self, effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> PagedResourceListOfGroupReconciliationDefinition: # noqa: E501
1231
+ ...
1232
+
1233
+ @overload
1234
+ def list_group_reconciliation_definitions(self, effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfGroupReconciliationDefinition: # noqa: E501
1235
+ ...
1236
+
1237
+ @validate_arguments
1238
+ def list_group_reconciliation_definitions(self, effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfGroupReconciliationDefinition, Awaitable[PagedResourceListOfGroupReconciliationDefinition]]: # noqa: E501
1239
+ """[EXPERIMENTAL] ListGroupReconciliationDefinitions: List group reconciliation definitions # noqa: E501
1240
+
1241
+ Lists Group Reconciliation Definitions matching any provided filter, limit and sorting rules # noqa: E501
1242
+ This method makes a synchronous HTTP request by default. To make an
1243
+ asynchronous HTTP request, please pass async_req=True
1244
+
1245
+ >>> thread = api.list_group_reconciliation_definitions(effective_at, as_at, page, limit, filter, sort_by, async_req=True)
1246
+ >>> result = thread.get()
1247
+
1248
+ :param effective_at: The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.
1249
+ :type effective_at: str
1250
+ :param as_at: The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.
1251
+ :type as_at: datetime
1252
+ :param page: The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.
1253
+ :type page: str
1254
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.
1255
+ :type limit: int
1256
+ :param filter: Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1257
+ :type filter: str
1258
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1259
+ :type sort_by: List[str]
1260
+ :param async_req: Whether to execute the request asynchronously.
1261
+ :type async_req: bool, optional
1262
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1263
+ :param opts: Configuration options for this request
1264
+ :type opts: ConfigurationOptions, optional
1265
+ :return: Returns the result object.
1266
+ If the method is called asynchronously,
1267
+ returns the request thread.
1268
+ :rtype: PagedResourceListOfGroupReconciliationDefinition
1269
+ """
1270
+ kwargs['_return_http_data_only'] = True
1271
+ if '_preload_content' in kwargs:
1272
+ message = "Error! Please call the list_group_reconciliation_definitions_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1273
+ raise ValueError(message)
1274
+ if async_req is not None:
1275
+ kwargs['async_req'] = async_req
1276
+ return self.list_group_reconciliation_definitions_with_http_info(effective_at, as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
1277
+
1278
+ @validate_arguments
1279
+ def list_group_reconciliation_definitions_with_http_info(self, effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, **kwargs) -> ApiResponse: # noqa: E501
1280
+ """[EXPERIMENTAL] ListGroupReconciliationDefinitions: List group reconciliation definitions # noqa: E501
1281
+
1282
+ Lists Group Reconciliation Definitions matching any provided filter, limit and sorting rules # noqa: E501
1283
+ This method makes a synchronous HTTP request by default. To make an
1284
+ asynchronous HTTP request, please pass async_req=True
1285
+
1286
+ >>> thread = api.list_group_reconciliation_definitions_with_http_info(effective_at, as_at, page, limit, filter, sort_by, async_req=True)
1287
+ >>> result = thread.get()
1288
+
1289
+ :param effective_at: The effective datetime or cut label at which to list the group reconciliation definitions. Defaults to the current LUSID system datetime if not specified.
1290
+ :type effective_at: str
1291
+ :param as_at: The asAt datetime at which to list the group reconciliation definitions. Defaults to return the latest version of each group reconciliation definition if not specified.
1292
+ :type as_at: datetime
1293
+ :param page: The pagination token to use to continue listing group reconciliation definitions from a previous call to list group reconciliation definitions. This value is returned from the previous call. If a pagination token is provided the filter, effectiveAt, sortBy and asAt fields must not have changed since the original request.
1294
+ :type page: str
1295
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.
1296
+ :type limit: int
1297
+ :param filter: Expression to filter the result set. For example, to filter on the Display Name, use \"displayName eq 'string'\" Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1298
+ :type filter: str
1299
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1300
+ :type sort_by: List[str]
1301
+ :param async_req: Whether to execute the request asynchronously.
1302
+ :type async_req: bool, optional
1303
+ :param _preload_content: if False, the ApiResponse.data will
1304
+ be set to none and raw_data will store the
1305
+ HTTP response body without reading/decoding.
1306
+ Default is True.
1307
+ :type _preload_content: bool, optional
1308
+ :param _return_http_data_only: response data instead of ApiResponse
1309
+ object with status code, headers, etc
1310
+ :type _return_http_data_only: bool, optional
1311
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1312
+ :param opts: Configuration options for this request
1313
+ :type opts: ConfigurationOptions, optional
1314
+ :param _request_auth: set to override the auth_settings for an a single
1315
+ request; this effectively ignores the authentication
1316
+ in the spec for a single request.
1317
+ :type _request_auth: dict, optional
1318
+ :type _content_type: string, optional: force content-type for the request
1319
+ :return: Returns the result object.
1320
+ If the method is called asynchronously,
1321
+ returns the request thread.
1322
+ :rtype: tuple(PagedResourceListOfGroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1323
+ """
1324
+
1325
+ _params = locals()
1326
+
1327
+ _all_params = [
1328
+ 'effective_at',
1329
+ 'as_at',
1330
+ 'page',
1331
+ 'limit',
1332
+ 'filter',
1333
+ 'sort_by'
1334
+ ]
1335
+ _all_params.extend(
1336
+ [
1337
+ 'async_req',
1338
+ '_return_http_data_only',
1339
+ '_preload_content',
1340
+ '_request_timeout',
1341
+ '_request_auth',
1342
+ '_content_type',
1343
+ '_headers',
1344
+ 'opts'
1345
+ ]
1346
+ )
1347
+
1348
+ # validate the arguments
1349
+ for _key, _val in _params['kwargs'].items():
1350
+ if _key not in _all_params:
1351
+ raise ApiTypeError(
1352
+ "Got an unexpected keyword argument '%s'"
1353
+ " to method list_group_reconciliation_definitions" % _key
1354
+ )
1355
+ _params[_key] = _val
1356
+ del _params['kwargs']
1357
+
1358
+ _collection_formats = {}
1359
+
1360
+ # process the path parameters
1361
+ _path_params = {}
1362
+
1363
+ # process the query parameters
1364
+ _query_params = []
1365
+ if _params.get('effective_at') is not None: # noqa: E501
1366
+ _query_params.append(('effectiveAt', _params['effective_at']))
1367
+
1368
+ if _params.get('as_at') is not None: # noqa: E501
1369
+ if isinstance(_params['as_at'], datetime):
1370
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1371
+ else:
1372
+ _query_params.append(('asAt', _params['as_at']))
1373
+
1374
+ if _params.get('page') is not None: # noqa: E501
1375
+ _query_params.append(('page', _params['page']))
1376
+
1377
+ if _params.get('limit') is not None: # noqa: E501
1378
+ _query_params.append(('limit', _params['limit']))
1379
+
1380
+ if _params.get('filter') is not None: # noqa: E501
1381
+ _query_params.append(('filter', _params['filter']))
1382
+
1383
+ if _params.get('sort_by') is not None: # noqa: E501
1384
+ _query_params.append(('sortBy', _params['sort_by']))
1385
+ _collection_formats['sortBy'] = 'multi'
1386
+
1387
+ # process the header parameters
1388
+ _header_params = dict(_params.get('_headers', {}))
1389
+ # process the form parameters
1390
+ _form_params = []
1391
+ _files = {}
1392
+ # process the body parameter
1393
+ _body_params = None
1394
+ # set the HTTP header `Accept`
1395
+ _header_params['Accept'] = self.api_client.select_header_accept(
1396
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1397
+
1398
+ # authentication setting
1399
+ _auth_settings = ['oauth2'] # noqa: E501
1400
+
1401
+ _response_types_map = {
1402
+ '200': "PagedResourceListOfGroupReconciliationDefinition",
1403
+ '400': "LusidValidationProblemDetails",
1404
+ }
1405
+
1406
+ return self.api_client.call_api(
1407
+ '/api/reconciliations/groupreconciliationdefinitions', 'GET',
1408
+ _path_params,
1409
+ _query_params,
1410
+ _header_params,
1411
+ body=_body_params,
1412
+ post_params=_form_params,
1413
+ files=_files,
1414
+ response_types_map=_response_types_map,
1415
+ auth_settings=_auth_settings,
1416
+ async_req=_params.get('async_req'),
1417
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1418
+ _preload_content=_params.get('_preload_content', True),
1419
+ _request_timeout=_params.get('_request_timeout'),
1420
+ opts=_params.get('opts'),
1421
+ collection_formats=_collection_formats,
1422
+ _request_auth=_params.get('_request_auth'))
1423
+
1424
+ @overload
1425
+ async def update_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], update_group_reconciliation_comparison_ruleset_request : Annotated[Optional[UpdateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the updated details of the ruleset")] = None, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
1426
+ ...
1427
+
1428
+ @overload
1429
+ def update_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], update_group_reconciliation_comparison_ruleset_request : Annotated[Optional[UpdateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the updated details of the ruleset")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
216
1430
  ...
217
1431
 
218
1432
  @validate_arguments
219
- def get_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationComparisonRuleset, Awaitable[GroupReconciliationComparisonRuleset]]: # noqa: E501
220
- """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
1433
+ def update_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], update_group_reconciliation_comparison_ruleset_request : Annotated[Optional[UpdateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the updated details of the ruleset")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationComparisonRuleset, Awaitable[GroupReconciliationComparisonRuleset]]: # noqa: E501
1434
+ """[EXPERIMENTAL] UpdateComparisonRuleset: Update Group Reconciliation Comparison Ruleset defined by scope and code # noqa: E501
221
1435
 
222
- Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
1436
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
223
1437
  This method makes a synchronous HTTP request by default. To make an
224
1438
  asynchronous HTTP request, please pass async_req=True
225
1439
 
226
- >>> thread = api.get_comparison_ruleset(scope, code, as_at, async_req=True)
1440
+ >>> thread = api.update_comparison_ruleset(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
227
1441
  >>> result = thread.get()
228
1442
 
229
1443
  :param scope: The scope of the specified comparison ruleset. (required)
230
1444
  :type scope: str
231
- :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1445
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
232
1446
  :type code: str
233
- :param as_at: The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.
234
- :type as_at: datetime
1447
+ :param update_group_reconciliation_comparison_ruleset_request: The request containing the updated details of the ruleset
1448
+ :type update_group_reconciliation_comparison_ruleset_request: UpdateGroupReconciliationComparisonRulesetRequest
235
1449
  :param async_req: Whether to execute the request asynchronously.
236
1450
  :type async_req: bool, optional
237
- :param _request_timeout: timeout setting for this request.
238
- If one number provided, it will be total request
239
- timeout. It can also be a pair (tuple) of
240
- (connection, read) timeouts.
1451
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1452
+ :param opts: Configuration options for this request
1453
+ :type opts: ConfigurationOptions, optional
241
1454
  :return: Returns the result object.
242
1455
  If the method is called asynchronously,
243
1456
  returns the request thread.
@@ -245,29 +1458,29 @@ class GroupReconciliationsApi:
245
1458
  """
246
1459
  kwargs['_return_http_data_only'] = True
247
1460
  if '_preload_content' in kwargs:
248
- message = "Error! Please call the get_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1461
+ message = "Error! Please call the update_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
249
1462
  raise ValueError(message)
250
1463
  if async_req is not None:
251
1464
  kwargs['async_req'] = async_req
252
- return self.get_comparison_ruleset_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
1465
+ return self.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, **kwargs) # noqa: E501
253
1466
 
254
1467
  @validate_arguments
255
- def get_comparison_ruleset_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
256
- """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
1468
+ def update_comparison_ruleset_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], update_group_reconciliation_comparison_ruleset_request : Annotated[Optional[UpdateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the updated details of the ruleset")] = None, **kwargs) -> ApiResponse: # noqa: E501
1469
+ """[EXPERIMENTAL] UpdateComparisonRuleset: Update Group Reconciliation Comparison Ruleset defined by scope and code # noqa: E501
257
1470
 
258
- Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
1471
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
259
1472
  This method makes a synchronous HTTP request by default. To make an
260
1473
  asynchronous HTTP request, please pass async_req=True
261
1474
 
262
- >>> thread = api.get_comparison_ruleset_with_http_info(scope, code, as_at, async_req=True)
1475
+ >>> thread = api.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
263
1476
  >>> result = thread.get()
264
1477
 
265
1478
  :param scope: The scope of the specified comparison ruleset. (required)
266
1479
  :type scope: str
267
- :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1480
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
268
1481
  :type code: str
269
- :param as_at: The asAt datetime at which to retrieve the comparison ruleset definition. Defaults to return the latest version of the definition if not specified.
270
- :type as_at: datetime
1482
+ :param update_group_reconciliation_comparison_ruleset_request: The request containing the updated details of the ruleset
1483
+ :type update_group_reconciliation_comparison_ruleset_request: UpdateGroupReconciliationComparisonRulesetRequest
271
1484
  :param async_req: Whether to execute the request asynchronously.
272
1485
  :type async_req: bool, optional
273
1486
  :param _preload_content: if False, the ApiResponse.data will
@@ -278,10 +1491,9 @@ class GroupReconciliationsApi:
278
1491
  :param _return_http_data_only: response data instead of ApiResponse
279
1492
  object with status code, headers, etc
280
1493
  :type _return_http_data_only: bool, optional
281
- :param _request_timeout: timeout setting for this request. If one
282
- number provided, it will be total request
283
- timeout. It can also be a pair (tuple) of
284
- (connection, read) timeouts.
1494
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1495
+ :param opts: Configuration options for this request
1496
+ :type opts: ConfigurationOptions, optional
285
1497
  :param _request_auth: set to override the auth_settings for an a single
286
1498
  request; this effectively ignores the authentication
287
1499
  in the spec for a single request.
@@ -298,7 +1510,7 @@ class GroupReconciliationsApi:
298
1510
  _all_params = [
299
1511
  'scope',
300
1512
  'code',
301
- 'as_at'
1513
+ 'update_group_reconciliation_comparison_ruleset_request'
302
1514
  ]
303
1515
  _all_params.extend(
304
1516
  [
@@ -308,7 +1520,8 @@ class GroupReconciliationsApi:
308
1520
  '_request_timeout',
309
1521
  '_request_auth',
310
1522
  '_content_type',
311
- '_headers'
1523
+ '_headers',
1524
+ 'opts'
312
1525
  ]
313
1526
  )
314
1527
 
@@ -317,7 +1530,7 @@ class GroupReconciliationsApi:
317
1530
  if _key not in _all_params:
318
1531
  raise ApiTypeError(
319
1532
  "Got an unexpected keyword argument '%s'"
320
- " to method get_comparison_ruleset" % _key
1533
+ " to method update_comparison_ruleset" % _key
321
1534
  )
322
1535
  _params[_key] = _val
323
1536
  del _params['kwargs']
@@ -335,12 +1548,6 @@ class GroupReconciliationsApi:
335
1548
 
336
1549
  # process the query parameters
337
1550
  _query_params = []
338
- if _params.get('as_at') is not None: # noqa: E501
339
- if isinstance(_params['as_at'], datetime):
340
- _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
341
- else:
342
- _query_params.append(('asAt', _params['as_at']))
343
-
344
1551
  # process the header parameters
345
1552
  _header_params = dict(_params.get('_headers', {}))
346
1553
  # process the form parameters
@@ -348,10 +1555,20 @@ class GroupReconciliationsApi:
348
1555
  _files = {}
349
1556
  # process the body parameter
350
1557
  _body_params = None
1558
+ if _params['update_group_reconciliation_comparison_ruleset_request'] is not None:
1559
+ _body_params = _params['update_group_reconciliation_comparison_ruleset_request']
1560
+
351
1561
  # set the HTTP header `Accept`
352
1562
  _header_params['Accept'] = self.api_client.select_header_accept(
353
1563
  ['text/plain', 'application/json', 'text/json']) # noqa: E501
354
1564
 
1565
+ # set the HTTP header `Content-Type`
1566
+ _content_types_list = _params.get('_content_type',
1567
+ self.api_client.select_header_content_type(
1568
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1569
+ if _content_types_list:
1570
+ _header_params['Content-Type'] = _content_types_list
1571
+
355
1572
  # authentication setting
356
1573
  _auth_settings = ['oauth2'] # noqa: E501
357
1574
 
@@ -361,7 +1578,181 @@ class GroupReconciliationsApi:
361
1578
  }
362
1579
 
363
1580
  return self.api_client.call_api(
364
- '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'GET',
1581
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'PUT',
1582
+ _path_params,
1583
+ _query_params,
1584
+ _header_params,
1585
+ body=_body_params,
1586
+ post_params=_form_params,
1587
+ files=_files,
1588
+ response_types_map=_response_types_map,
1589
+ auth_settings=_auth_settings,
1590
+ async_req=_params.get('async_req'),
1591
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1592
+ _preload_content=_params.get('_preload_content', True),
1593
+ _request_timeout=_params.get('_request_timeout'),
1594
+ opts=_params.get('opts'),
1595
+ collection_formats=_collection_formats,
1596
+ _request_auth=_params.get('_request_auth'))
1597
+
1598
+ @overload
1599
+ async def update_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to update the details for.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition.")], update_group_reconciliation_definition_request : Annotated[Optional[UpdateGroupReconciliationDefinitionRequest], Field(description="The updated group reconciliation definition.")] = None, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
1600
+ ...
1601
+
1602
+ @overload
1603
+ def update_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to update the details for.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition.")], update_group_reconciliation_definition_request : Annotated[Optional[UpdateGroupReconciliationDefinitionRequest], Field(description="The updated group reconciliation definition.")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationDefinition: # noqa: E501
1604
+ ...
1605
+
1606
+ @validate_arguments
1607
+ def update_group_reconciliation_definition(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to update the details for.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition.")], update_group_reconciliation_definition_request : Annotated[Optional[UpdateGroupReconciliationDefinitionRequest], Field(description="The updated group reconciliation definition.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationDefinition, Awaitable[GroupReconciliationDefinition]]: # noqa: E501
1608
+ """[EXPERIMENTAL] UpdateGroupReconciliationDefinition: Update group reconciliation definition # noqa: E501
1609
+
1610
+ Update the group reconciliation definition. # noqa: E501
1611
+ This method makes a synchronous HTTP request by default. To make an
1612
+ asynchronous HTTP request, please pass async_req=True
1613
+
1614
+ >>> thread = api.update_group_reconciliation_definition(scope, code, update_group_reconciliation_definition_request, async_req=True)
1615
+ >>> result = thread.get()
1616
+
1617
+ :param scope: The scope of the group reconciliation definition to update the details for. (required)
1618
+ :type scope: str
1619
+ :param code: The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition. (required)
1620
+ :type code: str
1621
+ :param update_group_reconciliation_definition_request: The updated group reconciliation definition.
1622
+ :type update_group_reconciliation_definition_request: UpdateGroupReconciliationDefinitionRequest
1623
+ :param async_req: Whether to execute the request asynchronously.
1624
+ :type async_req: bool, optional
1625
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1626
+ :param opts: Configuration options for this request
1627
+ :type opts: ConfigurationOptions, optional
1628
+ :return: Returns the result object.
1629
+ If the method is called asynchronously,
1630
+ returns the request thread.
1631
+ :rtype: GroupReconciliationDefinition
1632
+ """
1633
+ kwargs['_return_http_data_only'] = True
1634
+ if '_preload_content' in kwargs:
1635
+ message = "Error! Please call the update_group_reconciliation_definition_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1636
+ raise ValueError(message)
1637
+ if async_req is not None:
1638
+ kwargs['async_req'] = async_req
1639
+ return self.update_group_reconciliation_definition_with_http_info(scope, code, update_group_reconciliation_definition_request, **kwargs) # noqa: E501
1640
+
1641
+ @validate_arguments
1642
+ def update_group_reconciliation_definition_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to update the details for.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition.")], update_group_reconciliation_definition_request : Annotated[Optional[UpdateGroupReconciliationDefinitionRequest], Field(description="The updated group reconciliation definition.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1643
+ """[EXPERIMENTAL] UpdateGroupReconciliationDefinition: Update group reconciliation definition # noqa: E501
1644
+
1645
+ Update the group reconciliation definition. # noqa: E501
1646
+ This method makes a synchronous HTTP request by default. To make an
1647
+ asynchronous HTTP request, please pass async_req=True
1648
+
1649
+ >>> thread = api.update_group_reconciliation_definition_with_http_info(scope, code, update_group_reconciliation_definition_request, async_req=True)
1650
+ >>> result = thread.get()
1651
+
1652
+ :param scope: The scope of the group reconciliation definition to update the details for. (required)
1653
+ :type scope: str
1654
+ :param code: The code of the group reconciliation definition to update the details for. Together with the scope this uniquely identifies the group reconciliation definition. (required)
1655
+ :type code: str
1656
+ :param update_group_reconciliation_definition_request: The updated group reconciliation definition.
1657
+ :type update_group_reconciliation_definition_request: UpdateGroupReconciliationDefinitionRequest
1658
+ :param async_req: Whether to execute the request asynchronously.
1659
+ :type async_req: bool, optional
1660
+ :param _preload_content: if False, the ApiResponse.data will
1661
+ be set to none and raw_data will store the
1662
+ HTTP response body without reading/decoding.
1663
+ Default is True.
1664
+ :type _preload_content: bool, optional
1665
+ :param _return_http_data_only: response data instead of ApiResponse
1666
+ object with status code, headers, etc
1667
+ :type _return_http_data_only: bool, optional
1668
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1669
+ :param opts: Configuration options for this request
1670
+ :type opts: ConfigurationOptions, optional
1671
+ :param _request_auth: set to override the auth_settings for an a single
1672
+ request; this effectively ignores the authentication
1673
+ in the spec for a single request.
1674
+ :type _request_auth: dict, optional
1675
+ :type _content_type: string, optional: force content-type for the request
1676
+ :return: Returns the result object.
1677
+ If the method is called asynchronously,
1678
+ returns the request thread.
1679
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1680
+ """
1681
+
1682
+ _params = locals()
1683
+
1684
+ _all_params = [
1685
+ 'scope',
1686
+ 'code',
1687
+ 'update_group_reconciliation_definition_request'
1688
+ ]
1689
+ _all_params.extend(
1690
+ [
1691
+ 'async_req',
1692
+ '_return_http_data_only',
1693
+ '_preload_content',
1694
+ '_request_timeout',
1695
+ '_request_auth',
1696
+ '_content_type',
1697
+ '_headers',
1698
+ 'opts'
1699
+ ]
1700
+ )
1701
+
1702
+ # validate the arguments
1703
+ for _key, _val in _params['kwargs'].items():
1704
+ if _key not in _all_params:
1705
+ raise ApiTypeError(
1706
+ "Got an unexpected keyword argument '%s'"
1707
+ " to method update_group_reconciliation_definition" % _key
1708
+ )
1709
+ _params[_key] = _val
1710
+ del _params['kwargs']
1711
+
1712
+ _collection_formats = {}
1713
+
1714
+ # process the path parameters
1715
+ _path_params = {}
1716
+ if _params['scope']:
1717
+ _path_params['scope'] = _params['scope']
1718
+
1719
+ if _params['code']:
1720
+ _path_params['code'] = _params['code']
1721
+
1722
+
1723
+ # process the query parameters
1724
+ _query_params = []
1725
+ # process the header parameters
1726
+ _header_params = dict(_params.get('_headers', {}))
1727
+ # process the form parameters
1728
+ _form_params = []
1729
+ _files = {}
1730
+ # process the body parameter
1731
+ _body_params = None
1732
+ if _params['update_group_reconciliation_definition_request'] is not None:
1733
+ _body_params = _params['update_group_reconciliation_definition_request']
1734
+
1735
+ # set the HTTP header `Accept`
1736
+ _header_params['Accept'] = self.api_client.select_header_accept(
1737
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1738
+
1739
+ # set the HTTP header `Content-Type`
1740
+ _content_types_list = _params.get('_content_type',
1741
+ self.api_client.select_header_content_type(
1742
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1743
+ if _content_types_list:
1744
+ _header_params['Content-Type'] = _content_types_list
1745
+
1746
+ # authentication setting
1747
+ _auth_settings = ['oauth2'] # noqa: E501
1748
+
1749
+ _response_types_map = {
1750
+ '200': "GroupReconciliationDefinition",
1751
+ '400': "LusidValidationProblemDetails",
1752
+ }
1753
+
1754
+ return self.api_client.call_api(
1755
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'PUT',
365
1756
  _path_params,
366
1757
  _query_params,
367
1758
  _header_params,
@@ -374,5 +1765,6 @@ class GroupReconciliationsApi:
374
1765
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
375
1766
  _preload_content=_params.get('_preload_content', True),
376
1767
  _request_timeout=_params.get('_request_timeout'),
1768
+ opts=_params.get('opts'),
377
1769
  collection_formats=_collection_formats,
378
1770
  _request_auth=_params.get('_request_auth'))