lusid-sdk 2.0.50b0__py3-none-any.whl → 2.1.684__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1241) hide show
  1. lusid/__init__.py +1647 -15
  2. lusid/api/__init__.py +87 -0
  3. lusid/api/abor_api.py +807 -305
  4. lusid/api/abor_configuration_api.py +72 -70
  5. lusid/api/address_key_definition_api.py +30 -29
  6. lusid/api/aggregation_api.py +41 -40
  7. lusid/api/allocations_api.py +83 -71
  8. lusid/api/amortisation_rule_sets_api.py +1101 -0
  9. lusid/api/application_metadata_api.py +30 -29
  10. lusid/api/blocks_api.py +45 -44
  11. lusid/api/calendars_api.py +492 -142
  12. lusid/api/chart_of_accounts_api.py +2488 -644
  13. lusid/api/complex_market_data_api.py +41 -40
  14. lusid/api/compliance_api.py +1147 -444
  15. lusid/api/configuration_recipe_api.py +1237 -94
  16. lusid/api/conventions_api.py +111 -110
  17. lusid/api/corporate_action_sources_api.py +98 -97
  18. lusid/api/counterparties_api.py +75 -74
  19. lusid/api/custom_data_models_api.py +1043 -0
  20. lusid/api/custom_entities_api.py +116 -115
  21. lusid/api/custom_entity_definitions_api.py +39 -38
  22. lusid/api/custom_entity_types_api.py +39 -38
  23. lusid/api/cut_label_definitions_api.py +57 -64
  24. lusid/api/data_types_api.py +417 -97
  25. lusid/api/derived_transaction_portfolios_api.py +21 -20
  26. lusid/api/entities_api.py +1110 -13
  27. lusid/api/executions_api.py +49 -48
  28. lusid/api/fee_types_api.py +1053 -0
  29. lusid/api/fund_configuration_api.py +1120 -0
  30. lusid/api/funds_api.py +4402 -0
  31. lusid/api/group_reconciliations_api.py +2497 -0
  32. lusid/api/instrument_event_types_api.py +1288 -0
  33. lusid/api/instrument_events_api.py +232 -42
  34. lusid/api/instruments_api.py +391 -211
  35. lusid/api/legacy_compliance_api.py +87 -86
  36. lusid/api/legal_entities_api.py +201 -200
  37. lusid/api/order_graph_api.py +46 -45
  38. lusid/api/order_instructions_api.py +45 -44
  39. lusid/api/order_management_api.py +1537 -67
  40. lusid/api/orders_api.py +58 -65
  41. lusid/api/packages_api.py +45 -44
  42. lusid/api/participations_api.py +39 -38
  43. lusid/api/persons_api.py +342 -182
  44. lusid/api/placements_api.py +51 -50
  45. lusid/api/portfolio_groups_api.py +263 -254
  46. lusid/api/portfolios_api.py +1343 -417
  47. lusid/api/property_definitions_api.py +304 -98
  48. lusid/api/queryable_keys_api.py +212 -0
  49. lusid/api/quotes_api.py +106 -121
  50. lusid/api/reconciliations_api.py +548 -2115
  51. lusid/api/reference_lists_api.py +41 -40
  52. lusid/api/reference_portfolio_api.py +215 -38
  53. lusid/api/relation_definitions_api.py +30 -29
  54. lusid/api/relations_api.py +22 -21
  55. lusid/api/relationship_definitions_api.py +48 -47
  56. lusid/api/relationships_api.py +23 -22
  57. lusid/api/schemas_api.py +46 -53
  58. lusid/api/scopes_api.py +192 -11
  59. lusid/api/scripted_translation_api.py +105 -102
  60. lusid/api/search_api.py +39 -38
  61. lusid/api/sequences_api.py +39 -38
  62. lusid/api/simple_position_portfolios_api.py +213 -0
  63. lusid/api/staged_modifications_api.py +763 -0
  64. lusid/api/staging_rule_set_api.py +886 -0
  65. lusid/api/structured_result_data_api.py +90 -89
  66. lusid/api/system_configuration_api.py +66 -65
  67. lusid/api/tax_rule_sets_api.py +48 -47
  68. lusid/api/timelines_api.py +1307 -0
  69. lusid/api/transaction_configuration_api.py +124 -123
  70. lusid/api/transaction_fees_api.py +48 -47
  71. lusid/api/transaction_portfolios_api.py +1454 -925
  72. lusid/api/translation_api.py +21 -20
  73. lusid/api/workspace_api.py +3482 -0
  74. lusid/api_client.py +31 -20
  75. lusid/api_response.py +1 -1
  76. lusid/configuration.py +102 -8
  77. lusid/extensions/__init__.py +12 -7
  78. lusid/extensions/api_client.py +28 -18
  79. lusid/extensions/api_client_factory.py +168 -45
  80. lusid/extensions/api_configuration.py +172 -14
  81. lusid/extensions/configuration_loaders.py +117 -20
  82. lusid/extensions/configuration_options.py +67 -0
  83. lusid/extensions/file_access_token.py +42 -0
  84. lusid/extensions/proxy_config.py +8 -5
  85. lusid/extensions/rest.py +78 -26
  86. lusid/extensions/retry.py +109 -37
  87. lusid/extensions/socket_keep_alive.py +14 -15
  88. lusid/extensions/tcp_keep_alive_connector.py +93 -46
  89. lusid/models/__init__.py +1537 -14
  90. lusid/models/a2_b_breakdown.py +9 -1
  91. lusid/models/a2_b_category.py +9 -1
  92. lusid/models/a2_b_data_record.py +9 -1
  93. lusid/models/a2_b_movement_record.py +9 -1
  94. lusid/models/abor.py +18 -3
  95. lusid/models/abor_configuration.py +17 -9
  96. lusid/models/abor_configuration_properties.py +9 -1
  97. lusid/models/abor_configuration_request.py +18 -10
  98. lusid/models/abor_properties.py +9 -1
  99. lusid/models/abor_request.py +10 -2
  100. lusid/models/accept_estimate_valuation_point_response.py +108 -0
  101. lusid/models/access_controlled_action.py +9 -1
  102. lusid/models/access_controlled_resource.py +9 -1
  103. lusid/models/access_metadata_operation.py +12 -4
  104. lusid/models/access_metadata_value.py +10 -2
  105. lusid/models/account.py +16 -3
  106. lusid/models/account_properties.py +9 -1
  107. lusid/models/accounted_transaction.py +96 -0
  108. lusid/models/accounting_method.py +10 -0
  109. lusid/models/accounts_upsert_response.py +9 -1
  110. lusid/models/accumulation_event.py +112 -0
  111. lusid/models/action_id.py +10 -2
  112. lusid/models/add_business_days_to_date_request.py +9 -1
  113. lusid/models/add_business_days_to_date_response.py +9 -1
  114. lusid/models/additional_payment.py +12 -4
  115. lusid/models/address_definition.py +9 -1
  116. lusid/models/address_key_compliance_parameter.py +13 -12
  117. lusid/models/address_key_definition.py +9 -1
  118. lusid/models/address_key_filter.py +9 -1
  119. lusid/models/address_key_list.py +13 -5
  120. lusid/models/address_key_list_compliance_parameter.py +12 -4
  121. lusid/models/address_key_option_definition.py +12 -2
  122. lusid/models/adjust_global_commitment_event.py +101 -0
  123. lusid/models/adjust_holding.py +9 -1
  124. lusid/models/adjust_holding_for_date_request.py +9 -1
  125. lusid/models/adjust_holding_request.py +9 -1
  126. lusid/models/aggregate_spec.py +12 -4
  127. lusid/models/aggregated_return.py +9 -1
  128. lusid/models/aggregated_returns_dispersion_request.py +9 -1
  129. lusid/models/aggregated_returns_request.py +9 -1
  130. lusid/models/aggregated_returns_response.py +9 -1
  131. lusid/models/aggregated_transactions_request.py +9 -1
  132. lusid/models/aggregation_context.py +9 -1
  133. lusid/models/aggregation_measure_failure_detail.py +9 -1
  134. lusid/models/aggregation_op.py +1 -0
  135. lusid/models/aggregation_options.py +9 -1
  136. lusid/models/aggregation_query.py +9 -1
  137. lusid/models/alias.py +79 -0
  138. lusid/models/allocation.py +9 -1
  139. lusid/models/allocation_request.py +9 -1
  140. lusid/models/allocation_service_run_response.py +9 -1
  141. lusid/models/allocation_set_request.py +9 -1
  142. lusid/models/amortisation_event.py +13 -7
  143. lusid/models/amortisation_rule.py +112 -0
  144. lusid/models/amortisation_rule_set.py +141 -0
  145. lusid/models/amount.py +77 -0
  146. lusid/models/annul_quotes_response.py +9 -1
  147. lusid/models/annul_single_structured_data_response.py +9 -1
  148. lusid/models/annul_structured_data_response.py +9 -1
  149. lusid/models/applicable_instrument_event.py +138 -0
  150. lusid/models/{underlying_leg.py → asset_leg.py} +25 -17
  151. lusid/models/barrier.py +9 -1
  152. lusid/models/basket.py +12 -4
  153. lusid/models/basket_identifier.py +9 -1
  154. lusid/models/batch_adjust_holdings_response.py +9 -1
  155. lusid/models/batch_update_user_review_for_comparison_result_request.py +89 -0
  156. lusid/models/batch_update_user_review_for_comparison_result_response.py +154 -0
  157. lusid/models/batch_upsert_dates_for_calendar_response.py +154 -0
  158. lusid/models/batch_upsert_instrument_properties_response.py +9 -1
  159. lusid/models/batch_upsert_portfolio_access_metadata_request.py +100 -0
  160. lusid/models/batch_upsert_portfolio_access_metadata_response.py +130 -0
  161. lusid/models/batch_upsert_portfolio_access_metadata_response_item.py +100 -0
  162. lusid/models/batch_upsert_portfolio_transactions_response.py +9 -1
  163. lusid/models/batch_upsert_property_definition_properties_response.py +9 -1
  164. lusid/models/block.py +9 -1
  165. lusid/models/block_and_order_id_request.py +86 -0
  166. lusid/models/block_and_orders.py +91 -0
  167. lusid/models/block_and_orders_create_request.py +85 -0
  168. lusid/models/block_and_orders_request.py +142 -0
  169. lusid/models/block_request.py +9 -1
  170. lusid/models/block_set_request.py +9 -1
  171. lusid/models/blocked_order_request.py +138 -0
  172. lusid/models/bond.py +29 -8
  173. lusid/models/bond_conversion_entry.py +83 -0
  174. lusid/models/bond_conversion_schedule.py +138 -0
  175. lusid/models/bond_coupon_event.py +110 -0
  176. lusid/models/bond_default_event.py +16 -18
  177. lusid/models/bond_principal_event.py +110 -0
  178. lusid/models/bonus_issue_event.py +174 -0
  179. lusid/models/book_transactions_request.py +105 -0
  180. lusid/models/book_transactions_response.py +9 -1
  181. lusid/models/bool_compliance_parameter.py +12 -4
  182. lusid/models/bool_list_compliance_parameter.py +12 -4
  183. lusid/models/branch_step.py +109 -0
  184. lusid/models/branch_step_request.py +106 -0
  185. lusid/models/break_code_source.py +81 -0
  186. lusid/models/bucketed_cash_flow_request.py +9 -1
  187. lusid/models/bucketed_cash_flow_response.py +9 -1
  188. lusid/models/bucketing_schedule.py +9 -1
  189. lusid/models/calculation_info.py +9 -1
  190. lusid/models/calendar.py +26 -3
  191. lusid/models/calendar_date.py +9 -1
  192. lusid/models/calendar_dependency.py +9 -1
  193. lusid/models/call_on_intermediate_securities_event.py +147 -0
  194. lusid/models/cancel_order_and_move_remaining_result.py +92 -0
  195. lusid/models/cancel_orders_and_move_remaining_request.py +91 -0
  196. lusid/models/cancel_orders_and_move_remaining_response.py +161 -0
  197. lusid/models/cancel_orders_response.py +161 -0
  198. lusid/models/cancel_placements_response.py +161 -0
  199. lusid/models/cancel_single_holding_adjustment_request.py +104 -0
  200. lusid/models/cancelled_order_result.py +81 -0
  201. lusid/models/cancelled_placement_result.py +91 -0
  202. lusid/models/cap_floor.py +42 -9
  203. lusid/models/capital_distribution_event.py +125 -0
  204. lusid/models/cash.py +101 -0
  205. lusid/models/cash_and_security_offer_election.py +98 -0
  206. lusid/models/cash_dependency.py +9 -1
  207. lusid/models/cash_dividend_event.py +40 -10
  208. lusid/models/cash_election.py +99 -0
  209. lusid/models/cash_flow_event.py +14 -8
  210. lusid/models/cash_flow_lineage.py +9 -1
  211. lusid/models/cash_flow_value.py +9 -1
  212. lusid/models/cash_flow_value_set.py +9 -1
  213. lusid/models/cash_ladder_record.py +9 -1
  214. lusid/models/cash_offer_election.py +85 -0
  215. lusid/models/cash_perpetual.py +12 -4
  216. lusid/models/cds_credit_event.py +113 -0
  217. lusid/models/cds_flow_conventions.py +10 -2
  218. lusid/models/cds_index.py +31 -8
  219. lusid/models/cds_protection_detail_specification.py +9 -1
  220. lusid/models/cdx_credit_event.py +122 -0
  221. lusid/models/change.py +9 -1
  222. lusid/models/change_history.py +9 -1
  223. lusid/models/change_interval.py +131 -0
  224. lusid/models/change_interval_with_order_management_detail.py +145 -0
  225. lusid/models/change_item.py +9 -1
  226. lusid/models/chart_of_accounts.py +9 -1
  227. lusid/models/chart_of_accounts_properties.py +9 -1
  228. lusid/models/chart_of_accounts_request.py +9 -1
  229. lusid/models/check_step.py +118 -0
  230. lusid/models/check_step_request.py +106 -0
  231. lusid/models/cleardown_module_details.py +103 -0
  232. lusid/models/cleardown_module_request.py +125 -0
  233. lusid/models/cleardown_module_response.py +147 -0
  234. lusid/models/cleardown_module_rule.py +102 -0
  235. lusid/models/cleardown_module_rules_updated_response.py +118 -0
  236. lusid/models/client.py +9 -1
  237. lusid/models/close_event.py +12 -4
  238. lusid/models/close_period_diary_entry_request.py +157 -0
  239. lusid/models/closed_period.py +136 -0
  240. lusid/models/comparison_attribute_value_pair.py +84 -0
  241. lusid/models/complete_portfolio.py +20 -5
  242. lusid/models/complete_relation.py +9 -1
  243. lusid/models/complete_relationship.py +9 -1
  244. lusid/models/complex_bond.py +30 -9
  245. lusid/models/complex_market_data.py +15 -6
  246. lusid/models/complex_market_data_id.py +9 -1
  247. lusid/models/compliance_breached_order_info.py +9 -1
  248. lusid/models/compliance_parameter.py +19 -6
  249. lusid/models/compliance_parameter_type.py +5 -0
  250. lusid/models/compliance_rule.py +9 -1
  251. lusid/models/compliance_rule_breakdown.py +25 -9
  252. lusid/models/compliance_rule_breakdown_request.py +21 -5
  253. lusid/models/compliance_rule_response.py +9 -1
  254. lusid/models/compliance_rule_result.py +9 -1
  255. lusid/models/compliance_rule_result_detail.py +9 -1
  256. lusid/models/compliance_rule_result_portfolio_detail.py +9 -1
  257. lusid/models/compliance_rule_result_v2.py +93 -0
  258. lusid/models/compliance_rule_template.py +161 -0
  259. lusid/models/compliance_rule_upsert_request.py +9 -1
  260. lusid/models/compliance_rule_upsert_response.py +9 -1
  261. lusid/models/compliance_run_configuration.py +81 -0
  262. lusid/models/compliance_run_info.py +9 -1
  263. lusid/models/compliance_run_info_v2.py +9 -1
  264. lusid/models/compliance_step.py +108 -0
  265. lusid/models/compliance_step_request.py +107 -0
  266. lusid/models/compliance_step_type.py +43 -0
  267. lusid/models/compliance_step_type_request.py +42 -0
  268. lusid/models/compliance_summary_rule_result.py +20 -15
  269. lusid/models/compliance_summary_rule_result_request.py +20 -15
  270. lusid/models/compliance_template.py +9 -1
  271. lusid/models/compliance_template_parameter.py +9 -1
  272. lusid/models/compliance_template_variation.py +29 -4
  273. lusid/models/compliance_template_variation_dto.py +120 -0
  274. lusid/models/compliance_template_variation_request.py +120 -0
  275. lusid/models/component_filter.py +93 -0
  276. lusid/models/component_transaction.py +107 -0
  277. lusid/models/composite_breakdown.py +9 -1
  278. lusid/models/composite_breakdown_request.py +9 -1
  279. lusid/models/composite_breakdown_response.py +9 -1
  280. lusid/models/composite_dispersion.py +39 -6
  281. lusid/models/composite_dispersion_response.py +9 -1
  282. lusid/models/compounding.py +13 -5
  283. lusid/models/configuration_recipe.py +18 -19
  284. lusid/models/constant_volatility_surface.py +110 -0
  285. lusid/models/constituents_adjustment_header.py +9 -1
  286. lusid/models/contract_details.py +109 -0
  287. lusid/models/contract_for_difference.py +16 -6
  288. lusid/models/contract_initialisation_event.py +107 -0
  289. lusid/models/contribution_to_non_passing_rule_detail.py +97 -0
  290. lusid/models/corporate_action.py +9 -1
  291. lusid/models/corporate_action_source.py +9 -1
  292. lusid/models/corporate_action_transition.py +9 -1
  293. lusid/models/corporate_action_transition_component.py +9 -1
  294. lusid/models/corporate_action_transition_component_request.py +9 -1
  295. lusid/models/corporate_action_transition_request.py +9 -1
  296. lusid/models/counterparty_agreement.py +9 -1
  297. lusid/models/counterparty_risk_information.py +9 -1
  298. lusid/models/counterparty_signatory.py +9 -1
  299. lusid/models/create_address_key_definition_request.py +9 -1
  300. lusid/models/create_amortisation_rule_set_request.py +110 -0
  301. lusid/models/create_calendar_request.py +9 -1
  302. lusid/models/create_closed_period_request.py +104 -0
  303. lusid/models/create_compliance_template_request.py +103 -0
  304. lusid/models/create_corporate_action_source_request.py +9 -1
  305. lusid/models/create_custom_entity_type_request.py +9 -1
  306. lusid/models/create_cut_label_definition_request.py +9 -1
  307. lusid/models/create_data_map_request.py +9 -1
  308. lusid/models/create_data_type_request.py +9 -1
  309. lusid/models/create_date_request.py +9 -1
  310. lusid/models/create_derived_property_definition_request.py +16 -6
  311. lusid/models/create_derived_transaction_portfolio_request.py +33 -7
  312. lusid/models/create_group_reconciliation_comparison_ruleset_request.py +105 -0
  313. lusid/models/create_group_reconciliation_definition_request.py +121 -0
  314. lusid/models/create_portfolio_details.py +9 -1
  315. lusid/models/create_portfolio_group_request.py +9 -1
  316. lusid/models/create_property_definition_request.py +21 -6
  317. lusid/models/create_recipe_request.py +9 -1
  318. lusid/models/create_reconciliation_request.py +9 -1
  319. lusid/models/create_reference_portfolio_request.py +9 -1
  320. lusid/models/create_relation_definition_request.py +9 -1
  321. lusid/models/create_relation_request.py +9 -1
  322. lusid/models/create_relationship_definition_request.py +11 -3
  323. lusid/models/create_relationship_request.py +9 -1
  324. lusid/models/create_sequence_request.py +9 -1
  325. lusid/models/create_simple_position_portfolio_request.py +196 -0
  326. lusid/models/create_staging_rule_set_request.py +94 -0
  327. lusid/models/create_tax_rule_set_request.py +9 -1
  328. lusid/models/create_timeline_request.py +110 -0
  329. lusid/models/create_trade_tickets_response.py +95 -0
  330. lusid/models/create_transaction_portfolio_request.py +33 -7
  331. lusid/models/create_unit_definition.py +9 -1
  332. lusid/models/credit_default_swap.py +32 -9
  333. lusid/models/credit_premium_cash_flow_event.py +110 -0
  334. lusid/models/credit_rating.py +9 -1
  335. lusid/models/credit_spread_curve_data.py +13 -5
  336. lusid/models/credit_support_annex.py +9 -1
  337. lusid/models/currency_and_amount.py +10 -7
  338. lusid/models/curve_options.py +9 -1
  339. lusid/models/custodian_account.py +10 -2
  340. lusid/models/custodian_account_properties.py +9 -1
  341. lusid/models/custodian_account_request.py +11 -3
  342. lusid/models/custodian_accounts_upsert_response.py +9 -1
  343. lusid/models/custom_data_model.py +97 -0
  344. lusid/models/custom_data_model_criteria.py +142 -0
  345. lusid/models/custom_data_model_identifier_type_specification.py +79 -0
  346. lusid/models/custom_data_model_identifier_type_specification_with_display_name.py +86 -0
  347. lusid/models/custom_data_model_property_specification.py +79 -0
  348. lusid/models/custom_data_model_property_specification_with_display_name.py +86 -0
  349. lusid/models/custom_entity_definition.py +32 -3
  350. lusid/models/custom_entity_definition_request.py +9 -1
  351. lusid/models/custom_entity_entity.py +154 -0
  352. lusid/models/custom_entity_field.py +9 -1
  353. lusid/models/custom_entity_field_definition.py +9 -1
  354. lusid/models/custom_entity_id.py +9 -1
  355. lusid/models/custom_entity_request.py +9 -1
  356. lusid/models/custom_entity_response.py +16 -2
  357. lusid/models/custom_entity_type.py +32 -3
  358. lusid/models/cut_label_definition.py +16 -2
  359. lusid/models/cut_local_time.py +14 -4
  360. lusid/models/data_definition.py +9 -1
  361. lusid/models/data_map_key.py +9 -1
  362. lusid/models/data_mapping.py +9 -1
  363. lusid/models/data_model_summary.py +120 -0
  364. lusid/models/data_scope.py +9 -1
  365. lusid/models/data_type.py +29 -9
  366. lusid/models/data_type_entity.py +139 -0
  367. lusid/models/data_type_summary.py +17 -3
  368. lusid/models/date_attributes.py +9 -1
  369. lusid/models/date_or_diary_entry.py +9 -1
  370. lusid/models/date_range.py +9 -1
  371. lusid/models/date_time_compliance_parameter.py +12 -4
  372. lusid/models/date_time_list_compliance_parameter.py +12 -4
  373. lusid/models/day_month.py +79 -0
  374. lusid/models/decimal_compliance_parameter.py +12 -4
  375. lusid/models/decimal_list.py +13 -5
  376. lusid/models/decimal_list_compliance_parameter.py +12 -4
  377. lusid/models/decorated_compliance_run_summary.py +9 -1
  378. lusid/models/delete_accounts_response.py +9 -1
  379. lusid/models/delete_custodian_accounts_response.py +9 -1
  380. lusid/models/delete_instrument_properties_response.py +16 -2
  381. lusid/models/delete_instrument_response.py +16 -2
  382. lusid/models/delete_instruments_response.py +31 -2
  383. lusid/models/delete_relation_request.py +9 -1
  384. lusid/models/delete_relationship_request.py +9 -1
  385. lusid/models/deleted_entity_response.py +30 -2
  386. lusid/models/dependency_source_filter.py +34 -4
  387. lusid/models/described_address_key.py +9 -1
  388. lusid/models/dialect.py +18 -4
  389. lusid/models/dialect_id.py +9 -1
  390. lusid/models/dialect_schema.py +9 -1
  391. lusid/models/diary_entry.py +10 -2
  392. lusid/models/diary_entry_request.py +20 -3
  393. lusid/models/discount_factor_curve_data.py +12 -4
  394. lusid/models/discounting_dependency.py +9 -1
  395. lusid/models/dividend_option_event.py +137 -0
  396. lusid/models/dividend_reinvestment_event.py +137 -0
  397. lusid/models/drawdown_event.py +107 -0
  398. lusid/models/early_redemption_election.py +81 -0
  399. lusid/models/early_redemption_event.py +132 -0
  400. lusid/models/economic_dependency.py +9 -1
  401. lusid/models/economic_dependency_with_complex_market_data.py +9 -1
  402. lusid/models/economic_dependency_with_quote.py +9 -1
  403. lusid/models/effective_range.py +79 -0
  404. lusid/models/election_specification.py +81 -0
  405. lusid/models/eligibility_calculation.py +81 -0
  406. lusid/models/empty_model_options.py +12 -4
  407. lusid/models/entity_identifier.py +9 -1
  408. lusid/models/equity.py +16 -6
  409. lusid/models/equity_all_of_identifiers.py +9 -1
  410. lusid/models/equity_curve_by_prices_data.py +12 -4
  411. lusid/models/equity_curve_dependency.py +9 -1
  412. lusid/models/equity_model_options.py +12 -4
  413. lusid/models/equity_option.py +54 -10
  414. lusid/models/equity_swap.py +31 -8
  415. lusid/models/equity_vol_dependency.py +9 -1
  416. lusid/models/equity_vol_surface_data.py +12 -4
  417. lusid/models/error_detail.py +9 -1
  418. lusid/models/event_date_range.py +9 -1
  419. lusid/models/ex_dividend_configuration.py +9 -1
  420. lusid/models/exchange_traded_option.py +21 -7
  421. lusid/models/exchange_traded_option_contract_details.py +29 -5
  422. lusid/models/execution.py +9 -1
  423. lusid/models/execution_request.py +9 -1
  424. lusid/models/execution_set_request.py +9 -1
  425. lusid/models/exercise_event.py +13 -7
  426. lusid/models/exotic_instrument.py +12 -4
  427. lusid/models/expanded_group.py +9 -1
  428. lusid/models/expiry_event.py +99 -0
  429. lusid/models/external_fee_component_filter.py +102 -0
  430. lusid/models/fee.py +223 -0
  431. lusid/models/fee_accrual.py +113 -0
  432. lusid/models/{reconciliation_run_break.py → fee_properties.py} +42 -35
  433. lusid/models/fee_request.py +192 -0
  434. lusid/models/fee_rule.py +9 -1
  435. lusid/models/fee_rule_upsert_request.py +9 -1
  436. lusid/models/fee_rule_upsert_response.py +9 -1
  437. lusid/models/fee_transaction_template_specification.py +87 -0
  438. lusid/models/fee_type.py +123 -0
  439. lusid/models/fee_type_request.py +113 -0
  440. lusid/models/field_definition.py +19 -4
  441. lusid/models/field_schema.py +9 -1
  442. lusid/models/field_value.py +25 -5
  443. lusid/models/file_response.py +9 -1
  444. lusid/models/filter_predicate_compliance_parameter.py +99 -0
  445. lusid/models/filter_step.py +109 -0
  446. lusid/models/filter_step_request.py +106 -0
  447. lusid/models/fixed_leg.py +12 -4
  448. lusid/models/fixed_leg_all_of_overrides.py +9 -1
  449. lusid/models/fixed_schedule.py +16 -13
  450. lusid/models/flexible_deposit.py +113 -0
  451. lusid/models/flexible_loan.py +113 -0
  452. lusid/models/float_schedule.py +34 -16
  453. lusid/models/floating_leg.py +12 -4
  454. lusid/models/flow_convention_name.py +10 -2
  455. lusid/models/flow_conventions.py +26 -5
  456. lusid/models/forward_rate_agreement.py +12 -4
  457. lusid/models/from_recipe.py +89 -0
  458. lusid/models/fund.py +195 -0
  459. lusid/models/fund_amount.py +77 -0
  460. lusid/models/fund_configuration.py +201 -0
  461. lusid/models/fund_configuration_properties.py +123 -0
  462. lusid/models/fund_configuration_request.py +171 -0
  463. lusid/models/fund_details.py +82 -0
  464. lusid/models/fund_id_list.py +107 -0
  465. lusid/models/fund_pnl_breakdown.py +118 -0
  466. lusid/models/fund_previous_nav.py +77 -0
  467. lusid/models/fund_properties.py +123 -0
  468. lusid/models/fund_request.py +178 -0
  469. lusid/models/fund_share_class.py +122 -0
  470. lusid/models/fund_valuation_point_data.py +154 -0
  471. lusid/models/funding_leg.py +12 -4
  472. lusid/models/funding_leg_options.py +12 -4
  473. lusid/models/future.py +28 -8
  474. lusid/models/future_expiry_event.py +108 -0
  475. lusid/models/future_mark_to_market_event.py +108 -0
  476. lusid/models/futures_contract_details.py +24 -4
  477. lusid/models/fx_conventions.py +81 -0
  478. lusid/models/fx_dependency.py +9 -1
  479. lusid/models/fx_forward.py +18 -8
  480. lusid/models/fx_forward_curve_by_quote_reference.py +13 -5
  481. lusid/models/fx_forward_curve_data.py +12 -4
  482. lusid/models/fx_forward_model_options.py +12 -4
  483. lusid/models/fx_forward_pips_curve_data.py +12 -4
  484. lusid/models/fx_forward_settlement_event.py +152 -0
  485. lusid/models/fx_forward_tenor_curve_data.py +13 -5
  486. lusid/models/fx_forward_tenor_pips_curve_data.py +13 -5
  487. lusid/models/fx_forwards_dependency.py +9 -1
  488. lusid/models/fx_linked_notional_schedule.py +116 -0
  489. lusid/models/fx_option.py +12 -4
  490. lusid/models/fx_rate_schedule.py +12 -4
  491. lusid/models/fx_swap.py +13 -5
  492. lusid/models/fx_tenor_convention.py +9 -1
  493. lusid/models/fx_vol_dependency.py +9 -1
  494. lusid/models/fx_vol_surface_data.py +12 -4
  495. lusid/models/general_ledger_profile_mapping.py +9 -1
  496. lusid/models/general_ledger_profile_request.py +9 -1
  497. lusid/models/general_ledger_profile_response.py +9 -1
  498. lusid/models/generated_event_diagnostics.py +83 -0
  499. lusid/models/get_cds_flow_conventions_response.py +9 -1
  500. lusid/models/get_complex_market_data_response.py +9 -1
  501. lusid/models/get_counterparty_agreement_response.py +9 -1
  502. lusid/models/get_credit_support_annex_response.py +9 -1
  503. lusid/models/get_data_map_response.py +9 -1
  504. lusid/models/get_flow_conventions_response.py +9 -1
  505. lusid/models/get_index_convention_response.py +9 -1
  506. lusid/models/get_instruments_response.py +9 -1
  507. lusid/models/get_quotes_response.py +9 -1
  508. lusid/models/{reconciliation_run.py → get_recipe_composer_response.py} +24 -16
  509. lusid/models/get_recipe_response.py +9 -1
  510. lusid/models/get_reference_portfolio_constituents_response.py +9 -1
  511. lusid/models/get_structured_result_data_response.py +9 -1
  512. lusid/models/get_virtual_document_response.py +9 -1
  513. lusid/models/group_by_selector_compliance_parameter.py +99 -0
  514. lusid/models/group_by_step.py +109 -0
  515. lusid/models/group_by_step_request.py +106 -0
  516. lusid/models/group_calculation_compliance_parameter.py +99 -0
  517. lusid/models/group_filter_predicate_compliance_parameter.py +99 -0
  518. lusid/models/group_filter_step.py +109 -0
  519. lusid/models/group_filter_step_request.py +106 -0
  520. lusid/models/group_of_market_data_key_rules.py +87 -0
  521. lusid/models/group_reconciliation_aggregate_attribute_rule.py +92 -0
  522. lusid/models/group_reconciliation_aggregate_attribute_values.py +94 -0
  523. lusid/models/group_reconciliation_aggregate_comparison_rule_operand.py +79 -0
  524. lusid/models/group_reconciliation_comparison_result.py +156 -0
  525. lusid/models/group_reconciliation_comparison_rule_string_value_map.py +81 -0
  526. lusid/models/group_reconciliation_comparison_rule_tolerance.py +79 -0
  527. lusid/models/group_reconciliation_comparison_ruleset.py +133 -0
  528. lusid/models/group_reconciliation_core_attribute_rule.py +103 -0
  529. lusid/models/group_reconciliation_core_attribute_values.py +94 -0
  530. lusid/models/group_reconciliation_core_comparison_rule_operand.py +79 -0
  531. lusid/models/group_reconciliation_date_pair.py +89 -0
  532. lusid/models/group_reconciliation_dates.py +86 -0
  533. lusid/models/group_reconciliation_definition.py +144 -0
  534. lusid/models/group_reconciliation_definition_comparison_ruleset_ids.py +91 -0
  535. lusid/models/group_reconciliation_definition_currencies.py +79 -0
  536. lusid/models/group_reconciliation_definition_portfolio_entity_ids.py +94 -0
  537. lusid/models/group_reconciliation_definition_recipe_ids.py +86 -0
  538. lusid/models/group_reconciliation_instance_id.py +79 -0
  539. lusid/models/group_reconciliation_result_statuses.py +97 -0
  540. lusid/models/group_reconciliation_result_types.py +104 -0
  541. lusid/models/group_reconciliation_review_statuses.py +104 -0
  542. lusid/models/group_reconciliation_run_details.py +84 -0
  543. lusid/models/group_reconciliation_run_request.py +83 -0
  544. lusid/models/group_reconciliation_run_response.py +85 -0
  545. lusid/models/group_reconciliation_summary.py +129 -0
  546. lusid/models/group_reconciliation_user_review.py +120 -0
  547. lusid/models/group_reconciliation_user_review_add.py +96 -0
  548. lusid/models/group_reconciliation_user_review_break_code.py +88 -0
  549. lusid/models/group_reconciliation_user_review_comment.py +88 -0
  550. lusid/models/group_reconciliation_user_review_match_key.py +88 -0
  551. lusid/models/group_reconciliation_user_review_remove.py +96 -0
  552. lusid/models/grouped_result_of_address_key.py +9 -1
  553. lusid/models/holding_adjustment.py +9 -1
  554. lusid/models/holding_adjustment_with_date.py +9 -1
  555. lusid/models/holding_context.py +9 -1
  556. lusid/models/holding_contributor.py +19 -4
  557. lusid/models/holding_ids_request.py +77 -0
  558. lusid/models/holding_pricing_info.py +118 -0
  559. lusid/models/holdings_adjustment.py +9 -1
  560. lusid/models/holdings_adjustment_header.py +9 -1
  561. lusid/models/i_unit_definition_dto.py +9 -1
  562. lusid/models/id_selector_definition.py +9 -1
  563. lusid/models/identifier_part_schema.py +9 -1
  564. lusid/models/index_convention.py +11 -3
  565. lusid/models/index_model_options.py +12 -4
  566. lusid/models/index_projection_dependency.py +9 -1
  567. lusid/models/industry_classifier.py +9 -1
  568. lusid/models/inflation_fixing_dependency.py +9 -1
  569. lusid/models/inflation_index_conventions.py +11 -3
  570. lusid/models/inflation_leg.py +12 -4
  571. lusid/models/inflation_linked_bond.py +28 -7
  572. lusid/models/inflation_swap.py +31 -8
  573. lusid/models/informational_error_event.py +12 -4
  574. lusid/models/informational_event.py +13 -7
  575. lusid/models/inline_valuation_request.py +9 -1
  576. lusid/models/inline_valuations_reconciliation_request.py +9 -1
  577. lusid/models/input_transition.py +9 -1
  578. lusid/models/instrument.py +22 -2
  579. lusid/models/instrument_capabilities.py +9 -1
  580. lusid/models/instrument_cash_flow.py +9 -1
  581. lusid/models/instrument_definition.py +17 -3
  582. lusid/models/instrument_definition_format.py +9 -1
  583. lusid/models/instrument_entity.py +154 -0
  584. lusid/models/instrument_event.py +54 -6
  585. lusid/models/instrument_event_configuration.py +88 -0
  586. lusid/models/instrument_event_holder.py +28 -3
  587. lusid/models/instrument_event_instruction.py +151 -0
  588. lusid/models/instrument_event_instruction_request.py +102 -0
  589. lusid/models/instrument_event_instructions_response.py +115 -0
  590. lusid/models/instrument_event_type.py +40 -0
  591. lusid/models/instrument_id_type_descriptor.py +9 -1
  592. lusid/models/instrument_id_value.py +9 -1
  593. lusid/models/instrument_leg.py +12 -4
  594. lusid/models/instrument_list.py +13 -5
  595. lusid/models/instrument_list_compliance_parameter.py +12 -4
  596. lusid/models/instrument_match.py +9 -1
  597. lusid/models/instrument_models.py +9 -1
  598. lusid/models/instrument_payment_diary.py +9 -1
  599. lusid/models/instrument_payment_diary_leg.py +13 -3
  600. lusid/models/instrument_payment_diary_row.py +9 -1
  601. lusid/models/instrument_properties.py +9 -1
  602. lusid/models/instrument_resolution_detail.py +127 -0
  603. lusid/models/instrument_search_property.py +9 -1
  604. lusid/models/instrument_type.py +7 -0
  605. lusid/models/interest_rate_swap.py +14 -6
  606. lusid/models/interest_rate_swaption.py +13 -5
  607. lusid/models/intermediate_compliance_step.py +118 -0
  608. lusid/models/intermediate_compliance_step_request.py +106 -0
  609. lusid/models/intermediate_securities_distribution_event.py +148 -0
  610. lusid/models/ir_vol_cube_data.py +12 -4
  611. lusid/models/ir_vol_dependency.py +9 -1
  612. lusid/models/is_business_day_response.py +9 -1
  613. lusid/models/journal_entry_line.py +60 -5
  614. lusid/models/journal_entry_lines_query_parameters.py +10 -2
  615. lusid/models/label_value_set.py +10 -2
  616. lusid/models/lapse_election.py +81 -0
  617. lusid/models/leg_definition.py +24 -3
  618. lusid/models/legal_entity.py +9 -1
  619. lusid/models/level_step.py +9 -1
  620. lusid/models/life_cycle_event_lineage.py +9 -1
  621. lusid/models/life_cycle_event_value.py +9 -1
  622. lusid/models/lineage_member.py +95 -0
  623. lusid/models/link.py +9 -1
  624. lusid/models/list_aggregation_reconciliation.py +9 -1
  625. lusid/models/list_aggregation_response.py +9 -1
  626. lusid/models/list_complex_market_data_with_meta_data_response.py +9 -1
  627. lusid/models/loan_facility.py +115 -0
  628. lusid/models/loan_interest_repayment_event.py +105 -0
  629. lusid/models/loan_period.py +9 -1
  630. lusid/models/lock_period_diary_entry_request.py +99 -0
  631. lusid/models/lusid_instrument.py +20 -6
  632. lusid/models/lusid_problem_details.py +9 -1
  633. lusid/models/lusid_trade_ticket.py +17 -2
  634. lusid/models/lusid_unique_id.py +9 -1
  635. lusid/models/lusid_validation_problem_details.py +9 -1
  636. lusid/models/mapped_string.py +9 -1
  637. lusid/models/mapping.py +9 -1
  638. lusid/models/mapping_rule.py +9 -1
  639. lusid/models/mark_to_market_conventions.py +82 -0
  640. lusid/models/market_context.py +26 -3
  641. lusid/models/market_context_suppliers.py +9 -1
  642. lusid/models/market_data_key_rule.py +17 -7
  643. lusid/models/market_data_options.py +9 -1
  644. lusid/models/market_data_overrides.py +9 -1
  645. lusid/models/market_data_specific_rule.py +17 -7
  646. lusid/models/market_data_type.py +1 -0
  647. lusid/models/market_options.py +9 -1
  648. lusid/models/market_quote.py +12 -4
  649. lusid/models/mastered_instrument.py +147 -0
  650. lusid/models/match_criterion.py +9 -1
  651. lusid/models/maturity_event.py +99 -0
  652. lusid/models/mbs_coupon_event.py +110 -0
  653. lusid/models/mbs_interest_deferral_event.py +110 -0
  654. lusid/models/mbs_interest_shortfall_event.py +110 -0
  655. lusid/models/mbs_principal_event.py +110 -0
  656. lusid/models/mbs_principal_write_off_event.py +110 -0
  657. lusid/models/merger_event.py +180 -0
  658. lusid/models/metric_value.py +9 -1
  659. lusid/models/model_options.py +14 -7
  660. lusid/models/model_options_type.py +0 -1
  661. lusid/models/model_property.py +9 -1
  662. lusid/models/model_schema.py +9 -1
  663. lusid/models/model_selection.py +12 -4
  664. lusid/models/move_orders_to_different_blocks_request.py +85 -0
  665. lusid/models/moved_order_to_different_block_response.py +93 -0
  666. lusid/models/movement_type.py +4 -0
  667. lusid/models/multi_currency_amounts.py +79 -0
  668. lusid/models/new_instrument.py +101 -0
  669. lusid/models/next_value_in_sequence_response.py +9 -1
  670. lusid/models/opaque_dependency.py +9 -1
  671. lusid/models/opaque_market_data.py +12 -4
  672. lusid/models/opaque_model_options.py +12 -4
  673. lusid/models/open_event.py +12 -4
  674. lusid/models/operation.py +10 -2
  675. lusid/models/operation_type.py +1 -0
  676. lusid/models/option_entry.py +19 -4
  677. lusid/models/option_exercise_cash_event.py +159 -0
  678. lusid/models/option_exercise_election.py +81 -0
  679. lusid/models/option_exercise_physical_event.py +164 -0
  680. lusid/models/optionality_schedule.py +12 -4
  681. lusid/models/order.py +9 -1
  682. lusid/models/order_by_spec.py +9 -1
  683. lusid/models/order_flow_configuration.py +10 -2
  684. lusid/models/order_graph_block.py +19 -3
  685. lusid/models/order_graph_block_allocation_detail.py +9 -1
  686. lusid/models/order_graph_block_allocation_synopsis.py +9 -1
  687. lusid/models/order_graph_block_execution_detail.py +9 -1
  688. lusid/models/order_graph_block_execution_synopsis.py +9 -1
  689. lusid/models/order_graph_block_order_detail.py +42 -5
  690. lusid/models/order_graph_block_order_synopsis.py +18 -3
  691. lusid/models/order_graph_block_placement_detail.py +9 -1
  692. lusid/models/order_graph_block_placement_synopsis.py +18 -3
  693. lusid/models/{upsert_reconciliation_run_request.py → order_graph_block_transaction_detail.py} +21 -15
  694. lusid/models/order_graph_block_transaction_synopsis.py +87 -0
  695. lusid/models/order_graph_placement.py +9 -1
  696. lusid/models/order_graph_placement_allocation_detail.py +9 -1
  697. lusid/models/order_graph_placement_allocation_synopsis.py +9 -1
  698. lusid/models/order_graph_placement_child_placement_detail.py +9 -1
  699. lusid/models/order_graph_placement_execution_detail.py +9 -1
  700. lusid/models/order_graph_placement_execution_synopsis.py +9 -1
  701. lusid/models/order_graph_placement_order_detail.py +9 -1
  702. lusid/models/order_graph_placement_order_synopsis.py +9 -1
  703. lusid/models/order_graph_placement_placement_synopsis.py +9 -1
  704. lusid/models/order_instruction.py +9 -1
  705. lusid/models/order_instruction_request.py +9 -1
  706. lusid/models/order_instruction_set_request.py +9 -1
  707. lusid/models/order_request.py +9 -1
  708. lusid/models/order_set_request.py +9 -1
  709. lusid/models/order_update_request.py +129 -0
  710. lusid/models/otc_confirmation.py +9 -1
  711. lusid/models/output_transaction.py +46 -3
  712. lusid/models/output_transition.py +9 -1
  713. lusid/models/package.py +9 -1
  714. lusid/models/package_request.py +9 -1
  715. lusid/models/package_set_request.py +9 -1
  716. lusid/models/paged_resource_list_of_abor.py +9 -1
  717. lusid/models/paged_resource_list_of_abor_configuration.py +9 -1
  718. lusid/models/paged_resource_list_of_account.py +9 -1
  719. lusid/models/paged_resource_list_of_address_key_definition.py +9 -1
  720. lusid/models/paged_resource_list_of_allocation.py +9 -1
  721. lusid/models/paged_resource_list_of_amortisation_rule_set.py +121 -0
  722. lusid/models/paged_resource_list_of_block.py +9 -1
  723. lusid/models/paged_resource_list_of_calendar.py +9 -1
  724. lusid/models/paged_resource_list_of_chart_of_accounts.py +9 -1
  725. lusid/models/paged_resource_list_of_cleardown_module_response.py +121 -0
  726. lusid/models/paged_resource_list_of_cleardown_module_rule.py +121 -0
  727. lusid/models/paged_resource_list_of_closed_period.py +121 -0
  728. lusid/models/paged_resource_list_of_compliance_rule_response.py +9 -1
  729. lusid/models/paged_resource_list_of_compliance_run_info_v2.py +9 -1
  730. lusid/models/paged_resource_list_of_compliance_template.py +9 -1
  731. lusid/models/paged_resource_list_of_corporate_action_source.py +9 -1
  732. lusid/models/paged_resource_list_of_custodian_account.py +9 -1
  733. lusid/models/paged_resource_list_of_custom_entity_definition.py +9 -1
  734. lusid/models/paged_resource_list_of_custom_entity_response.py +9 -1
  735. lusid/models/paged_resource_list_of_custom_entity_type.py +9 -1
  736. lusid/models/paged_resource_list_of_cut_label_definition.py +9 -1
  737. lusid/models/paged_resource_list_of_data_type_summary.py +9 -1
  738. lusid/models/paged_resource_list_of_dialect_id.py +9 -1
  739. lusid/models/paged_resource_list_of_diary_entry.py +9 -1
  740. lusid/models/paged_resource_list_of_execution.py +9 -1
  741. lusid/models/{paged_resource_list_of_reconciliation_run.py → paged_resource_list_of_fee.py} +20 -12
  742. lusid/models/paged_resource_list_of_fee_type.py +121 -0
  743. lusid/models/{paged_resource_list_of_reconciliation_run_break.py → paged_resource_list_of_fund.py} +20 -12
  744. lusid/models/paged_resource_list_of_fund_configuration.py +121 -0
  745. lusid/models/paged_resource_list_of_general_ledger_profile_response.py +9 -1
  746. lusid/models/paged_resource_list_of_group_reconciliation_comparison_result.py +121 -0
  747. lusid/models/paged_resource_list_of_group_reconciliation_comparison_ruleset.py +121 -0
  748. lusid/models/paged_resource_list_of_group_reconciliation_definition.py +121 -0
  749. lusid/models/paged_resource_list_of_instrument.py +9 -1
  750. lusid/models/paged_resource_list_of_instrument_event_holder.py +9 -1
  751. lusid/models/paged_resource_list_of_instrument_event_instruction.py +121 -0
  752. lusid/models/paged_resource_list_of_legal_entity.py +9 -1
  753. lusid/models/paged_resource_list_of_order.py +9 -1
  754. lusid/models/paged_resource_list_of_order_graph_block.py +9 -1
  755. lusid/models/paged_resource_list_of_order_graph_placement.py +9 -1
  756. lusid/models/paged_resource_list_of_order_instruction.py +9 -1
  757. lusid/models/paged_resource_list_of_package.py +9 -1
  758. lusid/models/paged_resource_list_of_participation.py +9 -1
  759. lusid/models/paged_resource_list_of_person.py +9 -1
  760. lusid/models/paged_resource_list_of_placement.py +9 -1
  761. lusid/models/paged_resource_list_of_portfolio_group.py +9 -1
  762. lusid/models/paged_resource_list_of_portfolio_group_search_result.py +9 -1
  763. lusid/models/paged_resource_list_of_portfolio_search_result.py +9 -1
  764. lusid/models/paged_resource_list_of_posting_module_response.py +9 -1
  765. lusid/models/paged_resource_list_of_posting_module_rule.py +9 -1
  766. lusid/models/paged_resource_list_of_property_definition.py +121 -0
  767. lusid/models/paged_resource_list_of_property_definition_search_result.py +9 -1
  768. lusid/models/paged_resource_list_of_reconciliation.py +9 -1
  769. lusid/models/paged_resource_list_of_reference_list_response.py +9 -1
  770. lusid/models/paged_resource_list_of_relationship_definition.py +9 -1
  771. lusid/models/paged_resource_list_of_sequence_definition.py +9 -1
  772. lusid/models/paged_resource_list_of_staged_modification.py +121 -0
  773. lusid/models/paged_resource_list_of_staged_modifications_requested_change_interval.py +121 -0
  774. lusid/models/paged_resource_list_of_staging_rule_set.py +121 -0
  775. lusid/models/paged_resource_list_of_transaction_template.py +121 -0
  776. lusid/models/paged_resource_list_of_transaction_template_specification.py +121 -0
  777. lusid/models/paged_resource_list_of_translation_script_id.py +9 -1
  778. lusid/models/paged_resource_list_of_valuation_point_overview.py +121 -0
  779. lusid/models/paged_resource_list_of_virtual_row.py +9 -1
  780. lusid/models/paged_resource_list_of_workspace.py +121 -0
  781. lusid/models/paged_resource_list_of_workspace_item.py +121 -0
  782. lusid/models/participation.py +9 -1
  783. lusid/models/participation_request.py +12 -10
  784. lusid/models/participation_set_request.py +9 -1
  785. lusid/models/percent_check_step.py +118 -0
  786. lusid/models/percent_check_step_request.py +106 -0
  787. lusid/models/performance_return.py +9 -1
  788. lusid/models/performance_returns_metric.py +10 -2
  789. lusid/models/period_diary_entries_reopened_response.py +112 -0
  790. lusid/models/perpetual_property.py +9 -1
  791. lusid/models/person.py +26 -3
  792. lusid/models/place_blocks_request.py +85 -0
  793. lusid/models/placement.py +9 -1
  794. lusid/models/placement_request.py +9 -1
  795. lusid/models/placement_set_request.py +9 -1
  796. lusid/models/placement_update_request.py +129 -0
  797. lusid/models/pnl_journal_entry_line.py +103 -0
  798. lusid/models/portfolio.py +41 -9
  799. lusid/models/portfolio_cash_flow.py +9 -1
  800. lusid/models/portfolio_cash_ladder.py +9 -1
  801. lusid/models/portfolio_details.py +38 -6
  802. lusid/models/portfolio_entity.py +154 -0
  803. lusid/models/portfolio_entity_id.py +11 -19
  804. lusid/models/portfolio_group.py +9 -1
  805. lusid/models/portfolio_group_id_compliance_parameter.py +12 -4
  806. lusid/models/portfolio_group_id_list.py +13 -5
  807. lusid/models/portfolio_group_id_list_compliance_parameter.py +12 -4
  808. lusid/models/portfolio_group_properties.py +9 -1
  809. lusid/models/portfolio_group_search_result.py +9 -1
  810. lusid/models/portfolio_holding.py +52 -4
  811. lusid/models/portfolio_id.py +88 -0
  812. lusid/models/portfolio_id_compliance_parameter.py +12 -4
  813. lusid/models/portfolio_id_list.py +13 -5
  814. lusid/models/portfolio_id_list_compliance_parameter.py +12 -4
  815. lusid/models/portfolio_properties.py +16 -2
  816. lusid/models/portfolio_reconciliation_request.py +9 -1
  817. lusid/models/portfolio_result_data_key_rule.py +9 -1
  818. lusid/models/portfolio_return_breakdown.py +9 -1
  819. lusid/models/portfolio_search_result.py +12 -4
  820. lusid/models/portfolio_trade_ticket.py +9 -1
  821. lusid/models/portfolio_type.py +1 -0
  822. lusid/models/portfolio_without_href.py +228 -0
  823. lusid/models/portfolios_reconciliation_request.py +9 -1
  824. lusid/models/posting_module_details.py +9 -1
  825. lusid/models/posting_module_request.py +9 -1
  826. lusid/models/posting_module_response.py +9 -1
  827. lusid/models/posting_module_rule.py +14 -6
  828. lusid/models/posting_module_rules_updated_response.py +9 -1
  829. lusid/models/pre_trade_configuration.py +77 -0
  830. lusid/models/premium.py +9 -1
  831. lusid/models/previous_fund_valuation_point_data.py +81 -0
  832. lusid/models/{action_result_of_portfolio.py → previous_nav.py} +24 -18
  833. lusid/models/previous_share_class_breakdown.py +89 -0
  834. lusid/models/pricing_context.py +17 -3
  835. lusid/models/pricing_model.py +3 -1
  836. lusid/models/pricing_options.py +17 -3
  837. lusid/models/processed_command.py +9 -1
  838. lusid/models/property_definition.py +34 -5
  839. lusid/models/property_definition_entity.py +154 -0
  840. lusid/models/property_definition_search_result.py +15 -5
  841. lusid/models/property_domain.py +41 -0
  842. lusid/models/property_filter.py +9 -1
  843. lusid/models/property_interval.py +9 -1
  844. lusid/models/property_key_compliance_parameter.py +12 -4
  845. lusid/models/property_key_list_compliance_parameter.py +12 -4
  846. lusid/models/property_list.py +107 -0
  847. lusid/models/property_list_compliance_parameter.py +103 -0
  848. lusid/models/property_schema.py +9 -1
  849. lusid/models/property_value.py +9 -1
  850. lusid/models/property_value_equals.py +9 -1
  851. lusid/models/property_value_in.py +9 -1
  852. lusid/models/protection_payout_cash_flow_event.py +110 -0
  853. lusid/models/query_applicable_instrument_events_request.py +97 -0
  854. lusid/models/query_bucketed_cash_flows_request.py +9 -1
  855. lusid/models/query_cash_flows_request.py +9 -1
  856. lusid/models/query_instrument_events_request.py +9 -1
  857. lusid/models/query_trade_tickets_request.py +9 -1
  858. lusid/models/queryable_key.py +132 -0
  859. lusid/models/quote.py +9 -1
  860. lusid/models/quote_access_metadata_rule.py +9 -1
  861. lusid/models/quote_access_metadata_rule_id.py +11 -3
  862. lusid/models/quote_dependency.py +9 -1
  863. lusid/models/quote_id.py +9 -1
  864. lusid/models/quote_series_id.py +15 -23
  865. lusid/models/quote_type.py +3 -0
  866. lusid/models/raw_vendor_event.py +14 -8
  867. lusid/models/re_open_period_diary_entry_request.py +92 -0
  868. lusid/models/realised_gain_loss.py +11 -3
  869. lusid/models/recipe_block.py +95 -0
  870. lusid/models/recipe_composer.py +108 -0
  871. lusid/models/recipe_value.py +95 -0
  872. lusid/models/recombine_step.py +109 -0
  873. lusid/models/recommended_sort_by.py +84 -0
  874. lusid/models/reconcile_date_time_rule.py +9 -1
  875. lusid/models/reconcile_numeric_rule.py +9 -1
  876. lusid/models/reconcile_string_rule.py +9 -1
  877. lusid/models/reconciled_transaction.py +9 -1
  878. lusid/models/reconciliation.py +9 -1
  879. lusid/models/reconciliation_break.py +9 -1
  880. lusid/models/reconciliation_configuration.py +9 -1
  881. lusid/models/reconciliation_id.py +9 -1
  882. lusid/models/reconciliation_left_right_address_key_pair.py +9 -1
  883. lusid/models/reconciliation_line.py +9 -1
  884. lusid/models/reconciliation_request.py +9 -1
  885. lusid/models/reconciliation_response.py +9 -1
  886. lusid/models/reconciliation_rule.py +9 -1
  887. lusid/models/reconciliation_side_configuration.py +9 -1
  888. lusid/models/reconciliation_transactions.py +9 -1
  889. lusid/models/reference_data.py +9 -1
  890. lusid/models/reference_instrument.py +12 -4
  891. lusid/models/reference_list.py +16 -6
  892. lusid/models/reference_list_request.py +9 -1
  893. lusid/models/reference_list_response.py +9 -1
  894. lusid/models/reference_list_type.py +2 -0
  895. lusid/models/reference_portfolio_constituent.py +9 -1
  896. lusid/models/reference_portfolio_constituent_request.py +9 -1
  897. lusid/models/related_entity.py +10 -2
  898. lusid/models/relation.py +9 -1
  899. lusid/models/relation_definition.py +9 -1
  900. lusid/models/relationship.py +9 -1
  901. lusid/models/relationship_definition.py +9 -1
  902. lusid/models/relative_date_offset.py +86 -0
  903. lusid/models/repo.py +12 -4
  904. lusid/models/requested_changes.py +84 -0
  905. lusid/models/reset_event.py +13 -7
  906. lusid/models/resource_id.py +9 -1
  907. lusid/models/resource_list_of_access_controlled_resource.py +9 -1
  908. lusid/models/resource_list_of_access_metadata_value_of.py +9 -1
  909. lusid/models/resource_list_of_address_key_definition.py +9 -1
  910. lusid/models/resource_list_of_aggregated_return.py +9 -1
  911. lusid/models/resource_list_of_aggregation_query.py +9 -1
  912. lusid/models/resource_list_of_allocation.py +9 -1
  913. lusid/models/resource_list_of_applicable_instrument_event.py +121 -0
  914. lusid/models/resource_list_of_block.py +9 -1
  915. lusid/models/resource_list_of_block_and_orders.py +121 -0
  916. lusid/models/resource_list_of_calendar_date.py +9 -1
  917. lusid/models/resource_list_of_change.py +9 -1
  918. lusid/models/resource_list_of_change_history.py +9 -1
  919. lusid/models/resource_list_of_change_interval.py +121 -0
  920. lusid/models/resource_list_of_change_interval_with_order_management_detail.py +121 -0
  921. lusid/models/resource_list_of_compliance_breached_order_info.py +9 -1
  922. lusid/models/resource_list_of_compliance_rule.py +9 -1
  923. lusid/models/resource_list_of_compliance_rule_result.py +9 -1
  924. lusid/models/resource_list_of_compliance_run_info.py +9 -1
  925. lusid/models/resource_list_of_constituents_adjustment_header.py +9 -1
  926. lusid/models/resource_list_of_corporate_action.py +9 -1
  927. lusid/models/resource_list_of_data_model_summary.py +121 -0
  928. lusid/models/resource_list_of_data_type.py +9 -1
  929. lusid/models/resource_list_of_execution.py +9 -1
  930. lusid/models/resource_list_of_fee_rule.py +9 -1
  931. lusid/models/resource_list_of_get_cds_flow_conventions_response.py +9 -1
  932. lusid/models/resource_list_of_get_counterparty_agreement_response.py +9 -1
  933. lusid/models/resource_list_of_get_credit_support_annex_response.py +9 -1
  934. lusid/models/resource_list_of_get_flow_conventions_response.py +9 -1
  935. lusid/models/resource_list_of_get_index_convention_response.py +9 -1
  936. lusid/models/resource_list_of_get_recipe_composer_response.py +121 -0
  937. lusid/models/resource_list_of_get_recipe_response.py +9 -1
  938. lusid/models/resource_list_of_holdings_adjustment_header.py +9 -1
  939. lusid/models/resource_list_of_i_unit_definition_dto.py +9 -1
  940. lusid/models/resource_list_of_instrument_cash_flow.py +9 -1
  941. lusid/models/resource_list_of_instrument_event_holder.py +9 -1
  942. lusid/models/resource_list_of_instrument_id_type_descriptor.py +9 -1
  943. lusid/models/resource_list_of_legal_entity.py +9 -1
  944. lusid/models/resource_list_of_list_complex_market_data_with_meta_data_response.py +9 -1
  945. lusid/models/resource_list_of_mapping.py +9 -1
  946. lusid/models/resource_list_of_moved_order_to_different_block_response.py +121 -0
  947. lusid/models/resource_list_of_order.py +9 -1
  948. lusid/models/resource_list_of_order_instruction.py +9 -1
  949. lusid/models/resource_list_of_output_transaction.py +121 -0
  950. lusid/models/resource_list_of_package.py +9 -1
  951. lusid/models/resource_list_of_participation.py +9 -1
  952. lusid/models/resource_list_of_performance_return.py +9 -1
  953. lusid/models/resource_list_of_person.py +9 -1
  954. lusid/models/resource_list_of_placement.py +9 -1
  955. lusid/models/resource_list_of_portfolio.py +9 -1
  956. lusid/models/resource_list_of_portfolio_cash_flow.py +9 -1
  957. lusid/models/resource_list_of_portfolio_cash_ladder.py +9 -1
  958. lusid/models/resource_list_of_portfolio_trade_ticket.py +9 -1
  959. lusid/models/resource_list_of_processed_command.py +9 -1
  960. lusid/models/resource_list_of_property.py +9 -1
  961. lusid/models/resource_list_of_property_definition.py +9 -1
  962. lusid/models/resource_list_of_property_interval.py +9 -1
  963. lusid/models/resource_list_of_queryable_key.py +121 -0
  964. lusid/models/resource_list_of_quote.py +9 -1
  965. lusid/models/resource_list_of_quote_access_metadata_rule.py +9 -1
  966. lusid/models/resource_list_of_reconciliation_break.py +9 -1
  967. lusid/models/resource_list_of_relation.py +9 -1
  968. lusid/models/resource_list_of_relationship.py +9 -1
  969. lusid/models/resource_list_of_scope_definition.py +9 -1
  970. lusid/models/resource_list_of_side_definition.py +9 -1
  971. lusid/models/resource_list_of_string.py +9 -1
  972. lusid/models/resource_list_of_tax_rule_set.py +9 -1
  973. lusid/models/resource_list_of_transaction.py +9 -1
  974. lusid/models/resource_list_of_transaction_type.py +9 -1
  975. lusid/models/resource_list_of_value_type.py +9 -1
  976. lusid/models/response_meta_data.py +9 -1
  977. lusid/models/result_data_key_rule.py +9 -1
  978. lusid/models/result_data_schema.py +9 -1
  979. lusid/models/result_key_rule.py +9 -1
  980. lusid/models/result_value.py +9 -1
  981. lusid/models/result_value0_d.py +9 -1
  982. lusid/models/result_value_bool.py +9 -1
  983. lusid/models/result_value_currency.py +9 -1
  984. lusid/models/result_value_date_time_offset.py +9 -1
  985. lusid/models/result_value_decimal.py +9 -1
  986. lusid/models/result_value_dictionary.py +9 -1
  987. lusid/models/result_value_int.py +9 -1
  988. lusid/models/result_value_string.py +9 -1
  989. lusid/models/return_zero_pv_options.py +77 -0
  990. lusid/models/reverse_stock_split_event.py +135 -0
  991. lusid/models/rounding_configuration.py +9 -1
  992. lusid/models/rounding_configuration_component.py +9 -1
  993. lusid/models/rounding_convention.py +9 -1
  994. lusid/models/rules_interval.py +91 -0
  995. lusid/models/schedule.py +16 -6
  996. lusid/models/schedule_type.py +2 -0
  997. lusid/models/scope_definition.py +9 -1
  998. lusid/models/scrip_dividend_event.py +135 -0
  999. lusid/models/script_map_reference.py +102 -0
  1000. lusid/models/security_election.py +94 -0
  1001. lusid/models/security_offer_election.py +87 -0
  1002. lusid/models/sequence_definition.py +9 -1
  1003. lusid/models/set_amortisation_rules_request.py +81 -0
  1004. lusid/models/set_legal_entity_identifiers_request.py +9 -1
  1005. lusid/models/set_legal_entity_properties_request.py +9 -1
  1006. lusid/models/set_person_identifiers_request.py +9 -1
  1007. lusid/models/set_person_properties_request.py +9 -1
  1008. lusid/models/set_share_class_instruments_request.py +87 -0
  1009. lusid/models/set_transaction_configuration_alias.py +9 -1
  1010. lusid/models/set_transaction_configuration_source_request.py +9 -1
  1011. lusid/models/settlement_cycle.py +87 -0
  1012. lusid/models/settlement_schedule.py +86 -0
  1013. lusid/models/share_class_amount.py +79 -0
  1014. lusid/models/share_class_breakdown.py +162 -0
  1015. lusid/models/share_class_data.py +87 -0
  1016. lusid/models/share_class_dealing_breakdown.py +105 -0
  1017. lusid/models/share_class_details.py +135 -0
  1018. lusid/models/share_class_pnl_breakdown.py +118 -0
  1019. lusid/models/side_configuration_data.py +9 -1
  1020. lusid/models/side_configuration_data_request.py +9 -1
  1021. lusid/models/side_definition.py +17 -9
  1022. lusid/models/side_definition_request.py +18 -3
  1023. lusid/models/sides_definition_request.py +9 -8
  1024. lusid/models/simple_cash_flow_loan.py +12 -4
  1025. lusid/models/simple_instrument.py +12 -4
  1026. lusid/models/simple_rounding_convention.py +84 -0
  1027. lusid/models/specific_holding_pricing_info.py +83 -0
  1028. lusid/models/spin_off_event.py +148 -0
  1029. lusid/models/staged_modification.py +197 -0
  1030. lusid/models/staged_modification_decision.py +105 -0
  1031. lusid/models/staged_modification_decision_request.py +79 -0
  1032. lusid/models/staged_modification_effective_range.py +79 -0
  1033. lusid/models/staged_modification_staging_rule.py +93 -0
  1034. lusid/models/staged_modifications_entity_hrefs.py +111 -0
  1035. lusid/models/staged_modifications_info.py +86 -0
  1036. lusid/models/staged_modifications_requested_change_interval.py +121 -0
  1037. lusid/models/staging_rule.py +98 -0
  1038. lusid/models/staging_rule_approval_criteria.py +96 -0
  1039. lusid/models/staging_rule_match_criteria.py +103 -0
  1040. lusid/models/staging_rule_set.py +126 -0
  1041. lusid/models/step_schedule.py +12 -4
  1042. lusid/models/stock_dividend_event.py +135 -0
  1043. lusid/models/stock_split_event.py +51 -11
  1044. lusid/models/strategy.py +89 -0
  1045. lusid/models/stream.py +9 -1
  1046. lusid/models/string_compliance_parameter.py +12 -4
  1047. lusid/models/string_list.py +13 -5
  1048. lusid/models/string_list_compliance_parameter.py +12 -4
  1049. lusid/models/structured_result_data.py +9 -1
  1050. lusid/models/structured_result_data_id.py +9 -1
  1051. lusid/models/sub_holding_key_value_equals.py +9 -1
  1052. lusid/models/swap_cash_flow_event.py +105 -0
  1053. lusid/models/swap_principal_event.py +105 -0
  1054. lusid/models/target_tax_lot.py +32 -3
  1055. lusid/models/target_tax_lot_request.py +32 -3
  1056. lusid/models/tax_rule.py +9 -1
  1057. lusid/models/tax_rule_set.py +9 -1
  1058. lusid/models/template_field.py +87 -0
  1059. lusid/models/tender_event.py +180 -0
  1060. lusid/models/term_deposit.py +12 -4
  1061. lusid/models/term_deposit_interest_event.py +108 -0
  1062. lusid/models/term_deposit_principal_event.py +108 -0
  1063. lusid/models/timeline.py +143 -0
  1064. lusid/models/total_return_swap.py +41 -18
  1065. lusid/models/touch.py +9 -1
  1066. lusid/models/trade_ticket.py +9 -1
  1067. lusid/models/trading_conventions.py +81 -0
  1068. lusid/models/transaction.py +40 -4
  1069. lusid/models/transaction_configuration_data.py +9 -1
  1070. lusid/models/transaction_configuration_data_request.py +9 -1
  1071. lusid/models/transaction_configuration_movement_data.py +13 -5
  1072. lusid/models/transaction_configuration_movement_data_request.py +13 -5
  1073. lusid/models/transaction_configuration_type_alias.py +9 -1
  1074. lusid/models/transaction_currency_and_amount.py +89 -0
  1075. lusid/models/transaction_date_windows.py +93 -0
  1076. lusid/models/transaction_diagnostics.py +79 -0
  1077. lusid/models/transaction_field_map.py +110 -0
  1078. lusid/models/transaction_price.py +12 -4
  1079. lusid/models/transaction_price_and_type.py +89 -0
  1080. lusid/models/transaction_price_type.py +3 -0
  1081. lusid/models/transaction_property_map.py +89 -0
  1082. lusid/models/transaction_property_mapping.py +9 -1
  1083. lusid/models/transaction_property_mapping_request.py +9 -1
  1084. lusid/models/transaction_query_parameters.py +9 -1
  1085. lusid/models/transaction_reconciliation_request.py +9 -1
  1086. lusid/models/transaction_reconciliation_request_v2.py +9 -1
  1087. lusid/models/transaction_request.py +34 -4
  1088. lusid/models/transaction_set_configuration_data.py +9 -1
  1089. lusid/models/transaction_set_configuration_data_request.py +9 -1
  1090. lusid/models/transaction_template.py +108 -0
  1091. lusid/models/transaction_template_request.py +87 -0
  1092. lusid/models/transaction_template_specification.py +107 -0
  1093. lusid/models/transaction_type.py +9 -1
  1094. lusid/models/transaction_type_alias.py +9 -8
  1095. lusid/models/transaction_type_calculation.py +26 -13
  1096. lusid/models/transaction_type_details.py +81 -0
  1097. lusid/models/transaction_type_movement.py +30 -5
  1098. lusid/models/transaction_type_property_mapping.py +35 -3
  1099. lusid/models/transaction_type_request.py +9 -1
  1100. lusid/models/transactions_reconciliations_response.py +9 -1
  1101. lusid/models/transition_event.py +12 -4
  1102. lusid/models/translate_entities_inlined_request.py +9 -1
  1103. lusid/models/translate_entities_request.py +9 -1
  1104. lusid/models/translate_entities_response.py +9 -1
  1105. lusid/models/translate_instrument_definitions_request.py +9 -1
  1106. lusid/models/translate_instrument_definitions_response.py +9 -1
  1107. lusid/models/translate_trade_ticket_request.py +9 -1
  1108. lusid/models/translate_trade_tickets_response.py +9 -1
  1109. lusid/models/translation_context.py +83 -0
  1110. lusid/models/translation_input.py +9 -1
  1111. lusid/models/translation_result.py +9 -1
  1112. lusid/models/translation_script.py +18 -4
  1113. lusid/models/translation_script_id.py +9 -1
  1114. lusid/models/trial_balance.py +58 -15
  1115. lusid/models/trial_balance_query_parameters.py +23 -6
  1116. lusid/models/trigger_event.py +12 -4
  1117. lusid/models/typed_resource_id.py +9 -1
  1118. lusid/models/unitisation_data.py +81 -0
  1119. lusid/models/units_ratio.py +79 -0
  1120. lusid/models/update_amortisation_rule_set_details_request.py +101 -0
  1121. lusid/models/update_calendar_request.py +9 -1
  1122. lusid/models/update_compliance_template_request.py +103 -0
  1123. lusid/models/update_custom_entity_definition_request.py +9 -1
  1124. lusid/models/update_custom_entity_type_request.py +9 -1
  1125. lusid/models/update_cut_label_definition_request.py +9 -1
  1126. lusid/models/update_data_type_request.py +9 -1
  1127. lusid/models/update_derived_property_definition_request.py +13 -3
  1128. lusid/models/update_fee_type_request.py +104 -0
  1129. lusid/models/update_group_reconciliation_comparison_ruleset_request.py +99 -0
  1130. lusid/models/update_group_reconciliation_definition_request.py +115 -0
  1131. lusid/models/update_instrument_identifier_request.py +9 -1
  1132. lusid/models/update_orders_response.py +161 -0
  1133. lusid/models/update_placements_response.py +161 -0
  1134. lusid/models/update_portfolio_group_request.py +9 -1
  1135. lusid/models/update_portfolio_request.py +9 -1
  1136. lusid/models/update_property_definition_request.py +9 -1
  1137. lusid/models/update_reconciliation_request.py +9 -1
  1138. lusid/models/update_reference_data_request.py +95 -0
  1139. lusid/models/update_relationship_definition_request.py +9 -1
  1140. lusid/models/update_staging_rule_set_request.py +94 -0
  1141. lusid/models/update_tax_rule_set_request.py +9 -1
  1142. lusid/models/update_timeline_request.py +104 -0
  1143. lusid/models/update_unit_request.py +9 -1
  1144. lusid/models/upsert_cds_flow_conventions_request.py +9 -1
  1145. lusid/models/upsert_complex_market_data_request.py +9 -1
  1146. lusid/models/upsert_compliance_rule_request.py +9 -1
  1147. lusid/models/upsert_compliance_run_summary_request.py +9 -1
  1148. lusid/models/{compliance_run_summary.py → upsert_compliance_run_summary_result.py} +17 -9
  1149. lusid/models/upsert_corporate_action_request.py +9 -1
  1150. lusid/models/upsert_corporate_actions_response.py +9 -1
  1151. lusid/models/upsert_counterparty_agreement_request.py +9 -1
  1152. lusid/models/upsert_credit_support_annex_request.py +9 -1
  1153. lusid/models/upsert_custom_data_model_request.py +176 -0
  1154. lusid/models/upsert_custom_entities_response.py +29 -2
  1155. lusid/models/upsert_custom_entity_access_metadata_request.py +9 -1
  1156. lusid/models/upsert_dialect_request.py +87 -0
  1157. lusid/models/upsert_flow_conventions_request.py +9 -1
  1158. lusid/models/upsert_index_convention_request.py +9 -1
  1159. lusid/models/upsert_instrument_event_request.py +20 -3
  1160. lusid/models/upsert_instrument_events_response.py +9 -1
  1161. lusid/models/upsert_instrument_properties_response.py +9 -1
  1162. lusid/models/upsert_instrument_property_request.py +9 -1
  1163. lusid/models/upsert_instruments_response.py +29 -2
  1164. lusid/models/upsert_legal_entities_response.py +9 -1
  1165. lusid/models/upsert_legal_entity_access_metadata_request.py +9 -1
  1166. lusid/models/upsert_legal_entity_request.py +9 -1
  1167. lusid/models/upsert_person_access_metadata_request.py +9 -1
  1168. lusid/models/upsert_person_request.py +9 -1
  1169. lusid/models/upsert_persons_response.py +122 -0
  1170. lusid/models/upsert_portfolio_access_metadata_request.py +9 -1
  1171. lusid/models/upsert_portfolio_group_access_metadata_request.py +9 -1
  1172. lusid/models/upsert_portfolio_transactions_response.py +9 -1
  1173. lusid/models/upsert_quote_access_metadata_rule_request.py +9 -1
  1174. lusid/models/upsert_quote_request.py +10 -2
  1175. lusid/models/upsert_quotes_response.py +9 -1
  1176. lusid/models/upsert_recipe_composer_request.py +81 -0
  1177. lusid/models/upsert_recipe_request.py +12 -10
  1178. lusid/models/upsert_reference_portfolio_constituent_properties_request.py +92 -0
  1179. lusid/models/upsert_reference_portfolio_constituent_properties_response.py +123 -0
  1180. lusid/models/upsert_reference_portfolio_constituents_request.py +9 -1
  1181. lusid/models/upsert_reference_portfolio_constituents_response.py +9 -1
  1182. lusid/models/upsert_result_values_data_request.py +9 -1
  1183. lusid/models/upsert_returns_response.py +9 -1
  1184. lusid/models/upsert_single_structured_data_response.py +9 -1
  1185. lusid/models/upsert_structured_data_response.py +9 -1
  1186. lusid/models/upsert_structured_result_data_request.py +9 -1
  1187. lusid/models/upsert_transaction_properties_response.py +9 -1
  1188. lusid/models/upsert_translation_script_request.py +83 -0
  1189. lusid/models/upsert_valuation_point_request.py +130 -0
  1190. lusid/models/user.py +9 -1
  1191. lusid/models/valuation_point_data_query_parameters.py +81 -0
  1192. lusid/models/valuation_point_data_request.py +84 -0
  1193. lusid/models/valuation_point_data_response.py +164 -0
  1194. lusid/models/valuation_point_overview.py +133 -0
  1195. lusid/models/valuation_point_resource_list_of_accounted_transaction.py +133 -0
  1196. lusid/models/valuation_point_resource_list_of_journal_entry_line.py +133 -0
  1197. lusid/models/valuation_point_resource_list_of_pnl_journal_entry_line.py +133 -0
  1198. lusid/models/valuation_point_resource_list_of_trial_balance.py +133 -0
  1199. lusid/models/valuation_request.py +9 -1
  1200. lusid/models/valuation_schedule.py +19 -4
  1201. lusid/models/valuations_reconciliation_request.py +9 -1
  1202. lusid/models/vendor_dependency.py +9 -1
  1203. lusid/models/vendor_model_rule.py +9 -1
  1204. lusid/models/version.py +25 -10
  1205. lusid/models/version_summary_dto.py +9 -1
  1206. lusid/models/versioned_resource_list_of_a2_b_data_record.py +9 -1
  1207. lusid/models/versioned_resource_list_of_a2_b_movement_record.py +9 -1
  1208. lusid/models/versioned_resource_list_of_holding_contributor.py +9 -1
  1209. lusid/models/versioned_resource_list_of_journal_entry_line.py +9 -1
  1210. lusid/models/versioned_resource_list_of_output_transaction.py +9 -1
  1211. lusid/models/versioned_resource_list_of_portfolio_holding.py +9 -1
  1212. lusid/models/versioned_resource_list_of_transaction.py +9 -1
  1213. lusid/models/versioned_resource_list_of_trial_balance.py +9 -1
  1214. lusid/models/versioned_resource_list_with_warnings_of_portfolio_holding.py +9 -1
  1215. lusid/models/virtual_document.py +9 -1
  1216. lusid/models/virtual_document_row.py +9 -1
  1217. lusid/models/virtual_row.py +9 -1
  1218. lusid/models/warning.py +9 -1
  1219. lusid/models/weekend_mask.py +9 -1
  1220. lusid/models/weighted_instrument.py +29 -3
  1221. lusid/models/weighted_instrument_in_line_lookup_identifiers.py +97 -0
  1222. lusid/models/weighted_instruments.py +9 -1
  1223. lusid/models/workspace.py +100 -0
  1224. lusid/models/workspace_creation_request.py +86 -0
  1225. lusid/models/workspace_item.py +120 -0
  1226. lusid/models/workspace_item_creation_request.py +113 -0
  1227. lusid/models/workspace_item_update_request.py +95 -0
  1228. lusid/models/workspace_update_request.py +77 -0
  1229. lusid/models/yield_curve_data.py +12 -4
  1230. lusid/rest.py +75 -22
  1231. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.1.684.dist-info}/METADATA +614 -245
  1232. lusid_sdk-2.1.684.dist-info/RECORD +1273 -0
  1233. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.1.684.dist-info}/WHEEL +1 -1
  1234. lusid/extensions/api_client_builder.py +0 -138
  1235. lusid/models/configuration_recipe_snippet.py +0 -139
  1236. lusid/models/je_lines_query_parameters.py +0 -105
  1237. lusid/models/look_up_pricing_model_options.py +0 -93
  1238. lusid/models/reconciliation_break_id.py +0 -88
  1239. lusid/models/reconciliation_run_id.py +0 -85
  1240. lusid/models/upsert_reconciliation_break_request.py +0 -98
  1241. lusid_sdk-2.0.50b0.dist-info/RECORD +0 -917
