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
@@ -16,27 +16,32 @@ import re # noqa: F401
16
16
  import io
17
17
  import warnings
18
18
 
19
- from pydantic import validate_arguments, ValidationError
19
+ from pydantic.v1 import validate_arguments, ValidationError
20
20
  from typing import overload, Optional, Union, Awaitable
21
21
 
22
22
  from typing_extensions import Annotated
23
23
  from datetime import datetime
24
24
 
25
- from pydantic import Field, StrictBool, StrictInt, StrictStr, conint, conlist, constr, validator
25
+ from pydantic.v1 import Field, StrictBool, StrictStr, conint, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
29
29
  from lusid.models.compliance_rule_response import ComplianceRuleResponse
30
+ from lusid.models.compliance_rule_result_v2 import ComplianceRuleResultV2
31
+ from lusid.models.compliance_rule_template import ComplianceRuleTemplate
32
+ from lusid.models.compliance_run_configuration import ComplianceRunConfiguration
30
33
  from lusid.models.compliance_run_info_v2 import ComplianceRunInfoV2
31
- from lusid.models.compliance_run_summary import ComplianceRunSummary
32
34
  from lusid.models.compliance_template import ComplianceTemplate
35
+ from lusid.models.create_compliance_template_request import CreateComplianceTemplateRequest
33
36
  from lusid.models.decorated_compliance_run_summary import DecoratedComplianceRunSummary
34
37
  from lusid.models.deleted_entity_response import DeletedEntityResponse
35
38
  from lusid.models.paged_resource_list_of_compliance_rule_response import PagedResourceListOfComplianceRuleResponse
36
39
  from lusid.models.paged_resource_list_of_compliance_run_info_v2 import PagedResourceListOfComplianceRunInfoV2
37
40
  from lusid.models.paged_resource_list_of_compliance_template import PagedResourceListOfComplianceTemplate
41
+ from lusid.models.update_compliance_template_request import UpdateComplianceTemplateRequest
38
42
  from lusid.models.upsert_compliance_rule_request import UpsertComplianceRuleRequest
39
43
  from lusid.models.upsert_compliance_run_summary_request import UpsertComplianceRunSummaryRequest
44
+ from lusid.models.upsert_compliance_run_summary_result import UpsertComplianceRunSummaryResult
40
45
 
41
46
  from lusid.api_client import ApiClient
42
47
  from lusid.api_response import ApiResponse
@@ -44,6 +49,7 @@ from lusid.exceptions import ( # noqa: F401
44
49
  ApiTypeError,
45
50
  ApiValueError
46
51
  )
52
+ from lusid.extensions.configuration_options import ConfigurationOptions
47
53
 
48
54
 
49
55
  class ComplianceApi:
@@ -59,62 +65,61 @@ class ComplianceApi:
59
65
  self.api_client = api_client
60
66
 
61
67
  @overload
62
- async def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
68
+ async def create_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], create_compliance_template_request : Annotated[CreateComplianceTemplateRequest, Field(..., description="Request to create a compliance rule template.")], **kwargs) -> ComplianceRuleTemplate: # noqa: E501
63
69
  ...
64
70
 
65
71
  @overload
66
- def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
72
+ def create_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], create_compliance_template_request : Annotated[CreateComplianceTemplateRequest, Field(..., description="Request to create a compliance rule template.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRuleTemplate: # noqa: E501
67
73
  ...
68
74
 
69
75
  @validate_arguments
70
- def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
71
- """[EARLY ACCESS] DeleteComplianceRule: Delete compliance rule. # noqa: E501
76
+ def create_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], create_compliance_template_request : Annotated[CreateComplianceTemplateRequest, Field(..., description="Request to create a compliance rule template.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRuleTemplate, Awaitable[ComplianceRuleTemplate]]: # noqa: E501
77
+ """[EARLY ACCESS] CreateComplianceTemplate: Create a Compliance Rule Template # noqa: E501
72
78
 
73
- Use this endpoint to delete a compliance rule. The rule will be recoverable for asat times earlier than the delete time, but will otherwise appear to have never existed. # noqa: E501
79
+ Use this endpoint to create a compliance template. # noqa: E501
74
80
  This method makes a synchronous HTTP request by default. To make an
75
81
  asynchronous HTTP request, please pass async_req=True
76
82
 
77
- >>> thread = api.delete_compliance_rule(scope, code, async_req=True)
83
+ >>> thread = api.create_compliance_template(scope, create_compliance_template_request, async_req=True)
78
84
  >>> result = thread.get()
79
85
 
80
- :param scope: The compliance rule's scope. (required)
86
+ :param scope: The scope of the Compliance Rule Template. (required)
81
87
  :type scope: str
82
- :param code: The compliance rule's code. (required)
83
- :type code: str
88
+ :param create_compliance_template_request: Request to create a compliance rule template. (required)
89
+ :type create_compliance_template_request: CreateComplianceTemplateRequest
84
90
  :param async_req: Whether to execute the request asynchronously.
85
91
  :type async_req: bool, optional
86
- :param _request_timeout: timeout setting for this request.
87
- If one number provided, it will be total request
88
- timeout. It can also be a pair (tuple) of
89
- (connection, read) timeouts.
92
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
93
+ :param opts: Configuration options for this request
94
+ :type opts: ConfigurationOptions, optional
90
95
  :return: Returns the result object.
91
96
  If the method is called asynchronously,
92
97
  returns the request thread.
93
- :rtype: DeletedEntityResponse
98
+ :rtype: ComplianceRuleTemplate
94
99
  """
95
100
  kwargs['_return_http_data_only'] = True
96
101
  if '_preload_content' in kwargs:
97
- message = "Error! Please call the delete_compliance_rule_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
102
+ message = "Error! Please call the create_compliance_template_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
98
103
  raise ValueError(message)
99
104
  if async_req is not None:
100
105
  kwargs['async_req'] = async_req
101
- return self.delete_compliance_rule_with_http_info(scope, code, **kwargs) # noqa: E501
106
+ return self.create_compliance_template_with_http_info(scope, create_compliance_template_request, **kwargs) # noqa: E501
102
107
 
103
108
  @validate_arguments
104
- def delete_compliance_rule_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], **kwargs) -> ApiResponse: # noqa: E501
105
- """[EARLY ACCESS] DeleteComplianceRule: Delete compliance rule. # noqa: E501
109
+ def create_compliance_template_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], create_compliance_template_request : Annotated[CreateComplianceTemplateRequest, Field(..., description="Request to create a compliance rule template.")], **kwargs) -> ApiResponse: # noqa: E501
110
+ """[EARLY ACCESS] CreateComplianceTemplate: Create a Compliance Rule Template # noqa: E501
106
111
 
107
- Use this endpoint to delete a compliance rule. The rule will be recoverable for asat times earlier than the delete time, but will otherwise appear to have never existed. # noqa: E501
112
+ Use this endpoint to create a compliance template. # noqa: E501
108
113
  This method makes a synchronous HTTP request by default. To make an
109
114
  asynchronous HTTP request, please pass async_req=True
110
115
 
111
- >>> thread = api.delete_compliance_rule_with_http_info(scope, code, async_req=True)
116
+ >>> thread = api.create_compliance_template_with_http_info(scope, create_compliance_template_request, async_req=True)
112
117
  >>> result = thread.get()
113
118
 
114
- :param scope: The compliance rule's scope. (required)
119
+ :param scope: The scope of the Compliance Rule Template. (required)
115
120
  :type scope: str
116
- :param code: The compliance rule's code. (required)
117
- :type code: str
121
+ :param create_compliance_template_request: Request to create a compliance rule template. (required)
122
+ :type create_compliance_template_request: CreateComplianceTemplateRequest
118
123
  :param async_req: Whether to execute the request asynchronously.
119
124
  :type async_req: bool, optional
120
125
  :param _preload_content: if False, the ApiResponse.data will
@@ -125,10 +130,9 @@ class ComplianceApi:
125
130
  :param _return_http_data_only: response data instead of ApiResponse
126
131
  object with status code, headers, etc
127
132
  :type _return_http_data_only: bool, optional
128
- :param _request_timeout: timeout setting for this request. If one
129
- number provided, it will be total request
130
- timeout. It can also be a pair (tuple) of
131
- (connection, read) timeouts.
133
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
134
+ :param opts: Configuration options for this request
135
+ :type opts: ConfigurationOptions, optional
132
136
  :param _request_auth: set to override the auth_settings for an a single
133
137
  request; this effectively ignores the authentication
134
138
  in the spec for a single request.
@@ -137,14 +141,14 @@ class ComplianceApi:
137
141
  :return: Returns the result object.
138
142
  If the method is called asynchronously,
139
143
  returns the request thread.
140
- :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
144
+ :rtype: tuple(ComplianceRuleTemplate, status_code(int), headers(HTTPHeaderDict))
141
145
  """
142
146
 
143
147
  _params = locals()
144
148
 
145
149
  _all_params = [
146
150
  'scope',
147
- 'code'
151
+ 'create_compliance_template_request'
148
152
  ]
149
153
  _all_params.extend(
150
154
  [
@@ -154,7 +158,8 @@ class ComplianceApi:
154
158
  '_request_timeout',
155
159
  '_request_auth',
156
160
  '_content_type',
157
- '_headers'
161
+ '_headers',
162
+ 'opts'
158
163
  ]
159
164
  )
160
165
 
@@ -163,7 +168,7 @@ class ComplianceApi:
163
168
  if _key not in _all_params:
164
169
  raise ApiTypeError(
165
170
  "Got an unexpected keyword argument '%s'"
166
- " to method delete_compliance_rule" % _key
171
+ " to method create_compliance_template" % _key
167
172
  )
168
173
  _params[_key] = _val
169
174
  del _params['kwargs']
@@ -175,9 +180,6 @@ class ComplianceApi:
175
180
  if _params['scope']:
176
181
  _path_params['scope'] = _params['scope']
177
182
 
178
- if _params['code']:
179
- _path_params['code'] = _params['code']
180
-
181
183
 
182
184
  # process the query parameters
183
185
  _query_params = []
@@ -188,20 +190,30 @@ class ComplianceApi:
188
190
  _files = {}
189
191
  # process the body parameter
190
192
  _body_params = None
193
+ if _params['create_compliance_template_request'] is not None:
194
+ _body_params = _params['create_compliance_template_request']
195
+
191
196
  # set the HTTP header `Accept`
192
197
  _header_params['Accept'] = self.api_client.select_header_accept(
193
198
  ['text/plain', 'application/json', 'text/json']) # noqa: E501
194
199
 
200
+ # set the HTTP header `Content-Type`
201
+ _content_types_list = _params.get('_content_type',
202
+ self.api_client.select_header_content_type(
203
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
204
+ if _content_types_list:
205
+ _header_params['Content-Type'] = _content_types_list
206
+
195
207
  # authentication setting
196
208
  _auth_settings = ['oauth2'] # noqa: E501
197
209
 
198
210
  _response_types_map = {
199
- '200': "DeletedEntityResponse",
211
+ '201': "ComplianceRuleTemplate",
200
212
  '400': "LusidValidationProblemDetails",
201
213
  }
202
214
 
203
215
  return self.api_client.call_api(
204
- '/api/compliance/rules/{scope}/{code}', 'DELETE',
216
+ '/api/compliance/templates/{scope}', 'POST',
205
217
  _path_params,
206
218
  _query_params,
207
219
  _header_params,
@@ -214,74 +226,66 @@ class ComplianceApi:
214
226
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
215
227
  _preload_content=_params.get('_preload_content', True),
216
228
  _request_timeout=_params.get('_request_timeout'),
229
+ opts=_params.get('opts'),
217
230
  collection_formats=_collection_formats,
218
231
  _request_auth=_params.get('_request_auth'))
219
232
 
220
233
  @overload
221
- async def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, **kwargs) -> ComplianceRuleResponse: # noqa: E501
234
+ async def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
222
235
  ...
223
236
 
224
237
  @overload
225
- def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceRuleResponse: # noqa: E501
238
+ def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
226
239
  ...
227
240
 
228
241
  @validate_arguments
229
- def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRuleResponse, Awaitable[ComplianceRuleResponse]]: # noqa: E501
230
- """[EARLY ACCESS] GetComplianceRule: Get compliance rule. # noqa: E501
242
+ def delete_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
243
+ """[EARLY ACCESS] DeleteComplianceRule: Delete compliance rule. # noqa: E501
231
244
 
232
- Use this endpoint to retrieve a single compliance rule. # noqa: E501
245
+ Use this endpoint to delete a compliance rule. The rule will be recoverable for asat times earlier than the delete time, but will otherwise appear to have never existed. # noqa: E501
233
246
  This method makes a synchronous HTTP request by default. To make an
234
247
  asynchronous HTTP request, please pass async_req=True
235
248
 
236
- >>> thread = api.get_compliance_rule(scope, code, as_at, property_keys, async_req=True)
249
+ >>> thread = api.delete_compliance_rule(scope, code, async_req=True)
237
250
  >>> result = thread.get()
238
251
 
239
252
  :param scope: The compliance rule's scope. (required)
240
253
  :type scope: str
241
254
  :param code: The compliance rule's code. (required)
242
255
  :type code: str
243
- :param as_at: Optional. Asat time for query.
244
- :type as_at: datetime
245
- :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.
246
- :type property_keys: List[str]
247
256
  :param async_req: Whether to execute the request asynchronously.
248
257
  :type async_req: bool, optional
249
- :param _request_timeout: timeout setting for this request.
250
- If one number provided, it will be total request
251
- timeout. It can also be a pair (tuple) of
252
- (connection, read) timeouts.
258
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
259
+ :param opts: Configuration options for this request
260
+ :type opts: ConfigurationOptions, optional
253
261
  :return: Returns the result object.
254
262
  If the method is called asynchronously,
255
263
  returns the request thread.
