lusid-sdk 2.1.414__py3-none-any.whl → 2.1.429__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 (95) hide show
  1. lusid/__init__.py +40 -4
  2. lusid/api/__init__.py +2 -2
  3. lusid/api/allocations_api.py +2 -2
  4. lusid/api/chart_of_accounts_api.py +174 -0
  5. lusid/api/custom_entities_api.py +2 -2
  6. lusid/api/{fund_configurations_api.py → fund_configuration_entities_api.py} +1 -1
  7. lusid/api/group_reconciliations_api.py +1265 -34
  8. lusid/api/instruments_api.py +6 -6
  9. lusid/api/legal_entities_api.py +4 -4
  10. lusid/api/order_graph_api.py +4 -4
  11. lusid/api/portfolios_api.py +2 -2
  12. lusid/api/reference_lists_api.py +2 -2
  13. lusid/api/reference_portfolio_api.py +176 -0
  14. lusid/api/transaction_portfolios_api.py +2 -2
  15. lusid/configuration.py +1 -1
  16. lusid/models/__init__.py +38 -2
  17. lusid/models/accumulation_event.py +3 -3
  18. lusid/models/address_key_list.py +3 -3
  19. lusid/models/amortisation_event.py +3 -3
  20. lusid/models/amount.py +69 -0
  21. lusid/models/bond_coupon_event.py +3 -3
  22. lusid/models/bond_default_event.py +3 -3
  23. lusid/models/bond_principal_event.py +3 -3
  24. lusid/models/{component_rule.py → break_code_source.py} +17 -21
  25. lusid/models/capital_distribution_event.py +3 -3
  26. lusid/models/cash_dividend_event.py +3 -3
  27. lusid/models/cash_flow_event.py +3 -3
  28. lusid/models/cds_credit_event.py +3 -3
  29. lusid/models/cdx_credit_event.py +3 -3
  30. lusid/models/close_event.py +3 -3
  31. lusid/models/create_group_reconciliation_definition_request.py +113 -0
  32. lusid/models/credit_premium_cash_flow_event.py +3 -3
  33. lusid/models/decimal_list.py +3 -3
  34. lusid/models/dividend_option_event.py +3 -3
  35. lusid/models/dividend_reinvestment_event.py +3 -3
  36. lusid/models/exercise_event.py +3 -3
  37. lusid/models/expiry_event.py +3 -3
  38. lusid/models/fixed_schedule.py +3 -3
  39. lusid/models/float_schedule.py +4 -4
  40. lusid/models/fund_configuration.py +44 -17
  41. lusid/models/fund_configuration_request.py +31 -19
  42. lusid/models/fund_id_list.py +99 -0
  43. lusid/models/future_expiry_event.py +3 -3
  44. lusid/models/fx_forward_settlement_event.py +3 -3
  45. lusid/models/group_reconciliation_definition.py +136 -0
  46. lusid/models/group_reconciliation_definition_comparison_ruleset_ids.py +83 -0
  47. lusid/models/group_reconciliation_definition_currencies.py +71 -0
  48. lusid/models/group_reconciliation_definition_portfolio_entity_ids.py +86 -0
  49. lusid/models/group_reconciliation_definition_recipe_ids.py +78 -0
  50. lusid/models/informational_error_event.py +3 -3
  51. lusid/models/informational_event.py +3 -3
  52. lusid/models/instrument.py +7 -1
  53. lusid/models/instrument_definition.py +8 -2
  54. lusid/models/instrument_event.py +7 -5
  55. lusid/models/instrument_event_type.py +2 -0
  56. lusid/models/instrument_list.py +3 -3
  57. lusid/models/market_data_key_rule.py +5 -3
  58. lusid/models/market_data_specific_rule.py +5 -3
  59. lusid/models/maturity_event.py +3 -3
  60. lusid/models/mbs_coupon_event.py +97 -0
  61. lusid/models/mbs_principal_event.py +97 -0
  62. lusid/models/merger_event.py +22 -22
  63. lusid/models/open_event.py +3 -3
  64. lusid/models/output_transaction.py +9 -2
  65. lusid/models/paged_resource_list_of_group_reconciliation_comparison_ruleset.py +113 -0
  66. lusid/models/paged_resource_list_of_group_reconciliation_definition.py +113 -0
  67. lusid/models/portfolio_group_id_list.py +3 -3
  68. lusid/models/portfolio_id_list.py +3 -3
  69. lusid/models/property_list.py +3 -3
  70. lusid/models/raw_vendor_event.py +3 -3
  71. lusid/models/reference_list.py +6 -5
  72. lusid/models/reference_list_type.py +1 -0
  73. lusid/models/reset_event.py +3 -3
  74. lusid/models/reverse_stock_split_event.py +3 -3
  75. lusid/models/scrip_dividend_event.py +3 -3
  76. lusid/models/settlement_cycle.py +79 -0
  77. lusid/models/share_class_dealing_breakdown.py +3 -2
  78. lusid/models/spin_off_event.py +3 -3
  79. lusid/models/stock_dividend_event.py +20 -6
  80. lusid/models/stock_split_event.py +3 -3
  81. lusid/models/string_list.py +3 -3
  82. lusid/models/swap_cash_flow_event.py +3 -3
  83. lusid/models/swap_principal_event.py +3 -3
  84. lusid/models/transaction.py +9 -2
  85. lusid/models/transaction_date_windows.py +85 -0
  86. lusid/models/transaction_request.py +9 -2
  87. lusid/models/transition_event.py +3 -3
  88. lusid/models/trigger_event.py +3 -3
  89. lusid/models/update_group_reconciliation_comparison_ruleset_request.py +91 -0
  90. lusid/models/update_group_reconciliation_definition_request.py +107 -0
  91. lusid/models/upsert_reference_portfolio_constituent_properties_request.py +84 -0
  92. lusid/models/upsert_reference_portfolio_constituent_properties_response.py +115 -0
  93. {lusid_sdk-2.1.414.dist-info → lusid_sdk-2.1.429.dist-info}/METADATA +46 -19
  94. {lusid_sdk-2.1.414.dist-info → lusid_sdk-2.1.429.dist-info}/RECORD +95 -77
  95. {lusid_sdk-2.1.414.dist-info → lusid_sdk-2.1.429.dist-info}/WHEEL +0 -0