@@ -0,0 +1,2497 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ LUSID API
5
+
6
+ FINBOURNE Technology # noqa: E501
7
+
8
+ Contact: info@finbourne.com
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """
13
+
14
+
15
+ import re # noqa: F401
16
+ import io
17
+ import warnings
18
+
19
+ from pydantic.v1 import validate_arguments, ValidationError
20
+ from typing import overload, Optional, Union, Awaitable
21
+
22
+ from typing_extensions import Annotated
23
+ from datetime import datetime
24
+
25
+ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
26
+
27
+ from typing import Optional
28
+
29
+ from lusid.models.batch_update_user_review_for_comparison_result_request import BatchUpdateUserReviewForComparisonResultRequest
30
+ from lusid.models.batch_update_user_review_for_comparison_result_response import BatchUpdateUserReviewForComparisonResultResponse
31
+ from lusid.models.create_group_reconciliation_comparison_ruleset_request import CreateGroupReconciliationComparisonRulesetRequest
32
+ from lusid.models.create_group_reconciliation_definition_request import CreateGroupReconciliationDefinitionRequest
33
+ from lusid.models.deleted_entity_response import DeletedEntityResponse
34
+ from lusid.models.group_reconciliation_comparison_result import GroupReconciliationComparisonResult
35
+ from lusid.models.group_reconciliation_comparison_ruleset import GroupReconciliationComparisonRuleset
36
+ from lusid.models.group_reconciliation_definition import GroupReconciliationDefinition
37
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
38
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
39
+ from lusid.models.paged_resource_list_of_group_reconciliation_comparison_result import PagedResourceListOfGroupReconciliationComparisonResult
40
+ from lusid.models.paged_resource_list_of_group_reconciliation_comparison_ruleset import PagedResourceListOfGroupReconciliationComparisonRuleset
41
+ from lusid.models.paged_resource_list_of_group_reconciliation_definition import PagedResourceListOfGroupReconciliationDefinition
42
+ from lusid.models.update_group_reconciliation_comparison_ruleset_request import UpdateGroupReconciliationComparisonRulesetRequest
43
+ from lusid.models.update_group_reconciliation_definition_request import UpdateGroupReconciliationDefinitionRequest
44
+
45
+ from lusid.api_client import ApiClient
46
+ from lusid.api_response import ApiResponse
47
+ from lusid.exceptions import ( # noqa: F401
48
+ ApiTypeError,
49
+ ApiValueError
50
+ )
51
+ from lusid.extensions.configuration_options import ConfigurationOptions
52
+
53
+
54
+ class GroupReconciliationsApi:
55
+ """NOTE: This class is auto generated by OpenAPI Generator
56
+ Ref: https://openapi-generator.tech
57
+
58
+ Do not edit the class manually.
59
+ """
60
+
61
+ def __init__(self, api_client=None) -> None:
62
+ if api_client is None:
63
+ api_client = ApiClient.get_default()
64
+ self.api_client = api_client
65
+
66
+ @overload
67
+ async def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, **kwargs) -> BatchUpdateUserReviewForComparisonResultResponse: # noqa: E501
68
+ ...
69
+
70
+ @overload
71
+ def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpdateUserReviewForComparisonResultResponse: # noqa: E501
72
+ ...
73
+
74
+ @validate_arguments
75
+ def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpdateUserReviewForComparisonResultResponse, Awaitable[BatchUpdateUserReviewForComparisonResultResponse]]: # noqa: E501
76
+ """[EXPERIMENTAL] BatchUpdateComparisonResults: Add User Review entries for a range of comparison results related to a specific GroupReconciliationDefinition. # noqa: E501
77
+
78
+ Allows to update multiple Group Reconciliation Comparison Results related to the same definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code. Updates User Review with new entries and sets the relevant Review Status. Supports partial success when all the entries that haven't passed validation or are not related to the definition will be returned with respectful error details. # noqa: E501
79
+ This method makes a synchronous HTTP request by default. To make an
80
+ asynchronous HTTP request, please pass async_req=True
81
+
82
+ >>> thread = api.batch_update_comparison_results(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, async_req=True)
83
+ >>> result = thread.get()
84
+
85
+ :param scope: Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults. (required)
86
+ :type scope: str
87
+ :param code: GroupReconciliationDefinitionId code. (required)
88
+ :type code: str
89
+ :param batch_update_user_review_for_comparison_result_request: A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp. (required)
90
+ :type batch_update_user_review_for_comparison_result_request: List[BatchUpdateUserReviewForComparisonResultRequest]
91
+ :param success_mode: Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".
92
+ :type success_mode: str
93
+ :param async_req: Whether to execute the request asynchronously.
94
+ :type async_req: bool, optional
95
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
96
+ :param opts: Configuration options for this request
97
+ :type opts: ConfigurationOptions, optional
98
+ :return: Returns the result object.
99
+ If the method is called asynchronously,
100
+ returns the request thread.
101
+ :rtype: BatchUpdateUserReviewForComparisonResultResponse
102
+ """
103
+ kwargs['_return_http_data_only'] = True
104
+ if '_preload_content' in kwargs:
105
+ message = "Error! Please call the batch_update_comparison_results_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
106
+ raise ValueError(message)
107
+ if async_req is not None:
108
+ kwargs['async_req'] = async_req
109
+ return self.batch_update_comparison_results_with_http_info(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, **kwargs) # noqa: E501
110
+
111
+ @validate_arguments
112
+ def batch_update_comparison_results_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, **kwargs) -> ApiResponse: # noqa: E501
113
+ """[EXPERIMENTAL] BatchUpdateComparisonResults: Add User Review entries for a range of comparison results related to a specific GroupReconciliationDefinition. # noqa: E501
114
+
115
+ Allows to update multiple Group Reconciliation Comparison Results related to the same definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code. Updates User Review with new entries and sets the relevant Review Status. Supports partial success when all the entries that haven't passed validation or are not related to the definition will be returned with respectful error details. # noqa: E501
116
+ This method makes a synchronous HTTP request by default. To make an
117
+ asynchronous HTTP request, please pass async_req=True
118
+
119
+ >>> thread = api.batch_update_comparison_results_with_http_info(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, async_req=True)
120
+ >>> result = thread.get()
121
+
122
+ :param scope: Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults. (required)
123
+ :type scope: str
124
+ :param code: GroupReconciliationDefinitionId code. (required)
125
+ :type code: str
126
+ :param batch_update_user_review_for_comparison_result_request: A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp. (required)
127
+ :type batch_update_user_review_for_comparison_result_request: List[BatchUpdateUserReviewForComparisonResultRequest]
128
+ :param success_mode: Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".
129
+ :type success_mode: str
130
+ :param async_req: Whether to execute the request asynchronously.
131
+ :type async_req: bool, optional
132
+ :param _preload_content: if False, the ApiResponse.data will
133
+ be set to none and raw_data will store the
134
+ HTTP response body without reading/decoding.
135
+ Default is True.
136
+ :type _preload_content: bool, optional
137
+ :param _return_http_data_only: response data instead of ApiResponse
138
+ object with status code, headers, etc
139
+ :type _return_http_data_only: bool, optional
140
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
141
+ :param opts: Configuration options for this request
142
+ :type opts: ConfigurationOptions, optional
143
+ :param _request_auth: set to override the auth_settings for an a single
144
+ request; this effectively ignores the authentication
145
+ in the spec for a single request.
146
+ :type _request_auth: dict, optional
147
+ :type _content_type: string, optional: force content-type for the request
148
+ :return: Returns the result object.
149
+ If the method is called asynchronously,
150
+ returns the request thread.
151
+ :rtype: tuple(BatchUpdateUserReviewForComparisonResultResponse, status_code(int), headers(HTTPHeaderDict))
152
+ """
153
+
154
+ _params = locals()
155
+
156
+ _all_params = [
157
+ 'scope',
158
+ 'code',
159
+ 'batch_update_user_review_for_comparison_result_request',
160
+ 'success_mode'
161
+ ]
162
+ _all_params.extend(
163
+ [
164
+ 'async_req',
165
+ '_return_http_data_only',
166
+ '_preload_content',
167
+ '_request_timeout',
168
+ '_request_auth',
169
+ '_content_type',
170
+ '_headers',
171
+ 'opts'
172
+ ]
173
+ )
174
+
175
+ # validate the arguments
176
+ for _key, _val in _params['kwargs'].items():
177
+ if _key not in _all_params:
178
+ raise ApiTypeError(
179
+ "Got an unexpected keyword argument '%s'"
180
+ " to method batch_update_comparison_results" % _key
181
+ )
182
+ _params[_key] = _val
183
+ del _params['kwargs']
184
+
185
+ _collection_formats = {}
186
+
187
+ # process the path parameters
188
+ _path_params = {}
189
+ if _params['scope']:
190
+ _path_params['scope'] = _params['scope']
191
+
192
+ if _params['code']:
193
+ _path_params['code'] = _params['code']
194
+
195
+
196
+ # process the query parameters
197
+ _query_params = []
198
+ if _params.get('success_mode') is not None: # noqa: E501
199
+ _query_params.append(('successMode', _params['success_mode']))
200
+
201
+ # process the header parameters
202
+ _header_params = dict(_params.get('_headers', {}))
203
+ # process the form parameters
204
+ _form_params = []
205
+ _files = {}
206
+ # process the body parameter
207
+ _body_params = None
208
+ if _params['batch_update_user_review_for_comparison_result_request'] is not None:
209
+ _body_params = _params['batch_update_user_review_for_comparison_result_request']
210
+
211
+ # set the HTTP header `Accept`
212
+ _header_params['Accept'] = self.api_client.select_header_accept(
213
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
214
+
215
+ # set the HTTP header `Content-Type`
216
+ _content_types_list = _params.get('_content_type',
217
+ self.api_client.select_header_content_type(
218
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
219
+ if _content_types_list:
220
+ _header_params['Content-Type'] = _content_types_list
221
+
222
+ # authentication setting
223
+ _auth_settings = ['oauth2'] # noqa: E501
224
+
225
+ _response_types_map = {
226
+ '200': "BatchUpdateUserReviewForComparisonResultResponse",
227
+ '400': "LusidValidationProblemDetails",
228
+ }
229
+
230
+ return self.api_client.call_api(
231
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/comparisonresults/$batchReview', 'POST',
232
+ _path_params,
233
+ _query_params,
234
+ _header_params,
235
+ body=_body_params,
236
+ post_params=_form_params,
237
+ files=_files,
238
+ response_types_map=_response_types_map,
239
+ auth_settings=_auth_settings,
240
+ async_req=_params.get('async_req'),
241
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
242
+ _preload_content=_params.get('_preload_content', True),
243
+ _request_timeout=_params.get('_request_timeout'),
244
+ opts=_params.get('opts'),
245
+ collection_formats=_collection_formats,
246
+ _request_auth=_params.get('_request_auth'))
247
+
248
+ @overload
249
+ async def create_comparison_ruleset(self, create_group_reconciliation_comparison_ruleset_request : Annotated[Optional[CreateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the details of the ruleset")] = None, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
250
+ ...
251
+
252
+ @overload
253
+ def create_comparison_ruleset(self, create_group_reconciliation_comparison_ruleset_request : Annotated[Optional[CreateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the details of the ruleset")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
254
+ ...
255
+
256
+ @validate_arguments
257
+ def create_comparison_ruleset(self, create_group_reconciliation_comparison_ruleset_request : Annotated[Optional[CreateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the details of the ruleset")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationComparisonRuleset, Awaitable[GroupReconciliationComparisonRuleset]]: # noqa: E501
258
+ """[EXPERIMENTAL] CreateComparisonRuleset: Create a Group Reconciliation Comparison Ruleset # noqa: E501
259
+
260
+ Creates a set of core and aggregate rules to be run for a group reconciliation # noqa: E501
261
+ This method makes a synchronous HTTP request by default. To make an
262
+ asynchronous HTTP request, please pass async_req=True
263
+
264
+ >>> thread = api.create_comparison_ruleset(create_group_reconciliation_comparison_ruleset_request, async_req=True)
265
+ >>> result = thread.get()
266
+
267
+ :param create_group_reconciliation_comparison_ruleset_request: The request containing the details of the ruleset
268
+ :type create_group_reconciliation_comparison_ruleset_request: CreateGroupReconciliationComparisonRulesetRequest
269
+ :param async_req: Whether to execute the request asynchronously.
270
+ :type async_req: bool, optional
271
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
272
+ :param opts: Configuration options for this request
273
+ :type opts: ConfigurationOptions, optional
274
+ :return: Returns the result object.
275
+ If the method is called asynchronously,
276
+ returns the request thread.
277
+ :rtype: GroupReconciliationComparisonRuleset
278
+ """
279
+ kwargs['_return_http_data_only'] = True
280
+ if '_preload_content' in kwargs:
281
+ message = "Error! Please call the create_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
282
+ raise ValueError(message)
283
+ if async_req is not None:
284
+ kwargs['async_req'] = async_req
285
+ return self.create_comparison_ruleset_with_http_info(create_group_reconciliation_comparison_ruleset_request, **kwargs) # noqa: E501
286
+
287
+ @validate_arguments
288
+ def create_comparison_ruleset_with_http_info(self, create_group_reconciliation_comparison_ruleset_request : Annotated[Optional[CreateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the details of the ruleset")] = None, **kwargs) -> ApiResponse: # noqa: E501
289
+ """[EXPERIMENTAL] CreateComparisonRuleset: Create a Group Reconciliation Comparison Ruleset # noqa: E501
290
+
291
+ Creates a set of core and aggregate rules to be run for a group reconciliation # noqa: E501
292
+ This method makes a synchronous HTTP request by default. To make an
293
+ asynchronous HTTP request, please pass async_req=True
294
+
295
+ >>> thread = api.create_comparison_ruleset_with_http_info(create_group_reconciliation_comparison_ruleset_request, async_req=True)
296
+ >>> result = thread.get()
297
+
298
+ :param create_group_reconciliation_comparison_ruleset_request: The request containing the details of the ruleset
299
+ :type create_group_reconciliation_comparison_ruleset_request: CreateGroupReconciliationComparisonRulesetRequest
300
+ :param async_req: Whether to execute the request asynchronously.
301
+ :type async_req: bool, optional
302
+ :param _preload_content: if False, the ApiResponse.data will
303
+ be set to none and raw_data will store the
304
+ HTTP response body without reading/decoding.
305
+ Default is True.
306
+ :type _preload_content: bool, optional
307
+ :param _return_http_data_only: response data instead of ApiResponse
308
+ object with status code, headers, etc
309
+ :type _return_http_data_only: bool, optional
310
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
311
+ :param opts: Configuration options for this request
312
+ :type opts: ConfigurationOptions, optional
313
+ :param _request_auth: set to override the auth_settings for an a single
314
+ request; this effectively ignores the authentication
315
+ in the spec for a single request.
316
+ :type _request_auth: dict, optional
317
+ :type _content_type: string, optional: force content-type for the request
318
+ :return: Returns the result object.
319
+ If the method is called asynchronously,
320
+ returns the request thread.
321
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
322
+ """
323
+
324
+ _params = locals()
325
+
326
+ _all_params = [
327
+ 'create_group_reconciliation_comparison_ruleset_request'
328
+ ]
329
+ _all_params.extend(
330
+ [
331
+ 'async_req',
332
+ '_return_http_data_only',
333
+ '_preload_content',
334
+ '_request_timeout',
335
+ '_request_auth',
336
+ '_content_type',
337
+ '_headers',
338
+ 'opts'
339
+ ]
340
+ )
341
+
342
+ # validate the arguments
343
+ for _key, _val in _params['kwargs'].items():
344
+ if _key not in _all_params:
345
+ raise ApiTypeError(
346
+ "Got an unexpected keyword argument '%s'"
347
+ " to method create_comparison_ruleset" % _key
348
+ )
349
+ _params[_key] = _val
350
+ del _params['kwargs']
351
+
352
+ _collection_formats = {}
353
+
354
+ # process the path parameters
355
+ _path_params = {}
356
+
357
+ # process the query parameters
358
+ _query_params = []
359
+ # process the header parameters
360
+ _header_params = dict(_params.get('_headers', {}))
361
+ # process the form parameters
362
+ _form_params = []
363
+ _files = {}
364
+ # process the body parameter
365
+ _body_params = None
366
+ if _params['create_group_reconciliation_comparison_ruleset_request'] is not None:
367
+ _body_params = _params['create_group_reconciliation_comparison_ruleset_request']
368
+
369
+ # set the HTTP header `Accept`
370
+ _header_params['Accept'] = self.api_client.select_header_accept(
371
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
372
+
373
+ # set the HTTP header `Content-Type`
374
+ _content_types_list = _params.get('_content_type',
375
+ self.api_client.select_header_content_type(
376
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
377
+ if _content_types_list:
378
+ _header_params['Content-Type'] = _content_types_list
379
+
380
+ # authentication setting
381
+ _auth_settings = ['oauth2'] # noqa: E501
382
+
383
+ _response_types_map = {
384
+ '201': "GroupReconciliationComparisonRuleset",
385
+ '400': "LusidValidationProblemDetails",
386
+ }
387
+
388
+ return self.api_client.call_api(
389
+ '/api/reconciliations/comparisonrulesets', 'POST',
390
+ _path_params,
391
+ _query_params,
392
+ _header_params,
393
+ body=_body_params,
394
+ post_params=_form_params,
395
+ files=_files,
396
+ response_types_map=_response_types_map,
397
+ auth_settings=_auth_settings,
398
+ async_req=_params.get('async_req'),
399
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
400
+ _preload_content=_params.get('_preload_content', True),
401
+ _request_timeout=_params.get('_request_timeout'),
402
+ opts=_params.get('opts'),
403
+ collection_formats=_collection_formats,
404
+ _request_auth=_params.get('_request_auth'))
405
+
406
+ @overload
407
+ 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
408
+ ...
409
+
410
+ @overload
411
+ 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
412
+ ...
413
+
414
+ @validate_arguments
415
+ 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
416
+ """[EXPERIMENTAL] CreateGroupReconciliationDefinition: Create Group Reconciliation Definition # noqa: E501
417
+
418
+ Creates a Group Reconciliation Definition # noqa: E501
419
+ This method makes a synchronous HTTP request by default. To make an
420
+ asynchronous HTTP request, please pass async_req=True
421
+
422
+ >>> thread = api.create_group_reconciliation_definition(create_group_reconciliation_definition_request, async_req=True)
423
+ >>> result = thread.get()
424
+
425
+ :param create_group_reconciliation_definition_request: The definition Group Reconciliation Definition details
426
+ :type create_group_reconciliation_definition_request: CreateGroupReconciliationDefinitionRequest
427
+ :param async_req: Whether to execute the request asynchronously.
428
+ :type async_req: bool, optional
429
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
430
+ :param opts: Configuration options for this request
431
+ :type opts: ConfigurationOptions, optional
432
+ :return: Returns the result object.
433
+ If the method is called asynchronously,
434
+ returns the request thread.
435
+ :rtype: GroupReconciliationDefinition
436
+ """
437
+ kwargs['_return_http_data_only'] = True
438
+ if '_preload_content' in kwargs:
439
+ 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
440
+ raise ValueError(message)
441
+ if async_req is not None:
442
+ kwargs['async_req'] = async_req
443
+ return self.create_group_reconciliation_definition_with_http_info(create_group_reconciliation_definition_request, **kwargs) # noqa: E501
444
+
445
+ @validate_arguments
446
+ 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
447
+ """[EXPERIMENTAL] CreateGroupReconciliationDefinition: Create Group Reconciliation Definition # noqa: E501
448
+
449
+ Creates a Group Reconciliation Definition # noqa: E501
450
+ This method makes a synchronous HTTP request by default. To make an
451
+ asynchronous HTTP request, please pass async_req=True
452
+
453
+ >>> thread = api.create_group_reconciliation_definition_with_http_info(create_group_reconciliation_definition_request, async_req=True)
454
+ >>> result = thread.get()
455
+
456
+ :param create_group_reconciliation_definition_request: The definition Group Reconciliation Definition details
457
+ :type create_group_reconciliation_definition_request: CreateGroupReconciliationDefinitionRequest
458
+ :param async_req: Whether to execute the request asynchronously.
459
+ :type async_req: bool, optional
460
+ :param _preload_content: if False, the ApiResponse.data will
461
+ be set to none and raw_data will store the
462
+ HTTP response body without reading/decoding.
463
+ Default is True.
464
+ :type _preload_content: bool, optional
465
+ :param _return_http_data_only: response data instead of ApiResponse
466
+ object with status code, headers, etc
467
+ :type _return_http_data_only: bool, optional
468
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
469
+ :param opts: Configuration options for this request
470
+ :type opts: ConfigurationOptions, optional
471
+ :param _request_auth: set to override the auth_settings for an a single
472
+ request; this effectively ignores the authentication
473
+ in the spec for a single request.
474
+ :type _request_auth: dict, optional
475
+ :type _content_type: string, optional: force content-type for the request
476
+ :return: Returns the result object.
477
+ If the method is called asynchronously,
478
+ returns the request thread.
479
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
480
+ """
481
+
482
+ _params = locals()
483
+
484
+ _all_params = [
485
+ 'create_group_reconciliation_definition_request'
486
+ ]
487
+ _all_params.extend(
488
+ [
489
+ 'async_req',
490
+ '_return_http_data_only',
491
+ '_preload_content',
492
+ '_request_timeout',
493
+ '_request_auth',
494
+ '_content_type',
495
+ '_headers',
496
+ 'opts'
497
+ ]
498
+ )
499
+
500
+ # validate the arguments
501
+ for _key, _val in _params['kwargs'].items():
502
+ if _key not in _all_params:
503
+ raise ApiTypeError(
504
+ "Got an unexpected keyword argument '%s'"
505
+ " to method create_group_reconciliation_definition" % _key
506
+ )
507
+ _params[_key] = _val
508
+ del _params['kwargs']
509
+
510
+ _collection_formats = {}
511
+
512
+ # process the path parameters
513
+ _path_params = {}
514
+
515
+ # process the query parameters
516
+ _query_params = []
517
+ # process the header parameters
518
+ _header_params = dict(_params.get('_headers', {}))
519
+ # process the form parameters
520
+ _form_params = []
521
+ _files = {}
522
+ # process the body parameter
523
+ _body_params = None
524
+ if _params['create_group_reconciliation_definition_request'] is not None:
525
+ _body_params = _params['create_group_reconciliation_definition_request']
526
+
527
+ # set the HTTP header `Accept`
528
+ _header_params['Accept'] = self.api_client.select_header_accept(
529
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
530
+
531
+ # set the HTTP header `Content-Type`
532
+ _content_types_list = _params.get('_content_type',
533
+ self.api_client.select_header_content_type(
534
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
535
+ if _content_types_list:
536
+ _header_params['Content-Type'] = _content_types_list
537
+
538
+ # authentication setting
539
+ _auth_settings = ['oauth2'] # noqa: E501
540
+
541
+ _response_types_map = {
542
+ '201': "GroupReconciliationDefinition",
543
+ '400': "LusidValidationProblemDetails",
544
+ }
545
+
546
+ return self.api_client.call_api(
547
+ '/api/reconciliations/groupreconciliationdefinitions', 'POST',
548
+ _path_params,
549
+ _query_params,
550
+ _header_params,
551
+ body=_body_params,
552
+ post_params=_form_params,
553
+ files=_files,
554
+ response_types_map=_response_types_map,
555
+ auth_settings=_auth_settings,
556
+ async_req=_params.get('async_req'),
557
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
558
+ _preload_content=_params.get('_preload_content', True),
559
+ _request_timeout=_params.get('_request_timeout'),
560
+ opts=_params.get('opts'),
561
+ collection_formats=_collection_formats,
562
+ _request_auth=_params.get('_request_auth'))
563
+
564
+ @overload
565
+ 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
566
+ ...
567
+
568
+ @overload
569
+ def delete_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
570
+ ...
571
+
572
+ @validate_arguments
573
+ def delete_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
574
+ """[EXPERIMENTAL] DeleteComparisonRuleset: Deletes a particular Group Reconciliation Comparison Ruleset # noqa: E501
575
+
576
+ The deletion will take effect from the reconciliation comparison ruleset deletion datetime. i.e. will no longer exist at any asAt datetime after the asAt datetime of deletion. # noqa: E501
577
+ This method makes a synchronous HTTP request by default. To make an
578
+ asynchronous HTTP request, please pass async_req=True
579
+
580
+ >>> thread = api.delete_comparison_ruleset(scope, code, async_req=True)
581
+ >>> result = thread.get()
582
+
583
+ :param scope: The scope of the specified comparison ruleset. (required)
584
+ :type scope: str
585
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
586
+ :type code: str
587
+ :param async_req: Whether to execute the request asynchronously.
588
+ :type async_req: bool, optional
589
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
590
+ :param opts: Configuration options for this request
591
+ :type opts: ConfigurationOptions, optional
592
+ :return: Returns the result object.
593
+ If the method is called asynchronously,
594
+ returns the request thread.
595
+ :rtype: DeletedEntityResponse
596
+ """
597
+ kwargs['_return_http_data_only'] = True
598
+ if '_preload_content' in kwargs:
599
+ message = "Error! Please call the delete_comparison_ruleset_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
600
+ raise ValueError(message)
601
+ if async_req is not None:
602
+ kwargs['async_req'] = async_req
603
+ return self.delete_comparison_ruleset_with_http_info(scope, code, **kwargs) # noqa: E501
604
+
605
+ @validate_arguments
606
+ def delete_comparison_ruleset_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], **kwargs) -> ApiResponse: # noqa: E501
607
+ """[EXPERIMENTAL] DeleteComparisonRuleset: Deletes a particular Group Reconciliation Comparison Ruleset # noqa: E501
608
+
609
+ The deletion will take effect from the reconciliation comparison ruleset deletion datetime. i.e. will no longer exist at any asAt datetime after the asAt datetime of deletion. # noqa: E501
610
+ This method makes a synchronous HTTP request by default. To make an
611
+ asynchronous HTTP request, please pass async_req=True
612
+
613
+ >>> thread = api.delete_comparison_ruleset_with_http_info(scope, code, async_req=True)
614
+ >>> result = thread.get()
615
+
616
+ :param scope: The scope of the specified comparison ruleset. (required)
617
+ :type scope: str
618
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
619
+ :type code: str
620
+ :param async_req: Whether to execute the request asynchronously.
621
+ :type async_req: bool, optional
622
+ :param _preload_content: if False, the ApiResponse.data will
623
+ be set to none and raw_data will store the
624
+ HTTP response body without reading/decoding.
625
+ Default is True.
626
+ :type _preload_content: bool, optional
627
+ :param _return_http_data_only: response data instead of ApiResponse
628
+ object with status code, headers, etc
629
+ :type _return_http_data_only: bool, optional
630
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
631
+ :param opts: Configuration options for this request
632
+ :type opts: ConfigurationOptions, optional
633
+ :param _request_auth: set to override the auth_settings for an a single
634
+ request; this effectively ignores the authentication
635
+ in the spec for a single request.
636
+ :type _request_auth: dict, optional
637
+ :type _content_type: string, optional: force content-type for the request
638
+ :return: Returns the result object.
639
+ If the method is called asynchronously,
640
+ returns the request thread.
641
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
642
+ """
643
+
644
+ _params = locals()
645
+
646
+ _all_params = [
647
+ 'scope',
648
+ 'code'
649
+ ]
650
+ _all_params.extend(
651
+ [
652
+ 'async_req',
653
+ '_return_http_data_only',
654
+ '_preload_content',
655
+ '_request_timeout',
656
+ '_request_auth',
657
+ '_content_type',
658
+ '_headers',
659
+ 'opts'
660
+ ]
661
+ )
662
+
663
+ # validate the arguments
664
+ for _key, _val in _params['kwargs'].items():
665
+ if _key not in _all_params:
666
+ raise ApiTypeError(
667
+ "Got an unexpected keyword argument '%s'"
668
+ " to method delete_comparison_ruleset" % _key
669
+ )
670
+ _params[_key] = _val
671
+ del _params['kwargs']
672
+
673
+ _collection_formats = {}
674
+
675
+ # process the path parameters
676
+ _path_params = {}
677
+ if _params['scope']:
678
+ _path_params['scope'] = _params['scope']
679
+
680
+ if _params['code']:
681
+ _path_params['code'] = _params['code']
682
+
683
+
684
+ # process the query parameters
685
+ _query_params = []
686
+ # process the header parameters
687
+ _header_params = dict(_params.get('_headers', {}))
688
+ # process the form parameters
689
+ _form_params = []
690
+ _files = {}
691
+ # process the body parameter
692
+ _body_params = None
693
+ # set the HTTP header `Accept`
694
+ _header_params['Accept'] = self.api_client.select_header_accept(
695
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
696
+
697
+ # authentication setting
698
+ _auth_settings = ['oauth2'] # noqa: E501
699
+
700
+ _response_types_map = {
701
+ '200': "DeletedEntityResponse",
702
+ '400': "LusidValidationProblemDetails",
703
+ }
704
+
705
+ return self.api_client.call_api(
706
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'DELETE',
707
+ _path_params,
708
+ _query_params,
709
+ _header_params,
710
+ body=_body_params,
711
+ post_params=_form_params,
712
+ files=_files,
713
+ response_types_map=_response_types_map,
714
+ auth_settings=_auth_settings,
715
+ async_req=_params.get('async_req'),
716
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
717
+ _preload_content=_params.get('_preload_content', True),
718
+ _request_timeout=_params.get('_request_timeout'),
719
+ opts=_params.get('opts'),
720
+ collection_formats=_collection_formats,
721
+ _request_auth=_params.get('_request_auth'))
722
+
723
+ @overload
724
+ 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
725
+ ...
726
+
727
+ @overload
728
+ 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
729
+ ...
730
+
731
+ @validate_arguments
732
+ 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
733
+ """[EXPERIMENTAL] DeleteGroupReconciliationDefinition: Delete Group Reconciliation Definition # noqa: E501
734
+
735
+ Delete the group reconciliation definition. # noqa: E501
736
+ This method makes a synchronous HTTP request by default. To make an
737
+ asynchronous HTTP request, please pass async_req=True
738
+
739
+ >>> thread = api.delete_group_reconciliation_definition(scope, code, async_req=True)
740
+ >>> result = thread.get()
741
+
742
+ :param scope: The scope of the group reconciliation definition to delete. (required)
743
+ :type scope: str
744
+ :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)
745
+ :type code: str
746
+ :param async_req: Whether to execute the request asynchronously.
747
+ :type async_req: bool, optional
748
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
749
+ :param opts: Configuration options for this request
750
+ :type opts: ConfigurationOptions, optional
751
+ :return: Returns the result object.
752
+ If the method is called asynchronously,
753
+ returns the request thread.
754
+ :rtype: DeletedEntityResponse
755
+ """
756
+ kwargs['_return_http_data_only'] = True
757
+ if '_preload_content' in kwargs:
758
+ 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
759
+ raise ValueError(message)
760
+ if async_req is not None:
761
+ kwargs['async_req'] = async_req
762
+ return self.delete_group_reconciliation_definition_with_http_info(scope, code, **kwargs) # noqa: E501
763
+
764
+ @validate_arguments
765
+ 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
766
+ """[EXPERIMENTAL] DeleteGroupReconciliationDefinition: Delete Group Reconciliation Definition # noqa: E501
767
+
768
+ Delete the group reconciliation definition. # noqa: E501
769
+ This method makes a synchronous HTTP request by default. To make an
770
+ asynchronous HTTP request, please pass async_req=True
771
+
772
+ >>> thread = api.delete_group_reconciliation_definition_with_http_info(scope, code, async_req=True)
773
+ >>> result = thread.get()
774
+
775
+ :param scope: The scope of the group reconciliation definition to delete. (required)
776
+ :type scope: str
777
+ :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)
778
+ :type code: str
779
+ :param async_req: Whether to execute the request asynchronously.
780
+ :type async_req: bool, optional
781
+ :param _preload_content: if False, the ApiResponse.data will
782
+ be set to none and raw_data will store the
783
+ HTTP response body without reading/decoding.
784
+ Default is True.
785
+ :type _preload_content: bool, optional
786
+ :param _return_http_data_only: response data instead of ApiResponse
787
+ object with status code, headers, etc
788
+ :type _return_http_data_only: bool, optional
789
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
790
+ :param opts: Configuration options for this request
791
+ :type opts: ConfigurationOptions, optional
792
+ :param _request_auth: set to override the auth_settings for an a single
793
+ request; this effectively ignores the authentication
794
+ in the spec for a single request.
795
+ :type _request_auth: dict, optional
796
+ :type _content_type: string, optional: force content-type for the request
797
+ :return: Returns the result object.
798
+ If the method is called asynchronously,
799
+ returns the request thread.
800
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
801
+ """
802
+
803
+ _params = locals()
804
+
805
+ _all_params = [
806
+ 'scope',
807
+ 'code'
808
+ ]
809
+ _all_params.extend(
810
+ [
811
+ 'async_req',
812
+ '_return_http_data_only',
813
+ '_preload_content',
814
+ '_request_timeout',
815
+ '_request_auth',
816
+ '_content_type',
817
+ '_headers',
818
+ 'opts'
819
+ ]
820
+ )
821
+
822
+ # validate the arguments
823
+ for _key, _val in _params['kwargs'].items():
824
+ if _key not in _all_params:
825
+ raise ApiTypeError(
826
+ "Got an unexpected keyword argument '%s'"
827
+ " to method delete_group_reconciliation_definition" % _key
828
+ )
829
+ _params[_key] = _val
830
+ del _params['kwargs']
831
+
832
+ _collection_formats = {}
833
+
834
+ # process the path parameters
835
+ _path_params = {}
836
+ if _params['scope']:
837
+ _path_params['scope'] = _params['scope']
838
+
839
+ if _params['code']:
840
+ _path_params['code'] = _params['code']
841
+
842
+
843
+ # process the query parameters
844
+ _query_params = []
845
+ # process the header parameters
846
+ _header_params = dict(_params.get('_headers', {}))
847
+ # process the form parameters
848
+ _form_params = []
849
+ _files = {}
850
+ # process the body parameter
851
+ _body_params = None
852
+ # set the HTTP header `Accept`
853
+ _header_params['Accept'] = self.api_client.select_header_accept(
854
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
855
+
856
+ # authentication setting
857
+ _auth_settings = ['oauth2'] # noqa: E501
858
+
859
+ _response_types_map = {
860
+ '200': "DeletedEntityResponse",
861
+ '400': "LusidValidationProblemDetails",
862
+ }
863
+
864
+ return self.api_client.call_api(
865
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'DELETE',
866
+ _path_params,
867
+ _query_params,
868
+ _header_params,
869
+ body=_body_params,
870
+ post_params=_form_params,
871
+ files=_files,
872
+ response_types_map=_response_types_map,
873
+ auth_settings=_auth_settings,
874
+ async_req=_params.get('async_req'),
875
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
876
+ _preload_content=_params.get('_preload_content', True),
877
+ _request_timeout=_params.get('_request_timeout'),
878
+ opts=_params.get('opts'),
879
+ collection_formats=_collection_formats,
880
+ _request_auth=_params.get('_request_auth'))
881
+
882
+ @overload
883
+ async def get_comparison_result(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison result and its related reconciliation definition.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the reconciliation definition that was used to produce the reconciliation result.")], result_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.")] = None, **kwargs) -> GroupReconciliationComparisonResult: # noqa: E501
884
+ ...
885
+
886
+ @overload
887
+ def get_comparison_result(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison result and its related reconciliation definition.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the reconciliation definition that was used to produce the reconciliation result.")], result_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationComparisonResult: # noqa: E501
888
+ ...
889
+
890
+ @validate_arguments
891
+ def get_comparison_result(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison result and its related reconciliation definition.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the reconciliation definition that was used to produce the reconciliation result.")], result_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationComparisonResult, Awaitable[GroupReconciliationComparisonResult]]: # noqa: E501
892
+ """[EXPERIMENTAL] GetComparisonResult: Get a single Group Reconciliation Comparison Result by scope and code. # noqa: E501
893
+
894
+ Retrieves one Group Reconciliation Comparison Result by scope and code with the prior validation that its related reconciliation definition exists. # noqa: E501
895
+ This method makes a synchronous HTTP request by default. To make an
896
+ asynchronous HTTP request, please pass async_req=True
897
+
898
+ >>> thread = api.get_comparison_result(scope, code, result_id, as_at, async_req=True)
899
+ >>> result = thread.get()
900
+
901
+ :param scope: The scope of the specified comparison result and its related reconciliation definition. (required)
902
+ :type scope: str
903
+ :param code: The code of the reconciliation definition that was used to produce the reconciliation result. (required)
904
+ :type code: str
905
+ :param result_id: The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values. (required)
906
+ :type result_id: str
907
+ :param as_at: The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.
908
+ :type as_at: datetime
909
+ :param async_req: Whether to execute the request asynchronously.
910
+ :type async_req: bool, optional
911
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
912
+ :param opts: Configuration options for this request
913
+ :type opts: ConfigurationOptions, optional
914
+ :return: Returns the result object.
915
+ If the method is called asynchronously,
916
+ returns the request thread.
917
+ :rtype: GroupReconciliationComparisonResult
918
+ """
919
+ kwargs['_return_http_data_only'] = True
920
+ if '_preload_content' in kwargs:
921
+ message = "Error! Please call the get_comparison_result_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
922
+ raise ValueError(message)
923
+ if async_req is not None:
924
+ kwargs['async_req'] = async_req
925
+ return self.get_comparison_result_with_http_info(scope, code, result_id, as_at, **kwargs) # noqa: E501
926
+
927
+ @validate_arguments
928
+ def get_comparison_result_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison result and its related reconciliation definition.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the reconciliation definition that was used to produce the reconciliation result.")], result_id : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
929
+ """[EXPERIMENTAL] GetComparisonResult: Get a single Group Reconciliation Comparison Result by scope and code. # noqa: E501
930
+
931
+ Retrieves one Group Reconciliation Comparison Result by scope and code with the prior validation that its related reconciliation definition exists. # noqa: E501
932
+ This method makes a synchronous HTTP request by default. To make an
933
+ asynchronous HTTP request, please pass async_req=True
934
+
935
+ >>> thread = api.get_comparison_result_with_http_info(scope, code, result_id, as_at, async_req=True)
936
+ >>> result = thread.get()
937
+
938
+ :param scope: The scope of the specified comparison result and its related reconciliation definition. (required)
939
+ :type scope: str
940
+ :param code: The code of the reconciliation definition that was used to produce the reconciliation result. (required)
941
+ :type code: str
942
+ :param result_id: The code of the specified reconciliation result. Together with the domain and scope this uniquely identifies the reconciliation comparison result. This value is also the same as the computed result hash based on property values. (required)
943
+ :type result_id: str
944
+ :param as_at: The asAt datetime at which to retrieve the comparison result definition. Defaults to return the latest version if not specified.
945
+ :type as_at: datetime
946
+ :param async_req: Whether to execute the request asynchronously.
947
+ :type async_req: bool, optional
948
+ :param _preload_content: if False, the ApiResponse.data will
949
+ be set to none and raw_data will store the
950
+ HTTP response body without reading/decoding.
951
+ Default is True.
952
+ :type _preload_content: bool, optional
953
+ :param _return_http_data_only: response data instead of ApiResponse
954
+ object with status code, headers, etc
955
+ :type _return_http_data_only: bool, optional
956
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
957
+ :param opts: Configuration options for this request
958
+ :type opts: ConfigurationOptions, optional
959
+ :param _request_auth: set to override the auth_settings for an a single
960
+ request; this effectively ignores the authentication
961
+ in the spec for a single request.
962
+ :type _request_auth: dict, optional
963
+ :type _content_type: string, optional: force content-type for the request
964
+ :return: Returns the result object.
965
+ If the method is called asynchronously,
966
+ returns the request thread.
967
+ :rtype: tuple(GroupReconciliationComparisonResult, status_code(int), headers(HTTPHeaderDict))
968
+ """
969
+
970
+ _params = locals()
971
+
972
+ _all_params = [
973
+ 'scope',
974
+ 'code',
975
+ 'result_id',
976
+ 'as_at'
977
+ ]
978
+ _all_params.extend(
979
+ [
980
+ 'async_req',
981
+ '_return_http_data_only',
982
+ '_preload_content',
983
+ '_request_timeout',
984
+ '_request_auth',
985
+ '_content_type',
986
+ '_headers',
987
+ 'opts'
988
+ ]
989
+ )
990
+
991
+ # validate the arguments
992
+ for _key, _val in _params['kwargs'].items():
993
+ if _key not in _all_params:
994
+ raise ApiTypeError(
995
+ "Got an unexpected keyword argument '%s'"
996
+ " to method get_comparison_result" % _key
997
+ )
998
+ _params[_key] = _val
999
+ del _params['kwargs']
1000
+
1001
+ _collection_formats = {}
1002
+
1003
+ # process the path parameters
1004
+ _path_params = {}
1005
+ if _params['scope']:
1006
+ _path_params['scope'] = _params['scope']
1007
+
1008
+ if _params['code']:
1009
+ _path_params['code'] = _params['code']
1010
+
1011
+ if _params['result_id']:
1012
+ _path_params['resultId'] = _params['result_id']
1013
+
1014
+
1015
+ # process the query parameters
1016
+ _query_params = []
1017
+ if _params.get('as_at') is not None: # noqa: E501
1018
+ if isinstance(_params['as_at'], datetime):
1019
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1020
+ else:
1021
+ _query_params.append(('asAt', _params['as_at']))
1022
+
1023
+ # process the header parameters
1024
+ _header_params = dict(_params.get('_headers', {}))
1025
+ # process the form parameters
1026
+ _form_params = []
1027
+ _files = {}
1028
+ # process the body parameter
1029
+ _body_params = None
1030
+ # set the HTTP header `Accept`
1031
+ _header_params['Accept'] = self.api_client.select_header_accept(
1032
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1033
+
1034
+ # authentication setting
1035
+ _auth_settings = ['oauth2'] # noqa: E501
1036
+
1037
+ _response_types_map = {
1038
+ '200': "GroupReconciliationComparisonResult",
1039
+ '400': "LusidValidationProblemDetails",
1040
+ }
1041
+
1042
+ return self.api_client.call_api(
1043
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/{resultId}', 'GET',
1044
+ _path_params,
1045
+ _query_params,
1046
+ _header_params,
1047
+ body=_body_params,
1048
+ post_params=_form_params,
1049
+ files=_files,
1050
+ response_types_map=_response_types_map,
1051
+ auth_settings=_auth_settings,
1052
+ async_req=_params.get('async_req'),
1053
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1054
+ _preload_content=_params.get('_preload_content', True),
1055
+ _request_timeout=_params.get('_request_timeout'),
1056
+ opts=_params.get('opts'),
1057
+ collection_formats=_collection_formats,
1058
+ _request_auth=_params.get('_request_auth'))
1059
+
1060
+ @overload
1061
+ 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
1062
+ ...
1063
+
1064
+ @overload
1065
+ 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
1066
+ ...
1067
+
1068
+ @validate_arguments
1069
+ 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
1070
+ """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code. # noqa: E501
1071
+
1072
+ Retrieves one Group Reconciliation Comparison Ruleset by scope and code. # noqa: E501
1073
+ This method makes a synchronous HTTP request by default. To make an
1074
+ asynchronous HTTP request, please pass async_req=True
1075
+
1076
+ >>> thread = api.get_comparison_ruleset(scope, code, as_at, async_req=True)
1077
+ >>> result = thread.get()
1078
+
1079
+ :param scope: The scope of the specified comparison ruleset. (required)
1080
+ :type scope: str
1081
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1082
+ :type code: str
1083
+ :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.
1084
+ :type as_at: datetime
1085
+ :param async_req: Whether to execute the request asynchronously.
1086
+ :type async_req: bool, optional
1087
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1088
+ :param opts: Configuration options for this request
1089
+ :type opts: ConfigurationOptions, optional
1090
+ :return: Returns the result object.
1091
+ If the method is called asynchronously,
1092
+ returns the request thread.
1093
+ :rtype: GroupReconciliationComparisonRuleset
1094
+ """
1095
+ kwargs['_return_http_data_only'] = True
1096
+ if '_preload_content' in kwargs:
1097
+ 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
1098
+ raise ValueError(message)
1099
+ if async_req is not None:
1100
+ kwargs['async_req'] = async_req
1101
+ return self.get_comparison_ruleset_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
1102
+
1103
+ @validate_arguments
1104
+ 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
1105
+ """[EXPERIMENTAL] GetComparisonRuleset: Get a single Group Reconciliation Comparison Ruleset by scope and code. # noqa: E501
1106
+
1107
+ Retrieves one Group Reconciliation Comparison Ruleset by scope and code. # noqa: E501
1108
+ This method makes a synchronous HTTP request by default. To make an
1109
+ asynchronous HTTP request, please pass async_req=True
1110
+
1111
+ >>> thread = api.get_comparison_ruleset_with_http_info(scope, code, as_at, async_req=True)
1112
+ >>> result = thread.get()
1113
+
1114
+ :param scope: The scope of the specified comparison ruleset. (required)
1115
+ :type scope: str
1116
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
1117
+ :type code: str
1118
+ :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.
1119
+ :type as_at: datetime
1120
+ :param async_req: Whether to execute the request asynchronously.
1121
+ :type async_req: bool, optional
1122
+ :param _preload_content: if False, the ApiResponse.data will
1123
+ be set to none and raw_data will store the
1124
+ HTTP response body without reading/decoding.
1125
+ Default is True.
1126
+ :type _preload_content: bool, optional
1127
+ :param _return_http_data_only: response data instead of ApiResponse
1128
+ object with status code, headers, etc
1129
+ :type _return_http_data_only: bool, optional
1130
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1131
+ :param opts: Configuration options for this request
1132
+ :type opts: ConfigurationOptions, optional
1133
+ :param _request_auth: set to override the auth_settings for an a single
1134
+ request; this effectively ignores the authentication
1135
+ in the spec for a single request.
1136
+ :type _request_auth: dict, optional
1137
+ :type _content_type: string, optional: force content-type for the request
1138
+ :return: Returns the result object.
1139
+ If the method is called asynchronously,
1140
+ returns the request thread.
1141
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
1142
+ """
1143
+
1144
+ _params = locals()
1145
+
1146
+ _all_params = [
1147
+ 'scope',
1148
+ 'code',
1149
+ 'as_at'
1150
+ ]
1151
+ _all_params.extend(
1152
+ [
1153
+ 'async_req',
1154
+ '_return_http_data_only',
1155
+ '_preload_content',
1156
+ '_request_timeout',
1157
+ '_request_auth',
1158
+ '_content_type',
1159
+ '_headers',
1160
+ 'opts'
1161
+ ]
1162
+ )
1163
+
1164
+ # validate the arguments
1165
+ for _key, _val in _params['kwargs'].items():
1166
+ if _key not in _all_params:
1167
+ raise ApiTypeError(
1168
+ "Got an unexpected keyword argument '%s'"
1169
+ " to method get_comparison_ruleset" % _key
1170
+ )
1171
+ _params[_key] = _val
1172
+ del _params['kwargs']
1173
+
1174
+ _collection_formats = {}
1175
+
1176
+ # process the path parameters
1177
+ _path_params = {}
1178
+ if _params['scope']:
1179
+ _path_params['scope'] = _params['scope']
1180
+
1181
+ if _params['code']:
1182
+ _path_params['code'] = _params['code']
1183
+
1184
+
1185
+ # process the query parameters
1186
+ _query_params = []
1187
+ if _params.get('as_at') is not None: # noqa: E501
1188
+ if isinstance(_params['as_at'], datetime):
1189
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1190
+ else:
1191
+ _query_params.append(('asAt', _params['as_at']))
1192
+
1193
+ # process the header parameters
1194
+ _header_params = dict(_params.get('_headers', {}))
1195
+ # process the form parameters
1196
+ _form_params = []
1197
+ _files = {}
1198
+ # process the body parameter
1199
+ _body_params = None
1200
+ # set the HTTP header `Accept`
1201
+ _header_params['Accept'] = self.api_client.select_header_accept(
1202
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1203
+
1204
+ # authentication setting
1205
+ _auth_settings = ['oauth2'] # noqa: E501
1206
+
1207
+ _response_types_map = {
1208
+ '200': "GroupReconciliationComparisonRuleset",
1209
+ '400': "LusidValidationProblemDetails",
1210
+ }
1211
+
1212
+ return self.api_client.call_api(
1213
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'GET',
1214
+ _path_params,
1215
+ _query_params,
1216
+ _header_params,
1217
+ body=_body_params,
1218
+ post_params=_form_params,
1219
+ files=_files,
1220
+ response_types_map=_response_types_map,
1221
+ auth_settings=_auth_settings,
1222
+ async_req=_params.get('async_req'),
1223
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1224
+ _preload_content=_params.get('_preload_content', True),
1225
+ _request_timeout=_params.get('_request_timeout'),
1226
+ opts=_params.get('opts'),
1227
+ collection_formats=_collection_formats,
1228
+ _request_auth=_params.get('_request_auth'))
1229
+
1230
+ @overload
1231
+ 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
1232
+ ...
1233
+
1234
+ @overload
1235
+ 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
1236
+ ...
1237
+
1238
+ @validate_arguments
1239
+ 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
1240
+ """[EXPERIMENTAL] GetGroupReconciliationDefinition: Get group reconciliation definition # noqa: E501
1241
+
1242
+ Retrieves a Group Reconciliation Definition by scope and code # noqa: E501
1243
+ This method makes a synchronous HTTP request by default. To make an
1244
+ asynchronous HTTP request, please pass async_req=True
1245
+
1246
+ >>> thread = api.get_group_reconciliation_definition(scope, code, effective_at, as_at, async_req=True)
1247
+ >>> result = thread.get()
1248
+
1249
+ :param scope: The scope of the group reconciliation definition to retrieve. (required)
1250
+ :type scope: str
1251
+ :param code: The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition. (required)
1252
+ :type code: str
1253
+ :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.
1254
+ :type effective_at: str
1255
+ :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.
1256
+ :type as_at: datetime
1257
+ :param async_req: Whether to execute the request asynchronously.
1258
+ :type async_req: bool, optional
1259
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1260
+ :param opts: Configuration options for this request
1261
+ :type opts: ConfigurationOptions, optional
1262
+ :return: Returns the result object.
1263
+ If the method is called asynchronously,
1264
+ returns the request thread.
1265
+ :rtype: GroupReconciliationDefinition
1266
+ """
1267
+ kwargs['_return_http_data_only'] = True
1268
+ if '_preload_content' in kwargs:
1269
+ 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
1270
+ raise ValueError(message)
1271
+ if async_req is not None:
1272
+ kwargs['async_req'] = async_req
1273
+ return self.get_group_reconciliation_definition_with_http_info(scope, code, effective_at, as_at, **kwargs) # noqa: E501
1274
+
1275
+ @validate_arguments
1276
+ 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
1277
+ """[EXPERIMENTAL] GetGroupReconciliationDefinition: Get group reconciliation definition # noqa: E501
1278
+
1279
+ Retrieves a Group Reconciliation Definition by scope and code # noqa: E501
1280
+ This method makes a synchronous HTTP request by default. To make an
1281
+ asynchronous HTTP request, please pass async_req=True
1282
+
1283
+ >>> thread = api.get_group_reconciliation_definition_with_http_info(scope, code, effective_at, as_at, async_req=True)
1284
+ >>> result = thread.get()
1285
+
1286
+ :param scope: The scope of the group reconciliation definition to retrieve. (required)
1287
+ :type scope: str
1288
+ :param code: The code of the group reconciliation definition to retrieve. Together with the scope this uniquely identifies the group reconciliation definition. (required)
1289
+ :type code: str
1290
+ :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.
1291
+ :type effective_at: str
1292
+ :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.
1293
+ :type as_at: datetime
1294
+ :param async_req: Whether to execute the request asynchronously.
1295
+ :type async_req: bool, optional
1296
+ :param _preload_content: if False, the ApiResponse.data will
1297
+ be set to none and raw_data will store the
1298
+ HTTP response body without reading/decoding.
1299
+ Default is True.
1300
+ :type _preload_content: bool, optional
1301
+ :param _return_http_data_only: response data instead of ApiResponse
1302
+ object with status code, headers, etc
1303
+ :type _return_http_data_only: bool, optional
1304
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1305
+ :param opts: Configuration options for this request
1306
+ :type opts: ConfigurationOptions, optional
1307
+ :param _request_auth: set to override the auth_settings for an a single
1308
+ request; this effectively ignores the authentication
1309
+ in the spec for a single request.
1310
+ :type _request_auth: dict, optional
1311
+ :type _content_type: string, optional: force content-type for the request
1312
+ :return: Returns the result object.
1313
+ If the method is called asynchronously,
1314
+ returns the request thread.
1315
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1316
+ """
1317
+
1318
+ _params = locals()
1319
+
1320
+ _all_params = [
1321
+ 'scope',
1322
+ 'code',
1323
+ 'effective_at',
1324
+ 'as_at'
1325
+ ]
1326
+ _all_params.extend(
1327
+ [
1328
+ 'async_req',
1329
+ '_return_http_data_only',
1330
+ '_preload_content',
1331
+ '_request_timeout',
1332
+ '_request_auth',
1333
+ '_content_type',
1334
+ '_headers',
1335
+ 'opts'
1336
+ ]
1337
+ )
1338
+
1339
+ # validate the arguments
1340
+ for _key, _val in _params['kwargs'].items():
1341
+ if _key not in _all_params:
1342
+ raise ApiTypeError(
1343
+ "Got an unexpected keyword argument '%s'"
1344
+ " to method get_group_reconciliation_definition" % _key
1345
+ )
1346
+ _params[_key] = _val
1347
+ del _params['kwargs']
1348
+
1349
+ _collection_formats = {}
1350
+
1351
+ # process the path parameters
1352
+ _path_params = {}
1353
+ if _params['scope']:
1354
+ _path_params['scope'] = _params['scope']
1355
+
1356
+ if _params['code']:
1357
+ _path_params['code'] = _params['code']
1358
+
1359
+
1360
+ # process the query parameters
1361
+ _query_params = []
1362
+ if _params.get('effective_at') is not None: # noqa: E501
1363
+ _query_params.append(('effectiveAt', _params['effective_at']))
1364
+
1365
+ if _params.get('as_at') is not None: # noqa: E501
1366
+ if isinstance(_params['as_at'], datetime):
1367
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1368
+ else:
1369
+ _query_params.append(('asAt', _params['as_at']))
1370
+
1371
+ # process the header parameters
1372
+ _header_params = dict(_params.get('_headers', {}))
1373
+ # process the form parameters
1374
+ _form_params = []
1375
+ _files = {}
1376
+ # process the body parameter
1377
+ _body_params = None
1378
+ # set the HTTP header `Accept`
1379
+ _header_params['Accept'] = self.api_client.select_header_accept(
1380
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1381
+
1382
+ # authentication setting
1383
+ _auth_settings = ['oauth2'] # noqa: E501
1384
+
1385
+ _response_types_map = {
1386
+ '200': "GroupReconciliationDefinition",
1387
+ '400': "LusidValidationProblemDetails",
1388
+ }
1389
+
1390
+ return self.api_client.call_api(
1391
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'GET',
1392
+ _path_params,
1393
+ _query_params,
1394
+ _header_params,
1395
+ body=_body_params,
1396
+ post_params=_form_params,
1397
+ files=_files,
1398
+ response_types_map=_response_types_map,
1399
+ auth_settings=_auth_settings,
1400
+ async_req=_params.get('async_req'),
1401
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1402
+ _preload_content=_params.get('_preload_content', True),
1403
+ _request_timeout=_params.get('_request_timeout'),
1404
+ opts=_params.get('opts'),
1405
+ collection_formats=_collection_formats,
1406
+ _request_auth=_params.get('_request_auth'))
1407
+
1408
+ @overload
1409
+ async def list_comparison_results(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results 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 results from a previous call to list comparison results. 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) -> PagedResourceListOfGroupReconciliationComparisonResult: # noqa: E501
1410
+ ...
1411
+
1412
+ @overload
1413
+ def list_comparison_results(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results 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 results from a previous call to list comparison results. 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) -> PagedResourceListOfGroupReconciliationComparisonResult: # noqa: E501
1414
+ ...
1415
+
1416
+ @validate_arguments
1417
+ def list_comparison_results(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results 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 results from a previous call to list comparison results. 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[PagedResourceListOfGroupReconciliationComparisonResult, Awaitable[PagedResourceListOfGroupReconciliationComparisonResult]]: # noqa: E501
1418
+ """[EXPERIMENTAL] ListComparisonResults: Get a set of Group Reconciliation Comparison Results. # noqa: E501
1419
+
1420
+ Retrieves all Group Reconciliation Comparison Results that fit the filter, in a specific order if sortBy is provided. Supports pagination. # noqa: E501
1421
+ This method makes a synchronous HTTP request by default. To make an
1422
+ asynchronous HTTP request, please pass async_req=True
1423
+
1424
+ >>> thread = api.list_comparison_results(as_at, page, sort_by, limit, filter, async_req=True)
1425
+ >>> result = thread.get()
1426
+
1427
+ :param as_at: The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results if not specified.
1428
+ :type as_at: datetime
1429
+ :param page: The pagination token to use to continue listing comparison results from a previous call to list comparison results. 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.
1430
+ :type page: str
1431
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
1432
+ :type sort_by: List[str]
1433
+ :param limit: When paginating, limit the number of returned results to this many per page.
1434
+ :type limit: int
1435
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1436
+ :type filter: str
1437
+ :param async_req: Whether to execute the request asynchronously.
1438
+ :type async_req: bool, optional
1439
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1440
+ :param opts: Configuration options for this request
1441
+ :type opts: ConfigurationOptions, optional
1442
+ :return: Returns the result object.
1443
+ If the method is called asynchronously,
1444
+ returns the request thread.
1445
+ :rtype: PagedResourceListOfGroupReconciliationComparisonResult
1446
+ """
1447
+ kwargs['_return_http_data_only'] = True
1448
+ if '_preload_content' in kwargs:
1449
+ message = "Error! Please call the list_comparison_results_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1450
+ raise ValueError(message)
1451
+ if async_req is not None:
1452
+ kwargs['async_req'] = async_req
1453
+ return self.list_comparison_results_with_http_info(as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
1454
+
1455
+ @validate_arguments
1456
+ def list_comparison_results_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results 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 results from a previous call to list comparison results. 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
1457
+ """[EXPERIMENTAL] ListComparisonResults: Get a set of Group Reconciliation Comparison Results. # noqa: E501
1458
+
1459
+ Retrieves all Group Reconciliation Comparison Results that fit the filter, in a specific order if sortBy is provided. Supports pagination. # noqa: E501
1460
+ This method makes a synchronous HTTP request by default. To make an
1461
+ asynchronous HTTP request, please pass async_req=True
1462
+
1463
+ >>> thread = api.list_comparison_results_with_http_info(as_at, page, sort_by, limit, filter, async_req=True)
1464
+ >>> result = thread.get()
1465
+
1466
+ :param as_at: The asAt datetime at which to retrieve the comparison results. Defaults to return the latest version of the comparison results if not specified.
1467
+ :type as_at: datetime
1468
+ :param page: The pagination token to use to continue listing comparison results from a previous call to list comparison results. 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.
1469
+ :type page: str
1470
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
1471
+ :type sort_by: List[str]
1472
+ :param limit: When paginating, limit the number of returned results to this many per page.
1473
+ :type limit: int
1474
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1475
+ :type filter: str
1476
+ :param async_req: Whether to execute the request asynchronously.
1477
+ :type async_req: bool, optional
1478
+ :param _preload_content: if False, the ApiResponse.data will
1479
+ be set to none and raw_data will store the
1480
+ HTTP response body without reading/decoding.
1481
+ Default is True.
1482
+ :type _preload_content: bool, optional
1483
+ :param _return_http_data_only: response data instead of ApiResponse
1484
+ object with status code, headers, etc
1485
+ :type _return_http_data_only: bool, optional
1486
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1487
+ :param opts: Configuration options for this request
1488
+ :type opts: ConfigurationOptions, optional
1489
+ :param _request_auth: set to override the auth_settings for an a single
1490
+ request; this effectively ignores the authentication
1491
+ in the spec for a single request.
1492
+ :type _request_auth: dict, optional
1493
+ :type _content_type: string, optional: force content-type for the request
1494
+ :return: Returns the result object.
1495
+ If the method is called asynchronously,
1496
+ returns the request thread.
1497
+ :rtype: tuple(PagedResourceListOfGroupReconciliationComparisonResult, status_code(int), headers(HTTPHeaderDict))
1498
+ """
1499
+
1500
+ _params = locals()
1501
+
1502
+ _all_params = [
1503
+ 'as_at',
1504
+ 'page',
1505
+ 'sort_by',
1506
+ 'limit',
1507
+ 'filter'
1508
+ ]
1509
+ _all_params.extend(
1510
+ [
1511
+ 'async_req',
1512
+ '_return_http_data_only',
1513
+ '_preload_content',
1514
+ '_request_timeout',
1515
+ '_request_auth',
1516
+ '_content_type',
1517
+ '_headers',
1518
+ 'opts'
1519
+ ]
1520
+ )
1521
+
1522
+ # validate the arguments
1523
+ for _key, _val in _params['kwargs'].items():
1524
+ if _key not in _all_params:
1525
+ raise ApiTypeError(
1526
+ "Got an unexpected keyword argument '%s'"
1527
+ " to method list_comparison_results" % _key
1528
+ )
1529
+ _params[_key] = _val
1530
+ del _params['kwargs']
1531
+
1532
+ _collection_formats = {}
1533
+
1534
+ # process the path parameters
1535
+ _path_params = {}
1536
+
1537
+ # process the query parameters
1538
+ _query_params = []
1539
+ if _params.get('as_at') is not None: # noqa: E501
1540
+ if isinstance(_params['as_at'], datetime):
1541
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1542
+ else:
1543
+ _query_params.append(('asAt', _params['as_at']))
1544
+
1545
+ if _params.get('page') is not None: # noqa: E501
1546
+ _query_params.append(('page', _params['page']))
1547
+
1548
+ if _params.get('sort_by') is not None: # noqa: E501
1549
+ _query_params.append(('sortBy', _params['sort_by']))
1550
+ _collection_formats['sortBy'] = 'multi'
1551
+
1552
+ if _params.get('limit') is not None: # noqa: E501
1553
+ _query_params.append(('limit', _params['limit']))
1554
+
1555
+ if _params.get('filter') is not None: # noqa: E501
1556
+ _query_params.append(('filter', _params['filter']))
1557
+
1558
+ # process the header parameters
1559
+ _header_params = dict(_params.get('_headers', {}))
1560
+ # process the form parameters
1561
+ _form_params = []
1562
+ _files = {}
1563
+ # process the body parameter
1564
+ _body_params = None
1565
+ # set the HTTP header `Accept`
1566
+ _header_params['Accept'] = self.api_client.select_header_accept(
1567
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1568
+
1569
+ # authentication setting
1570
+ _auth_settings = ['oauth2'] # noqa: E501
1571
+
1572
+ _response_types_map = {
1573
+ '200': "PagedResourceListOfGroupReconciliationComparisonResult",
1574
+ '400': "LusidValidationProblemDetails",
1575
+ }
1576
+
1577
+ return self.api_client.call_api(
1578
+ '/api/reconciliations/comparisonresults', 'GET',
1579
+ _path_params,
1580
+ _query_params,
1581
+ _header_params,
1582
+ body=_body_params,
1583
+ post_params=_form_params,
1584
+ files=_files,
1585
+ response_types_map=_response_types_map,
1586
+ auth_settings=_auth_settings,
1587
+ async_req=_params.get('async_req'),
1588
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1589
+ _preload_content=_params.get('_preload_content', True),
1590
+ _request_timeout=_params.get('_request_timeout'),
1591
+ opts=_params.get('opts'),
1592
+ collection_formats=_collection_formats,
1593
+ _request_auth=_params.get('_request_auth'))
1594
+
1595
+ @overload
1596
+ async def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets 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
1597
+ ...
1598
+
1599
+ @overload
1600
+ def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets 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
1601
+ ...
1602
+
1603
+ @validate_arguments
1604
+ def list_comparison_rulesets(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets 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
1605
+ """[EXPERIMENTAL] ListComparisonRulesets: Get a set of Group Reconciliation Comparison Rulesets # noqa: E501
1606
+
1607
+ Retrieves all Group Reconciliation Comparison Ruleset that fit the filter, in a specific order if sortBy is provided Supports pagination # noqa: E501
1608
+ This method makes a synchronous HTTP request by default. To make an
1609
+ asynchronous HTTP request, please pass async_req=True
1610
+
1611
+ >>> thread = api.list_comparison_rulesets(as_at, page, sort_by, limit, filter, async_req=True)
1612
+ >>> result = thread.get()
1613
+
1614
+ :param as_at: The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets if not specified.
1615
+ :type as_at: datetime
1616
+ :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.
1617
+ :type page: str
1618
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1619
+ :type sort_by: List[str]
1620
+ :param limit: When paginating, limit the number of returned results to this many per page.
1621
+ :type limit: int
1622
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1623
+ :type filter: str
1624
+ :param async_req: Whether to execute the request asynchronously.
1625
+ :type async_req: bool, optional
1626
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1627
+ :param opts: Configuration options for this request
1628
+ :type opts: ConfigurationOptions, optional
1629
+ :return: Returns the result object.
1630
+ If the method is called asynchronously,
1631
+ returns the request thread.
1632
+ :rtype: PagedResourceListOfGroupReconciliationComparisonRuleset
1633
+ """
1634
+ kwargs['_return_http_data_only'] = True
1635
+ if '_preload_content' in kwargs:
1636
+ 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
1637
+ raise ValueError(message)
1638
+ if async_req is not None:
1639
+ kwargs['async_req'] = async_req
1640
+ return self.list_comparison_rulesets_with_http_info(as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
1641
+
1642
+ @validate_arguments
1643
+ def list_comparison_rulesets_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets 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
1644
+ """[EXPERIMENTAL] ListComparisonRulesets: Get a set of Group Reconciliation Comparison Rulesets # noqa: E501
1645
+
1646
+ Retrieves all Group Reconciliation Comparison Ruleset that fit the filter, in a specific order if sortBy is provided Supports pagination # noqa: E501
1647
+ This method makes a synchronous HTTP request by default. To make an
1648
+ asynchronous HTTP request, please pass async_req=True
1649
+
1650
+ >>> thread = api.list_comparison_rulesets_with_http_info(as_at, page, sort_by, limit, filter, async_req=True)
1651
+ >>> result = thread.get()
1652
+
1653
+ :param as_at: The asAt datetime at which to retrieve the comparison rulesets. Defaults to return the latest version of the comparison rulesets if not specified.
1654
+ :type as_at: datetime
1655
+ :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.
1656
+ :type page: str
1657
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1658
+ :type sort_by: List[str]
1659
+ :param limit: When paginating, limit the number of returned results to this many per page.
1660
+ :type limit: int
1661
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
1662
+ :type filter: str
1663
+ :param async_req: Whether to execute the request asynchronously.
1664
+ :type async_req: bool, optional
1665
+ :param _preload_content: if False, the ApiResponse.data will
1666
+ be set to none and raw_data will store the
1667
+ HTTP response body without reading/decoding.
1668
+ Default is True.
1669
+ :type _preload_content: bool, optional
1670
+ :param _return_http_data_only: response data instead of ApiResponse
1671
+ object with status code, headers, etc
1672
+ :type _return_http_data_only: bool, optional
1673
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1674
+ :param opts: Configuration options for this request
1675
+ :type opts: ConfigurationOptions, optional
1676
+ :param _request_auth: set to override the auth_settings for an a single
1677
+ request; this effectively ignores the authentication
1678
+ in the spec for a single request.
1679
+ :type _request_auth: dict, optional
1680
+ :type _content_type: string, optional: force content-type for the request
1681
+ :return: Returns the result object.
1682
+ If the method is called asynchronously,
1683
+ returns the request thread.
1684
+ :rtype: tuple(PagedResourceListOfGroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
1685
+ """
1686
+
1687
+ _params = locals()
1688
+
1689
+ _all_params = [
1690
+ 'as_at',
1691
+ 'page',
1692
+ 'sort_by',
1693
+ 'limit',
1694
+ 'filter'
1695
+ ]
1696
+ _all_params.extend(
1697
+ [
1698
+ 'async_req',
1699
+ '_return_http_data_only',
1700
+ '_preload_content',
1701
+ '_request_timeout',
1702
+ '_request_auth',
1703
+ '_content_type',
1704
+ '_headers',
1705
+ 'opts'
1706
+ ]
1707
+ )
1708
+
1709
+ # validate the arguments
1710
+ for _key, _val in _params['kwargs'].items():
1711
+ if _key not in _all_params:
1712
+ raise ApiTypeError(
1713
+ "Got an unexpected keyword argument '%s'"
1714
+ " to method list_comparison_rulesets" % _key
1715
+ )
1716
+ _params[_key] = _val
1717
+ del _params['kwargs']
1718
+
1719
+ _collection_formats = {}
1720
+
1721
+ # process the path parameters
1722
+ _path_params = {}
1723
+
1724
+ # process the query parameters
1725
+ _query_params = []
1726
+ if _params.get('as_at') is not None: # noqa: E501
1727
+ if isinstance(_params['as_at'], datetime):
1728
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1729
+ else:
1730
+ _query_params.append(('asAt', _params['as_at']))
1731
+
1732
+ if _params.get('page') is not None: # noqa: E501
1733
+ _query_params.append(('page', _params['page']))
1734
+
1735
+ if _params.get('sort_by') is not None: # noqa: E501
1736
+ _query_params.append(('sortBy', _params['sort_by']))
1737
+ _collection_formats['sortBy'] = 'multi'
1738
+
1739
+ if _params.get('limit') is not None: # noqa: E501
1740
+ _query_params.append(('limit', _params['limit']))
1741
+
1742
+ if _params.get('filter') is not None: # noqa: E501
1743
+ _query_params.append(('filter', _params['filter']))
1744
+
1745
+ # process the header parameters
1746
+ _header_params = dict(_params.get('_headers', {}))
1747
+ # process the form parameters
1748
+ _form_params = []
1749
+ _files = {}
1750
+ # process the body parameter
1751
+ _body_params = None
1752
+ # set the HTTP header `Accept`
1753
+ _header_params['Accept'] = self.api_client.select_header_accept(
1754
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1755
+
1756
+ # authentication setting
1757
+ _auth_settings = ['oauth2'] # noqa: E501
1758
+
1759
+ _response_types_map = {
1760
+ '200': "PagedResourceListOfGroupReconciliationComparisonRuleset",
1761
+ '400': "LusidValidationProblemDetails",
1762
+ }
1763
+
1764
+ return self.api_client.call_api(
1765
+ '/api/reconciliations/comparisonrulesets', 'GET',
1766
+ _path_params,
1767
+ _query_params,
1768
+ _header_params,
1769
+ body=_body_params,
1770
+ post_params=_form_params,
1771
+ files=_files,
1772
+ response_types_map=_response_types_map,
1773
+ auth_settings=_auth_settings,
1774
+ async_req=_params.get('async_req'),
1775
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1776
+ _preload_content=_params.get('_preload_content', True),
1777
+ _request_timeout=_params.get('_request_timeout'),
1778
+ opts=_params.get('opts'),
1779
+ collection_formats=_collection_formats,
1780
+ _request_auth=_params.get('_request_auth'))
1781
+
1782
+ @overload
1783
+ 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
1784
+ ...
1785
+
1786
+ @overload
1787
+ 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
1788
+ ...
1789
+
1790
+ @validate_arguments
1791
+ 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
1792
+ """[EXPERIMENTAL] ListGroupReconciliationDefinitions: List group reconciliation definitions # noqa: E501
1793
+
1794
+ Lists Group Reconciliation Definitions matching any provided filter, limit and sorting rules # noqa: E501
1795
+ This method makes a synchronous HTTP request by default. To make an
1796
+ asynchronous HTTP request, please pass async_req=True
1797
+
1798
+ >>> thread = api.list_group_reconciliation_definitions(effective_at, as_at, page, limit, filter, sort_by, async_req=True)
1799
+ >>> result = thread.get()
1800
+
1801
+ :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.
1802
+ :type effective_at: str
1803
+ :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.
1804
+ :type as_at: datetime
1805
+ :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.
1806
+ :type page: str
1807
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.
1808
+ :type limit: int
1809
+ :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.
1810
+ :type filter: str
1811
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1812
+ :type sort_by: List[str]
1813
+ :param async_req: Whether to execute the request asynchronously.
1814
+ :type async_req: bool, optional
1815
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1816
+ :param opts: Configuration options for this request
1817
+ :type opts: ConfigurationOptions, optional
1818
+ :return: Returns the result object.
1819
+ If the method is called asynchronously,
1820
+ returns the request thread.
1821
+ :rtype: PagedResourceListOfGroupReconciliationDefinition
1822
+ """
1823
+ kwargs['_return_http_data_only'] = True
1824
+ if '_preload_content' in kwargs:
1825
+ 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
1826
+ raise ValueError(message)
1827
+ if async_req is not None:
1828
+ kwargs['async_req'] = async_req
1829
+ return self.list_group_reconciliation_definitions_with_http_info(effective_at, as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
1830
+
1831
+ @validate_arguments
1832
+ 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
1833
+ """[EXPERIMENTAL] ListGroupReconciliationDefinitions: List group reconciliation definitions # noqa: E501
1834
+
1835
+ Lists Group Reconciliation Definitions matching any provided filter, limit and sorting rules # noqa: E501
1836
+ This method makes a synchronous HTTP request by default. To make an
1837
+ asynchronous HTTP request, please pass async_req=True
1838
+
1839
+ >>> thread = api.list_group_reconciliation_definitions_with_http_info(effective_at, as_at, page, limit, filter, sort_by, async_req=True)
1840
+ >>> result = thread.get()
1841
+
1842
+ :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.
1843
+ :type effective_at: str
1844
+ :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.
1845
+ :type as_at: datetime
1846
+ :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.
1847
+ :type page: str
1848
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to no limit if not specified.
1849
+ :type limit: int
1850
+ :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.
1851
+ :type filter: str
1852
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\"
1853
+ :type sort_by: List[str]
1854
+ :param async_req: Whether to execute the request asynchronously.
1855
+ :type async_req: bool, optional
1856
+ :param _preload_content: if False, the ApiResponse.data will
1857
+ be set to none and raw_data will store the
1858
+ HTTP response body without reading/decoding.
1859
+ Default is True.
1860
+ :type _preload_content: bool, optional
1861
+ :param _return_http_data_only: response data instead of ApiResponse
1862
+ object with status code, headers, etc
1863
+ :type _return_http_data_only: bool, optional
1864
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1865
+ :param opts: Configuration options for this request
1866
+ :type opts: ConfigurationOptions, optional
1867
+ :param _request_auth: set to override the auth_settings for an a single
1868
+ request; this effectively ignores the authentication
1869
+ in the spec for a single request.
1870
+ :type _request_auth: dict, optional
1871
+ :type _content_type: string, optional: force content-type for the request
1872
+ :return: Returns the result object.
1873
+ If the method is called asynchronously,
1874
+ returns the request thread.
1875
+ :rtype: tuple(PagedResourceListOfGroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
1876
+ """
1877
+
1878
+ _params = locals()
1879
+
1880
+ _all_params = [
1881
+ 'effective_at',
1882
+ 'as_at',
1883
+ 'page',
1884
+ 'limit',
1885
+ 'filter',
1886
+ 'sort_by'
1887
+ ]
1888
+ _all_params.extend(
1889
+ [
1890
+ 'async_req',
1891
+ '_return_http_data_only',
1892
+ '_preload_content',
1893
+ '_request_timeout',
1894
+ '_request_auth',
1895
+ '_content_type',
1896
+ '_headers',
1897
+ 'opts'
1898
+ ]
1899
+ )
1900
+
1901
+ # validate the arguments
1902
+ for _key, _val in _params['kwargs'].items():
1903
+ if _key not in _all_params:
1904
+ raise ApiTypeError(
1905
+ "Got an unexpected keyword argument '%s'"
1906
+ " to method list_group_reconciliation_definitions" % _key
1907
+ )
1908
+ _params[_key] = _val
1909
+ del _params['kwargs']
1910
+
1911
+ _collection_formats = {}
1912
+
1913
+ # process the path parameters
1914
+ _path_params = {}
1915
+
1916
+ # process the query parameters
1917
+ _query_params = []
1918
+ if _params.get('effective_at') is not None: # noqa: E501
1919
+ _query_params.append(('effectiveAt', _params['effective_at']))
1920
+
1921
+ if _params.get('as_at') is not None: # noqa: E501
1922
+ if isinstance(_params['as_at'], datetime):
1923
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1924
+ else:
1925
+ _query_params.append(('asAt', _params['as_at']))
1926
+
1927
+ if _params.get('page') is not None: # noqa: E501
1928
+ _query_params.append(('page', _params['page']))
1929
+
1930
+ if _params.get('limit') is not None: # noqa: E501
1931
+ _query_params.append(('limit', _params['limit']))
1932
+
1933
+ if _params.get('filter') is not None: # noqa: E501
1934
+ _query_params.append(('filter', _params['filter']))
1935
+
1936
+ if _params.get('sort_by') is not None: # noqa: E501
1937
+ _query_params.append(('sortBy', _params['sort_by']))
1938
+ _collection_formats['sortBy'] = 'multi'
1939
+
1940
+ # process the header parameters
1941
+ _header_params = dict(_params.get('_headers', {}))
1942
+ # process the form parameters
1943
+ _form_params = []
1944
+ _files = {}
1945
+ # process the body parameter
1946
+ _body_params = None
1947
+ # set the HTTP header `Accept`
1948
+ _header_params['Accept'] = self.api_client.select_header_accept(
1949
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1950
+
1951
+ # authentication setting
1952
+ _auth_settings = ['oauth2'] # noqa: E501
1953
+
1954
+ _response_types_map = {
1955
+ '200': "PagedResourceListOfGroupReconciliationDefinition",
1956
+ '400': "LusidValidationProblemDetails",
1957
+ }
1958
+
1959
+ return self.api_client.call_api(
1960
+ '/api/reconciliations/groupreconciliationdefinitions', 'GET',
1961
+ _path_params,
1962
+ _query_params,
1963
+ _header_params,
1964
+ body=_body_params,
1965
+ post_params=_form_params,
1966
+ files=_files,
1967
+ response_types_map=_response_types_map,
1968
+ auth_settings=_auth_settings,
1969
+ async_req=_params.get('async_req'),
1970
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1971
+ _preload_content=_params.get('_preload_content', True),
1972
+ _request_timeout=_params.get('_request_timeout'),
1973
+ opts=_params.get('opts'),
1974
+ collection_formats=_collection_formats,
1975
+ _request_auth=_params.get('_request_auth'))
1976
+
1977
+ @overload
1978
+ async def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, **kwargs) -> GroupReconciliationRunResponse: # noqa: E501
1979
+ ...
1980
+
1981
+ @overload
1982
+ def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationRunResponse: # noqa: E501
1983
+ ...
1984
+
1985
+ @validate_arguments
1986
+ def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationRunResponse, Awaitable[GroupReconciliationRunResponse]]: # noqa: E501
1987
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
1988
+
1989
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
1990
+ This method makes a synchronous HTTP request by default. To make an
1991
+ asynchronous HTTP request, please pass async_req=True
1992
+
1993
+ >>> thread = api.run_reconciliation(scope, code, group_reconciliation_run_request, async_req=True)
1994
+ >>> result = thread.get()
1995
+
1996
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
1997
+ :type scope: str
1998
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
1999
+ :type code: str
2000
+ :param group_reconciliation_run_request:
2001
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
2002
+ :param async_req: Whether to execute the request asynchronously.
2003
+ :type async_req: bool, optional
2004
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2005
+ :param opts: Configuration options for this request
2006
+ :type opts: ConfigurationOptions, optional
2007
+ :return: Returns the result object.
2008
+ If the method is called asynchronously,
2009
+ returns the request thread.
2010
+ :rtype: GroupReconciliationRunResponse
2011
+ """
2012
+ kwargs['_return_http_data_only'] = True
2013
+ if '_preload_content' in kwargs:
2014
+ message = "Error! Please call the run_reconciliation_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2015
+ raise ValueError(message)
2016
+ if async_req is not None:
2017
+ kwargs['async_req'] = async_req
2018
+ return self.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, **kwargs) # noqa: E501
2019
+
2020
+ @validate_arguments
2021
+ def run_reconciliation_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 use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, **kwargs) -> ApiResponse: # noqa: E501
2022
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
2023
+
2024
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
2025
+ This method makes a synchronous HTTP request by default. To make an
2026
+ asynchronous HTTP request, please pass async_req=True
2027
+
2028
+ >>> thread = api.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, async_req=True)
2029
+ >>> result = thread.get()
2030
+
2031
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
2032
+ :type scope: str
2033
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
2034
+ :type code: str
2035
+ :param group_reconciliation_run_request:
2036
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
2037
+ :param async_req: Whether to execute the request asynchronously.
2038
+ :type async_req: bool, optional
2039
+ :param _preload_content: if False, the ApiResponse.data will
2040
+ be set to none and raw_data will store the
2041
+ HTTP response body without reading/decoding.
2042
+ Default is True.
2043
+ :type _preload_content: bool, optional
2044
+ :param _return_http_data_only: response data instead of ApiResponse
2045
+ object with status code, headers, etc
2046
+ :type _return_http_data_only: bool, optional
2047
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2048
+ :param opts: Configuration options for this request
2049
+ :type opts: ConfigurationOptions, optional
2050
+ :param _request_auth: set to override the auth_settings for an a single
2051
+ request; this effectively ignores the authentication
2052
+ in the spec for a single request.
2053
+ :type _request_auth: dict, optional
2054
+ :type _content_type: string, optional: force content-type for the request
2055
+ :return: Returns the result object.
2056
+ If the method is called asynchronously,
2057
+ returns the request thread.
2058
+ :rtype: tuple(GroupReconciliationRunResponse, status_code(int), headers(HTTPHeaderDict))
2059
+ """
2060
+
2061
+ _params = locals()
2062
+
2063
+ _all_params = [
2064
+ 'scope',
2065
+ 'code',
2066
+ 'group_reconciliation_run_request'
2067
+ ]
2068
+ _all_params.extend(
2069
+ [
2070
+ 'async_req',
2071
+ '_return_http_data_only',
2072
+ '_preload_content',
2073
+ '_request_timeout',
2074
+ '_request_auth',
2075
+ '_content_type',
2076
+ '_headers',
2077
+ 'opts'
2078
+ ]
2079
+ )
2080
+
2081
+ # validate the arguments
2082
+ for _key, _val in _params['kwargs'].items():
2083
+ if _key not in _all_params:
2084
+ raise ApiTypeError(
2085
+ "Got an unexpected keyword argument '%s'"
2086
+ " to method run_reconciliation" % _key
2087
+ )
2088
+ _params[_key] = _val
2089
+ del _params['kwargs']
2090
+
2091
+ _collection_formats = {}
2092
+
2093
+ # process the path parameters
2094
+ _path_params = {}
2095
+ if _params['scope']:
2096
+ _path_params['scope'] = _params['scope']
2097
+
2098
+ if _params['code']:
2099
+ _path_params['code'] = _params['code']
2100
+
2101
+
2102
+ # process the query parameters
2103
+ _query_params = []
2104
+ # process the header parameters
2105
+ _header_params = dict(_params.get('_headers', {}))
2106
+ # process the form parameters
2107
+ _form_params = []
2108
+ _files = {}
2109
+ # process the body parameter
2110
+ _body_params = None
2111
+ if _params['group_reconciliation_run_request'] is not None:
2112
+ _body_params = _params['group_reconciliation_run_request']
2113
+
2114
+ # set the HTTP header `Accept`
2115
+ _header_params['Accept'] = self.api_client.select_header_accept(
2116
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2117
+
2118
+ # set the HTTP header `Content-Type`
2119
+ _content_types_list = _params.get('_content_type',
2120
+ self.api_client.select_header_content_type(
2121
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2122
+ if _content_types_list:
2123
+ _header_params['Content-Type'] = _content_types_list
2124
+
2125
+ # authentication setting
2126
+ _auth_settings = ['oauth2'] # noqa: E501
2127
+
2128
+ _response_types_map = {
2129
+ '200': "GroupReconciliationRunResponse",
2130
+ '400': "LusidValidationProblemDetails",
2131
+ }
2132
+
2133
+ return self.api_client.call_api(
2134
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/$run', 'POST',
2135
+ _path_params,
2136
+ _query_params,
2137
+ _header_params,
2138
+ body=_body_params,
2139
+ post_params=_form_params,
2140
+ files=_files,
2141
+ response_types_map=_response_types_map,
2142
+ auth_settings=_auth_settings,
2143
+ async_req=_params.get('async_req'),
2144
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2145
+ _preload_content=_params.get('_preload_content', True),
2146
+ _request_timeout=_params.get('_request_timeout'),
2147
+ opts=_params.get('opts'),
2148
+ collection_formats=_collection_formats,
2149
+ _request_auth=_params.get('_request_auth'))
2150
+
2151
+ @overload
2152
+ 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
2153
+ ...
2154
+
2155
+ @overload
2156
+ 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
2157
+ ...
2158
+
2159
+ @validate_arguments
2160
+ 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
2161
+ """[EXPERIMENTAL] UpdateComparisonRuleset: Update Group Reconciliation Comparison Ruleset defined by scope and code # noqa: E501
2162
+
2163
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
2164
+ This method makes a synchronous HTTP request by default. To make an
2165
+ asynchronous HTTP request, please pass async_req=True
2166
+
2167
+ >>> thread = api.update_comparison_ruleset(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
2168
+ >>> result = thread.get()
2169
+
2170
+ :param scope: The scope of the specified comparison ruleset. (required)
2171
+ :type scope: str
2172
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
2173
+ :type code: str
2174
+ :param update_group_reconciliation_comparison_ruleset_request: The request containing the updated details of the ruleset
2175
+ :type update_group_reconciliation_comparison_ruleset_request: UpdateGroupReconciliationComparisonRulesetRequest
2176
+ :param async_req: Whether to execute the request asynchronously.
2177
+ :type async_req: bool, optional
2178
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2179
+ :param opts: Configuration options for this request
2180
+ :type opts: ConfigurationOptions, optional
2181
+ :return: Returns the result object.
2182
+ If the method is called asynchronously,
2183
+ returns the request thread.
2184
+ :rtype: GroupReconciliationComparisonRuleset
2185
+ """
2186
+ kwargs['_return_http_data_only'] = True
2187
+ if '_preload_content' in kwargs:
2188
+ 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
2189
+ raise ValueError(message)
2190
+ if async_req is not None:
2191
+ kwargs['async_req'] = async_req
2192
+ return self.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, **kwargs) # noqa: E501
2193
+
2194
+ @validate_arguments
2195
+ 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
2196
+ """[EXPERIMENTAL] UpdateComparisonRuleset: Update Group Reconciliation Comparison Ruleset defined by scope and code # noqa: E501
2197
+
2198
+ Overwrites an existing Group Reconciliation Comparison Ruleset Update request has the same required fields as Create apart from the Id # noqa: E501
2199
+ This method makes a synchronous HTTP request by default. To make an
2200
+ asynchronous HTTP request, please pass async_req=True
2201
+
2202
+ >>> thread = api.update_comparison_ruleset_with_http_info(scope, code, update_group_reconciliation_comparison_ruleset_request, async_req=True)
2203
+ >>> result = thread.get()
2204
+
2205
+ :param scope: The scope of the specified comparison ruleset. (required)
2206
+ :type scope: str
2207
+ :param code: The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset. (required)
2208
+ :type code: str
2209
+ :param update_group_reconciliation_comparison_ruleset_request: The request containing the updated details of the ruleset
2210
+ :type update_group_reconciliation_comparison_ruleset_request: UpdateGroupReconciliationComparisonRulesetRequest
2211
+ :param async_req: Whether to execute the request asynchronously.
2212
+ :type async_req: bool, optional
2213
+ :param _preload_content: if False, the ApiResponse.data will
2214
+ be set to none and raw_data will store the
2215
+ HTTP response body without reading/decoding.
2216
+ Default is True.
2217
+ :type _preload_content: bool, optional
2218
+ :param _return_http_data_only: response data instead of ApiResponse
2219
+ object with status code, headers, etc
2220
+ :type _return_http_data_only: bool, optional
2221
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2222
+ :param opts: Configuration options for this request
2223
+ :type opts: ConfigurationOptions, optional
2224
+ :param _request_auth: set to override the auth_settings for an a single
2225
+ request; this effectively ignores the authentication
2226
+ in the spec for a single request.
2227
+ :type _request_auth: dict, optional
2228
+ :type _content_type: string, optional: force content-type for the request
2229
+ :return: Returns the result object.
2230
+ If the method is called asynchronously,
2231
+ returns the request thread.
2232
+ :rtype: tuple(GroupReconciliationComparisonRuleset, status_code(int), headers(HTTPHeaderDict))
2233
+ """
2234
+
2235
+ _params = locals()
2236
+
2237
+ _all_params = [
2238
+ 'scope',
2239
+ 'code',
2240
+ 'update_group_reconciliation_comparison_ruleset_request'
2241
+ ]
2242
+ _all_params.extend(
2243
+ [
2244
+ 'async_req',
2245
+ '_return_http_data_only',
2246
+ '_preload_content',
2247
+ '_request_timeout',
2248
+ '_request_auth',
2249
+ '_content_type',
2250
+ '_headers',
2251
+ 'opts'
2252
+ ]
2253
+ )
2254
+
2255
+ # validate the arguments
2256
+ for _key, _val in _params['kwargs'].items():
2257
+ if _key not in _all_params:
2258
+ raise ApiTypeError(
2259
+ "Got an unexpected keyword argument '%s'"
2260
+ " to method update_comparison_ruleset" % _key
2261
+ )
2262
+ _params[_key] = _val
2263
+ del _params['kwargs']
2264
+
2265
+ _collection_formats = {}
2266
+
2267
+ # process the path parameters
2268
+ _path_params = {}
2269
+ if _params['scope']:
2270
+ _path_params['scope'] = _params['scope']
2271
+
2272
+ if _params['code']:
2273
+ _path_params['code'] = _params['code']
2274
+
2275
+
2276
+ # process the query parameters
2277
+ _query_params = []
2278
+ # process the header parameters
2279
+ _header_params = dict(_params.get('_headers', {}))
2280
+ # process the form parameters
2281
+ _form_params = []
2282
+ _files = {}
2283
+ # process the body parameter
2284
+ _body_params = None
2285
+ if _params['update_group_reconciliation_comparison_ruleset_request'] is not None:
2286
+ _body_params = _params['update_group_reconciliation_comparison_ruleset_request']
2287
+
2288
+ # set the HTTP header `Accept`
2289
+ _header_params['Accept'] = self.api_client.select_header_accept(
2290
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2291
+
2292
+ # set the HTTP header `Content-Type`
2293
+ _content_types_list = _params.get('_content_type',
2294
+ self.api_client.select_header_content_type(
2295
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2296
+ if _content_types_list:
2297
+ _header_params['Content-Type'] = _content_types_list
2298
+
2299
+ # authentication setting
2300
+ _auth_settings = ['oauth2'] # noqa: E501
2301
+
2302
+ _response_types_map = {
2303
+ '200': "GroupReconciliationComparisonRuleset",
2304
+ '400': "LusidValidationProblemDetails",
2305
+ }
2306
+
2307
+ return self.api_client.call_api(
2308
+ '/api/reconciliations/comparisonrulesets/{scope}/{code}', 'PUT',
2309
+ _path_params,
2310
+ _query_params,
2311
+ _header_params,
2312
+ body=_body_params,
2313
+ post_params=_form_params,
2314
+ files=_files,
2315
+ response_types_map=_response_types_map,
2316
+ auth_settings=_auth_settings,
2317
+ async_req=_params.get('async_req'),
2318
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2319
+ _preload_content=_params.get('_preload_content', True),
2320
+ _request_timeout=_params.get('_request_timeout'),
2321
+ opts=_params.get('opts'),
2322
+ collection_formats=_collection_formats,
2323
+ _request_auth=_params.get('_request_auth'))
2324
+
2325
+ @overload
2326
+ 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
2327
+ ...
2328
+
2329
+ @overload
2330
+ 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
2331
+ ...
2332
+
2333
+ @validate_arguments
2334
+ 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
2335
+ """[EXPERIMENTAL] UpdateGroupReconciliationDefinition: Update group reconciliation definition # noqa: E501
2336
+
2337
+ Update the group reconciliation definition. # noqa: E501
2338
+ This method makes a synchronous HTTP request by default. To make an
2339
+ asynchronous HTTP request, please pass async_req=True
2340
+
2341
+ >>> thread = api.update_group_reconciliation_definition(scope, code, update_group_reconciliation_definition_request, async_req=True)
2342
+ >>> result = thread.get()
2343
+
2344
+ :param scope: The scope of the group reconciliation definition to update the details for. (required)
2345
+ :type scope: str
2346
+ :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)
2347
+ :type code: str
2348
+ :param update_group_reconciliation_definition_request: The updated group reconciliation definition.
2349
+ :type update_group_reconciliation_definition_request: UpdateGroupReconciliationDefinitionRequest
2350
+ :param async_req: Whether to execute the request asynchronously.
2351
+ :type async_req: bool, optional
2352
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2353
+ :param opts: Configuration options for this request
2354
+ :type opts: ConfigurationOptions, optional
2355
+ :return: Returns the result object.
2356
+ If the method is called asynchronously,
2357
+ returns the request thread.
2358
+ :rtype: GroupReconciliationDefinition
2359
+ """
2360
+ kwargs['_return_http_data_only'] = True
2361
+ if '_preload_content' in kwargs:
2362
+ 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
2363
+ raise ValueError(message)
2364
+ if async_req is not None:
2365
+ kwargs['async_req'] = async_req
2366
+ return self.update_group_reconciliation_definition_with_http_info(scope, code, update_group_reconciliation_definition_request, **kwargs) # noqa: E501
2367
+
2368
+ @validate_arguments
2369
+ 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
2370
+ """[EXPERIMENTAL] UpdateGroupReconciliationDefinition: Update group reconciliation definition # noqa: E501
2371
+
2372
+ Update the group reconciliation definition. # noqa: E501
2373
+ This method makes a synchronous HTTP request by default. To make an
2374
+ asynchronous HTTP request, please pass async_req=True
2375
+
2376
+ >>> thread = api.update_group_reconciliation_definition_with_http_info(scope, code, update_group_reconciliation_definition_request, async_req=True)
2377
+ >>> result = thread.get()
2378
+
2379
+ :param scope: The scope of the group reconciliation definition to update the details for. (required)
2380
+ :type scope: str
2381
+ :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)
2382
+ :type code: str
2383
+ :param update_group_reconciliation_definition_request: The updated group reconciliation definition.
2384
+ :type update_group_reconciliation_definition_request: UpdateGroupReconciliationDefinitionRequest
2385
+ :param async_req: Whether to execute the request asynchronously.
2386
+ :type async_req: bool, optional
2387
+ :param _preload_content: if False, the ApiResponse.data will
2388
+ be set to none and raw_data will store the
2389
+ HTTP response body without reading/decoding.
2390
+ Default is True.
2391
+ :type _preload_content: bool, optional
2392
+ :param _return_http_data_only: response data instead of ApiResponse
2393
+ object with status code, headers, etc
2394
+ :type _return_http_data_only: bool, optional
2395
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2396
+ :param opts: Configuration options for this request
2397
+ :type opts: ConfigurationOptions, optional
2398
+ :param _request_auth: set to override the auth_settings for an a single
2399
+ request; this effectively ignores the authentication
2400
+ in the spec for a single request.
2401
+ :type _request_auth: dict, optional
2402
+ :type _content_type: string, optional: force content-type for the request
2403
+ :return: Returns the result object.
2404
+ If the method is called asynchronously,
2405
+ returns the request thread.
2406
+ :rtype: tuple(GroupReconciliationDefinition, status_code(int), headers(HTTPHeaderDict))
2407
+ """
2408
+
2409
+ _params = locals()
2410
+
2411
+ _all_params = [
2412
+ 'scope',
2413
+ 'code',
2414
+ 'update_group_reconciliation_definition_request'
2415
+ ]
2416
+ _all_params.extend(
2417
+ [
2418
+ 'async_req',
2419
+ '_return_http_data_only',
2420
+ '_preload_content',
2421
+ '_request_timeout',
2422
+ '_request_auth',
2423
+ '_content_type',
2424
+ '_headers',
2425
+ 'opts'
2426
+ ]
2427
+ )
2428
+
2429
+ # validate the arguments
2430
+ for _key, _val in _params['kwargs'].items():
2431
+ if _key not in _all_params:
2432
+ raise ApiTypeError(
2433
+ "Got an unexpected keyword argument '%s'"
2434
+ " to method update_group_reconciliation_definition" % _key
2435
+ )
2436
+ _params[_key] = _val
2437
+ del _params['kwargs']
2438
+
2439
+ _collection_formats = {}
2440
+
2441
+ # process the path parameters
2442
+ _path_params = {}
2443
+ if _params['scope']:
2444
+ _path_params['scope'] = _params['scope']
2445
+
2446
+ if _params['code']:
2447
+ _path_params['code'] = _params['code']
2448
+
2449
+
2450
+ # process the query parameters
2451
+ _query_params = []
2452
+ # process the header parameters
2453
+ _header_params = dict(_params.get('_headers', {}))
2454
+ # process the form parameters
2455
+ _form_params = []
2456
+ _files = {}
2457
+ # process the body parameter
2458
+ _body_params = None
2459
+ if _params['update_group_reconciliation_definition_request'] is not None:
2460
+ _body_params = _params['update_group_reconciliation_definition_request']
2461
+
2462
+ # set the HTTP header `Accept`
2463
+ _header_params['Accept'] = self.api_client.select_header_accept(
2464
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2465
+
2466
+ # set the HTTP header `Content-Type`
2467
+ _content_types_list = _params.get('_content_type',
2468
+ self.api_client.select_header_content_type(
2469
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2470
+ if _content_types_list:
2471
+ _header_params['Content-Type'] = _content_types_list
2472
+
2473
+ # authentication setting
2474
+ _auth_settings = ['oauth2'] # noqa: E501
2475
+
2476
+ _response_types_map = {
2477
+ '200': "GroupReconciliationDefinition",
2478
+ '400': "LusidValidationProblemDetails",
2479
+ }
2480
+
2481
+ return self.api_client.call_api(
2482
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}', 'PUT',
2483
+ _path_params,
2484
+ _query_params,
2485
+ _header_params,
2486
+ body=_body_params,
2487
+ post_params=_form_params,
2488
+ files=_files,
2489
+ response_types_map=_response_types_map,
2490
+ auth_settings=_auth_settings,
2491
+ async_req=_params.get('async_req'),
2492
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2493
+ _preload_content=_params.get('_preload_content', True),
2494
+ _request_timeout=_params.get('_request_timeout'),
2495
+ opts=_params.get('opts'),
2496
+ collection_formats=_collection_formats,
2497
+ _request_auth=_params.get('_request_auth'))