256
- :rtype: ComplianceRuleResponse
264
+ :rtype: DeletedEntityResponse
257
265
  """
258
266
  kwargs['_return_http_data_only'] = True
259
267
  if '_preload_content' in kwargs:
260
- message = "Error! Please call the get_compliance_rule_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
268
+ message = "Error! Please call the delete_compliance_rule_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
261
269
  raise ValueError(message)
262
270
  if async_req is not None:
263
271
  kwargs['async_req'] = async_req
264
- return self.get_compliance_rule_with_http_info(scope, code, as_at, property_keys, **kwargs) # noqa: E501
272
+ return self.delete_compliance_rule_with_http_info(scope, code, **kwargs) # noqa: E501
265
273
 
266
274
  @validate_arguments
267
- def get_compliance_rule_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
268
- """[EARLY ACCESS] GetComplianceRule: Get compliance rule. # noqa: E501
275
+ def delete_compliance_rule_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], **kwargs) -> ApiResponse: # noqa: E501
276
+ """[EARLY ACCESS] DeleteComplianceRule: Delete compliance rule. # noqa: E501
269
277
 
270
- Use this endpoint to retrieve a single compliance rule. # noqa: E501
278
+ Use this endpoint to delete a compliance rule. The rule will be recoverable for asat times earlier than the delete time, but will otherwise appear to have never existed. # noqa: E501
271
279
  This method makes a synchronous HTTP request by default. To make an
272
280
  asynchronous HTTP request, please pass async_req=True
273
281
 
274
- >>> thread = api.get_compliance_rule_with_http_info(scope, code, as_at, property_keys, async_req=True)
282
+ >>> thread = api.delete_compliance_rule_with_http_info(scope, code, async_req=True)
275
283
  >>> result = thread.get()
276
284
 
277
285
  :param scope: The compliance rule's scope. (required)
278
286
  :type scope: str
279
287
  :param code: The compliance rule's code. (required)
280
288
  :type code: str
281
- :param as_at: Optional. Asat time for query.
282
- :type as_at: datetime
283
- :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.
284
- :type property_keys: List[str]
285
289
  :param async_req: Whether to execute the request asynchronously.
286
290
  :type async_req: bool, optional
287
291
  :param _preload_content: if False, the ApiResponse.data will
@@ -292,10 +296,9 @@ class ComplianceApi:
292
296
  :param _return_http_data_only: response data instead of ApiResponse
293
297
  object with status code, headers, etc
294
298
  :type _return_http_data_only: bool, optional
295
- :param _request_timeout: timeout setting for this request. If one
296
- number provided, it will be total request
297
- timeout. It can also be a pair (tuple) of
298
- (connection, read) timeouts.
299
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
300
+ :param opts: Configuration options for this request
301
+ :type opts: ConfigurationOptions, optional
299
302
  :param _request_auth: set to override the auth_settings for an a single
300
303
  request; this effectively ignores the authentication
301
304
  in the spec for a single request.
@@ -304,16 +307,14 @@ class ComplianceApi:
304
307
  :return: Returns the result object.
305
308
  If the method is called asynchronously,
306
309
  returns the request thread.
307
- :rtype: tuple(ComplianceRuleResponse, status_code(int), headers(HTTPHeaderDict))
310
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
308
311
  """
309
312
 
310
313
  _params = locals()
311
314
 
312
315
  _all_params = [
313
316
  'scope',
314
- 'code',
315
- 'as_at',
316
- 'property_keys'
317
+ 'code'
317
318
  ]
318
319
  _all_params.extend(
319
320
  [
@@ -323,7 +324,8 @@ class ComplianceApi:
323
324
  '_request_timeout',
324
325
  '_request_auth',
325
326
  '_content_type',
326
- '_headers'
327
+ '_headers',
328
+ 'opts'
327
329
  ]
328
330
  )
329
331
 
@@ -332,7 +334,7 @@ class ComplianceApi:
332
334
  if _key not in _all_params:
333
335
  raise ApiTypeError(
334
336
  "Got an unexpected keyword argument '%s'"
335
- " to method get_compliance_rule" % _key
337
+ " to method delete_compliance_rule" % _key
336
338
  )
337
339
  _params[_key] = _val
338
340
  del _params['kwargs']
@@ -350,16 +352,6 @@ class ComplianceApi:
350
352
 
351
353
  # process the query parameters
352
354
  _query_params = []
353
- if _params.get('as_at') is not None: # noqa: E501
354
- if isinstance(_params['as_at'], datetime):
355
- _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
356
- else:
357
- _query_params.append(('asAt', _params['as_at']))
358
-
359
- if _params.get('property_keys') is not None: # noqa: E501
360
- _query_params.append(('propertyKeys', _params['property_keys']))
361
- _collection_formats['propertyKeys'] = 'multi'
362
-
363
355
  # process the header parameters
364
356
  _header_params = dict(_params.get('_headers', {}))
365
357
  # process the form parameters
@@ -375,12 +367,12 @@ class ComplianceApi:
375
367
  _auth_settings = ['oauth2'] # noqa: E501
376
368
 
377
369
  _response_types_map = {
378
- '200': "ComplianceRuleResponse",
370
+ '200': "DeletedEntityResponse",
379
371
  '400': "LusidValidationProblemDetails",
380
372
  }
381
373
 
382
374
  return self.api_client.call_api(
383
- '/api/compliance/rules/{scope}/{code}', 'GET',
375
+ '/api/compliance/rules/{scope}/{code}', 'DELETE',
384
376
  _path_params,
385
377
  _query_params,
386
378
  _header_params,
@@ -393,65 +385,65 @@ class ComplianceApi:
393
385
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
394
386
  _preload_content=_params.get('_preload_content', True),
395
387
  _request_timeout=_params.get('_request_timeout'),
388
+ opts=_params.get('opts'),
396
389
  collection_formats=_collection_formats,
397
390
  _request_auth=_params.get('_request_auth'))
398
391
 
399
392
  @overload
400
- async def get_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> ComplianceRunSummary: # noqa: E501
393
+ async def delete_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the template to be deleted.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the template to be deleted.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
401
394
  ...
402
395
 
403
396
  @overload
404
- def get_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRunSummary: # noqa: E501
397
+ def delete_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the template to be deleted.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the template to be deleted.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
405
398
  ...
406
399
 
407
400
  @validate_arguments
408
- def get_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRunSummary, Awaitable[ComplianceRunSummary]]: # noqa: E501
409
- """[EARLY ACCESS] GetComplianceRunSummary: Get summary results for a specific compliance run. # noqa: E501
401
+ def delete_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the template to be deleted.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the template to be deleted.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
402
+ """[EARLY ACCESS] DeleteComplianceTemplate: Delete a ComplianceRuleTemplate # noqa: E501
410
403
 
411
- Specify a run scope and code from a previously run compliance check to get summarised results. # noqa: E501
404
+ Delete the compliance rule template uniquely defined by the scope and code. # noqa: E501
412
405
  This method makes a synchronous HTTP request by default. To make an
413
406
  asynchronous HTTP request, please pass async_req=True
414
407
 
415
- >>> thread = api.get_compliance_run_summary(scope, code, async_req=True)
408
+ >>> thread = api.delete_compliance_template(scope, code, async_req=True)
416
409
  >>> result = thread.get()
417
410
 
418
- :param scope: Required: Run Scope. (required)
411
+ :param scope: The scope of the template to be deleted. (required)
419
412
  :type scope: str
420
- :param code: Required: Run Code. (required)
413
+ :param code: The code of the template to be deleted. (required)
421
414
  :type code: str
422
415
  :param async_req: Whether to execute the request asynchronously.
423
416
  :type async_req: bool, optional
424
- :param _request_timeout: timeout setting for this request.
425
- If one number provided, it will be total request
426
- timeout. It can also be a pair (tuple) of
427
- (connection, read) timeouts.
417
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
418
+ :param opts: Configuration options for this request
419
+ :type opts: ConfigurationOptions, optional
428
420
  :return: Returns the result object.
429
421
  If the method is called asynchronously,
430
422
  returns the request thread.
431
- :rtype: ComplianceRunSummary
423
+ :rtype: DeletedEntityResponse
432
424
  """
433
425
  kwargs['_return_http_data_only'] = True
434
426
  if '_preload_content' in kwargs:
435
- message = "Error! Please call the get_compliance_run_summary_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
427
+ message = "Error! Please call the delete_compliance_template_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
436
428
  raise ValueError(message)
437
429
  if async_req is not None:
438
430
  kwargs['async_req'] = async_req
439
- return self.get_compliance_run_summary_with_http_info(scope, code, **kwargs) # noqa: E501
431
+ return self.delete_compliance_template_with_http_info(scope, code, **kwargs) # noqa: E501
440
432
 
441
433
  @validate_arguments
442
- def get_compliance_run_summary_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> ApiResponse: # noqa: E501
443
- """[EARLY ACCESS] GetComplianceRunSummary: Get summary results for a specific compliance run. # noqa: E501
434
+ def delete_compliance_template_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the template to be deleted.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the template to be deleted.")], **kwargs) -> ApiResponse: # noqa: E501
435
+ """[EARLY ACCESS] DeleteComplianceTemplate: Delete a ComplianceRuleTemplate # noqa: E501
444
436
 
445
- Specify a run scope and code from a previously run compliance check to get summarised results. # noqa: E501
437
+ Delete the compliance rule template uniquely defined by the scope and code. # noqa: E501
446
438
  This method makes a synchronous HTTP request by default. To make an
447
439
  asynchronous HTTP request, please pass async_req=True
448
440
 
449
- >>> thread = api.get_compliance_run_summary_with_http_info(scope, code, async_req=True)
441
+ >>> thread = api.delete_compliance_template_with_http_info(scope, code, async_req=True)
450
442
  >>> result = thread.get()
451
443
 
452
- :param scope: Required: Run Scope. (required)
444
+ :param scope: The scope of the template to be deleted. (required)
453
445
  :type scope: str
454
- :param code: Required: Run Code. (required)
446
+ :param code: The code of the template to be deleted. (required)
455
447
  :type code: str
456
448
  :param async_req: Whether to execute the request asynchronously.
457
449
  :type async_req: bool, optional
@@ -463,10 +455,9 @@ class ComplianceApi:
463
455
  :param _return_http_data_only: response data instead of ApiResponse
464
456
  object with status code, headers, etc
465
457
  :type _return_http_data_only: bool, optional
466
- :param _request_timeout: timeout setting for this request. If one
467
- number provided, it will be total request
468
- timeout. It can also be a pair (tuple) of
469
- (connection, read) timeouts.
458
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
459
+ :param opts: Configuration options for this request
460
+ :type opts: ConfigurationOptions, optional
470
461
  :param _request_auth: set to override the auth_settings for an a single
471
462
  request; this effectively ignores the authentication
472
463
  in the spec for a single request.
@@ -475,7 +466,7 @@ class ComplianceApi:
475
466
  :return: Returns the result object.
476
467
  If the method is called asynchronously,
477
468
  returns the request thread.
478
- :rtype: tuple(ComplianceRunSummary, status_code(int), headers(HTTPHeaderDict))
469
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
479
470
  """
480
471
 
481
472
  _params = locals()
@@ -492,7 +483,8 @@ class ComplianceApi:
492
483
  '_request_timeout',
493
484
  '_request_auth',
494
485
  '_content_type',
495
- '_headers'
486
+ '_headers',
487
+ 'opts'
496
488
  ]
497
489
  )
498
490
 
@@ -501,7 +493,7 @@ class ComplianceApi:
501
493
  if _key not in _all_params:
502
494
  raise ApiTypeError(
503
495
  "Got an unexpected keyword argument '%s'"
504
- " to method get_compliance_run_summary" % _key
496
+ " to method delete_compliance_template" % _key
505
497
  )
506
498
  _params[_key] = _val
507
499
  del _params['kwargs']
@@ -534,12 +526,12 @@ class ComplianceApi:
534
526
  _auth_settings = ['oauth2'] # noqa: E501
535
527
 
536
528
  _response_types_map = {
537
- '201': "ComplianceRunSummary",
529
+ '200': "DeletedEntityResponse",
538
530
  '400': "LusidValidationProblemDetails",
539
531
  }
540
532
 
541
533
  return self.api_client.call_api(
542
- '/api/compliance/runs/summary/{scope}/{code}', 'GET',
534
+ '/api/compliance/templates/{scope}/{code}', 'DELETE',
543
535
  _path_params,
544
536
  _query_params,
545
537
  _header_params,
@@ -552,70 +544,74 @@ class ComplianceApi:
552
544
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
553
545
  _preload_content=_params.get('_preload_content', True),
554
546
  _request_timeout=_params.get('_request_timeout'),
547
+ opts=_params.get('opts'),
555
548
  collection_formats=_collection_formats,
556
549
  _request_auth=_params.get('_request_auth'))
557
550
 
558
551
  @overload
559
- async def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, **kwargs) -> ComplianceTemplate: # noqa: E501
552
+ async def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, **kwargs) -> ComplianceRuleResponse: # noqa: E501
560
553
  ...
561
554
 
562
555
  @overload
563
- def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceTemplate: # noqa: E501
556
+ def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceRuleResponse: # noqa: E501
564
557
  ...
565
558
 
566
559
  @validate_arguments
567
- def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceTemplate, Awaitable[ComplianceTemplate]]: # noqa: E501
568
- """[EARLY ACCESS] GetComplianceTemplate: Get the requested compliance template. # noqa: E501
560
+ def get_compliance_rule(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRuleResponse, Awaitable[ComplianceRuleResponse]]: # noqa: E501
561
+ """[EARLY ACCESS] GetComplianceRule: Get compliance rule. # noqa: E501
569
562
 
570
- Use this endpoint to fetch a specific compliance template. # noqa: E501
563
+ Use this endpoint to retrieve a single compliance rule. # noqa: E501
571
564
  This method makes a synchronous HTTP request by default. To make an
572
565
  asynchronous HTTP request, please pass async_req=True
573
566
 
574
- >>> thread = api.get_compliance_template(scope, code, as_at, async_req=True)
567
+ >>> thread = api.get_compliance_rule(scope, code, as_at, property_keys, async_req=True)
575
568
  >>> result = thread.get()
576
569
 
577
- :param scope: Scope of TemplateID (required)
570
+ :param scope: The compliance rule's scope. (required)
578
571
  :type scope: str
579
- :param code: Code of TemplateID (required)
572
+ :param code: The compliance rule's code. (required)
580
573
  :type code: str
581
- :param as_at: Optional. The time at which to get results from. Default : latest
574
+ :param as_at: Optional. Asat time for query.
582
575
  :type as_at: datetime
576
+ :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.
577
+ :type property_keys: List[str]
583
578
  :param async_req: Whether to execute the request asynchronously.
584
579
  :type async_req: bool, optional
585
- :param _request_timeout: timeout setting for this request.
586
- If one number provided, it will be total request
587
- timeout. It can also be a pair (tuple) of
588
- (connection, read) timeouts.
580
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
581
+ :param opts: Configuration options for this request
582
+ :type opts: ConfigurationOptions, optional
589
583
  :return: Returns the result object.
590
584
  If the method is called asynchronously,
591
585
  returns the request thread.