@@ -22,13 +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
30
31
  from lusid.models.deleted_entity_response import DeletedEntityResponse
31
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
32
38
 
33
39
  from lusid.api_client import ApiClient
34
40
  from lusid.api_response import ApiResponse
@@ -208,6 +214,164 @@ class GroupReconciliationsApi:
208
214
  collection_formats=_collection_formats,
209
215
  _request_auth=_params.get('_request_auth'))
210
216
 
217
+ @overload
218
+ 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
219
+ ...
220
+
221
+ @overload
222
+ 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
223
+ ...
224
+
225
+ @validate_arguments
226
+ 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
227
+ """[EXPERIMENTAL] CreateGroupReconciliationDefinition: Create Group Reconciliation Definition # noqa: E501
228
+
229
+ Creates a Group Reconciliation Definition # noqa: E501
230
+ This method makes a synchronous HTTP request by default. To make an
231
+ asynchronous HTTP request, please pass async_req=True
232
+
233
+ >>> thread = api.create_group_reconciliation_definition(create_group_reconciliation_definition_request, async_req=True)
234
+ >>> result = thread.get()
235
+
236
+ :param create_group_reconciliation_definition_request: The definition Group Reconciliation Definition details
237
+ :type create_group_reconciliation_definition_request: CreateGroupReconciliationDefinitionRequest
238
+ :param async_req: Whether to execute the request asynchronously.
239
+ :type async_req: bool, optional
240
+ :param _request_timeout: timeout setting for this request.
241
+ If one number provided, it will be total request
242
+ timeout. It can also be a pair (tuple) of
243
+ (connection, read) timeouts.
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 for this request. If one
281
+ number provided, it will be total request
282
+ timeout. It can also be a pair (tuple) of
283
+ (connection, read) timeouts.
284
+ :param _request_auth: set to override the auth_settings for an a single
285
+ request; this effectively ignores the authentication
286
+ in the spec for a single request.
287
+ :type _request_auth: dict, optional
288
+ :type _content_type: string, optional: force content-type for the request
289
+ :return: Returns the result object.
290
+ If the method is called asynchronously,
291
+ returns the request thread.
292
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
293
+ """
294
+
295
+ _params = locals()
296
+
297
+ _all_params = [
298
+ 'create_group_reconciliation_definition_request'
299
+ ]
300
+ _all_params.extend(
301
+ [
302
+ 'async_req',
303
+ '_return_http_data_only',
304
+ '_preload_content',
305
+ '_request_timeout',
306
+ '_request_auth',
307
+ '_content_type',
308
+ '_headers'
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
+ collection_formats=_collection_formats,
373
+ _request_auth=_params.get('_request_auth'))
374
+
211
375
  @overload
212
376
  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
213
377
  ...
@@ -368,30 +532,28 @@ class GroupReconciliationsApi:
368
532
  _request_auth=_params.get('_request_auth'))