592
- :rtype: ComplianceTemplate
586
+ :rtype: ComplianceRuleResponse
593
587
  """
594
588
  kwargs['_return_http_data_only'] = True
595
589
  if '_preload_content' in kwargs:
596
- message = "Error! Please call the get_compliance_template_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
590
+ message = "Error! Please call the get_compliance_rule_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
597
591
  raise ValueError(message)
598
592
  if async_req is not None:
599
593
  kwargs['async_req'] = async_req
600
- return self.get_compliance_template_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
594
+ return self.get_compliance_rule_with_http_info(scope, code, as_at, property_keys, **kwargs) # noqa: E501
601
595
 
602
596
  @validate_arguments
603
- def get_compliance_template_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, **kwargs) -> ApiResponse: # noqa: E501
604
- """[EARLY ACCESS] GetComplianceTemplate: Get the requested compliance template. # noqa: E501
597
+ def get_compliance_rule_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The compliance rule's code.")], as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time for query.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
598
+ """[EARLY ACCESS] GetComplianceRule: Get compliance rule. # noqa: E501
605
599
 
606
- Use this endpoint to fetch a specific compliance template. # noqa: E501
600
+ Use this endpoint to retrieve a single compliance rule. # noqa: E501
607
601
  This method makes a synchronous HTTP request by default. To make an
608
602
  asynchronous HTTP request, please pass async_req=True
609
603
 
610
- >>> thread = api.get_compliance_template_with_http_info(scope, code, as_at, async_req=True)
604
+ >>> thread = api.get_compliance_rule_with_http_info(scope, code, as_at, property_keys, async_req=True)
611
605
  >>> result = thread.get()
612
606
 
613
- :param scope: Scope of TemplateID (required)
607
+ :param scope: The compliance rule's scope. (required)
614
608
  :type scope: str
615
- :param code: Code of TemplateID (required)
609
+ :param code: The compliance rule's code. (required)
616
610
  :type code: str
617
- :param as_at: Optional. The time at which to get results from. Default : latest
611
+ :param as_at: Optional. Asat time for query.
618
612
  :type as_at: datetime
613
+ :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto the rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'.
614
+ :type property_keys: List[str]
619
615
  :param async_req: Whether to execute the request asynchronously.
620
616
  :type async_req: bool, optional
621
617
  :param _preload_content: if False, the ApiResponse.data will
@@ -626,10 +622,9 @@ class ComplianceApi:
626
622
  :param _return_http_data_only: response data instead of ApiResponse
627
623
  object with status code, headers, etc
628
624
  :type _return_http_data_only: bool, optional
629
- :param _request_timeout: timeout setting for this request. If one
630
- number provided, it will be total request
631
- timeout. It can also be a pair (tuple) of
632
- (connection, read) timeouts.
625
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
626
+ :param opts: Configuration options for this request
627
+ :type opts: ConfigurationOptions, optional
633
628
  :param _request_auth: set to override the auth_settings for an a single
634
629
  request; this effectively ignores the authentication
635
630
  in the spec for a single request.
@@ -638,7 +633,7 @@ class ComplianceApi:
638
633
  :return: Returns the result object.
639
634
  If the method is called asynchronously,
640
635
  returns the request thread.
641
- :rtype: tuple(ComplianceTemplate, status_code(int), headers(HTTPHeaderDict))
636
+ :rtype: tuple(ComplianceRuleResponse, status_code(int), headers(HTTPHeaderDict))
642
637
  """
643
638
 
644
639
  _params = locals()
@@ -646,7 +641,8 @@ class ComplianceApi:
646
641
  _all_params = [
647
642
  'scope',
648
643
  'code',
649
- 'as_at'
644
+ 'as_at',
645
+ 'property_keys'
650
646
  ]
651
647
  _all_params.extend(
652
648
  [
@@ -656,7 +652,8 @@ class ComplianceApi:
656
652
  '_request_timeout',
657
653
  '_request_auth',
658
654
  '_content_type',
659
- '_headers'
655
+ '_headers',
656
+ 'opts'
660
657
  ]
661
658
  )
662
659
 
@@ -665,7 +662,7 @@ class ComplianceApi:
665
662
  if _key not in _all_params:
666
663
  raise ApiTypeError(
667
664
  "Got an unexpected keyword argument '%s'"
668
- " to method get_compliance_template" % _key
665
+ " to method get_compliance_rule" % _key
669
666
  )
670
667
  _params[_key] = _val
671
668
  del _params['kwargs']
@@ -689,6 +686,10 @@ class ComplianceApi:
689
686
  else:
690
687
  _query_params.append(('asAt', _params['as_at']))
691
688
 
689
+ if _params.get('property_keys') is not None: # noqa: E501
690
+ _query_params.append(('propertyKeys', _params['property_keys']))
691
+ _collection_formats['propertyKeys'] = 'multi'
692
+
692
693
  # process the header parameters
693
694
  _header_params = dict(_params.get('_headers', {}))
694
695
  # process the form parameters
@@ -704,12 +705,12 @@ class ComplianceApi:
704
705
  _auth_settings = ['oauth2'] # noqa: E501
705
706
 
706
707
  _response_types_map = {
707
- '200': "ComplianceTemplate",
708
+ '200': "ComplianceRuleResponse",
708
709
  '400': "LusidValidationProblemDetails",
709
710
  }
710
711
 
711
712
  return self.api_client.call_api(
712
- '/api/compliance/templates/{scope}/{code}', 'GET',
713
+ '/api/compliance/rules/{scope}/{code}', 'GET',
713
714
  _path_params,
714
715
  _query_params,
715
716
  _header_params,
@@ -722,66 +723,74 @@ class ComplianceApi:
722
723
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
723
724
  _preload_content=_params.get('_preload_content', True),
724
725
  _request_timeout=_params.get('_request_timeout'),
726
+ opts=_params.get('opts'),
725
727
  collection_formats=_collection_formats,
726
728
  _request_auth=_params.get('_request_auth'))
727
729
 
728
730
  @overload
729
- async def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> DecoratedComplianceRunSummary: # noqa: E501
731
+ async def get_compliance_rule_result(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], run_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Scope.")], rule_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Code.")], **kwargs) -> ComplianceRuleResultV2: # noqa: E501
730
732
  ...
731
733
 
732
734
  @overload
733
- def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=True, **kwargs) -> DecoratedComplianceRunSummary: # noqa: E501
735
+ def get_compliance_rule_result(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], run_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Scope.")], rule_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Code.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRuleResultV2: # noqa: E501
734
736
  ...
735
737
 
736
738
  @validate_arguments
737
- def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=None, **kwargs) -> Union[DecoratedComplianceRunSummary, Awaitable[DecoratedComplianceRunSummary]]: # noqa: E501
738
- """[EARLY ACCESS] GetDecoratedComplianceRunSummary: Get decorated summary results for a specific compliance run. # noqa: E501
739
+ def get_compliance_rule_result(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], run_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Scope.")], rule_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Code.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRuleResultV2, Awaitable[ComplianceRuleResultV2]]: # noqa: E501
740
+ """[EARLY ACCESS] GetComplianceRuleResult: Get detailed results for a specific rule within a compliance run. # noqa: E501
739
741
 
740
- Specify a run scope and code from a previously run compliance check to get an overview of result details. # noqa: E501
742
+ Specify a run scope and code from a previously run compliance check, and the scope and code of a rule within that run, to get detailed results for that rule. # noqa: E501
741
743
  This method makes a synchronous HTTP request by default. To make an
742
744
  asynchronous HTTP request, please pass async_req=True
743
745
 
744
- >>> thread = api.get_decorated_compliance_run_summary(scope, code, async_req=True)
746
+ >>> thread = api.get_compliance_rule_result(run_scope, run_code, rule_scope, rule_code, async_req=True)
745
747
  >>> result = thread.get()
746
748
 
747
- :param scope: Required: Run Scope. (required)
748
- :type scope: str
749
- :param code: Required: Run Code. (required)
750
- :type code: str
749
+ :param run_scope: Required: Run Scope. (required)
750
+ :type run_scope: str
751
+ :param run_code: Required: Run Code. (required)
752
+ :type run_code: str
753
+ :param rule_scope: Required: Rule Scope. (required)
754
+ :type rule_scope: str
755
+ :param rule_code: Required: Rule Code. (required)
756
+ :type rule_code: str
751
757
  :param async_req: Whether to execute the request asynchronously.
752
758
  :type async_req: bool, optional
753
- :param _request_timeout: timeout setting for this request.
754
- If one number provided, it will be total request
755
- timeout. It can also be a pair (tuple) of
756
- (connection, read) timeouts.
759
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
760
+ :param opts: Configuration options for this request
761
+ :type opts: ConfigurationOptions, optional
757
762
  :return: Returns the result object.
758
763
  If the method is called asynchronously,
759
764
  returns the request thread.
760
- :rtype: DecoratedComplianceRunSummary
765
+ :rtype: ComplianceRuleResultV2
761
766
  """
762
767
  kwargs['_return_http_data_only'] = True
763
768
  if '_preload_content' in kwargs:
764
- message = "Error! Please call the get_decorated_compliance_run_summary_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
769
+ message = "Error! Please call the get_compliance_rule_result_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
765
770
  raise ValueError(message)
766
771
  if async_req is not None:
767
772
  kwargs['async_req'] = async_req
768
- return self.get_decorated_compliance_run_summary_with_http_info(scope, code, **kwargs) # noqa: E501
773
+ return self.get_compliance_rule_result_with_http_info(run_scope, run_code, rule_scope, rule_code, **kwargs) # noqa: E501
769
774
 
770
775
  @validate_arguments
771
- def get_decorated_compliance_run_summary_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> ApiResponse: # noqa: E501
772
- """[EARLY ACCESS] GetDecoratedComplianceRunSummary: Get decorated summary results for a specific compliance run. # noqa: E501
776
+ def get_compliance_rule_result_with_http_info(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], run_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Scope.")], rule_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Rule Code.")], **kwargs) -> ApiResponse: # noqa: E501
777
+ """[EARLY ACCESS] GetComplianceRuleResult: Get detailed results for a specific rule within a compliance run. # noqa: E501
773
778
 
774
- Specify a run scope and code from a previously run compliance check to get an overview of result details. # noqa: E501
779
+ Specify a run scope and code from a previously run compliance check, and the scope and code of a rule within that run, to get detailed results for that rule. # noqa: E501
775
780
  This method makes a synchronous HTTP request by default. To make an
776
781
  asynchronous HTTP request, please pass async_req=True
777
782
 
778
- >>> thread = api.get_decorated_compliance_run_summary_with_http_info(scope, code, async_req=True)
783
+ >>> thread = api.get_compliance_rule_result_with_http_info(run_scope, run_code, rule_scope, rule_code, async_req=True)
779
784
  >>> result = thread.get()
780
785
 
781
- :param scope: Required: Run Scope. (required)
782
- :type scope: str
783
- :param code: Required: Run Code. (required)
784
- :type code: str
786
+ :param run_scope: Required: Run Scope. (required)
787
+ :type run_scope: str
788
+ :param run_code: Required: Run Code. (required)
789
+ :type run_code: str
790
+ :param rule_scope: Required: Rule Scope. (required)
791
+ :type rule_scope: str
792
+ :param rule_code: Required: Rule Code. (required)
793
+ :type rule_code: str
785
794
  :param async_req: Whether to execute the request asynchronously.
786
795
  :type async_req: bool, optional
787
796
  :param _preload_content: if False, the ApiResponse.data will
@@ -792,10 +801,9 @@ class ComplianceApi:
792
801
  :param _return_http_data_only: response data instead of ApiResponse
793
802
  object with status code, headers, etc
794
803
  :type _return_http_data_only: bool, optional
795
- :param _request_timeout: timeout setting for this request. If one
796
- number provided, it will be total request
797
- timeout. It can also be a pair (tuple) of
798
- (connection, read) timeouts.
804
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
805
+ :param opts: Configuration options for this request
806
+ :type opts: ConfigurationOptions, optional
799
807
  :param _request_auth: set to override the auth_settings for an a single
800
808
  request; this effectively ignores the authentication
801
809
  in the spec for a single request.
@@ -804,14 +812,16 @@ class ComplianceApi:
804
812
  :return: Returns the result object.
805
813
  If the method is called asynchronously,
806
814
  returns the request thread.
807
- :rtype: tuple(DecoratedComplianceRunSummary, status_code(int), headers(HTTPHeaderDict))
815
+ :rtype: tuple(ComplianceRuleResultV2, status_code(int), headers(HTTPHeaderDict))
808
816
  """
809
817
 
810
818
  _params = locals()
811
819
 
812
820
  _all_params = [
813
- 'scope',
814
- 'code'
821
+ 'run_scope',
822
+ 'run_code',
823
+ 'rule_scope',
824
+ 'rule_code'
815
825
  ]
816
826
  _all_params.extend(
817
827
  [
@@ -821,7 +831,8 @@ class ComplianceApi:
821
831
  '_request_timeout',
822
832
  '_request_auth',
823
833
  '_content_type',
824
- '_headers'
834
+ '_headers',
835
+ 'opts'
825
836
  ]
826
837
  )
827
838
 
@@ -830,7 +841,7 @@ class ComplianceApi:
830
841
  if _key not in _all_params:
831
842
  raise ApiTypeError(
832
843
  "Got an unexpected keyword argument '%s'"
833
- " to method get_decorated_compliance_run_summary" % _key
844
+ " to method get_compliance_rule_result" % _key
834
845
  )
835
846
  _params[_key] = _val
836
847
  del _params['kwargs']
@@ -839,11 +850,17 @@ class ComplianceApi:
839
850
 
840
851
  # process the path parameters
841
852
  _path_params = {}
842
- if _params['scope']:
843
- _path_params['scope'] = _params['scope']
853
+ if _params['run_scope']:
854
+ _path_params['runScope'] = _params['run_scope']
844
855
 
845
- if _params['code']:
846
- _path_params['code'] = _params['code']
856
+ if _params['run_code']:
857
+ _path_params['runCode'] = _params['run_code']
858
+
859
+ if _params['rule_scope']:
860
+ _path_params['ruleScope'] = _params['rule_scope']
861
+
862
+ if _params['rule_code']:
863
+ _path_params['ruleCode'] = _params['rule_code']
847
864
 
848
865
 
849
866
  # process the query parameters
@@ -863,12 +880,12 @@ class ComplianceApi:
863
880
  _auth_settings = ['oauth2'] # noqa: E501
864
881
 
865
882
  _response_types_map = {
866
- '200': "DecoratedComplianceRunSummary",
883
+ '200': "ComplianceRuleResultV2",
867
884
  '400': "LusidValidationProblemDetails",
868
885
  }
869
886
 
870
887
  return self.api_client.call_api(
871
- '/api/compliance/runs/summary/{scope}/{code}/$decorate', 'GET',
888
+ '/api/compliance/runs/summary/{runScope}/{runCode}/{ruleScope}/{ruleCode}', 'GET',
872
889
  _path_params,
873
890
  _query_params,
874
891
  _header_params,
@@ -881,78 +898,70 @@ class ComplianceApi:
881
898
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
882
899
  _preload_content=_params.get('_preload_content', True),
883
900
  _request_timeout=_params.get('_request_timeout'),
901
+ opts=_params.get('opts'),
884
902
  collection_formats=_collection_formats,
885
903
  _request_auth=_params.get('_request_auth'))
886
904
 
887
905
  @overload
888
- async def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, **kwargs) -> PagedResourceListOfComplianceRuleResponse: # noqa: E501
906
+ async def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, **kwargs) -> ComplianceTemplate: # noqa: E501
889
907
  ...
890
908
 
891
909
  @overload
892
- def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfComplianceRuleResponse: # noqa: E501
910
+ def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceTemplate: # noqa: E501
893
911
  ...
894
912
 
895
913
  @validate_arguments
896
- def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfComplianceRuleResponse, Awaitable[PagedResourceListOfComplianceRuleResponse]]: # noqa: E501
897
- """[EARLY ACCESS] ListComplianceRules: List compliance rules. # noqa: E501
914
+ def get_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceTemplate, Awaitable[ComplianceTemplate]]: # noqa: E501
915
+ """[EARLY ACCESS] GetComplianceTemplate: Get the requested compliance template. # noqa: E501
898
916
 
899
- Use this endpoint to retrieve all compliance rules, or a subset defined by an optional filter. # noqa: E501
917
+ Use this endpoint to fetch a specific compliance template. # noqa: E501
900
918
  This method makes a synchronous HTTP request by default. To make an
901
919
  asynchronous HTTP request, please pass async_req=True
902
920
 
903
- >>> thread = api.list_compliance_rules(as_at, page, limit, filter, property_keys, async_req=True)
921
+ >>> thread = api.get_compliance_template(scope, code, as_at, async_req=True)
904
922
  >>> result = thread.get()
905
923
 
906
- :param as_at: Optional. Asat time.
924
+ :param scope: Scope of TemplateID (required)
925
+ :type scope: str
926
+ :param code: Code of TemplateID (required)
927
+ :type code: str
928
+ :param as_at: Optional. The time at which to get results from. Default : latest
907
929
  :type as_at: datetime
908
- :param page: Optional. Pagination token.
909
- :type page: str
910
- :param limit: Optional. Entries per page.
911
- :type limit: int
912
- :param filter: Optional. Filter.
913
- :type filter: str
914
- :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.
915
- :type property_keys: List[str]
916
930
  :param async_req: Whether to execute the request asynchronously.
917
931
  :type async_req: bool, optional
918
- :param _request_timeout: timeout setting for this request.
919
- If one number provided, it will be total request
920
- timeout. It can also be a pair (tuple) of
921
- (connection, read) timeouts.
932
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
933
+ :param opts: Configuration options for this request
934
+ :type opts: ConfigurationOptions, optional
922
935
  :return: Returns the result object.
923
936
  If the method is called asynchronously,
924
937
  returns the request thread.
925
- :rtype: PagedResourceListOfComplianceRuleResponse
938
+ :rtype: ComplianceTemplate
926
939
  """
927
940
  kwargs['_return_http_data_only'] = True
928
941
  if '_preload_content' in kwargs:
929
- message = "Error! Please call the list_compliance_rules_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
942
+ message = "Error! Please call the get_compliance_template_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
930
943
  raise ValueError(message)
931
944
  if async_req is not None:
932
945
  kwargs['async_req'] = async_req
933
- return self.list_compliance_rules_with_http_info(as_at, page, limit, filter, property_keys, **kwargs) # noqa: E501
946
+ return self.get_compliance_template_with_http_info(scope, code, as_at, **kwargs) # noqa: E501
934
947
 
935
948
  @validate_arguments
936
- def list_compliance_rules_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, **kwargs) -> ApiResponse: # noqa: E501
937
- """[EARLY ACCESS] ListComplianceRules: List compliance rules. # noqa: E501
949
+ def get_compliance_template_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Scope of TemplateID")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Code of TemplateID")], as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, **kwargs) -> ApiResponse: # noqa: E501
950
+ """[EARLY ACCESS] GetComplianceTemplate: Get the requested compliance template. # noqa: E501
938
951
 
939
- Use this endpoint to retrieve all compliance rules, or a subset defined by an optional filter. # noqa: E501
952
+ Use this endpoint to fetch a specific compliance template. # noqa: E501
940
953
  This method makes a synchronous HTTP request by default. To make an
941
954
  asynchronous HTTP request, please pass async_req=True
942
955
 
943
- >>> thread = api.list_compliance_rules_with_http_info(as_at, page, limit, filter, property_keys, async_req=True)
956
+ >>> thread = api.get_compliance_template_with_http_info(scope, code, as_at, async_req=True)
944
957
  >>> result = thread.get()
945
958
 
946
- :param as_at: Optional. Asat time.
959
+ :param scope: Scope of TemplateID (required)
960
+ :type scope: str
961
+ :param code: Code of TemplateID (required)
962
+ :type code: str
963
+ :param as_at: Optional. The time at which to get results from. Default : latest
947
964
  :type as_at: datetime
948
- :param page: Optional. Pagination token.
949
- :type page: str
950
- :param limit: Optional. Entries per page.
951
- :type limit: int
952
- :param filter: Optional. Filter.
953
- :type filter: str
954
- :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.
955
- :type property_keys: List[str]
956
965
  :param async_req: Whether to execute the request asynchronously.
957
966
  :type async_req: bool, optional
958
967
  :param _preload_content: if False, the ApiResponse.data will
@@ -963,10 +972,9 @@ class ComplianceApi:
963
972
  :param _return_http_data_only: response data instead of ApiResponse
964
973
  object with status code, headers, etc
965
974
  :type _return_http_data_only: bool, optional
966
- :param _request_timeout: timeout setting for this request. If one
967
- number provided, it will be total request
968
- timeout. It can also be a pair (tuple) of
969
- (connection, read) timeouts.
975
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
976
+ :param opts: Configuration options for this request
977
+ :type opts: ConfigurationOptions, optional
970
978
  :param _request_auth: set to override the auth_settings for an a single
971
979
  request; this effectively ignores the authentication
972
980
  in the spec for a single request.
@@ -975,18 +983,16 @@ class ComplianceApi:
975
983
  :return: Returns the result object.
976
984
  If the method is called asynchronously,
977
985
  returns the request thread.
978
- :rtype: tuple(PagedResourceListOfComplianceRuleResponse, status_code(int), headers(HTTPHeaderDict))
986
+ :rtype: tuple(ComplianceTemplate, status_code(int), headers(HTTPHeaderDict))
979
987
  """
980
988
 
981
989
  _params = locals()
982
990
 
983
991
  _all_params = [
984
- 'as_at',
985
- 'page',
986
- 'limit',
987
- 'filter',
988
- 'property_keys'
989
- ]
992
+ 'scope',
993
+ 'code',
994
+ 'as_at'
995
+ ]
990
996
  _all_params.extend(
991
997
  [
992
998
  'async_req',
@@ -995,7 +1001,8 @@ class ComplianceApi:
995
1001
  '_request_timeout',
996
1002
  '_request_auth',
997
1003
  '_content_type',
998
- '_headers'
1004
+ '_headers',
1005
+ 'opts'
999
1006
  ]
1000
1007
  )
1001
1008
 
@@ -1004,7 +1011,7 @@ class ComplianceApi:
1004
1011
  if _key not in _all_params:
1005
1012
  raise ApiTypeError(
1006
1013
  "Got an unexpected keyword argument '%s'"
1007
- " to method list_compliance_rules" % _key
1014
+ " to method get_compliance_template" % _key
1008
1015
  )
1009
1016
  _params[_key] = _val
1010
1017
  del _params['kwargs']
@@ -1013,6 +1020,12 @@ class ComplianceApi:
1013
1020
 
1014
1021
  # process the path parameters
1015
1022
  _path_params = {}
1023
+ if _params['scope']:
1024
+ _path_params['scope'] = _params['scope']
1025
+
1026
+ if _params['code']:
1027
+ _path_params['code'] = _params['code']
1028
+
1016
1029
 
1017
1030
  # process the query parameters
1018
1031
  _query_params = []
@@ -1022,19 +1035,6 @@ class ComplianceApi:
1022
1035
  else:
1023
1036
  _query_params.append(('asAt', _params['as_at']))
1024
1037
 
1025
- if _params.get('page') is not None: # noqa: E501
1026
- _query_params.append(('page', _params['page']))
1027
-
1028
- if _params.get('limit') is not None: # noqa: E501
1029
- _query_params.append(('limit', _params['limit']))
1030
-
1031
- if _params.get('filter') is not None: # noqa: E501
1032
- _query_params.append(('filter', _params['filter']))
1033
-
1034
- if _params.get('property_keys') is not None: # noqa: E501
1035
- _query_params.append(('propertyKeys', _params['property_keys']))
1036
- _collection_formats['propertyKeys'] = 'multi'
1037
-
1038
1038
  # process the header parameters
1039
1039
  _header_params = dict(_params.get('_headers', {}))
1040
1040
  # process the form parameters
@@ -1050,12 +1050,12 @@ class ComplianceApi:
1050
1050
  _auth_settings = ['oauth2'] # noqa: E501
1051
1051
 
1052
1052
  _response_types_map = {
1053
- '200': "PagedResourceListOfComplianceRuleResponse",
1053
+ '200': "ComplianceTemplate",
1054
1054
  '400': "LusidValidationProblemDetails",
1055
1055
  }
1056
1056
 
1057
1057
  return self.api_client.call_api(
1058
- '/api/compliance/rules', 'GET',
1058
+ '/api/compliance/templates/{scope}/{code}', 'GET',
1059
1059
  _path_params,
1060
1060
  _query_params,
1061
1061
  _header_params,
@@ -1068,78 +1068,66 @@ class ComplianceApi:
1068
1068
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1069
1069
  _preload_content=_params.get('_preload_content', True),
1070
1070
  _request_timeout=_params.get('_request_timeout'),
1071
+ opts=_params.get('opts'),
1071
1072
  collection_formats=_collection_formats,
1072
1073
  _request_auth=_params.get('_request_auth'))
1073
1074
 
1074
1075
  @overload
1075
- async def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, **kwargs) -> PagedResourceListOfComplianceRunInfoV2: # noqa: E501
1076
+ async def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> DecoratedComplianceRunSummary: # noqa: E501
1076
1077
  ...
1077
1078
 
1078
1079
  @overload
1079
- def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfComplianceRunInfoV2: # noqa: E501
1080
+ def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=True, **kwargs) -> DecoratedComplianceRunSummary: # noqa: E501
1080
1081
  ...
1081
1082
 
1082
1083
  @validate_arguments
1083
- def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfComplianceRunInfoV2, Awaitable[PagedResourceListOfComplianceRunInfoV2]]: # noqa: E501
1084
- """[EARLY ACCESS] ListComplianceRuns: List historical compliance run identifiers. # noqa: E501
1084
+ def get_decorated_compliance_run_summary(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], async_req: Optional[bool]=None, **kwargs) -> Union[DecoratedComplianceRunSummary, Awaitable[DecoratedComplianceRunSummary]]: # noqa: E501
1085
+ """[EARLY ACCESS] GetDecoratedComplianceRunSummary: Get decorated summary results for a specific compliance run. # noqa: E501
1085
1086
 
1086
- Lists RunIds of prior compliance runs, or a subset with a filter. # noqa: E501
1087
+ Specify a run scope and code from a previously run compliance check to get an overview of result details. # noqa: E501
1087
1088
  This method makes a synchronous HTTP request by default. To make an
1088
1089
  asynchronous HTTP request, please pass async_req=True
1089
1090
 
1090
- >>> thread = api.list_compliance_runs(as_at, page, limit, filter, sort_by, async_req=True)
1091
+ >>> thread = api.get_decorated_compliance_run_summary(scope, code, async_req=True)
1091
1092
  >>> result = thread.get()
1092
1093
 
1093
- :param as_at: Optional. The time at which to get results from. Default : latest
1094
- :type as_at: datetime
1095
- :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
1096
- :type page: str
1097
- :param limit: Optional. When paginating, limit the number of returned results to this many.
1098
- :type limit: int
1099
- :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1100
- :type filter: str
1101
- :param sort_by: Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"
1102
- :type sort_by: List[str]
1094
+ :param scope: Required: Run Scope. (required)
1095
+ :type scope: str
1096
+ :param code: Required: Run Code. (required)
1097
+ :type code: str
1103
1098
  :param async_req: Whether to execute the request asynchronously.
1104
1099
  :type async_req: bool, optional
1105
- :param _request_timeout: timeout setting for this request.
1106
- If one number provided, it will be total request
1107
- timeout. It can also be a pair (tuple) of
1108
- (connection, read) timeouts.
1100
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1101
+ :param opts: Configuration options for this request
1102
+ :type opts: ConfigurationOptions, optional
1109
1103
  :return: Returns the result object.
1110
1104
  If the method is called asynchronously,
1111
1105
  returns the request thread.
1112
- :rtype: PagedResourceListOfComplianceRunInfoV2
1106
+ :rtype: DecoratedComplianceRunSummary
1113
1107
  """
1114
1108
  kwargs['_return_http_data_only'] = True
1115
1109
  if '_preload_content' in kwargs:
1116
- message = "Error! Please call the list_compliance_runs_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1110
+ message = "Error! Please call the get_decorated_compliance_run_summary_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1117
1111
  raise ValueError(message)
1118
1112
  if async_req is not None:
1119
1113
  kwargs['async_req'] = async_req
1120
- return self.list_compliance_runs_with_http_info(as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
1114
+ return self.get_decorated_compliance_run_summary_with_http_info(scope, code, **kwargs) # noqa: E501
1121
1115
 
1122
1116
  @validate_arguments
1123
- def list_compliance_runs_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, **kwargs) -> ApiResponse: # noqa: E501
1124
- """[EARLY ACCESS] ListComplianceRuns: List historical compliance run identifiers. # noqa: E501
1117
+ def get_decorated_compliance_run_summary_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Scope.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Run Code.")], **kwargs) -> ApiResponse: # noqa: E501
1118
+ """[EARLY ACCESS] GetDecoratedComplianceRunSummary: Get decorated summary results for a specific compliance run. # noqa: E501
1125
1119
 
1126
- Lists RunIds of prior compliance runs, or a subset with a filter. # noqa: E501
1120
+ Specify a run scope and code from a previously run compliance check to get an overview of result details. # noqa: E501
1127
1121
  This method makes a synchronous HTTP request by default. To make an
1128
1122
  asynchronous HTTP request, please pass async_req=True
1129
1123
 
1130
- >>> thread = api.list_compliance_runs_with_http_info(as_at, page, limit, filter, sort_by, async_req=True)
1124
+ >>> thread = api.get_decorated_compliance_run_summary_with_http_info(scope, code, async_req=True)
1131
1125
  >>> result = thread.get()
1132
1126
 
1133
- :param as_at: Optional. The time at which to get results from. Default : latest
1134
- :type as_at: datetime
1135
- :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
1136
- :type page: str
1137
- :param limit: Optional. When paginating, limit the number of returned results to this many.
1138
- :type limit: int
1139
- :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1140
- :type filter: str
1141
- :param sort_by: Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"
1142
- :type sort_by: List[str]
1127
+ :param scope: Required: Run Scope. (required)
1128
+ :type scope: str
1129
+ :param code: Required: Run Code. (required)
1130
+ :type code: str
1143
1131
  :param async_req: Whether to execute the request asynchronously.
1144
1132
  :type async_req: bool, optional
1145
1133
  :param _preload_content: if False, the ApiResponse.data will
@@ -1150,10 +1138,9 @@ class ComplianceApi:
1150
1138
  :param _return_http_data_only: response data instead of ApiResponse
1151
1139
  object with status code, headers, etc
1152
1140
  :type _return_http_data_only: bool, optional
1153
- :param _request_timeout: timeout setting for this request. If one
1154
- number provided, it will be total request
1155
- timeout. It can also be a pair (tuple) of
1156
- (connection, read) timeouts.
1141
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1142
+ :param opts: Configuration options for this request
1143
+ :type opts: ConfigurationOptions, optional
1157
1144
  :param _request_auth: set to override the auth_settings for an a single
1158
1145
  request; this effectively ignores the authentication
1159
1146
  in the spec for a single request.
@@ -1162,17 +1149,14 @@ class ComplianceApi:
1162
1149
  :return: Returns the result object.
1163
1150
  If the method is called asynchronously,
1164
1151
  returns the request thread.
1165
- :rtype: tuple(PagedResourceListOfComplianceRunInfoV2, status_code(int), headers(HTTPHeaderDict))
1152
+ :rtype: tuple(DecoratedComplianceRunSummary, status_code(int), headers(HTTPHeaderDict))
1166
1153
  """
1167
1154
 
1168
1155
  _params = locals()
1169
1156
 
1170
1157
  _all_params = [
1171
- 'as_at',
1172
- 'page',
1173
- 'limit',
1174
- 'filter',
1175
- 'sort_by'
1158
+ 'scope',
1159
+ 'code'
1176
1160
  ]