369
533
 
370
534
  @overload
371
- async 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, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
535
+ 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
372
536
  ...
373
537
 
374
538
  @overload
375
- 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
539
+ 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
376
540
  ...
377
541
 
378
542
  @validate_arguments
379
- 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
380
- """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
543
+ 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
544
+ """[EXPERIMENTAL] DeleteGroupReconciliationDefinition: Delete Group Reconciliation Definition # noqa: E501
381
545
 
382
- Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
546
+ Delete the group reconciliation definition. # noqa: E501
383
547
  This method makes a synchronous HTTP request by default. To make an
384
548
  asynchronous HTTP request, please pass async_req=True
385
549
 
386
- >>> thread = api.get_comparison_ruleset(scope, code, as_at, async_req=True)
550
+ >>> thread = api.delete_group_reconciliation_definition(scope, code, async_req=True)
387
551
  >>> result = thread.get()
388
552
 
389
- :param scope: The scope of the specified comparison ruleset. (required)
553
+ :param scope: The scope of the group reconciliation definition to delete. (required)
390
554
  :type scope: str
391
- :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
555
+ :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)
392
556
  :type code: str
393
- :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.
394
- :type as_at: datetime
395
557
  :param async_req: Whether to execute the request asynchronously.
396
558
  :type async_req: bool, optional
397
559
  :param _request_timeout: timeout setting for this request.
@@ -401,33 +563,31 @@ class GroupReconciliationsApi:
401
563
  :return: Returns the result object.
402
564
  If the method is called asynchronously,
403
565
  returns the request thread.
404
- :rtype: GroupReconciliationComparisonRuleset
566
+ :rtype: DeletedEntityResponse
405
567
  """
406
568
  kwargs['_return_http_data_only'] = True
407
569
  if '_preload_content' in kwargs:
408
- 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
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
409
571
  raise ValueError(message)
410
572
  if async_req is not None:
411
573
  kwargs['async_req'] = async_req
412
- return self.get_comparison_ruleset_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
574
+ return self.delete_group_reconciliation_definition_with_http_info(scope, code, **kwargs) # noqa: E501
413
575
 
414
576
  @validate_arguments
415
- 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
416
- """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
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
417
579
 
418
- Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
580
+ Delete the group reconciliation definition. # noqa: E501
419
581
  This method makes a synchronous HTTP request by default. To make an
420
582
  asynchronous HTTP request, please pass async_req=True
421
583
 
422
- >>> thread = api.get_comparison_ruleset_with_http_info(scope, code, as_at, async_req=True)
584
+ >>> thread = api.delete_group_reconciliation_definition_with_http_info(scope, code, async_req=True)
423
585
  >>> result = thread.get()
424
586
 
425
- :param scope: The scope of the specified comparison ruleset. (required)
587
+ :param scope: The scope of the group reconciliation definition to delete. (required)
426
588
  :type scope: str
427
- :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
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)
428
590
  :type code: str
429
- :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.
430
- :type as_at: datetime
431
591
  :param async_req: Whether to execute the request asynchronously.