1177
1161
  _all_params.extend(
1178
1162
  [
@@ -1182,7 +1166,8 @@ class ComplianceApi:
1182
1166
  '_request_timeout',
1183
1167
  '_request_auth',
1184
1168
  '_content_type',
1185
- '_headers'
1169
+ '_headers',
1170
+ 'opts'
1186
1171
  ]
1187
1172
  )
1188
1173
 
@@ -1191,7 +1176,7 @@ class ComplianceApi:
1191
1176
  if _key not in _all_params:
1192
1177
  raise ApiTypeError(
1193
1178
  "Got an unexpected keyword argument '%s'"
1194
- " to method list_compliance_runs" % _key
1179
+ " to method get_decorated_compliance_run_summary" % _key
1195
1180
  )
1196
1181
  _params[_key] = _val
1197
1182
  del _params['kwargs']
@@ -1200,28 +1185,15 @@ class ComplianceApi:
1200
1185
 
1201
1186
  # process the path parameters
1202
1187
  _path_params = {}
1188
+ if _params['scope']:
1189
+ _path_params['scope'] = _params['scope']
1203
1190
 
1204
- # process the query parameters
1205
- _query_params = []
1206
- if _params.get('as_at') is not None: # noqa: E501
1207
- if isinstance(_params['as_at'], datetime):
1208
- _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1209
- else:
1210
- _query_params.append(('asAt', _params['as_at']))
1211
-
1212
- if _params.get('page') is not None: # noqa: E501
1213
- _query_params.append(('page', _params['page']))
1214
-
1215
- if _params.get('limit') is not None: # noqa: E501
1216
- _query_params.append(('limit', _params['limit']))
1217
-
1218
- if _params.get('filter') is not None: # noqa: E501
1219
- _query_params.append(('filter', _params['filter']))
1191
+ if _params['code']:
1192
+ _path_params['code'] = _params['code']
1220
1193
 
1221
- if _params.get('sort_by') is not None: # noqa: E501
1222
- _query_params.append(('sortBy', _params['sort_by']))
1223
- _collection_formats['sortBy'] = 'multi'
1224
1194
 
1195
+ # process the query parameters
1196
+ _query_params = []
1225
1197
  # process the header parameters
1226
1198
  _header_params = dict(_params.get('_headers', {}))
1227
1199
  # process the form parameters
@@ -1237,12 +1209,12 @@ class ComplianceApi:
1237
1209
  _auth_settings = ['oauth2'] # noqa: E501
1238
1210
 
1239
1211
  _response_types_map = {
1240
- '200': "PagedResourceListOfComplianceRunInfoV2",
1212
+ '200': "DecoratedComplianceRunSummary",
1241
1213
  '400': "LusidValidationProblemDetails",
1242
1214
  }
1243
1215
 
1244
1216
  return self.api_client.call_api(
1245
- '/api/compliance/runs', 'GET',
1217
+ '/api/compliance/runs/summary/{scope}/{code}/$decorate', 'GET',
1246
1218
  _path_params,
1247
1219
  _query_params,
1248
1220
  _header_params,
@@ -1255,78 +1227,78 @@ class ComplianceApi:
1255
1227
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1256
1228
  _preload_content=_params.get('_preload_content', True),
1257
1229
  _request_timeout=_params.get('_request_timeout'),
1230
+ opts=_params.get('opts'),
1258
1231
  collection_formats=_collection_formats,
1259
1232
  _request_auth=_params.get('_request_auth'))
1260
1233
 
1261
1234
  @overload