432
592
  :type async_req: bool, optional
433
593
  :param _preload_content: if False, the ApiResponse.data will
@@ -450,15 +610,14 @@ class GroupReconciliationsApi:
450
610
  :return: Returns the result object.
451
611
  If the method is called asynchronously,
452
612
  returns the request thread.
453
- :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
613
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
454
614
  """
455
615
 
456
616
  _params = locals()
457
617
 
458
618
  _all_params = [
459
619
  'scope',
460
- 'code',
461
- 'as_at'
620
+ 'code'
462
621
  ]
463
622
  _all_params.extend(
464
623
  [
@@ -477,7 +636,7 @@ class GroupReconciliationsApi:
477
636
  if _key not in _all_params:
478
637
  raise ApiTypeError(
479
638
  "Got an unexpected keyword argument '%s'"
480
- " to method get_comparison_ruleset" % _key
639
+ " to method delete_group_reconciliation_definition" % _key
481
640
  )
482
641
  _params[_key] = _val
483
642
  del _params['kwargs']
@@ -495,12 +654,6 @@ class GroupReconciliationsApi:
495
654
 
496
655
  # process the query parameters
497
656
  _query_params = []
498
- if _params.get('as_at') is not None: # noqa: E501
499
- if isinstance(_params['as_at'], datetime):
500
- _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
501
- else:
502
- _query_params.append(('asAt', _params['as_at']))
503
-
504
657
  # process the header parameters
505
658
  _header_params = dict(_params.get('_headers', {}))
506
659
  # process the form parameters
@@ -516,12 +669,1090 @@ class GroupReconciliationsApi:
516
669
  _auth_settings = ['oauth2'] # noqa: E501
517
670
 
518
671
  _response_types_map = {
519
- '200': "GroupReconciliationComparisonRuleset",
672
+ '200': "DeletedEntityResponse",
520
673
  '400': "LusidValidationProblemDetails",
521
674
  }
522
675
 
523
676
  return self.api_client.call_api(
524
- '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'GET',
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
+ collection_formats=_collection_formats,
691
+ _request_auth=_params.get('_request_auth'))
692
+
693
+ @overload
694
+ async 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, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
695
+ ...
696
+
697
+ @overload
698
+ 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
+ ...
700
+
701
+ @validate_arguments
702
+ 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
703
+ """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
704
+
705
+ Retrieves one Group Reconciliation Comparison Ruleset by scope and code # noqa: E501
706
+ This method makes a synchronous HTTP request by default. To make an
707
+ asynchronous HTTP request, please pass async_req=True
708
+
709
+ >>> thread = api.get_comparison_ruleset(scope, code, as_at, async_req=True)
710
+ >>> result = thread.get()
711
+
712
+ :param scope: The scope of the specified comparison ruleset. (required)
713
+ :type scope: str
714
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
715
+ :type code: str
716
+ :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.
717
+ :type as_at: datetime
718
+ :param async_req: Whether to execute the request asynchronously.
719
+ :type async_req: bool, optional
720
+ :param _request_timeout: timeout setting for this request.
721
+ If one number provided, it will be total request
722
+ timeout. It can also be a pair (tuple) of
723
+ (connection, read) timeouts.
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 for this request. If one
765
+ number provided, it will be total request
766
+ timeout. It can also be a pair (tuple) of
767
+ (connection, read) timeouts.
768
+ :param _request_auth: set to override the auth_settings for an a single
769
+ request; this effectively ignores the authentication
770
+ in the spec for a single request.
771
+ :type _request_auth: dict, optional
772
+ :type _content_type: string, optional: force content-type for the request
773
+ :return: Returns the result object.
774
+ If the method is called asynchronously,
775
+ returns the request thread.
776
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
777
+ """
778
+
779
+ _params = locals()
780
+
781
+ _all_params = [
782
+ 'scope',
783
+ 'code',
784
+ 'as_at'
785
+ ]
786
+ _all_params.extend(
787
+ [
788
+ 'async_req',
789
+ '_return_http_data_only',
790
+ '_preload_content',
791
+ '_request_timeout',
792
+ '_request_auth',
793
+ '_content_type',
794
+ '_headers'
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
+ collection_formats=_collection_formats,
861
+ _request_auth=_params.get('_request_auth'))
862
+
863
+ @overload
864
+ 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
865
+ ...
866
+
867
+ @overload
868
+ 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
869
+ ...
870
+
871
+ @validate_arguments
872
+ 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
873
+ """[EXPERIMENTAL] GetGroupReconciliationDefinition: Get group reconciliation definition # noqa: E501
874
+
875
+ Retrieves a Group Reconciliation Definition by scope and code # noqa: E501
876
+ This method makes a synchronous HTTP request by default. To make an
877
+ asynchronous HTTP request, please pass async_req=True
878
+
879
+ >>> thread = api.get_group_reconciliation_definition(scope, code, effective_at, as_at, async_req=True)
880
+ >>> result = thread.get()
881
+
882
+ :param scope: The scope of the group reconciliation definition to retrieve. (required)
883
+ :type scope: str
884
+ :param code: The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition. (required)
885
+ :type code: str
886
+ :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.
887
+ :type effective_at: str
888
+ :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.
889
+ :type as_at: datetime
890
+ :param async_req: Whether to execute the request asynchronously.
891
+ :type async_req: bool, optional
892
+ :param _request_timeout: timeout setting for this request.
893
+ If one number provided, it will be total request
894
+ timeout. It can also be a pair (tuple) of
895
+ (connection, read) timeouts.
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 for this request. If one
939
+ number provided, it will be total request
940
+ timeout. It can also be a pair (tuple) of
941
+ (connection, read) timeouts.
942
+ :param _request_auth: set to override the auth_settings for an a single
943
+ request; this effectively ignores the authentication
944
+ in the spec for a single request.
945
+ :type _request_auth: dict, optional
946
+ :type _content_type: string, optional: force content-type for the request
947
+ :return: Returns the result object.
948
+ If the method is called asynchronously,
949
+ returns the request thread.
950
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
951
+ """
952
+
953
+ _params = locals()
954
+
955
+ _all_params = [
956
+ 'scope',
957
+ 'code',
958
+ 'effective_at',
959
+ 'as_at'
960
+ ]
961
+ _all_params.extend(
962
+ [
963
+ 'async_req',
964
+ '_return_http_data_only',
965
+ '_preload_content',
966
+ '_request_timeout',
967
+ '_request_auth',
968
+ '_content_type',
969
+ '_headers'
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
+ collection_formats=_collection_formats,
1039
+ _request_auth=_params.get('_request_auth'))
1040
+
1041
+ @overload
1042
+ 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
1043
+ ...
1044
+
1045
+ @overload
1046
+ 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
1047
+ ...
1048
+
1049
+ @validate_arguments
1050
+ 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
1051
+ """[EXPERIMENTAL] ListComparisonRulesets: Get a set of Group Reconciliation Comparison Rulesets # noqa: E501
1052
+
1053
+ Retrieves all Group Reconciliation Comparison Ruleset that fit the filter, in a specific order if sortBy is provided Supports pagination # noqa: E501
1054
+ This method makes a synchronous HTTP request by default. To make an
1055
+ asynchronous HTTP request, please pass async_req=True
1056
+
1057
+ >>> thread = api.list_comparison_rulesets(as_at, page, sort_by, limit, filter, async_req=True)
1058
+ >>> result = thread.get()
1059
+
1060
+ :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.
1061
+ :type as_at: datetime
1062
+ :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.
1063
+ :type page: str
1064
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1065
+ :type sort_by: List[str]
1066
+ :param limit: When paginating, limit the number of returned results to this many per page.
1067
+ :type limit: int
1068
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1069
+ :type filter: str
1070
+ :param async_req: Whether to execute the request asynchronously.
1071
+ :type async_req: bool, optional
1072
+ :param _request_timeout: timeout setting for this request.
1073
+ If one number provided, it will be total request
1074
+ timeout. It can also be a pair (tuple) of
1075
+ (connection, read) timeouts.
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 for this request. If one
1121
+ number provided, it will be total request
1122
+ timeout. It can also be a pair (tuple) of
1123
+ (connection, read) timeouts.
1124
+ :param _request_auth: set to override the auth_settings for an a single
1125
+ request; this effectively ignores the authentication
1126
+ in the spec for a single request.
1127
+ :type _request_auth: dict, optional
1128
+ :type _content_type: string, optional: force content-type for the request
1129
+ :return: Returns the result object.
1130
+ If the method is called asynchronously,
1131
+ returns the request thread.
1132
+ :rtype: tuple(PagedResourceListOfGroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
1133
+ """
1134
+
1135
+ _params = locals()
1136
+
1137
+ _all_params = [
1138
+ 'as_at',
1139
+ 'page',
1140
+ 'sort_by',
1141
+ 'limit',
1142
+ 'filter'
1143
+ ]
1144
+ _all_params.extend(
1145
+ [
1146
+ 'async_req',
1147
+ '_return_http_data_only',
1148
+ '_preload_content',
1149
+ '_request_timeout',
1150
+ '_request_auth',
1151
+ '_content_type',
1152
+ '_headers'
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
+ collection_formats=_collection_formats,
1226
+ _request_auth=_params.get('_request_auth'))
1227
+
1228
+ @overload
1229
+ 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
1230
+ ...
1231
+
1232
+ @overload
1233
+ 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
1234
+ ...
1235
+
1236
+ @validate_arguments
1237
+ 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
1238
+ """[EXPERIMENTAL] ListGroupReconciliationDefinitions: List group reconciliation definitions # noqa: E501
1239
+
1240
+ Lists Group Reconciliation Definitions matching any provided filter, limit and sorting rules # noqa: E501
1241
+ This method makes a synchronous HTTP request by default. To make an
1242
+ asynchronous HTTP request, please pass async_req=True
1243
+
1244
+ >>> thread = api.list_group_reconciliation_definitions(effective_at, as_at, page, limit, filter, sort_by, async_req=True)
1245
+ >>> result = thread.get()
1246
+
1247
+ :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.
1248
+ :type effective_at: str
1249
+ :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.
1250
+ :type as_at: datetime
1251
+ :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.
1252
+ :type page: str
1253
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.
1254
+ :type limit: int
1255
+ :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.
1256
+ :type filter: str
1257
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1258
+ :type sort_by: List[str]
1259
+ :param async_req: Whether to execute the request asynchronously.
1260
+ :type async_req: bool, optional
1261
+ :param _request_timeout: timeout setting for this request.
1262
+ If one number provided, it will be total request
1263
+ timeout. It can also be a pair (tuple) of
1264
+ (connection, read) timeouts.
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 for this request. If one
1312
+ number provided, it will be total request
1313
+ timeout. It can also be a pair (tuple) of
1314
+ (connection, read) timeouts.
1315
+ :param _request_auth: set to override the auth_settings for an a single
1316
+ request; this effectively ignores the authentication
1317
+ in the spec for a single request.
1318
+ :type _request_auth: dict, optional
1319
+ :type _content_type: string, optional: force content-type for the request
1320
+ :return: Returns the result object.
1321
+ If the method is called asynchronously,
1322
+ returns the request thread.
1323
+ :rtype: tuple(PagedResourceListOfGroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1324
+ """
1325
+
1326
+ _params = locals()
1327
+
1328
+ _all_params = [
1329
+ 'effective_at',
1330
+ 'as_at',
1331
+ 'page',
1332
+ 'limit',
1333
+ 'filter',
1334
+ 'sort_by'
1335
+ ]
1336
+ _all_params.extend(
1337
+ [
1338
+ 'async_req',
1339
+ '_return_http_data_only',
1340
+ '_preload_content',
1341
+ '_request_timeout',
1342
+ '_request_auth',
1343
+ '_content_type',
1344
+ '_headers'
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
+ collection_formats=_collection_formats,
1421
+ _request_auth=_params.get('_request_auth'))
1422
+
1423
+ @overload
1424
+ 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
1425
+ ...
1426
+
1427
+ @overload
1428
+ 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
1429
+ ...
1430
+
1431
+ @validate_arguments
1432
+ 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
1433
+ """[EXPERIMENTAL] UpdateComparisonRuleset: Update Group Reconciliation Comparison Ruleset defined by scope and code # noqa: E501
1434
+
1435
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
1436
+ This method makes a synchronous HTTP request by default. To make an
1437
+ asynchronous HTTP request, please pass async_req=True
1438
+
1439
+ >>> thread = api.update_comparison_ruleset(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
1440
+ >>> result = thread.get()
1441
+
1442
+ :param scope: The scope of the specified comparison ruleset. (required)
1443
+ :type scope: str
1444
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1445
+ :type code: str
1446
+ :param update_group_reconciliation_comparison_ruleset_request: The request containing the updated details of the ruleset
1447
+ :type update_group_reconciliation_comparison_ruleset_request: UpdateGroupReconciliationComparisonRulesetRequest
1448
+ :param async_req: Whether to execute the request asynchronously.
1449
+ :type async_req: bool, optional
1450
+ :param _request_timeout: timeout setting for this request.
1451
+ If one number provided, it will be total request
1452
+ timeout. It can also be a pair (tuple) of
1453
+ (connection, read) timeouts.
1454
+ :return: Returns the result object.
1455
+ If the method is called asynchronously,
1456
+ returns the request thread.
1457
+ :rtype: GroupReconciliationComparisonRuleset
1458
+ """
1459
+ kwargs['_return_http_data_only'] = True
1460
+ if '_preload_content' in kwargs:
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
1462
+ raise ValueError(message)
1463
+ if async_req is not None:
1464
+ kwargs['async_req'] = async_req
1465
+ return self.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, **kwargs) # noqa: E501
1466
+
1467
+ @validate_arguments
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
1470
+
1471
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
1472
+ This method makes a synchronous HTTP request by default. To make an
1473
+ asynchronous HTTP request, please pass async_req=True
1474
+
1475
+ >>> thread = api.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
1476
+ >>> result = thread.get()
1477
+
1478
+ :param scope: The scope of the specified comparison ruleset. (required)
1479
+ :type scope: str
1480
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1481
+ :type code: str
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
1484
+ :param async_req: Whether to execute the request asynchronously.
1485
+ :type async_req: bool, optional
1486
+ :param _preload_content: if False, the ApiResponse.data will
1487
+ be set to none and raw_data will store the
1488
+ HTTP response body without reading/decoding.
1489
+ Default is True.
1490
+ :type _preload_content: bool, optional
1491
+ :param _return_http_data_only: response data instead of ApiResponse
1492
+ object with status code, headers, etc
1493
+ :type _return_http_data_only: bool, optional
1494
+ :param _request_timeout: timeout setting for this request. If one
1495
+ number provided, it will be total request
1496
+ timeout. It can also be a pair (tuple) of
1497
+ (connection, read) timeouts.
1498
+ :param _request_auth: set to override the auth_settings for an a single
1499
+ request; this effectively ignores the authentication
1500
+ in the spec for a single request.
1501
+ :type _request_auth: dict, optional
1502
+ :type _content_type: string, optional: force content-type for the request
1503
+ :return: Returns the result object.
1504
+ If the method is called asynchronously,
1505
+ returns the request thread.
1506
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
1507
+ """
1508
+
1509
+ _params = locals()
1510
+
1511
+ _all_params = [
1512
+ 'scope',
1513
+ 'code',
1514
+ 'update_group_reconciliation_comparison_ruleset_request'
1515
+ ]
1516
+ _all_params.extend(
1517
+ [
1518
+ 'async_req',
1519
+ '_return_http_data_only',
1520
+ '_preload_content',
1521
+ '_request_timeout',
1522
+ '_request_auth',
1523
+ '_content_type',
1524
+ '_headers'
1525
+ ]
1526
+ )
1527
+
1528
+ # validate the arguments
1529
+ for _key, _val in _params['kwargs'].items():
1530
+ if _key not in _all_params:
1531
+ raise ApiTypeError(
1532
+ "Got an unexpected keyword argument '%s'"
1533
+ " to method update_comparison_ruleset" % _key
1534
+ )
1535
+ _params[_key] = _val
1536
+ del _params['kwargs']
1537
+
1538
+ _collection_formats = {}
1539
+
1540
+ # process the path parameters
1541
+ _path_params = {}
1542
+ if _params['scope']:
1543
+ _path_params['scope'] = _params['scope']
1544
+
1545
+ if _params['code']:
1546
+ _path_params['code'] = _params['code']
1547
+
1548
+
1549
+ # process the query parameters
1550
+ _query_params = []
1551
+ # process the header parameters
1552
+ _header_params = dict(_params.get('_headers', {}))
1553
+ # process the form parameters
1554
+ _form_params = []
1555
+ _files = {}
1556
+ # process the body parameter
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
+
1561
+ # set the HTTP header `Accept`
1562
+ _header_params['Accept'] = self.api_client.select_header_accept(
1563
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
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
+
1572
+ # authentication setting
1573
+ _auth_settings = ['oauth2'] # noqa: E501
1574
+
1575
+ _response_types_map = {
1576
+ '200': "GroupReconciliationComparisonRuleset",
1577
+ '400': "LusidValidationProblemDetails",
1578
+ }
1579
+
1580
+ return self.api_client.call_api(
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
+ collection_formats=_collection_formats,
1595
+ _request_auth=_params.get('_request_auth'))
1596
+
1597
+ @overload
1598
+ 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
1599
+ ...
1600
+
1601
+ @overload
1602
+ 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
1603
+ ...
1604
+
1605
+ @validate_arguments
1606
+ 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
1607
+ """[EXPERIMENTAL] UpdateGroupReconciliationDefinition: Update group reconciliation definition # noqa: E501
1608
+
1609
+ Update the group reconciliation definition. # noqa: E501
1610
+ This method makes a synchronous HTTP request by default. To make an
1611
+ asynchronous HTTP request, please pass async_req=True
1612
+
1613
+ >>> thread = api.update_group_reconciliation_definition(scope, code, update_group_reconciliation_definition_request, async_req=True)
1614
+ >>> result = thread.get()
1615
+
1616
+ :param scope: The scope of the group reconciliation definition to update the details for. (required)
1617
+ :type scope: str
1618
+ :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)
1619
+ :type code: str
1620
+ :param update_group_reconciliation_definition_request: The updated group reconciliation definition.
1621
+ :type update_group_reconciliation_definition_request: UpdateGroupReconciliationDefinitionRequest
1622
+ :param async_req: Whether to execute the request asynchronously.
1623
+ :type async_req: bool, optional
1624
+ :param _request_timeout: timeout setting for this request.
1625
+ If one number provided, it will be total request
1626
+ timeout. It can also be a pair (tuple) of
1627
+ (connection, read) timeouts.
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 for this request. If one
1669
+ number provided, it will be total request
1670
+ timeout. It can also be a pair (tuple) of
1671
+ (connection, read) timeouts.
1672
+ :param _request_auth: set to override the auth_settings for an a single
1673
+ request; this effectively ignores the authentication
1674
+ in the spec for a single request.
1675
+ :type _request_auth: dict, optional
1676
+ :type _content_type: string, optional: force content-type for the request
1677
+ :return: Returns the result object.
1678
+ If the method is called asynchronously,
1679
+ returns the request thread.
1680
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1681
+ """
1682
+
1683
+ _params = locals()
1684
+
1685
+ _all_params = [
1686
+ 'scope',
1687
+ 'code',
1688
+ 'update_group_reconciliation_definition_request'
1689
+ ]
1690
+ _all_params.extend(
1691
+ [
1692
+ 'async_req',
1693
+ '_return_http_data_only',
1694
+ '_preload_content',
1695
+ '_request_timeout',
1696
+ '_request_auth',
1697
+ '_content_type',
1698
+ '_headers'
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',
525
1756
  _path_params,
526
1757
  _query_params,
527
1758
  _header_params,