1262
- async def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, start : Annotated[Optional[StrictInt], Field(description="Optional. When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfComplianceTemplate: # noqa: E501
1235
+ async def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, **kwargs) -> PagedResourceListOfComplianceRuleResponse: # noqa: E501
1263
1236
  ...
1264
1237
 
1265
1238
  @overload
1266
- def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, start : Annotated[Optional[StrictInt], Field(description="Optional. When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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) -> PagedResourceListOfComplianceTemplate: # noqa: E501
1239
+ def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfComplianceRuleResponse: # noqa: E501
1267
1240
  ...
1268
1241
 
1269
1242
  @validate_arguments
1270
- def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, start : Annotated[Optional[StrictInt], Field(description="Optional. When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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[PagedResourceListOfComplianceTemplate, Awaitable[PagedResourceListOfComplianceTemplate]]: # noqa: E501
1271
- """[EARLY ACCESS] ListComplianceTemplates: List compliance templates. # noqa: E501
1243
+ def list_compliance_rules(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfComplianceRuleResponse, Awaitable[PagedResourceListOfComplianceRuleResponse]]: # noqa: E501
1244
+ """[EARLY ACCESS] ListComplianceRules: List compliance rules. # noqa: E501
1272
1245
 
1273
- Use this endpoint to fetch a list of all available compliance template ids, or a subset using a filter. # noqa: E501
1246
+ Use this endpoint to retrieve all compliance rules, or a subset defined by an optional filter. # noqa: E501
1274
1247
  This method makes a synchronous HTTP request by default. To make an
1275
1248
  asynchronous HTTP request, please pass async_req=True
1276
1249
 
1277
- >>> thread = api.list_compliance_templates(as_at, page, start, limit, filter, async_req=True)
1250
+ >>> thread = api.list_compliance_rules(as_at, page, limit, filter, property_keys, async_req=True)
1278
1251
  >>> result = thread.get()
1279
1252
 
1280
- :param as_at: Optional. The time at which to get results from. Default : latest
1253
+ :param as_at: Optional. Asat time.
1281
1254
  :type as_at: datetime
1282
- :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
1255
+ :param page: Optional. Pagination token.
1283
1256
  :type page: str
1284
- :param start: Optional. When paginating, skip this number of results.
1285
- :type start: int
1286
- :param limit: Optional. When paginating, limit the number of returned results to this many.
1257
+ :param limit: Optional. Entries per page.
1287
1258
  :type limit: int
1288
- :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1259
+ :param filter: Optional. Filter.
1289
1260
  :type filter: str
1261
+ :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.
1262
+ :type property_keys: List[str]
1290
1263
  :param async_req: Whether to execute the request asynchronously.
1291
1264
  :type async_req: bool, optional
1292
- :param _request_timeout: timeout setting for this request.
1293
- If one number provided, it will be total request
1294
- timeout. It can also be a pair (tuple) of
1295
- (connection, read) timeouts.
1265
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1266
+ :param opts: Configuration options for this request
1267
+ :type opts: ConfigurationOptions, optional
1296
1268
  :return: Returns the result object.
1297
1269
  If the method is called asynchronously,
1298
1270
  returns the request thread.
1299
- :rtype: PagedResourceListOfComplianceTemplate
1271
+ :rtype: PagedResourceListOfComplianceRuleResponse
1300
1272
  """
1301
1273
  kwargs['_return_http_data_only'] = True
1302
1274
  if '_preload_content' in kwargs:
1303
- message = "Error! Please call the list_compliance_templates_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1275
+ message = "Error! Please call the list_compliance_rules_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1304
1276
  raise ValueError(message)
1305
1277
  if async_req is not None:
1306
1278
  kwargs['async_req'] = async_req
1307
- return self.list_compliance_templates_with_http_info(as_at, page, start, limit, filter, **kwargs) # noqa: E501
1279
+ return self.list_compliance_rules_with_http_info(as_at, page, limit, filter, property_keys, **kwargs) # noqa: E501
1308
1280
 
1309
1281
  @validate_arguments
1310
- def list_compliance_templates_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.")] = None, start : Annotated[Optional[StrictInt], Field(description="Optional. When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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
1311
- """[EARLY ACCESS] ListComplianceTemplates: List compliance templates. # noqa: E501
1282
+ def list_compliance_rules_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. Asat time.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. Pagination token.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. Entries per page.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Filter.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1283
+ """[EARLY ACCESS] ListComplianceRules: List compliance rules. # noqa: E501
1312
1284
 
1313
- Use this endpoint to fetch a list of all available compliance template ids, or a subset using a filter. # noqa: E501
1285
+ Use this endpoint to retrieve all compliance rules, or a subset defined by an optional filter. # noqa: E501
1314
1286
  This method makes a synchronous HTTP request by default. To make an
1315
1287
  asynchronous HTTP request, please pass async_req=True
1316
1288
 
1317
- >>> thread = api.list_compliance_templates_with_http_info(as_at, page, start, limit, filter, async_req=True)
1289
+ >>> thread = api.list_compliance_rules_with_http_info(as_at, page, limit, filter, property_keys, async_req=True)
1318
1290
  >>> result = thread.get()
1319
1291
 
1320
- :param as_at: Optional. The time at which to get results from. Default : latest
1292
+ :param as_at: Optional. Asat time.
1321
1293
  :type as_at: datetime
1322
- :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
1294
+ :param page: Optional. Pagination token.
1323
1295
  :type page: str
1324
- :param start: Optional. When paginating, skip this number of results.
1325
- :type start: int
1326
- :param limit: Optional. When paginating, limit the number of returned results to this many.
1296
+ :param limit: Optional. Entries per page.
1327
1297
  :type limit: int
1328
- :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1298
+ :param filter: Optional. Filter.
1329
1299
  :type filter: str
1300
+ :param property_keys: A list of property keys from the 'Compliance' domain to decorate onto each rule. These must take the format {domain}/{scope}/{code}, for example 'Compliance/live/UCITS'. If not provided will return all the entitled properties for each rule.
1301
+ :type property_keys: List[str]
1330
1302
  :param async_req: Whether to execute the request asynchronously.
1331
1303
  :type async_req: bool, optional
1332
1304
  :param _preload_content: if False, the ApiResponse.data will
@@ -1337,10 +1309,9 @@ class ComplianceApi:
1337
1309
  :param _return_http_data_only: response data instead of ApiResponse
1338
1310
  object with status code, headers, etc
1339
1311
  :type _return_http_data_only: bool, optional
1340
- :param _request_timeout: timeout setting for this request. If one
1341
- number provided, it will be total request
1342
- timeout. It can also be a pair (tuple) of
1343
- (connection, read) timeouts.
1312
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1313
+ :param opts: Configuration options for this request
1314
+ :type opts: ConfigurationOptions, optional
1344
1315
  :param _request_auth: set to override the auth_settings for an a single
1345
1316
  request; this effectively ignores the authentication
1346
1317
  in the spec for a single request.
@@ -1349,7 +1320,7 @@ class ComplianceApi:
1349
1320
  :return: Returns the result object.
1350
1321
  If the method is called asynchronously,
1351
1322
  returns the request thread.
1352
- :rtype: tuple(PagedResourceListOfComplianceTemplate, status_code(int), headers(HTTPHeaderDict))
1323
+ :rtype: tuple(PagedResourceListOfComplianceRuleResponse, status_code(int), headers(HTTPHeaderDict))
1353
1324
  """
1354
1325
 
1355
1326
  _params = locals()
@@ -1357,9 +1328,9 @@ class ComplianceApi:
1357
1328
  _all_params = [
1358
1329
  'as_at',
1359
1330
  'page',
1360
- 'start',
1361
1331
  'limit',
1362
- 'filter'
1332
+ 'filter',
1333
+ 'property_keys'
1363
1334
  ]
1364
1335
  _all_params.extend(
1365
1336
  [
@@ -1369,7 +1340,8 @@ class ComplianceApi:
1369
1340
  '_request_timeout',
1370
1341
  '_request_auth',
1371
1342
  '_content_type',
1372
- '_headers'
1343
+ '_headers',
1344
+ 'opts'
1373
1345
  ]
1374
1346
  )
1375
1347
 
@@ -1378,7 +1350,7 @@ class ComplianceApi:
1378
1350
  if _key not in _all_params:
1379
1351
  raise ApiTypeError(
1380
1352
  "Got an unexpected keyword argument '%s'"
1381
- " to method list_compliance_templates" % _key
1353
+ " to method list_compliance_rules" % _key
1382
1354
  )
1383
1355
  _params[_key] = _val
1384
1356
  del _params['kwargs']
@@ -1399,15 +1371,16 @@ class ComplianceApi:
1399
1371
  if _params.get('page') is not None: # noqa: E501
1400
1372
  _query_params.append(('page', _params['page']))
1401
1373
 
1402
- if _params.get('start') is not None: # noqa: E501
1403
- _query_params.append(('start', _params['start']))
1404
-
1405
1374
  if _params.get('limit') is not None: # noqa: E501
1406
1375
  _query_params.append(('limit', _params['limit']))
1407
1376
 
1408
1377
  if _params.get('filter') is not None: # noqa: E501
1409
1378
  _query_params.append(('filter', _params['filter']))
1410
1379
 
1380
+ if _params.get('property_keys') is not None: # noqa: E501
1381
+ _query_params.append(('propertyKeys', _params['property_keys']))
1382
+ _collection_formats['propertyKeys'] = 'multi'
1383
+
1411
1384
  # process the header parameters
1412
1385
  _header_params = dict(_params.get('_headers', {}))
1413
1386
  # process the form parameters
@@ -1423,12 +1396,12 @@ class ComplianceApi:
1423
1396
  _auth_settings = ['oauth2'] # noqa: E501
1424
1397
 
1425
1398
  _response_types_map = {
1426
- '200': "PagedResourceListOfComplianceTemplate",
1399
+ '200': "PagedResourceListOfComplianceRuleResponse",
1427
1400
  '400': "LusidValidationProblemDetails",
1428
1401
  }
1429
1402
 
1430
1403
  return self.api_client.call_api(
1431
- '/api/compliance/templates', 'GET',
1404
+ '/api/compliance/rules', 'GET',
1432
1405
  _path_params,
1433
1406
  _query_params,
1434
1407
  _header_params,
@@ -1441,78 +1414,78 @@ class ComplianceApi:
1441
1414
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1442
1415
  _preload_content=_params.get('_preload_content', True),
1443
1416
  _request_timeout=_params.get('_request_timeout'),
1417
+ opts=_params.get('opts'),
1444
1418
  collection_formats=_collection_formats,
1445
1419
  _request_auth=_params.get('_request_auth'))
1446
1420
 
1447
1421
  @overload
1448
- async def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1422
+ async def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, **kwargs) -> PagedResourceListOfComplianceRunInfoV2: # noqa: E501
1449
1423
  ...
1450
1424
 
1451
1425
  @overload
1452
- def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1426
+ def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfComplianceRunInfoV2: # noqa: E501
1453
1427
  ...
1454
1428
 
1455
1429
  @validate_arguments
1456
- def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRunInfoV2, Awaitable[ComplianceRunInfoV2]]: # noqa: E501
1457
- """[EARLY ACCESS] RunCompliance: Run a compliance check. # noqa: E501
1430
+ def list_compliance_runs(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfComplianceRunInfoV2, Awaitable[PagedResourceListOfComplianceRunInfoV2]]: # noqa: E501
1431
+ """[EARLY ACCESS] ListComplianceRuns: List historical compliance run identifiers. # noqa: E501
1458
1432
 
1459
- Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
1433
+ Lists RunIds of prior compliance runs, or a subset with a filter. # noqa: E501
1460
1434
  This method makes a synchronous HTTP request by default. To make an
1461
1435
  asynchronous HTTP request, please pass async_req=True
1462
1436
 
1463
- >>> thread = api.run_compliance(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, async_req=True)
1437
+ >>> thread = api.list_compliance_runs(as_at, page, limit, filter, sort_by, async_req=True)
1464
1438
  >>> result = thread.get()
1465
1439
 
1466
- :param run_scope: Required: Scope to save the run results in. (required)
1467
- :type run_scope: str
1468
- :param rule_scope: Required: Scope from which to select rules to be run. (required)
1469
- :type rule_scope: str
1470
- :param is_pre_trade: Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false (required)
1471
- :type is_pre_trade: bool
1472
- :param recipe_id_scope: Required: the scope of the recipe to be used (required)
1473
- :type recipe_id_scope: str
1474
- :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
1475
- :type recipe_id_code: str
1440
+ :param as_at: Optional. The time at which to get results from. Default : latest
1441
+ :type as_at: datetime
1442
+ :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.
1443
+ :type page: str
1444
+ :param limit: Optional. When paginating, limit the number of returned results to this many.
1445
+ :type limit: int
1446
+ :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1447
+ :type filter: str
1448
+ :param sort_by: Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"
1449
+ :type sort_by: List[str]
1476
1450
  :param async_req: Whether to execute the request asynchronously.
1477
1451
  :type async_req: bool, optional
1478
- :param _request_timeout: timeout setting for this request.
1479
- If one number provided, it will be total request
1480
- timeout. It can also be a pair (tuple) of
1481
- (connection, read) timeouts.
1452
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1453
+ :param opts: Configuration options for this request
1454
+ :type opts: ConfigurationOptions, optional
1482
1455
  :return: Returns the result object.
1483
1456
  If the method is called asynchronously,
1484
1457
  returns the request thread.
1485
- :rtype: ComplianceRunInfoV2
1458
+ :rtype: PagedResourceListOfComplianceRunInfoV2
1486
1459
  """
1487
1460
  kwargs['_return_http_data_only'] = True
1488
1461
  if '_preload_content' in kwargs:
1489
- message = "Error! Please call the run_compliance_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1462
+ message = "Error! Please call the list_compliance_runs_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1490
1463
  raise ValueError(message)
1491
1464
  if async_req is not None:
1492
1465
  kwargs['async_req'] = async_req
1493
- return self.run_compliance_with_http_info(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, **kwargs) # noqa: E501
1466
+ return self.list_compliance_runs_with_http_info(as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
1494
1467
 
1495
1468
  @validate_arguments
1496
- def run_compliance_with_http_info(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], **kwargs) -> ApiResponse: # noqa: E501
1497
- """[EARLY ACCESS] RunCompliance: Run a compliance check. # noqa: E501
1469
+ def list_compliance_runs_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. 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="Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"")] = None, **kwargs) -> ApiResponse: # noqa: E501
1470
+ """[EARLY ACCESS] ListComplianceRuns: List historical compliance run identifiers. # noqa: E501
1498
1471
 
1499
- Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
1472
+ Lists RunIds of prior compliance runs, or a subset with a filter. # noqa: E501
1500
1473
  This method makes a synchronous HTTP request by default. To make an
1501
1474
  asynchronous HTTP request, please pass async_req=True
1502
1475
 
1503
- >>> thread = api.run_compliance_with_http_info(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, async_req=True)
1476
+ >>> thread = api.list_compliance_runs_with_http_info(as_at, page, limit, filter, sort_by, async_req=True)
1504
1477
  >>> result = thread.get()
1505
1478
 
1506
- :param run_scope: Required: Scope to save the run results in. (required)
1507
- :type run_scope: str
1508
- :param rule_scope: Required: Scope from which to select rules to be run. (required)
1509
- :type rule_scope: str
1510
- :param is_pre_trade: Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false (required)
1511
- :type is_pre_trade: bool
1512
- :param recipe_id_scope: Required: the scope of the recipe to be used (required)
1513
- :type recipe_id_scope: str
1514
- :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
1515
- :type recipe_id_code: str
1479
+ :param as_at: Optional. The time at which to get results from. Default : latest
1480
+ :type as_at: datetime
1481
+ :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.
1482
+ :type page: str
1483
+ :param limit: Optional. When paginating, limit the number of returned results to this many.
1484
+ :type limit: int
1485
+ :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1486
+ :type filter: str
1487
+ :param sort_by: Optional. A list of field names to sort by, each suffixed by \"ASC\" or \"DESC\"
1488
+ :type sort_by: List[str]
1516
1489
  :param async_req: Whether to execute the request asynchronously.
1517
1490
  :type async_req: bool, optional
1518
1491
  :param _preload_content: if False, the ApiResponse.data will
@@ -1523,10 +1496,9 @@ class ComplianceApi:
1523
1496
  :param _return_http_data_only: response data instead of ApiResponse
1524
1497
  object with status code, headers, etc
1525
1498
  :type _return_http_data_only: bool, optional
1526
- :param _request_timeout: timeout setting for this request. If one
1527
- number provided, it will be total request
1528
- timeout. It can also be a pair (tuple) of
1529
- (connection, read) timeouts.
1499
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1500
+ :param opts: Configuration options for this request
1501
+ :type opts: ConfigurationOptions, optional
1530
1502
  :param _request_auth: set to override the auth_settings for an a single
1531
1503
  request; this effectively ignores the authentication
1532
1504
  in the spec for a single request.
@@ -1535,17 +1507,17 @@ class ComplianceApi:
1535
1507
  :return: Returns the result object.
1536
1508
  If the method is called asynchronously,
1537
1509
  returns the request thread.
1538
- :rtype: tuple(ComplianceRunInfoV2, status_code(int), headers(HTTPHeaderDict))
1510
+ :rtype: tuple(PagedResourceListOfComplianceRunInfoV2, status_code(int), headers(HTTPHeaderDict))
1539
1511
  """
1540
1512
 
1541
1513
  _params = locals()
1542
1514
 
1543
1515
  _all_params = [
1544
- 'run_scope',
1545
- 'rule_scope',
1546
- 'is_pre_trade',
1547
- 'recipe_id_scope',
1548
- 'recipe_id_code'
1516
+ 'as_at',
1517
+ 'page',
1518
+ 'limit',
1519
+ 'filter',
1520
+ 'sort_by'
1549
1521
  ]
1550
1522
  _all_params.extend(
1551
1523
  [
@@ -1555,7 +1527,8 @@ class ComplianceApi:
1555
1527
  '_request_timeout',
1556
1528
  '_request_auth',
1557
1529
  '_content_type',
1558
- '_headers'
1530
+ '_headers',
1531
+ 'opts'
1559
1532
  ]
1560
1533
  )
1561
1534
 
@@ -1564,7 +1537,7 @@ class ComplianceApi:
1564
1537
  if _key not in _all_params:
1565
1538
  raise ApiTypeError(
1566
1539
  "Got an unexpected keyword argument '%s'"
1567
- " to method run_compliance" % _key
1540
+ " to method list_compliance_runs" % _key
1568
1541
  )
1569
1542
  _params[_key] = _val
1570
1543
  del _params['kwargs']
@@ -1576,13 +1549,378 @@ class ComplianceApi:
1576
1549
 
1577
1550
  # process the query parameters
1578
1551
  _query_params = []
1579
- if _params.get('run_scope') is not None: # noqa: E501
1580
- _query_params.append(('runScope', _params['run_scope']))
1552
+ if _params.get('as_at') is not None: # noqa: E501
1553
+ if isinstance(_params['as_at'], datetime):
1554
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1555
+ else:
1556
+ _query_params.append(('asAt', _params['as_at']))
1581
1557
 
1582
- if _params.get('rule_scope') is not None: # noqa: E501
1583
- _query_params.append(('ruleScope', _params['rule_scope']))
1558
+ if _params.get('page') is not None: # noqa: E501
1559
+ _query_params.append(('page', _params['page']))
1584
1560
 
1585
- if _params.get('is_pre_trade') is not None: # noqa: E501
1561
+ if _params.get('limit') is not None: # noqa: E501
1562
+ _query_params.append(('limit', _params['limit']))
1563
+
1564
+ if _params.get('filter') is not None: # noqa: E501
1565
+ _query_params.append(('filter', _params['filter']))
1566
+
1567
+ if _params.get('sort_by') is not None: # noqa: E501
1568
+ _query_params.append(('sortBy', _params['sort_by']))
1569
+ _collection_formats['sortBy'] = 'multi'
1570
+
1571
+ # process the header parameters
1572
+ _header_params = dict(_params.get('_headers', {}))
1573
+ # process the form parameters
1574
+ _form_params = []
1575
+ _files = {}
1576
+ # process the body parameter
1577
+ _body_params = None
1578
+ # set the HTTP header `Accept`
1579
+ _header_params['Accept'] = self.api_client.select_header_accept(
1580
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1581
+
1582
+ # authentication setting
1583
+ _auth_settings = ['oauth2'] # noqa: E501
1584
+
1585
+ _response_types_map = {
1586
+ '200': "PagedResourceListOfComplianceRunInfoV2",
1587
+ '400': "LusidValidationProblemDetails",
1588
+ }
1589
+
1590
+ return self.api_client.call_api(
1591
+ '/api/compliance/runs', 'GET',
1592
+ _path_params,
1593
+ _query_params,
1594
+ _header_params,
1595
+ body=_body_params,
1596
+ post_params=_form_params,
1597
+ files=_files,
1598
+ response_types_map=_response_types_map,
1599
+ auth_settings=_auth_settings,
1600
+ async_req=_params.get('async_req'),
1601
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1602
+ _preload_content=_params.get('_preload_content', True),
1603
+ _request_timeout=_params.get('_request_timeout'),
1604
+ opts=_params.get('opts'),
1605
+ collection_formats=_collection_formats,
1606
+ _request_auth=_params.get('_request_auth'))
1607
+
1608
+ @overload
1609
+ async def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfComplianceTemplate: # noqa: E501
1610
+ ...
1611
+
1612
+ @overload
1613
+ def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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) -> PagedResourceListOfComplianceTemplate: # noqa: E501
1614
+ ...
1615
+
1616
+ @validate_arguments
1617
+ def list_compliance_templates(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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[PagedResourceListOfComplianceTemplate, Awaitable[PagedResourceListOfComplianceTemplate]]: # noqa: E501
1618
+ """[EARLY ACCESS] ListComplianceTemplates: List compliance templates. # noqa: E501
1619
+
1620
+ Use this endpoint to fetch a list of all available compliance template ids, or a subset using a filter. # noqa: E501
1621
+ This method makes a synchronous HTTP request by default. To make an
1622
+ asynchronous HTTP request, please pass async_req=True
1623
+
1624
+ >>> thread = api.list_compliance_templates(as_at, page, limit, filter, async_req=True)
1625
+ >>> result = thread.get()
1626
+
1627
+ :param as_at: Optional. The time at which to get results from. Default : latest
1628
+ :type as_at: datetime
1629
+ :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.
1630
+ :type page: str
1631
+ :param limit: Optional. When paginating, limit the number of returned results to this many.
1632
+ :type limit: int
1633
+ :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1634
+ :type filter: str
1635
+ :param async_req: Whether to execute the request asynchronously.
1636
+ :type async_req: bool, optional
1637
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1638
+ :param opts: Configuration options for this request
1639
+ :type opts: ConfigurationOptions, optional
1640
+ :return: Returns the result object.
1641
+ If the method is called asynchronously,
1642
+ returns the request thread.
1643
+ :rtype: PagedResourceListOfComplianceTemplate
1644
+ """
1645
+ kwargs['_return_http_data_only'] = True
1646
+ if '_preload_content' in kwargs:
1647
+ message = "Error! Please call the list_compliance_templates_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1648
+ raise ValueError(message)
1649
+ if async_req is not None:
1650
+ kwargs['async_req'] = async_req
1651
+ return self.list_compliance_templates_with_http_info(as_at, page, limit, filter, **kwargs) # noqa: E501
1652
+
1653
+ @validate_arguments
1654
+ def list_compliance_templates_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="Optional. The time at which to get results from. Default : latest")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="Optional. When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Optional. 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
1655
+ """[EARLY ACCESS] ListComplianceTemplates: List compliance templates. # noqa: E501
1656
+
1657
+ Use this endpoint to fetch a list of all available compliance template ids, or a subset using a filter. # noqa: E501
1658
+ This method makes a synchronous HTTP request by default. To make an
1659
+ asynchronous HTTP request, please pass async_req=True
1660
+
1661
+ >>> thread = api.list_compliance_templates_with_http_info(as_at, page, limit, filter, async_req=True)
1662
+ >>> result = thread.get()
1663
+
1664
+ :param as_at: Optional. The time at which to get results from. Default : latest
1665
+ :type as_at: datetime
1666
+ :param page: Optional. The pagination token to use to continue listing compliance runs from a previous call to list compliance runs. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, and asAt fields must not have changed since the original request.
1667
+ :type page: str
1668
+ :param limit: Optional. When paginating, limit the number of returned results to this many.
1669
+ :type limit: int
1670
+ :param filter: Optional. Expression to filter the result set. Read more about filtering results from LUSID here https://support.lusid.com/filtering-results-from-lusid.
1671
+ :type filter: str
1672
+ :param async_req: Whether to execute the request asynchronously.
1673
+ :type async_req: bool, optional
1674
+ :param _preload_content: if False, the ApiResponse.data will
1675
+ be set to none and raw_data will store the
1676
+ HTTP response body without reading/decoding.
1677
+ Default is True.
1678
+ :type _preload_content: bool, optional
1679
+ :param _return_http_data_only: response data instead of ApiResponse
1680
+ object with status code, headers, etc
1681
+ :type _return_http_data_only: bool, optional
1682
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1683
+ :param opts: Configuration options for this request
1684
+ :type opts: ConfigurationOptions, optional
1685
+ :param _request_auth: set to override the auth_settings for an a single
1686
+ request; this effectively ignores the authentication
1687
+ in the spec for a single request.
1688
+ :type _request_auth: dict, optional
1689
+ :type _content_type: string, optional: force content-type for the request
1690
+ :return: Returns the result object.
1691
+ If the method is called asynchronously,
1692
+ returns the request thread.
1693
+ :rtype: tuple(PagedResourceListOfComplianceTemplate, status_code(int), headers(HTTPHeaderDict))
1694
+ """
1695
+
1696
+ _params = locals()
1697
+
1698
+ _all_params = [
1699
+ 'as_at',
1700
+ 'page',
1701
+ 'limit',
1702
+ 'filter'
1703
+ ]
1704
+ _all_params.extend(
1705
+ [
1706
+ 'async_req',
1707
+ '_return_http_data_only',
1708
+ '_preload_content',
1709
+ '_request_timeout',
1710
+ '_request_auth',
1711
+ '_content_type',
1712
+ '_headers',
1713
+ 'opts'
1714
+ ]
1715
+ )
1716
+
1717
+ # validate the arguments
1718
+ for _key, _val in _params['kwargs'].items():
1719
+ if _key not in _all_params:
1720
+ raise ApiTypeError(
1721
+ "Got an unexpected keyword argument '%s'"
1722
+ " to method list_compliance_templates" % _key
1723
+ )
1724
+ _params[_key] = _val
1725
+ del _params['kwargs']
1726
+
1727
+ _collection_formats = {}
1728
+
1729
+ # process the path parameters
1730
+ _path_params = {}
1731
+
1732
+ # process the query parameters
1733
+ _query_params = []
1734
+ if _params.get('as_at') is not None: # noqa: E501
1735
+ if isinstance(_params['as_at'], datetime):
1736
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1737
+ else:
1738
+ _query_params.append(('asAt', _params['as_at']))
1739
+
1740
+ if _params.get('page') is not None: # noqa: E501
1741
+ _query_params.append(('page', _params['page']))
1742
+
1743
+ if _params.get('limit') is not None: # noqa: E501
1744
+ _query_params.append(('limit', _params['limit']))
1745
+
1746
+ if _params.get('filter') is not None: # noqa: E501
1747
+ _query_params.append(('filter', _params['filter']))
1748
+
1749
+ # process the header parameters
1750
+ _header_params = dict(_params.get('_headers', {}))
1751
+ # process the form parameters
1752
+ _form_params = []
1753
+ _files = {}
1754
+ # process the body parameter
1755
+ _body_params = None
1756
+ # set the HTTP header `Accept`
1757
+ _header_params['Accept'] = self.api_client.select_header_accept(
1758
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1759
+
1760
+ # authentication setting
1761
+ _auth_settings = ['oauth2'] # noqa: E501
1762
+
1763
+ _response_types_map = {
1764
+ '200': "PagedResourceListOfComplianceTemplate",
1765
+ '400': "LusidValidationProblemDetails",
1766
+ }
1767
+
1768
+ return self.api_client.call_api(
1769
+ '/api/compliance/templates', 'GET',
1770
+ _path_params,
1771
+ _query_params,
1772
+ _header_params,
1773
+ body=_body_params,
1774
+ post_params=_form_params,
1775
+ files=_files,
1776
+ response_types_map=_response_types_map,
1777
+ auth_settings=_auth_settings,
1778
+ async_req=_params.get('async_req'),
1779
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1780
+ _preload_content=_params.get('_preload_content', True),
1781
+ _request_timeout=_params.get('_request_timeout'),
1782
+ opts=_params.get('opts'),
1783
+ collection_formats=_collection_formats,
1784
+ _request_auth=_params.get('_request_auth'))
1785
+
1786
+ @overload
1787
+ async def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1788
+ ...
1789
+
1790
+ @overload
1791
+ def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1792
+ ...
1793
+
1794
+ @validate_arguments
1795
+ def run_compliance(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRunInfoV2, Awaitable[ComplianceRunInfoV2]]: # noqa: E501
1796
+ """[EARLY ACCESS] RunCompliance: Run a compliance check. # noqa: E501
1797
+
1798
+ Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
1799
+ This method makes a synchronous HTTP request by default. To make an
1800
+ asynchronous HTTP request, please pass async_req=True
1801
+
1802
+ >>> thread = api.run_compliance(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, async_req=True)
1803
+ >>> result = thread.get()
1804
+
1805
+ :param run_scope: Required: Scope to save the run results in. (required)
1806
+ :type run_scope: str
1807
+ :param rule_scope: Required: Scope from which to select rules to be run. (required)
1808
+ :type rule_scope: str
1809
+ :param is_pre_trade: Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false (required)
1810
+ :type is_pre_trade: bool
1811
+ :param recipe_id_scope: Required: the scope of the recipe to be used (required)
1812
+ :type recipe_id_scope: str
1813
+ :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
1814
+ :type recipe_id_code: str
1815
+ :param async_req: Whether to execute the request asynchronously.
1816
+ :type async_req: bool, optional
1817
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1818
+ :param opts: Configuration options for this request
1819
+ :type opts: ConfigurationOptions, optional
1820
+ :return: Returns the result object.
1821
+ If the method is called asynchronously,
1822
+ returns the request thread.
1823
+ :rtype: ComplianceRunInfoV2
1824
+ """
1825
+ kwargs['_return_http_data_only'] = True
1826
+ if '_preload_content' in kwargs:
1827
+ message = "Error! Please call the run_compliance_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1828
+ raise ValueError(message)
1829
+ if async_req is not None:
1830
+ kwargs['async_req'] = async_req
1831
+ return self.run_compliance_with_http_info(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, **kwargs) # noqa: E501
1832
+
1833
+ @validate_arguments
1834
+ def run_compliance_with_http_info(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], is_pre_trade : Annotated[StrictBool, Field(..., description="Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], **kwargs) -> ApiResponse: # noqa: E501
1835
+ """[EARLY ACCESS] RunCompliance: Run a compliance check. # noqa: E501
1836
+
1837
+ Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
1838
+ This method makes a synchronous HTTP request by default. To make an
1839
+ asynchronous HTTP request, please pass async_req=True
1840
+
1841
+ >>> thread = api.run_compliance_with_http_info(run_scope, rule_scope, is_pre_trade, recipe_id_scope, recipe_id_code, async_req=True)
1842
+ >>> result = thread.get()
1843
+
1844
+ :param run_scope: Required: Scope to save the run results in. (required)
1845
+ :type run_scope: str
1846
+ :param rule_scope: Required: Scope from which to select rules to be run. (required)
1847
+ :type rule_scope: str
1848
+ :param is_pre_trade: Required: Boolean flag indicating if a run should be PreTrade (Including orders). For post-trade only, set to false (required)
1849
+ :type is_pre_trade: bool
1850
+ :param recipe_id_scope: Required: the scope of the recipe to be used (required)
1851
+ :type recipe_id_scope: str
1852
+ :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
1853
+ :type recipe_id_code: 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(ComplianceRunInfoV2, status_code(int), headers(HTTPHeaderDict))
1876
+ """
1877
+
1878
+ _params = locals()
1879
+
1880
+ _all_params = [
1881
+ 'run_scope',
1882
+ 'rule_scope',
1883
+ 'is_pre_trade',
1884
+ 'recipe_id_scope',
1885
+ 'recipe_id_code'
1886
+ ]
1887
+ _all_params.extend(
1888
+ [
1889
+ 'async_req',
1890
+ '_return_http_data_only',
1891
+ '_preload_content',
1892
+ '_request_timeout',
1893
+ '_request_auth',
1894
+ '_content_type',
1895
+ '_headers',
1896
+ 'opts'
1897
+ ]
1898
+ )
1899
+
1900
+ # validate the arguments
1901
+ for _key, _val in _params['kwargs'].items():
1902
+ if _key not in _all_params:
1903
+ raise ApiTypeError(
1904
+ "Got an unexpected keyword argument '%s'"
1905
+ " to method run_compliance" % _key
1906
+ )
1907
+ _params[_key] = _val
1908
+ del _params['kwargs']
1909
+
1910
+ _collection_formats = {}
1911
+
1912
+ # process the path parameters
1913
+ _path_params = {}
1914
+
1915
+ # process the query parameters
1916
+ _query_params = []
1917
+ if _params.get('run_scope') is not None: # noqa: E501
1918
+ _query_params.append(('runScope', _params['run_scope']))
1919
+
1920
+ if _params.get('rule_scope') is not None: # noqa: E501
1921
+ _query_params.append(('ruleScope', _params['rule_scope']))
1922
+
1923
+ if _params.get('is_pre_trade') is not None: # noqa: E501
1586
1924
  _query_params.append(('isPreTrade', _params['is_pre_trade']))
1587
1925
 
1588
1926
  if _params.get('recipe_id_scope') is not None: # noqa: E501
@@ -1611,7 +1949,371 @@ class ComplianceApi:
1611
1949
  }
1612
1950
 
1613
1951
  return self.api_client.call_api(
1614
- '/api/compliance/runs', 'POST',
1952
+ '/api/compliance/runs', 'POST',
1953
+ _path_params,
1954
+ _query_params,
1955
+ _header_params,
1956
+ body=_body_params,
1957
+ post_params=_form_params,
1958
+ files=_files,
1959
+ response_types_map=_response_types_map,
1960
+ auth_settings=_auth_settings,
1961
+ async_req=_params.get('async_req'),
1962
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1963
+ _preload_content=_params.get('_preload_content', True),
1964
+ _request_timeout=_params.get('_request_timeout'),
1965
+ opts=_params.get('opts'),
1966
+ collection_formats=_collection_formats,
1967
+ _request_auth=_params.get('_request_auth'))
1968
+
1969
+ @overload
1970
+ async def run_compliance_preview(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], compliance_run_configuration : Annotated[Optional[ComplianceRunConfiguration], Field(description="Configuration options for the compliance run.")] = None, **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1971
+ ...
1972
+
1973
+ @overload
1974
+ def run_compliance_preview(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], compliance_run_configuration : Annotated[Optional[ComplianceRunConfiguration], Field(description="Configuration options for the compliance run.")] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceRunInfoV2: # noqa: E501
1975
+ ...
1976
+
1977
+ @validate_arguments
1978
+ def run_compliance_preview(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], compliance_run_configuration : Annotated[Optional[ComplianceRunConfiguration], Field(description="Configuration options for the compliance run.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRunInfoV2, Awaitable[ComplianceRunInfoV2]]: # noqa: E501
1979
+ """[EARLY ACCESS] RunCompliancePreview: Run a compliance check. # noqa: E501
1980
+
1981
+ Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
1982
+ This method makes a synchronous HTTP request by default. To make an
1983
+ asynchronous HTTP request, please pass async_req=True
1984
+
1985
+ >>> thread = api.run_compliance_preview(run_scope, rule_scope, recipe_id_scope, recipe_id_code, compliance_run_configuration, async_req=True)
1986
+ >>> result = thread.get()
1987
+
1988
+ :param run_scope: Required: Scope to save the run results in. (required)
1989
+ :type run_scope: str
1990
+ :param rule_scope: Required: Scope from which to select rules to be run. (required)
1991
+ :type rule_scope: str
1992
+ :param recipe_id_scope: Required: the scope of the recipe to be used (required)
1993
+ :type recipe_id_scope: str
1994
+ :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
1995
+ :type recipe_id_code: str
1996
+ :param compliance_run_configuration: Configuration options for the compliance run.
1997
+ :type compliance_run_configuration: ComplianceRunConfiguration
1998
+ :param async_req: Whether to execute the request asynchronously.
1999
+ :type async_req: bool, optional
2000
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2001
+ :param opts: Configuration options for this request
2002
+ :type opts: ConfigurationOptions, optional
2003
+ :return: Returns the result object.
2004
+ If the method is called asynchronously,
2005
+ returns the request thread.
2006
+ :rtype: ComplianceRunInfoV2
2007
+ """
2008
+ kwargs['_return_http_data_only'] = True
2009
+ if '_preload_content' in kwargs:
2010
+ message = "Error! Please call the run_compliance_preview_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2011
+ raise ValueError(message)
2012
+ if async_req is not None:
2013
+ kwargs['async_req'] = async_req
2014
+ return self.run_compliance_preview_with_http_info(run_scope, rule_scope, recipe_id_scope, recipe_id_code, compliance_run_configuration, **kwargs) # noqa: E501
2015
+
2016
+ @validate_arguments
2017
+ def run_compliance_preview_with_http_info(self, run_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope to save the run results in.")], rule_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: Scope from which to select rules to be run.")], recipe_id_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: the scope of the recipe to be used")], recipe_id_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Required: The code of the recipe to be used. If left blank, the default recipe will be used.")], compliance_run_configuration : Annotated[Optional[ComplianceRunConfiguration], Field(description="Configuration options for the compliance run.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2018
+ """[EARLY ACCESS] RunCompliancePreview: Run a compliance check. # noqa: E501
2019
+
2020
+ Use this endpoint to run a compliance check using rules from a specific scope. # noqa: E501
2021
+ This method makes a synchronous HTTP request by default. To make an
2022
+ asynchronous HTTP request, please pass async_req=True
2023
+
2024
+ >>> thread = api.run_compliance_preview_with_http_info(run_scope, rule_scope, recipe_id_scope, recipe_id_code, compliance_run_configuration, async_req=True)
2025
+ >>> result = thread.get()
2026
+
2027
+ :param run_scope: Required: Scope to save the run results in. (required)
2028
+ :type run_scope: str
2029
+ :param rule_scope: Required: Scope from which to select rules to be run. (required)
2030
+ :type rule_scope: str
2031
+ :param recipe_id_scope: Required: the scope of the recipe to be used (required)
2032
+ :type recipe_id_scope: str
2033
+ :param recipe_id_code: Required: The code of the recipe to be used. If left blank, the default recipe will be used. (required)
2034
+ :type recipe_id_code: str
2035
+ :param compliance_run_configuration: Configuration options for the compliance run.
2036
+ :type compliance_run_configuration: ComplianceRunConfiguration
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(ComplianceRunInfoV2, status_code(int), headers(HTTPHeaderDict))
2059
+ """
2060
+
2061
+ _params = locals()
2062
+
2063
+ _all_params = [
2064
+ 'run_scope',
2065
+ 'rule_scope',
2066
+ 'recipe_id_scope',
2067
+ 'recipe_id_code',
2068
+ 'compliance_run_configuration'
2069
+ ]
2070
+ _all_params.extend(
2071
+ [
2072
+ 'async_req',
2073
+ '_return_http_data_only',
2074
+ '_preload_content',
2075
+ '_request_timeout',
2076
+ '_request_auth',
2077
+ '_content_type',
2078
+ '_headers',
2079
+ 'opts'
2080
+ ]
2081
+ )
2082
+
2083
+ # validate the arguments
2084
+ for _key, _val in _params['kwargs'].items():
2085
+ if _key not in _all_params:
2086
+ raise ApiTypeError(
2087
+ "Got an unexpected keyword argument '%s'"
2088
+ " to method run_compliance_preview" % _key
2089
+ )
2090
+ _params[_key] = _val
2091
+ del _params['kwargs']
2092
+
2093
+ _collection_formats = {}
2094
+
2095
+ # process the path parameters
2096
+ _path_params = {}
2097
+
2098
+ # process the query parameters
2099
+ _query_params = []
2100
+ if _params.get('run_scope') is not None: # noqa: E501
2101
+ _query_params.append(('runScope', _params['run_scope']))
2102
+
2103
+ if _params.get('rule_scope') is not None: # noqa: E501
2104
+ _query_params.append(('ruleScope', _params['rule_scope']))
2105
+
2106
+ if _params.get('recipe_id_scope') is not None: # noqa: E501
2107
+ _query_params.append(('recipeIdScope', _params['recipe_id_scope']))
2108
+
2109
+ if _params.get('recipe_id_code') is not None: # noqa: E501
2110
+ _query_params.append(('recipeIdCode', _params['recipe_id_code']))
2111
+
2112
+ # process the header parameters
2113
+ _header_params = dict(_params.get('_headers', {}))
2114
+ # process the form parameters
2115
+ _form_params = []
2116
+ _files = {}
2117
+ # process the body parameter
2118
+ _body_params = None
2119
+ if _params['compliance_run_configuration'] is not None:
2120
+ _body_params = _params['compliance_run_configuration']
2121
+
2122
+ # set the HTTP header `Accept`
2123
+ _header_params['Accept'] = self.api_client.select_header_accept(
2124
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2125
+
2126
+ # set the HTTP header `Content-Type`
2127
+ _content_types_list = _params.get('_content_type',
2128
+ self.api_client.select_header_content_type(
2129
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2130
+ if _content_types_list:
2131
+ _header_params['Content-Type'] = _content_types_list
2132
+
2133
+ # authentication setting
2134
+ _auth_settings = ['oauth2'] # noqa: E501
2135
+
2136
+ _response_types_map = {
2137
+ '200': "ComplianceRunInfoV2",
2138
+ '400': "LusidValidationProblemDetails",
2139
+ }
2140
+
2141
+ return self.api_client.call_api(
2142
+ '/api/compliance/preview/runs', 'POST',
2143
+ _path_params,
2144
+ _query_params,
2145
+ _header_params,
2146
+ body=_body_params,
2147
+ post_params=_form_params,
2148
+ files=_files,
2149
+ response_types_map=_response_types_map,
2150
+ auth_settings=_auth_settings,
2151
+ async_req=_params.get('async_req'),
2152
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2153
+ _preload_content=_params.get('_preload_content', True),
2154
+ _request_timeout=_params.get('_request_timeout'),
2155
+ opts=_params.get('opts'),
2156
+ collection_formats=_collection_formats,
2157
+ _request_auth=_params.get('_request_auth'))
2158
+
2159
+ @overload
2160
+ async def update_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Compliance Rule Template.")], update_compliance_template_request : Annotated[UpdateComplianceTemplateRequest, Field(..., description="Request to update a compliance rule template.")], **kwargs) -> ComplianceRuleTemplate: # noqa: E501
2161
+ ...
2162
+
2163
+ @overload
2164
+ def update_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Compliance Rule Template.")], update_compliance_template_request : Annotated[UpdateComplianceTemplateRequest, Field(..., description="Request to update a compliance rule template.")], async_req: Optional[bool]=True, **kwargs) -> ComplianceRuleTemplate: # noqa: E501
2165
+ ...
2166
+
2167
+ @validate_arguments
2168
+ def update_compliance_template(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Compliance Rule Template.")], update_compliance_template_request : Annotated[UpdateComplianceTemplateRequest, Field(..., description="Request to update a compliance rule template.")], async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRuleTemplate, Awaitable[ComplianceRuleTemplate]]: # noqa: E501
2169
+ """[EARLY ACCESS] UpdateComplianceTemplate: Update a ComplianceRuleTemplate # noqa: E501
2170
+
2171
+ Use this endpoint to update a specified compliance template. # noqa: E501
2172
+ This method makes a synchronous HTTP request by default. To make an
2173
+ asynchronous HTTP request, please pass async_req=True
2174
+
2175
+ >>> thread = api.update_compliance_template(scope, code, update_compliance_template_request, async_req=True)
2176
+ >>> result = thread.get()
2177
+
2178
+ :param scope: The scope of the Compliance Rule Template. (required)
2179
+ :type scope: str
2180
+ :param code: The code of the Compliance Rule Template. (required)
2181
+ :type code: str
2182
+ :param update_compliance_template_request: Request to update a compliance rule template. (required)
2183
+ :type update_compliance_template_request: UpdateComplianceTemplateRequest
2184
+ :param async_req: Whether to execute the request asynchronously.
2185
+ :type async_req: bool, optional
2186
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2187
+ :param opts: Configuration options for this request
2188
+ :type opts: ConfigurationOptions, optional
2189
+ :return: Returns the result object.
2190
+ If the method is called asynchronously,
2191
+ returns the request thread.
2192
+ :rtype: ComplianceRuleTemplate
2193
+ """
2194
+ kwargs['_return_http_data_only'] = True
2195
+ if '_preload_content' in kwargs:
2196
+ message = "Error! Please call the update_compliance_template_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2197
+ raise ValueError(message)
2198
+ if async_req is not None:
2199
+ kwargs['async_req'] = async_req
2200
+ return self.update_compliance_template_with_http_info(scope, code, update_compliance_template_request, **kwargs) # noqa: E501
2201
+
2202
+ @validate_arguments
2203
+ def update_compliance_template_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Compliance Rule Template.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Compliance Rule Template.")], update_compliance_template_request : Annotated[UpdateComplianceTemplateRequest, Field(..., description="Request to update a compliance rule template.")], **kwargs) -> ApiResponse: # noqa: E501
2204
+ """[EARLY ACCESS] UpdateComplianceTemplate: Update a ComplianceRuleTemplate # noqa: E501
2205
+
2206
+ Use this endpoint to update a specified compliance template. # noqa: E501
2207
+ This method makes a synchronous HTTP request by default. To make an
2208
+ asynchronous HTTP request, please pass async_req=True
2209
+
2210
+ >>> thread = api.update_compliance_template_with_http_info(scope, code, update_compliance_template_request, async_req=True)
2211
+ >>> result = thread.get()
2212
+
2213
+ :param scope: The scope of the Compliance Rule Template. (required)
2214
+ :type scope: str
2215
+ :param code: The code of the Compliance Rule Template. (required)
2216
+ :type code: str
2217
+ :param update_compliance_template_request: Request to update a compliance rule template. (required)
2218
+ :type update_compliance_template_request: UpdateComplianceTemplateRequest
2219
+ :param async_req: Whether to execute the request asynchronously.
2220
+ :type async_req: bool, optional
2221
+ :param _preload_content: if False, the ApiResponse.data will
2222
+ be set to none and raw_data will store the
2223
+ HTTP response body without reading/decoding.
2224
+ Default is True.
2225
+ :type _preload_content: bool, optional
2226
+ :param _return_http_data_only: response data instead of ApiResponse
2227
+ object with status code, headers, etc
2228
+ :type _return_http_data_only: bool, optional
2229
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2230
+ :param opts: Configuration options for this request
2231
+ :type opts: ConfigurationOptions, optional
2232
+ :param _request_auth: set to override the auth_settings for an a single
2233
+ request; this effectively ignores the authentication
2234
+ in the spec for a single request.
2235
+ :type _request_auth: dict, optional
2236
+ :type _content_type: string, optional: force content-type for the request
2237
+ :return: Returns the result object.
2238
+ If the method is called asynchronously,
2239
+ returns the request thread.
2240
+ :rtype: tuple(ComplianceRuleTemplate, status_code(int), headers(HTTPHeaderDict))
2241
+ """
2242
+
2243
+ _params = locals()
2244
+
2245
+ _all_params = [
2246
+ 'scope',
2247
+ 'code',
2248
+ 'update_compliance_template_request'
2249
+ ]
2250
+ _all_params.extend(
2251
+ [
2252
+ 'async_req',
2253
+ '_return_http_data_only',
2254
+ '_preload_content',
2255
+ '_request_timeout',
2256
+ '_request_auth',
2257
+ '_content_type',
2258
+ '_headers',
2259
+ 'opts'
2260
+ ]
2261
+ )
2262
+
2263
+ # validate the arguments
2264
+ for _key, _val in _params['kwargs'].items():
2265
+ if _key not in _all_params:
2266
+ raise ApiTypeError(
2267
+ "Got an unexpected keyword argument '%s'"
2268
+ " to method update_compliance_template" % _key
2269
+ )
2270
+ _params[_key] = _val
2271
+ del _params['kwargs']
2272
+
2273
+ _collection_formats = {}
2274
+
2275
+ # process the path parameters
2276
+ _path_params = {}
2277
+ if _params['scope']:
2278
+ _path_params['scope'] = _params['scope']
2279
+
2280
+ if _params['code']:
2281
+ _path_params['code'] = _params['code']
2282
+
2283
+
2284
+ # process the query parameters
2285
+ _query_params = []
2286
+ # process the header parameters
2287
+ _header_params = dict(_params.get('_headers', {}))
2288
+ # process the form parameters
2289
+ _form_params = []
2290
+ _files = {}
2291
+ # process the body parameter
2292
+ _body_params = None
2293
+ if _params['update_compliance_template_request'] is not None:
2294
+ _body_params = _params['update_compliance_template_request']
2295
+
2296
+ # set the HTTP header `Accept`
2297
+ _header_params['Accept'] = self.api_client.select_header_accept(
2298
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2299
+
2300
+ # set the HTTP header `Content-Type`
2301
+ _content_types_list = _params.get('_content_type',
2302
+ self.api_client.select_header_content_type(
2303
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2304
+ if _content_types_list:
2305
+ _header_params['Content-Type'] = _content_types_list
2306
+
2307
+ # authentication setting
2308
+ _auth_settings = ['oauth2'] # noqa: E501
2309
+
2310
+ _response_types_map = {
2311
+ '200': "ComplianceRuleTemplate",
2312
+ '400': "LusidValidationProblemDetails",
2313
+ }
2314
+
2315
+ return self.api_client.call_api(
2316
+ '/api/compliance/templates/{scope}/{code}', 'PUT',
1615
2317
  _path_params,
1616
2318
  _query_params,
1617
2319
  _header_params,
@@ -1624,6 +2326,7 @@ class ComplianceApi:
1624
2326
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1625
2327
  _preload_content=_params.get('_preload_content', True),
1626
2328
  _request_timeout=_params.get('_request_timeout'),
2329
+ opts=_params.get('opts'),
1627
2330
  collection_formats=_collection_formats,
1628
2331
  _request_auth=_params.get('_request_auth'))
1629
2332
 
@@ -1650,10 +2353,9 @@ class ComplianceApi:
1650
2353
  :type upsert_compliance_rule_request: UpsertComplianceRuleRequest
1651
2354
  :param async_req: Whether to execute the request asynchronously.
1652
2355
  :type async_req: bool, optional
1653
- :param _request_timeout: timeout setting for this request.
1654
- If one number provided, it will be total request
1655
- timeout. It can also be a pair (tuple) of
1656
- (connection, read) timeouts.
2356
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2357
+ :param opts: Configuration options for this request
2358
+ :type opts: ConfigurationOptions, optional
1657
2359
  :return: Returns the result object.
1658
2360
  If the method is called asynchronously,
1659
2361
  returns the request thread.
@@ -1690,10 +2392,9 @@ class ComplianceApi:
1690
2392
  :param _return_http_data_only: response data instead of ApiResponse
1691
2393
  object with status code, headers, etc
1692
2394
  :type _return_http_data_only: bool, optional
1693
- :param _request_timeout: timeout setting for this request. If one
1694
- number provided, it will be total request
1695
- timeout. It can also be a pair (tuple) of
1696
- (connection, read) timeouts.
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
1697
2398
  :param _request_auth: set to override the auth_settings for an a single
1698
2399
  request; this effectively ignores the authentication
1699
2400
  in the spec for a single request.
@@ -1718,7 +2419,8 @@ class ComplianceApi:
1718
2419
  '_request_timeout',
1719
2420
  '_request_auth',
1720
2421
  '_content_type',
1721
- '_headers'
2422
+ '_headers',
2423
+ 'opts'
1722
2424
  ]
1723
2425
  )
1724
2426
 
@@ -1782,19 +2484,20 @@ class ComplianceApi:
1782
2484
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1783
2485
  _preload_content=_params.get('_preload_content', True),
1784
2486
  _request_timeout=_params.get('_request_timeout'),
2487
+ opts=_params.get('opts'),
1785
2488
  collection_formats=_collection_formats,
1786
2489
  _request_auth=_params.get('_request_auth'))
1787
2490
 
1788
2491
  @overload
1789
- async def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, **kwargs) -> ComplianceRunSummary: # noqa: E501
2492
+ async def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, **kwargs) -> UpsertComplianceRunSummaryResult: # noqa: E501
1790
2493
  ...
1791
2494
 
1792
2495
  @overload
1793
- def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, async_req: Optional[bool]=True, **kwargs) -> ComplianceRunSummary: # noqa: E501
2496
+ def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, async_req: Optional[bool]=True, **kwargs) -> UpsertComplianceRunSummaryResult: # noqa: E501
1794
2497
  ...
1795
2498
 
1796
2499
  @validate_arguments
1797
- def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ComplianceRunSummary, Awaitable[ComplianceRunSummary]]: # noqa: E501
2500
+ def upsert_compliance_run_summary(self, upsert_compliance_run_summary_request : Optional[UpsertComplianceRunSummaryRequest] = None, async_req: Optional[bool]=None, **kwargs) -> Union[UpsertComplianceRunSummaryResult, Awaitable[UpsertComplianceRunSummaryResult]]: # noqa: E501
1798
2501
  """[EARLY ACCESS] UpsertComplianceRunSummary: Upsert a compliance run summary. # noqa: E501
1799
2502
 
1800
2503
  Use this endpoint to upsert a compliance run result summary. # noqa: E501
@@ -1808,14 +2511,13 @@ class ComplianceApi:
1808
2511
  :type upsert_compliance_run_summary_request: UpsertComplianceRunSummaryRequest
1809
2512
  :param async_req: Whether to execute the request asynchronously.
1810
2513
  :type async_req: bool, optional
1811
- :param _request_timeout: timeout setting for this request.
1812
- If one number provided, it will be total request
1813
- timeout. It can also be a pair (tuple) of
1814
- (connection, read) timeouts.
2514
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2515
+ :param opts: Configuration options for this request
2516
+ :type opts: ConfigurationOptions, optional
1815
2517
  :return: Returns the result object.
1816
2518
  If the method is called asynchronously,
1817
2519
  returns the request thread.
1818
- :rtype: ComplianceRunSummary
2520
+ :rtype: UpsertComplianceRunSummaryResult
1819
2521
  """
1820
2522
  kwargs['_return_http_data_only'] = True
1821
2523
  if '_preload_content' in kwargs:
@@ -1848,10 +2550,9 @@ class ComplianceApi:
1848
2550
  :param _return_http_data_only: response data instead of ApiResponse
1849
2551
  object with status code, headers, etc
1850
2552
  :type _return_http_data_only: bool, optional
1851
- :param _request_timeout: timeout setting for this request. If one
1852
- number provided, it will be total request
1853
- timeout. It can also be a pair (tuple) of
1854
- (connection, read) timeouts.
2553
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2554
+ :param opts: Configuration options for this request
2555
+ :type opts: ConfigurationOptions, optional
1855
2556
  :param _request_auth: set to override the auth_settings for an a single
1856
2557
  request; this effectively ignores the authentication
1857
2558
  in the spec for a single request.
@@ -1860,7 +2561,7 @@ class ComplianceApi:
1860
2561
  :return: Returns the result object.
1861
2562
  If the method is called asynchronously,
1862
2563
  returns the request thread.
1863
- :rtype: tuple(ComplianceRunSummary, status_code(int), headers(HTTPHeaderDict))
2564
+ :rtype: tuple(UpsertComplianceRunSummaryResult, status_code(int), headers(HTTPHeaderDict))
1864
2565
  """
1865
2566
 
1866
2567
  _params = locals()
@@ -1876,7 +2577,8 @@ class ComplianceApi:
1876
2577
  '_request_timeout',
1877
2578
  '_request_auth',
1878
2579
  '_content_type',
1879
- '_headers'
2580
+ '_headers',
2581
+ 'opts'
1880
2582
  ]
1881
2583
  )
1882
2584
 
@@ -1922,7 +2624,7 @@ class ComplianceApi:
1922
2624
  _auth_settings = ['oauth2'] # noqa: E501
1923
2625
 
1924
2626
  _response_types_map = {
1925
- '200': "ComplianceRunSummary",
2627
+ '200': "UpsertComplianceRunSummaryResult",
1926
2628
  '400': "LusidValidationProblemDetails",
1927
2629
  }
1928
2630
 
@@ -1940,5 +2642,6 @@ class ComplianceApi:
1940
2642
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1941
2643
  _preload_content=_params.get('_preload_content', True),
1942
2644
  _request_timeout=_params.get('_request_timeout'),
2645
+ opts=_params.get('opts'),
1943
2646
  collection_formats=_collection_formats,
1944
2647
  _request_auth=_params.get('_request_auth'))