lusid-sdk 2.0.50b0__py3-none-any.whl → 2.1.683__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.683.dist-info}/METADATA +614 -245
  1232. lusid_sdk-2.1.683.dist-info/RECORD +1273 -0
  1233. {lusid_sdk-2.0.50b0.dist-info → lusid_sdk-2.1.683.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,28 +16,33 @@ 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, StrictInt, StrictStr, conint, conlist, constr, validator
25
+ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
26
26
 
27
27
  from typing import Dict, List, Optional
28
28
 
29
29
  from lusid.models.access_metadata_operation import AccessMetadataOperation
30
30
  from lusid.models.access_metadata_value import AccessMetadataValue
31
- from lusid.models.action_result_of_portfolio import ActionResultOfPortfolio
32
31
  from lusid.models.aggregated_returns_dispersion_request import AggregatedReturnsDispersionRequest
33
32
  from lusid.models.aggregated_returns_request import AggregatedReturnsRequest
34
33
  from lusid.models.aggregated_returns_response import AggregatedReturnsResponse
34
+ from lusid.models.batch_upsert_portfolio_access_metadata_request import BatchUpsertPortfolioAccessMetadataRequest
35
+ from lusid.models.batch_upsert_portfolio_access_metadata_response import BatchUpsertPortfolioAccessMetadataResponse
35
36
  from lusid.models.composite_breakdown_request import CompositeBreakdownRequest
36
37
  from lusid.models.composite_breakdown_response import CompositeBreakdownResponse
37
38
  from lusid.models.composite_dispersion_response import CompositeDispersionResponse
38
39
  from lusid.models.deleted_entity_response import DeletedEntityResponse
40
+ from lusid.models.instrument_event_instruction import InstrumentEventInstruction
41
+ from lusid.models.instrument_event_instruction_request import InstrumentEventInstructionRequest
42
+ from lusid.models.instrument_event_instructions_response import InstrumentEventInstructionsResponse
39
43
  from lusid.models.model_property import ModelProperty
40
44
  from lusid.models.operation import Operation
45
+ from lusid.models.paged_resource_list_of_instrument_event_instruction import PagedResourceListOfInstrumentEventInstruction
41
46
  from lusid.models.performance_return import PerformanceReturn
42
47
  from lusid.models.portfolio import Portfolio
43
48
  from lusid.models.portfolio_properties import PortfolioProperties
@@ -60,6 +65,7 @@ from lusid.exceptions import ( # noqa: F401
60
65
  ApiTypeError,
61
66
  ApiValueError
62
67
  )
68
+ from lusid.extensions.configuration_options import ConfigurationOptions
63
69
 
64
70
 
65
71
  class PortfoliosApi:
@@ -74,6 +80,355 @@ class PortfoliosApi:
74
80
  api_client = ApiClient.get_default()
75
81
  self.api_client = api_client
76
82
 
83
+ @overload
84
+ async def batch_upsert_portfolio_access_metadata(self, request_body : Annotated[Dict[str, BatchUpsertPortfolioAccessMetadataRequest], Field(..., description="The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for")], effective_at : Annotated[Optional[StrictStr], Field(description="The date these rules will be effective from")] = None, effective_until : Annotated[Optional[StrictStr], Field(description="The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> BatchUpsertPortfolioAccessMetadataResponse: # noqa: E501
85
+ ...
86
+
87
+ @overload
88
+ def batch_upsert_portfolio_access_metadata(self, request_body : Annotated[Dict[str, BatchUpsertPortfolioAccessMetadataRequest], Field(..., description="The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for")], effective_at : Annotated[Optional[StrictStr], Field(description="The date these rules will be effective from")] = None, effective_until : Annotated[Optional[StrictStr], Field(description="The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpsertPortfolioAccessMetadataResponse: # noqa: E501
89
+ ...
90
+
91
+ @validate_arguments
92
+ def batch_upsert_portfolio_access_metadata(self, request_body : Annotated[Dict[str, BatchUpsertPortfolioAccessMetadataRequest], Field(..., description="The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for")], effective_at : Annotated[Optional[StrictStr], Field(description="The date these rules will be effective from")] = None, effective_until : Annotated[Optional[StrictStr], Field(description="The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpsertPortfolioAccessMetadataResponse, Awaitable[BatchUpsertPortfolioAccessMetadataResponse]]: # noqa: E501
93
+ """[EARLY ACCESS] BatchUpsertPortfolioAccessMetadata: Upsert multiple Portfolio Access Metadata Rules to multiple Portfolios # noqa: E501
94
+
95
+ Update or insert multiple Access Metadata rules for multiple Portfolios. Items will be updated if they already exist and inserted if they do not. No other items will be affected The response will return the successfully updated or inserted Portfolio Access Metadata Rules or a failure message if unsuccessful Multiple rules for a metadataKey can exist with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
96
+ This method makes a synchronous HTTP request by default. To make an
97
+ asynchronous HTTP request, please pass async_req=True
98
+
99
+ >>> thread = api.batch_upsert_portfolio_access_metadata(request_body, effective_at, effective_until, async_req=True)
100
+ >>> result = thread.get()
101
+
102
+ :param request_body: The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for (required)
103
+ :type request_body: Dict[str, BatchUpsertPortfolioAccessMetadataRequest]
104
+ :param effective_at: The date these rules will be effective from
105
+ :type effective_at: str
106
+ :param effective_until: The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata
107
+ :type effective_until: str
108
+ :param async_req: Whether to execute the request asynchronously.
109
+ :type async_req: bool, optional
110
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
111
+ :param opts: Configuration options for this request
112
+ :type opts: ConfigurationOptions, optional
113
+ :return: Returns the result object.
114
+ If the method is called asynchronously,
115
+ returns the request thread.
116
+ :rtype: BatchUpsertPortfolioAccessMetadataResponse
117
+ """
118
+ kwargs['_return_http_data_only'] = True
119
+ if '_preload_content' in kwargs:
120
+ message = "Error! Please call the batch_upsert_portfolio_access_metadata_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
121
+ raise ValueError(message)
122
+ if async_req is not None:
123
+ kwargs['async_req'] = async_req
124
+ return self.batch_upsert_portfolio_access_metadata_with_http_info(request_body, effective_at, effective_until, **kwargs) # noqa: E501
125
+
126
+ @validate_arguments
127
+ def batch_upsert_portfolio_access_metadata_with_http_info(self, request_body : Annotated[Dict[str, BatchUpsertPortfolioAccessMetadataRequest], Field(..., description="The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for")], effective_at : Annotated[Optional[StrictStr], Field(description="The date these rules will be effective from")] = None, effective_until : Annotated[Optional[StrictStr], Field(description="The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> ApiResponse: # noqa: E501
128
+ """[EARLY ACCESS] BatchUpsertPortfolioAccessMetadata: Upsert multiple Portfolio Access Metadata Rules to multiple Portfolios # noqa: E501
129
+
130
+ Update or insert multiple Access Metadata rules for multiple Portfolios. Items will be updated if they already exist and inserted if they do not. No other items will be affected The response will return the successfully updated or inserted Portfolio Access Metadata Rules or a failure message if unsuccessful Multiple rules for a metadataKey can exist with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
131
+ This method makes a synchronous HTTP request by default. To make an
132
+ asynchronous HTTP request, please pass async_req=True
133
+
134
+ >>> thread = api.batch_upsert_portfolio_access_metadata_with_http_info(request_body, effective_at, effective_until, async_req=True)
135
+ >>> result = thread.get()
136
+
137
+ :param request_body: The Access Metadata Rules to upsert and the Portfolio identifiers to upsert for (required)
138
+ :type request_body: Dict[str, BatchUpsertPortfolioAccessMetadataRequest]
139
+ :param effective_at: The date these rules will be effective from
140
+ :type effective_at: str
141
+ :param effective_until: The effective date until which the Access Metadata is valid. If not supplied, this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata
142
+ :type effective_until: str
143
+ :param async_req: Whether to execute the request asynchronously.
144
+ :type async_req: bool, optional
145
+ :param _preload_content: if False, the ApiResponse.data will
146
+ be set to none and raw_data will store the
147
+ HTTP response body without reading/decoding.
148
+ Default is True.
149
+ :type _preload_content: bool, optional
150
+ :param _return_http_data_only: response data instead of ApiResponse
151
+ object with status code, headers, etc
152
+ :type _return_http_data_only: bool, optional
153
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
154
+ :param opts: Configuration options for this request
155
+ :type opts: ConfigurationOptions, optional
156
+ :param _request_auth: set to override the auth_settings for an a single
157
+ request; this effectively ignores the authentication
158
+ in the spec for a single request.
159
+ :type _request_auth: dict, optional
160
+ :type _content_type: string, optional: force content-type for the request
161
+ :return: Returns the result object.
162
+ If the method is called asynchronously,
163
+ returns the request thread.
164
+ :rtype: tuple(BatchUpsertPortfolioAccessMetadataResponse, status_code(int), headers(HTTPHeaderDict))
165
+ """
166
+
167
+ _params = locals()
168
+
169
+ _all_params = [
170
+ 'request_body',
171
+ 'effective_at',
172
+ 'effective_until'
173
+ ]
174
+ _all_params.extend(
175
+ [
176
+ 'async_req',
177
+ '_return_http_data_only',
178
+ '_preload_content',
179
+ '_request_timeout',
180
+ '_request_auth',
181
+ '_content_type',
182
+ '_headers',
183
+ 'opts'
184
+ ]
185
+ )
186
+
187
+ # validate the arguments
188
+ for _key, _val in _params['kwargs'].items():
189
+ if _key not in _all_params:
190
+ raise ApiTypeError(
191
+ "Got an unexpected keyword argument '%s'"
192
+ " to method batch_upsert_portfolio_access_metadata" % _key
193
+ )
194
+ _params[_key] = _val
195
+ del _params['kwargs']
196
+
197
+ _collection_formats = {}
198
+
199
+ # process the path parameters
200
+ _path_params = {}
201
+
202
+ # process the query parameters
203
+ _query_params = []
204
+ if _params.get('effective_at') is not None: # noqa: E501
205
+ _query_params.append(('effectiveAt', _params['effective_at']))
206
+
207
+ if _params.get('effective_until') is not None: # noqa: E501
208
+ _query_params.append(('effectiveUntil', _params['effective_until']))
209
+
210
+ # process the header parameters
211
+ _header_params = dict(_params.get('_headers', {}))
212
+ # process the form parameters
213
+ _form_params = []
214
+ _files = {}
215
+ # process the body parameter
216
+ _body_params = None
217
+ if _params['request_body'] is not None:
218
+ _body_params = _params['request_body']
219
+
220
+ # set the HTTP header `Accept`
221
+ _header_params['Accept'] = self.api_client.select_header_accept(
222
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
223
+
224
+ # set the HTTP header `Content-Type`
225
+ _content_types_list = _params.get('_content_type',
226
+ self.api_client.select_header_content_type(
227
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
228
+ if _content_types_list:
229
+ _header_params['Content-Type'] = _content_types_list
230
+
231
+ # authentication setting
232
+ _auth_settings = ['oauth2'] # noqa: E501
233
+
234
+ _response_types_map = {
235
+ '200': "BatchUpsertPortfolioAccessMetadataResponse",
236
+ '400': "LusidValidationProblemDetails",
237
+ }
238
+
239
+ return self.api_client.call_api(
240
+ '/api/portfolios/metadata', 'PUT',
241
+ _path_params,
242
+ _query_params,
243
+ _header_params,
244
+ body=_body_params,
245
+ post_params=_form_params,
246
+ files=_files,
247
+ response_types_map=_response_types_map,
248
+ auth_settings=_auth_settings,
249
+ async_req=_params.get('async_req'),
250
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
251
+ _preload_content=_params.get('_preload_content', True),
252
+ _request_timeout=_params.get('_request_timeout'),
253
+ opts=_params.get('opts'),
254
+ collection_formats=_collection_formats,
255
+ _request_auth=_params.get('_request_auth'))
256
+
257
+ @overload
258
+ async def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> DeletedEntityResponse: # noqa: E501
259
+ ...
260
+
261
+ @overload
262
+ def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
263
+ ...
264
+
265
+ @validate_arguments
266
+ def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
267
+ """[EARLY ACCESS] DeleteInstrumentEventInstruction: Delete Instrument Event Instruction # noqa: E501
268
+
269
+ Delete a particular instruction for a particular portfolio # noqa: E501
270
+ This method makes a synchronous HTTP request by default. To make an
271
+ asynchronous HTTP request, please pass async_req=True
272
+
273
+ >>> thread = api.delete_instrument_event_instruction(scope, code, instrument_event_instruction_id, portfolio_effective_at, async_req=True)
274
+ >>> result = thread.get()
275
+
276
+ :param scope: The scope of the portfolio. (required)
277
+ :type scope: str
278
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
279
+ :type code: str
280
+ :param instrument_event_instruction_id: The id of the instruction to be deleted. (required)
281
+ :type instrument_event_instruction_id: str
282
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
283
+ :type portfolio_effective_at: str
284
+ :param async_req: Whether to execute the request asynchronously.
285
+ :type async_req: bool, optional
286
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
287
+ :param opts: Configuration options for this request
288
+ :type opts: ConfigurationOptions, optional
289
+ :return: Returns the result object.
290
+ If the method is called asynchronously,
291
+ returns the request thread.
292
+ :rtype: DeletedEntityResponse
293
+ """
294
+ kwargs['_return_http_data_only'] = True
295
+ if '_preload_content' in kwargs:
296
+ message = "Error! Please call the delete_instrument_event_instruction_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
297
+ raise ValueError(message)
298
+ if async_req is not None:
299
+ kwargs['async_req'] = async_req
300
+ return self.delete_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, **kwargs) # noqa: E501
301
+
302
+ @validate_arguments
303
+ def delete_instrument_event_instruction_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
304
+ """[EARLY ACCESS] DeleteInstrumentEventInstruction: Delete Instrument Event Instruction # noqa: E501
305
+
306
+ Delete a particular instruction for a particular portfolio # noqa: E501
307
+ This method makes a synchronous HTTP request by default. To make an
308
+ asynchronous HTTP request, please pass async_req=True
309
+
310
+ >>> thread = api.delete_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, async_req=True)
311
+ >>> result = thread.get()
312
+
313
+ :param scope: The scope of the portfolio. (required)
314
+ :type scope: str
315
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
316
+ :type code: str
317
+ :param instrument_event_instruction_id: The id of the instruction to be deleted. (required)
318
+ :type instrument_event_instruction_id: str
319
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
320
+ :type portfolio_effective_at: str
321
+ :param async_req: Whether to execute the request asynchronously.
322
+ :type async_req: bool, optional
323
+ :param _preload_content: if False, the ApiResponse.data will
324
+ be set to none and raw_data will store the
325
+ HTTP response body without reading/decoding.
326
+ Default is True.
327
+ :type _preload_content: bool, optional
328
+ :param _return_http_data_only: response data instead of ApiResponse
329
+ object with status code, headers, etc
330
+ :type _return_http_data_only: bool, optional
331
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
332
+ :param opts: Configuration options for this request
333
+ :type opts: ConfigurationOptions, optional
334
+ :param _request_auth: set to override the auth_settings for an a single
335
+ request; this effectively ignores the authentication
336
+ in the spec for a single request.
337
+ :type _request_auth: dict, optional
338
+ :type _content_type: string, optional: force content-type for the request
339
+ :return: Returns the result object.
340
+ If the method is called asynchronously,
341
+ returns the request thread.
342
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
343
+ """
344
+
345
+ _params = locals()
346
+
347
+ _all_params = [
348
+ 'scope',
349
+ 'code',
350
+ 'instrument_event_instruction_id',
351
+ 'portfolio_effective_at'
352
+ ]
353
+ _all_params.extend(
354
+ [
355
+ 'async_req',
356
+ '_return_http_data_only',
357
+ '_preload_content',
358
+ '_request_timeout',
359
+ '_request_auth',
360
+ '_content_type',
361
+ '_headers',
362
+ 'opts'
363
+ ]
364
+ )
365
+
366
+ # validate the arguments
367
+ for _key, _val in _params['kwargs'].items():
368
+ if _key not in _all_params:
369
+ raise ApiTypeError(
370
+ "Got an unexpected keyword argument '%s'"
371
+ " to method delete_instrument_event_instruction" % _key
372
+ )
373
+ _params[_key] = _val
374
+ del _params['kwargs']
375
+
376
+ _collection_formats = {}
377
+
378
+ # process the path parameters
379
+ _path_params = {}
380
+ if _params['scope']:
381
+ _path_params['scope'] = _params['scope']
382
+
383
+ if _params['code']:
384
+ _path_params['code'] = _params['code']
385
+
386
+ if _params['instrument_event_instruction_id']:
387
+ _path_params['instrumentEventInstructionId'] = _params['instrument_event_instruction_id']
388
+
389
+
390
+ # process the query parameters
391
+ _query_params = []
392
+ if _params.get('portfolio_effective_at') is not None: # noqa: E501
393
+ _query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
394
+
395
+ # process the header parameters
396
+ _header_params = dict(_params.get('_headers', {}))
397
+ # process the form parameters
398
+ _form_params = []
399
+ _files = {}
400
+ # process the body parameter
401
+ _body_params = None
402
+ # set the HTTP header `Accept`
403
+ _header_params['Accept'] = self.api_client.select_header_accept(
404
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
405
+
406
+ # authentication setting
407
+ _auth_settings = ['oauth2'] # noqa: E501
408
+
409
+ _response_types_map = {
410
+ '200': "DeletedEntityResponse",
411
+ '400': "LusidValidationProblemDetails",
412
+ }
413
+
414
+ return self.api_client.call_api(
415
+ '/api/portfolios/{scope}/{code}/instrumenteventinstructions/{instrumentEventInstructionId}', 'DELETE',
416
+ _path_params,
417
+ _query_params,
418
+ _header_params,
419
+ body=_body_params,
420
+ post_params=_form_params,
421
+ files=_files,
422
+ response_types_map=_response_types_map,
423
+ auth_settings=_auth_settings,
424
+ async_req=_params.get('async_req'),
425
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
426
+ _preload_content=_params.get('_preload_content', True),
427
+ _request_timeout=_params.get('_request_timeout'),
428
+ opts=_params.get('opts'),
429
+ collection_formats=_collection_formats,
430
+ _request_auth=_params.get('_request_auth'))
431
+
77
432
  @overload
78
433
  async def delete_key_from_portfolio_access_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Quote Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The metadataKey identifying the access metadata entry to delete")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date to delete at, if this is not supplied, it will delete all data found")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the delete is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> DeletedEntityResponse: # noqa: E501
79
434
  ...
@@ -84,7 +439,7 @@ class PortfoliosApi:
84
439
 
85
440
  @validate_arguments
86
441
  def delete_key_from_portfolio_access_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Quote Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The metadataKey identifying the access metadata entry to delete")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date to delete at, if this is not supplied, it will delete all data found")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the delete is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
87
- """[EARLY ACCESS] DeleteKeyFromPortfolioAccessMetadata: Delete a Portfolio Access Metadata Rule # noqa: E501
442
+ """DeleteKeyFromPortfolioAccessMetadata: Delete a Portfolio Access Metadata Rule # noqa: E501
88
443
 
89
444
  Delete the Portfolio Access Metadata Rule that exactly matches the provided identifier parts # noqa: E501
90
445
  This method makes a synchronous HTTP request by default. To make an
@@ -105,10 +460,9 @@ class PortfoliosApi:
105
460
  :type effective_until: datetime
106
461
  :param async_req: Whether to execute the request asynchronously.
107
462
  :type async_req: bool, optional
108
- :param _request_timeout: timeout setting for this request.
109
- If one number provided, it will be total request
110
- timeout. It can also be a pair (tuple) of
111
- (connection, read) timeouts.
463
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
464
+ :param opts: Configuration options for this request
465
+ :type opts: ConfigurationOptions, optional
112
466
  :return: Returns the result object.
113
467
  If the method is called asynchronously,
114
468
  returns the request thread.
@@ -124,7 +478,7 @@ class PortfoliosApi:
124
478
 
125
479
  @validate_arguments
126
480
  def delete_key_from_portfolio_access_metadata_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Quote Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The metadataKey identifying the access metadata entry to delete")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date to delete at, if this is not supplied, it will delete all data found")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the delete is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> ApiResponse: # noqa: E501
127
- """[EARLY ACCESS] DeleteKeyFromPortfolioAccessMetadata: Delete a Portfolio Access Metadata Rule # noqa: E501
481
+ """DeleteKeyFromPortfolioAccessMetadata: Delete a Portfolio Access Metadata Rule # noqa: E501
128
482
 
129
483
  Delete the Portfolio Access Metadata Rule that exactly matches the provided identifier parts # noqa: E501
130
484
  This method makes a synchronous HTTP request by default. To make an
@@ -153,10 +507,9 @@ class PortfoliosApi:
153
507
  :param _return_http_data_only: response data instead of ApiResponse
154
508
  object with status code, headers, etc
155
509
  :type _return_http_data_only: bool, optional
156
- :param _request_timeout: timeout setting for this request. If one
157
- number provided, it will be total request
158
- timeout. It can also be a pair (tuple) of
159
- (connection, read) timeouts.
510
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
511
+ :param opts: Configuration options for this request
512
+ :type opts: ConfigurationOptions, optional
160
513
  :param _request_auth: set to override the auth_settings for an a single
161
514
  request; this effectively ignores the authentication
162
515
  in the spec for a single request.
@@ -185,7 +538,8 @@ class PortfoliosApi:
185
538
  '_request_timeout',
186
539
  '_request_auth',
187
540
  '_content_type',
188
- '_headers'
541
+ '_headers',
542
+ 'opts'
189
543
  ]
190
544
  )
191
545
 
@@ -257,6 +611,7 @@ class PortfoliosApi:
257
611
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
258
612
  _preload_content=_params.get('_preload_content', True),
259
613
  _request_timeout=_params.get('_request_timeout'),
614
+ opts=_params.get('opts'),
260
615
  collection_formats=_collection_formats,
261
616
  _request_auth=_params.get('_request_auth'))
262
617
 
@@ -285,10 +640,9 @@ class PortfoliosApi:
285
640
  :type code: str
286
641
  :param async_req: Whether to execute the request asynchronously.
287
642
  :type async_req: bool, optional
288
- :param _request_timeout: timeout setting for this request.
289
- If one number provided, it will be total request
290
- timeout. It can also be a pair (tuple) of
291
- (connection, read) timeouts.
643
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
644
+ :param opts: Configuration options for this request
645
+ :type opts: ConfigurationOptions, optional
292
646
  :return: Returns the result object.
293
647
  If the method is called asynchronously,
294
648
  returns the request thread.
@@ -327,10 +681,9 @@ class PortfoliosApi:
327
681
  :param _return_http_data_only: response data instead of ApiResponse
328
682
  object with status code, headers, etc
329
683
  :type _return_http_data_only: bool, optional
330
- :param _request_timeout: timeout setting for this request. If one
331
- number provided, it will be total request
332
- timeout. It can also be a pair (tuple) of
333
- (connection, read) timeouts.
684
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
685
+ :param opts: Configuration options for this request
686
+ :type opts: ConfigurationOptions, optional
334
687
  :param _request_auth: set to override the auth_settings for an a single
335
688
  request; this effectively ignores the authentication
336
689
  in the spec for a single request.
@@ -356,7 +709,8 @@ class PortfoliosApi:
356
709
  '_request_timeout',
357
710
  '_request_auth',
358
711
  '_content_type',
359
- '_headers'
712
+ '_headers',
713
+ 'opts'
360
714
  ]
361
715
  )
362
716
 
@@ -416,6 +770,7 @@ class PortfoliosApi:
416
770
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
417
771
  _preload_content=_params.get('_preload_content', True),
418
772
  _request_timeout=_params.get('_request_timeout'),
773
+ opts=_params.get('opts'),
419
774
  collection_formats=_collection_formats,
420
775
  _request_auth=_params.get('_request_auth'))
421
776
 
@@ -448,10 +803,9 @@ class PortfoliosApi:
448
803
  :type effective_at: str
449
804
  :param async_req: Whether to execute the request asynchronously.
450
805
  :type async_req: bool, optional
451
- :param _request_timeout: timeout setting for this request.
452
- If one number provided, it will be total request
453
- timeout. It can also be a pair (tuple) of
454
- (connection, read) timeouts.
806
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
807
+ :param opts: Configuration options for this request
808
+ :type opts: ConfigurationOptions, optional
455
809
  :return: Returns the result object.
456
810
  If the method is called asynchronously,
457
811
  returns the request thread.
@@ -494,10 +848,9 @@ class PortfoliosApi:
494
848
  :param _return_http_data_only: response data instead of ApiResponse
495
849
  object with status code, headers, etc
496
850
  :type _return_http_data_only: bool, optional
497
- :param _request_timeout: timeout setting for this request. If one
498
- number provided, it will be total request
499
- timeout. It can also be a pair (tuple) of
500
- (connection, read) timeouts.
851
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
852
+ :param opts: Configuration options for this request
853
+ :type opts: ConfigurationOptions, optional
501
854
  :param _request_auth: set to override the auth_settings for an a single
502
855
  request; this effectively ignores the authentication
503
856
  in the spec for a single request.
@@ -525,7 +878,8 @@ class PortfoliosApi:
525
878
  '_request_timeout',
526
879
  '_request_auth',
527
880
  '_content_type',
528
- '_headers'
881
+ '_headers',
882
+ 'opts'
529
883
  ]
530
884
  )
531
885
 
@@ -592,6 +946,7 @@ class PortfoliosApi:
592
946
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
593
947
  _preload_content=_params.get('_preload_content', True),
594
948
  _request_timeout=_params.get('_request_timeout'),
949
+ opts=_params.get('opts'),
595
950
  collection_formats=_collection_formats,
596
951
  _request_auth=_params.get('_request_auth'))
597
952
 
@@ -630,10 +985,9 @@ class PortfoliosApi:
630
985
  :type period: str
631
986
  :param async_req: Whether to execute the request asynchronously.
632
987
  :type async_req: bool, optional
633
- :param _request_timeout: timeout setting for this request.
634
- If one number provided, it will be total request
635
- timeout. It can also be a pair (tuple) of
636
- (connection, read) timeouts.
988
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
989
+ :param opts: Configuration options for this request
990
+ :type opts: ConfigurationOptions, optional
637
991
  :return: Returns the result object.
638
992
  If the method is called asynchronously,
639
993
  returns the request thread.
@@ -682,10 +1036,9 @@ class PortfoliosApi:
682
1036
  :param _return_http_data_only: response data instead of ApiResponse
683
1037
  object with status code, headers, etc
684
1038
  :type _return_http_data_only: bool, optional
685
- :param _request_timeout: timeout setting for this request. If one
686
- number provided, it will be total request
687
- timeout. It can also be a pair (tuple) of
688
- (connection, read) timeouts.
1039
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1040
+ :param opts: Configuration options for this request
1041
+ :type opts: ConfigurationOptions, optional
689
1042
  :param _request_auth: set to override the auth_settings for an a single
690
1043
  request; this effectively ignores the authentication
691
1044
  in the spec for a single request.
@@ -716,7 +1069,8 @@ class PortfoliosApi:
716
1069
  '_request_timeout',
717
1070
  '_request_auth',
718
1071
  '_content_type',
719
- '_headers'
1072
+ '_headers',
1073
+ 'opts'
720
1074
  ]
721
1075
  )
722
1076
 
@@ -791,6 +1145,7 @@ class PortfoliosApi:
791
1145
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
792
1146
  _preload_content=_params.get('_preload_content', True),
793
1147
  _request_timeout=_params.get('_request_timeout'),
1148
+ opts=_params.get('opts'),
794
1149
  collection_formats=_collection_formats,
795
1150
  _request_auth=_params.get('_request_auth'))
796
1151
 
@@ -823,10 +1178,9 @@ class PortfoliosApi:
823
1178
  :type as_at: datetime
824
1179
  :param async_req: Whether to execute the request asynchronously.
825
1180
  :type async_req: bool, optional
826
- :param _request_timeout: timeout setting for this request.
827
- If one number provided, it will be total request
828
- timeout. It can also be a pair (tuple) of
829
- (connection, read) timeouts.
1181
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1182
+ :param opts: Configuration options for this request
1183
+ :type opts: ConfigurationOptions, optional
830
1184
  :return: Returns the result object.
831
1185
  If the method is called asynchronously,
832
1186
  returns the request thread.
@@ -869,10 +1223,9 @@ class PortfoliosApi:
869
1223
  :param _return_http_data_only: response data instead of ApiResponse
870
1224
  object with status code, headers, etc
871
1225
  :type _return_http_data_only: bool, optional
872
- :param _request_timeout: timeout setting for this request. If one
873
- number provided, it will be total request
874
- timeout. It can also be a pair (tuple) of
875
- (connection, read) timeouts.
1226
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1227
+ :param opts: Configuration options for this request
1228
+ :type opts: ConfigurationOptions, optional
876
1229
  :param _request_auth: set to override the auth_settings for an a single
877
1230
  request; this effectively ignores the authentication
878
1231
  in the spec for a single request.
@@ -900,7 +1253,8 @@ class PortfoliosApi:
900
1253
  '_request_timeout',
901
1254
  '_request_auth',
902
1255
  '_content_type',
903
- '_headers'
1256
+ '_headers',
1257
+ 'opts'
904
1258
  ]
905
1259
  )
906
1260
 
@@ -925,8 +1279,209 @@ class PortfoliosApi:
925
1279
  _path_params['code'] = _params['code']
926
1280
 
927
1281
 
928
- # process the query parameters
929
- _query_params = []
1282
+ # process the query parameters
1283
+ _query_params = []
1284
+ if _params.get('as_at') is not None: # noqa: E501
1285
+ if isinstance(_params['as_at'], datetime):
1286
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1287
+ else:
1288
+ _query_params.append(('asAt', _params['as_at']))
1289
+
1290
+ # process the header parameters
1291
+ _header_params = dict(_params.get('_headers', {}))
1292
+ # process the form parameters
1293
+ _form_params = []
1294
+ _files = {}
1295
+ # process the body parameter
1296
+ _body_params = None
1297
+ if _params['aggregated_returns_dispersion_request'] is not None:
1298
+ _body_params = _params['aggregated_returns_dispersion_request']
1299
+
1300
+ # set the HTTP header `Accept`
1301
+ _header_params['Accept'] = self.api_client.select_header_accept(
1302
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1303
+
1304
+ # set the HTTP header `Content-Type`
1305
+ _content_types_list = _params.get('_content_type',
1306
+ self.api_client.select_header_content_type(
1307
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1308
+ if _content_types_list:
1309
+ _header_params['Content-Type'] = _content_types_list
1310
+
1311
+ # authentication setting
1312
+ _auth_settings = ['oauth2'] # noqa: E501
1313
+
1314
+ _response_types_map = {
1315
+ '200': "CompositeDispersionResponse",
1316
+ '400': "LusidValidationProblemDetails",
1317
+ }
1318
+
1319
+ return self.api_client.call_api(
1320
+ '/api/portfolios/{scope}/{code}/returns/dispersion/$aggregated', 'POST',
1321
+ _path_params,
1322
+ _query_params,
1323
+ _header_params,
1324
+ body=_body_params,
1325
+ post_params=_form_params,
1326
+ files=_files,
1327
+ response_types_map=_response_types_map,
1328
+ auth_settings=_auth_settings,
1329
+ async_req=_params.get('async_req'),
1330
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1331
+ _preload_content=_params.get('_preload_content', True),
1332
+ _request_timeout=_params.get('_request_timeout'),
1333
+ opts=_params.get('opts'),
1334
+ collection_formats=_collection_formats,
1335
+ _request_auth=_params.get('_request_auth'))
1336
+
1337
+ @overload
1338
+ async def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> CompositeBreakdownResponse: # noqa: E501
1339
+ ...
1340
+
1341
+ @overload
1342
+ def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=True, **kwargs) -> CompositeBreakdownResponse: # noqa: E501
1343
+ ...
1344
+
1345
+ @validate_arguments
1346
+ def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[CompositeBreakdownResponse, Awaitable[CompositeBreakdownResponse]]: # noqa: E501
1347
+ """[EARLY ACCESS] GetCompositeBreakdown: Get the Composite Breakdown on how the composite Returns are calculated # noqa: E501
1348
+
1349
+ Calculate the Composite Returns and return this with the constituents which are included in this calculation # noqa: E501
1350
+ This method makes a synchronous HTTP request by default. To make an
1351
+ asynchronous HTTP request, please pass async_req=True
1352
+
1353
+ >>> thread = api.get_composite_breakdown(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, async_req=True)
1354
+ >>> result = thread.get()
1355
+
1356
+ :param scope: The scope of the Portfolio. (required)
1357
+ :type scope: str
1358
+ :param code: The code of the Portfolio. (required)
1359
+ :type code: str
1360
+ :param composite_breakdown_request: The request used in the GetCompositeBreakdown. (required)
1361
+ :type composite_breakdown_request: CompositeBreakdownRequest
1362
+ :param from_effective_at: The start date from which to calculate the Returns.
1363
+ :type from_effective_at: str
1364
+ :param to_effective_at: The end date for which to calculate the Returns.
1365
+ :type to_effective_at: str
1366
+ :param as_at: The asAt datetime at which to retrieve the Returns. Defaults to the latest.
1367
+ :type as_at: datetime
1368
+ :param async_req: Whether to execute the request asynchronously.
1369
+ :type async_req: bool, optional
1370
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1371
+ :param opts: Configuration options for this request
1372
+ :type opts: ConfigurationOptions, optional
1373
+ :return: Returns the result object.
1374
+ If the method is called asynchronously,
1375
+ returns the request thread.
1376
+ :rtype: CompositeBreakdownResponse
1377
+ """
1378
+ kwargs['_return_http_data_only'] = True
1379
+ if '_preload_content' in kwargs:
1380
+ message = "Error! Please call the get_composite_breakdown_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1381
+ raise ValueError(message)
1382
+ if async_req is not None:
1383
+ kwargs['async_req'] = async_req
1384
+ return self.get_composite_breakdown_with_http_info(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, **kwargs) # noqa: E501
1385
+
1386
+ @validate_arguments
1387
+ def get_composite_breakdown_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1388
+ """[EARLY ACCESS] GetCompositeBreakdown: Get the Composite Breakdown on how the composite Returns are calculated # noqa: E501
1389
+
1390
+ Calculate the Composite Returns and return this with the constituents which are included in this calculation # noqa: E501
1391
+ This method makes a synchronous HTTP request by default. To make an
1392
+ asynchronous HTTP request, please pass async_req=True
1393
+
1394
+ >>> thread = api.get_composite_breakdown_with_http_info(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, async_req=True)
1395
+ >>> result = thread.get()
1396
+
1397
+ :param scope: The scope of the Portfolio. (required)
1398
+ :type scope: str
1399
+ :param code: The code of the Portfolio. (required)
1400
+ :type code: str
1401
+ :param composite_breakdown_request: The request used in the GetCompositeBreakdown. (required)
1402
+ :type composite_breakdown_request: CompositeBreakdownRequest
1403
+ :param from_effective_at: The start date from which to calculate the Returns.
1404
+ :type from_effective_at: str
1405
+ :param to_effective_at: The end date for which to calculate the Returns.
1406
+ :type to_effective_at: str
1407
+ :param as_at: The asAt datetime at which to retrieve the Returns. Defaults to the latest.
1408
+ :type as_at: datetime
1409
+ :param async_req: Whether to execute the request asynchronously.
1410
+ :type async_req: bool, optional
1411
+ :param _preload_content: if False, the ApiResponse.data will
1412
+ be set to none and raw_data will store the
1413
+ HTTP response body without reading/decoding.
1414
+ Default is True.
1415
+ :type _preload_content: bool, optional
1416
+ :param _return_http_data_only: response data instead of ApiResponse
1417
+ object with status code, headers, etc
1418
+ :type _return_http_data_only: bool, optional
1419
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1420
+ :param opts: Configuration options for this request
1421
+ :type opts: ConfigurationOptions, optional
1422
+ :param _request_auth: set to override the auth_settings for an a single
1423
+ request; this effectively ignores the authentication
1424
+ in the spec for a single request.
1425
+ :type _request_auth: dict, optional
1426
+ :type _content_type: string, optional: force content-type for the request
1427
+ :return: Returns the result object.
1428
+ If the method is called asynchronously,
1429
+ returns the request thread.
1430
+ :rtype: tuple(CompositeBreakdownResponse, status_code(int), headers(HTTPHeaderDict))
1431
+ """
1432
+
1433
+ _params = locals()
1434
+
1435
+ _all_params = [
1436
+ 'scope',
1437
+ 'code',
1438
+ 'composite_breakdown_request',
1439
+ 'from_effective_at',
1440
+ 'to_effective_at',
1441
+ 'as_at'
1442
+ ]
1443
+ _all_params.extend(
1444
+ [
1445
+ 'async_req',
1446
+ '_return_http_data_only',
1447
+ '_preload_content',
1448
+ '_request_timeout',
1449
+ '_request_auth',
1450
+ '_content_type',
1451
+ '_headers',
1452
+ 'opts'
1453
+ ]
1454
+ )
1455
+
1456
+ # validate the arguments
1457
+ for _key, _val in _params['kwargs'].items():
1458
+ if _key not in _all_params:
1459
+ raise ApiTypeError(
1460
+ "Got an unexpected keyword argument '%s'"
1461
+ " to method get_composite_breakdown" % _key
1462
+ )
1463
+ _params[_key] = _val
1464
+ del _params['kwargs']
1465
+
1466
+ _collection_formats = {}
1467
+
1468
+ # process the path parameters
1469
+ _path_params = {}
1470
+ if _params['scope']:
1471
+ _path_params['scope'] = _params['scope']
1472
+
1473
+ if _params['code']:
1474
+ _path_params['code'] = _params['code']
1475
+
1476
+
1477
+ # process the query parameters
1478
+ _query_params = []
1479
+ if _params.get('from_effective_at') is not None: # noqa: E501
1480
+ _query_params.append(('fromEffectiveAt', _params['from_effective_at']))
1481
+
1482
+ if _params.get('to_effective_at') is not None: # noqa: E501
1483
+ _query_params.append(('toEffectiveAt', _params['to_effective_at']))
1484
+
930
1485
  if _params.get('as_at') is not None: # noqa: E501
931
1486
  if isinstance(_params['as_at'], datetime):
932
1487
  _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
@@ -940,8 +1495,8 @@ class PortfoliosApi:
940
1495
  _files = {}
941
1496
  # process the body parameter
942
1497
  _body_params = None
943
- if _params['aggregated_returns_dispersion_request'] is not None:
944
- _body_params = _params['aggregated_returns_dispersion_request']
1498
+ if _params['composite_breakdown_request'] is not None:
1499
+ _body_params = _params['composite_breakdown_request']
945
1500
 
946
1501
  # set the HTTP header `Accept`
947
1502
  _header_params['Accept'] = self.api_client.select_header_accept(
@@ -958,12 +1513,12 @@ class PortfoliosApi:
958
1513
  _auth_settings = ['oauth2'] # noqa: E501
959
1514
 
960
1515
  _response_types_map = {
961
- '200': "CompositeDispersionResponse",
1516
+ '200': "CompositeBreakdownResponse",
962
1517
  '400': "LusidValidationProblemDetails",
963
1518
  }
964
1519
 
965
1520
  return self.api_client.call_api(
966
- '/api/portfolios/{scope}/{code}/returns/dispersion/$aggregated', 'POST',
1521
+ '/api/portfolios/{scope}/{code}/returns/breakdown', 'POST',
967
1522
  _path_params,
968
1523
  _query_params,
969
1524
  _header_params,
@@ -976,81 +1531,77 @@ class PortfoliosApi:
976
1531
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
977
1532
  _preload_content=_params.get('_preload_content', True),
978
1533
  _request_timeout=_params.get('_request_timeout'),
1534
+ opts=_params.get('opts'),
979
1535
  collection_formats=_collection_formats,
980
1536
  _request_auth=_params.get('_request_auth'))
981
1537
 
982
1538
  @overload
983
- async def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> CompositeBreakdownResponse: # noqa: E501
1539
+ async def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, **kwargs) -> InstrumentEventInstruction: # noqa: E501
984
1540
  ...
985
1541
 
986
1542
  @overload
987
- def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=True, **kwargs) -> CompositeBreakdownResponse: # noqa: E501
1543
+ def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> InstrumentEventInstruction: # noqa: E501
988
1544
  ...
989
1545
 
990
1546
  @validate_arguments
991
- def get_composite_breakdown(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[CompositeBreakdownResponse, Awaitable[CompositeBreakdownResponse]]: # noqa: E501
992
- """[EARLY ACCESS] GetCompositeBreakdown: Get the Composite Breakdown on how the composite Returns are calculated # noqa: E501
1547
+ def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InstrumentEventInstruction, Awaitable[InstrumentEventInstruction]]: # noqa: E501
1548
+ """[EARLY ACCESS] GetInstrumentEventInstruction: Get Instrument Event Instruction # noqa: E501
993
1549
 
994
- Calculate the Composite Returns and return this with the constituents which are included in this calculation # noqa: E501
1550
+ Get a particular instruction for a particular portfolio # noqa: E501
995
1551
  This method makes a synchronous HTTP request by default. To make an
996
1552
  asynchronous HTTP request, please pass async_req=True
997
1553
 
998
- >>> thread = api.get_composite_breakdown(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, async_req=True)
1554
+ >>> thread = api.get_instrument_event_instruction(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, async_req=True)
999
1555
  >>> result = thread.get()
1000
1556
 
1001
- :param scope: The scope of the Portfolio. (required)
1557
+ :param scope: The scope of the portfolio. (required)
1002
1558
  :type scope: str
1003
- :param code: The code of the Portfolio. (required)
1559
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
1004
1560
  :type code: str
1005
- :param composite_breakdown_request: The request used in the GetCompositeBreakdown. (required)
1006
- :type composite_breakdown_request: CompositeBreakdownRequest
1007
- :param from_effective_at: The start date from which to calculate the Returns.
1008
- :type from_effective_at: str
1009
- :param to_effective_at: The end date for which to calculate the Returns.
1010
- :type to_effective_at: str
1011
- :param as_at: The asAt datetime at which to retrieve the Returns. Defaults to the latest.
1561
+ :param instrument_event_instruction_id: The id of the instruction to be retrieved. (required)
1562
+ :type instrument_event_instruction_id: str
1563
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
1564
+ :type portfolio_effective_at: str
1565
+ :param as_at: The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.
1012
1566
  :type as_at: datetime
1013
1567
  :param async_req: Whether to execute the request asynchronously.
1014
1568
  :type async_req: bool, optional
1015
- :param _request_timeout: timeout setting for this request.
1016
- If one number provided, it will be total request
1017
- timeout. It can also be a pair (tuple) of
1018
- (connection, read) timeouts.
1569
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1570
+ :param opts: Configuration options for this request
1571
+ :type opts: ConfigurationOptions, optional
1019
1572
  :return: Returns the result object.
1020
1573
  If the method is called asynchronously,
1021
1574
  returns the request thread.
1022
- :rtype: CompositeBreakdownResponse
1575
+ :rtype: InstrumentEventInstruction
1023
1576
  """
1024
1577
  kwargs['_return_http_data_only'] = True
1025
1578
  if '_preload_content' in kwargs:
1026
- message = "Error! Please call the get_composite_breakdown_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1579
+ message = "Error! Please call the get_instrument_event_instruction_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1027
1580
  raise ValueError(message)
1028
1581
  if async_req is not None:
1029
1582
  kwargs['async_req'] = async_req
1030
- return self.get_composite_breakdown_with_http_info(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, **kwargs) # noqa: E501
1583
+ return self.get_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, **kwargs) # noqa: E501
1031
1584
 
1032
1585
  @validate_arguments
1033
- def get_composite_breakdown_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], composite_breakdown_request : Annotated[CompositeBreakdownRequest, Field(..., description="The request used in the GetCompositeBreakdown.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1034
- """[EARLY ACCESS] GetCompositeBreakdown: Get the Composite Breakdown on how the composite Returns are calculated # noqa: E501
1586
+ def get_instrument_event_instruction_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1587
+ """[EARLY ACCESS] GetInstrumentEventInstruction: Get Instrument Event Instruction # noqa: E501
1035
1588
 
1036
- Calculate the Composite Returns and return this with the constituents which are included in this calculation # noqa: E501
1589
+ Get a particular instruction for a particular portfolio # noqa: E501
1037
1590
  This method makes a synchronous HTTP request by default. To make an
1038
1591
  asynchronous HTTP request, please pass async_req=True
1039
1592
 
1040
- >>> thread = api.get_composite_breakdown_with_http_info(scope, code, composite_breakdown_request, from_effective_at, to_effective_at, as_at, async_req=True)
1593
+ >>> thread = api.get_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, async_req=True)
1041
1594
  >>> result = thread.get()
1042
1595
 
1043
- :param scope: The scope of the Portfolio. (required)
1596
+ :param scope: The scope of the portfolio. (required)
1044
1597
  :type scope: str
1045
- :param code: The code of the Portfolio. (required)
1598
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
1046
1599
  :type code: str
1047
- :param composite_breakdown_request: The request used in the GetCompositeBreakdown. (required)
1048
- :type composite_breakdown_request: CompositeBreakdownRequest
1049
- :param from_effective_at: The start date from which to calculate the Returns.
1050
- :type from_effective_at: str
1051
- :param to_effective_at: The end date for which to calculate the Returns.
1052
- :type to_effective_at: str
1053
- :param as_at: The asAt datetime at which to retrieve the Returns. Defaults to the latest.
1600
+ :param instrument_event_instruction_id: The id of the instruction to be retrieved. (required)
1601
+ :type instrument_event_instruction_id: str
1602
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
1603
+ :type portfolio_effective_at: str
1604
+ :param as_at: The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.
1054
1605
  :type as_at: datetime
1055
1606
  :param async_req: Whether to execute the request asynchronously.
1056
1607
  :type async_req: bool, optional
@@ -1062,10 +1613,9 @@ class PortfoliosApi:
1062
1613
  :param _return_http_data_only: response data instead of ApiResponse
1063
1614
  object with status code, headers, etc
1064
1615
  :type _return_http_data_only: bool, optional
1065
- :param _request_timeout: timeout setting for this request. If one
1066
- number provided, it will be total request
1067
- timeout. It can also be a pair (tuple) of
1068
- (connection, read) timeouts.
1616
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1617
+ :param opts: Configuration options for this request
1618
+ :type opts: ConfigurationOptions, optional
1069
1619
  :param _request_auth: set to override the auth_settings for an a single
1070
1620
  request; this effectively ignores the authentication
1071
1621
  in the spec for a single request.
@@ -1074,7 +1624,7 @@ class PortfoliosApi:
1074
1624
  :return: Returns the result object.
1075
1625
  If the method is called asynchronously,
1076
1626
  returns the request thread.
1077
- :rtype: tuple(CompositeBreakdownResponse, status_code(int), headers(HTTPHeaderDict))
1627
+ :rtype: tuple(InstrumentEventInstruction, status_code(int), headers(HTTPHeaderDict))
1078
1628
  """
1079
1629
 
1080
1630
  _params = locals()
@@ -1082,9 +1632,8 @@ class PortfoliosApi:
1082
1632
  _all_params = [
1083
1633
  'scope',
1084
1634
  'code',
1085
- 'composite_breakdown_request',
1086
- 'from_effective_at',
1087
- 'to_effective_at',
1635
+ 'instrument_event_instruction_id',
1636
+ 'portfolio_effective_at',
1088
1637
  'as_at'
1089
1638
  ]
1090
1639
  _all_params.extend(
@@ -1095,7 +1644,8 @@ class PortfoliosApi:
1095
1644
  '_request_timeout',
1096
1645
  '_request_auth',
1097
1646
  '_content_type',
1098
- '_headers'
1647
+ '_headers',
1648
+ 'opts'
1099
1649
  ]
1100
1650
  )
1101
1651
 
@@ -1104,7 +1654,7 @@ class PortfoliosApi:
1104
1654
  if _key not in _all_params:
1105
1655
  raise ApiTypeError(
1106
1656
  "Got an unexpected keyword argument '%s'"
1107
- " to method get_composite_breakdown" % _key
1657
+ " to method get_instrument_event_instruction" % _key
1108
1658
  )
1109
1659
  _params[_key] = _val
1110
1660
  del _params['kwargs']
@@ -1119,14 +1669,14 @@ class PortfoliosApi:
1119
1669
  if _params['code']:
1120
1670
  _path_params['code'] = _params['code']
1121
1671
 
1672
+ if _params['instrument_event_instruction_id']:
1673
+ _path_params['instrumentEventInstructionId'] = _params['instrument_event_instruction_id']
1674
+
1122
1675
 
1123
1676
  # process the query parameters
1124
1677
  _query_params = []
1125
- if _params.get('from_effective_at') is not None: # noqa: E501
1126
- _query_params.append(('fromEffectiveAt', _params['from_effective_at']))
1127
-
1128
- if _params.get('to_effective_at') is not None: # noqa: E501
1129
- _query_params.append(('toEffectiveAt', _params['to_effective_at']))
1678
+ if _params.get('portfolio_effective_at') is not None: # noqa: E501
1679
+ _query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
1130
1680
 
1131
1681
  if _params.get('as_at') is not None: # noqa: E501
1132
1682
  if isinstance(_params['as_at'], datetime):
@@ -1141,30 +1691,20 @@ class PortfoliosApi:
1141
1691
  _files = {}
1142
1692
  # process the body parameter
1143
1693
  _body_params = None
1144
- if _params['composite_breakdown_request'] is not None:
1145
- _body_params = _params['composite_breakdown_request']
1146
-
1147
1694
  # set the HTTP header `Accept`
1148
1695
  _header_params['Accept'] = self.api_client.select_header_accept(
1149
1696
  ['text/plain', 'application/json', 'text/json']) # noqa: E501
1150
1697
 
1151
- # set the HTTP header `Content-Type`
1152
- _content_types_list = _params.get('_content_type',
1153
- self.api_client.select_header_content_type(
1154
- ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1155
- if _content_types_list:
1156
- _header_params['Content-Type'] = _content_types_list
1157
-
1158
1698
  # authentication setting
1159
1699
  _auth_settings = ['oauth2'] # noqa: E501
1160
1700
 
1161
1701
  _response_types_map = {
1162
- '200': "CompositeBreakdownResponse",
1702
+ '200': "InstrumentEventInstruction",
1163
1703
  '400': "LusidValidationProblemDetails",
1164
1704
  }
1165
1705
 
1166
1706
  return self.api_client.call_api(
1167
- '/api/portfolios/{scope}/{code}/returns/breakdown', 'POST',
1707
+ '/api/portfolios/{scope}/{code}/instrumenteventinstructions/{instrumentEventInstructionId}', 'GET',
1168
1708
  _path_params,
1169
1709
  _query_params,
1170
1710
  _header_params,
@@ -1177,6 +1717,7 @@ class PortfoliosApi:
1177
1717
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1178
1718
  _preload_content=_params.get('_preload_content', True),
1179
1719
  _request_timeout=_params.get('_request_timeout'),
1720
+ opts=_params.get('opts'),
1180
1721
  collection_formats=_collection_formats,
1181
1722
  _request_auth=_params.get('_request_auth'))
1182
1723
 
@@ -1213,10 +1754,9 @@ class PortfoliosApi:
1213
1754
  :type relationship_definition_ids: List[str]
1214
1755
  :param async_req: Whether to execute the request asynchronously.
1215
1756
  :type async_req: bool, optional
1216
- :param _request_timeout: timeout setting for this request.
1217
- If one number provided, it will be total request
1218
- timeout. It can also be a pair (tuple) of
1219
- (connection, read) timeouts.
1757
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1758
+ :param opts: Configuration options for this request
1759
+ :type opts: ConfigurationOptions, optional
1220
1760
  :return: Returns the result object.
1221
1761
  If the method is called asynchronously,
1222
1762
  returns the request thread.
@@ -1263,10 +1803,9 @@ class PortfoliosApi:
1263
1803
  :param _return_http_data_only: response data instead of ApiResponse
1264
1804
  object with status code, headers, etc
1265
1805
  :type _return_http_data_only: bool, optional
1266
- :param _request_timeout: timeout setting for this request. If one
1267
- number provided, it will be total request
1268
- timeout. It can also be a pair (tuple) of
1269
- (connection, read) timeouts.
1806
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1807
+ :param opts: Configuration options for this request
1808
+ :type opts: ConfigurationOptions, optional
1270
1809
  :param _request_auth: set to override the auth_settings for an a single
1271
1810
  request; this effectively ignores the authentication
1272
1811
  in the spec for a single request.
@@ -1296,7 +1835,8 @@ class PortfoliosApi:
1296
1835
  '_request_timeout',
1297
1836
  '_request_auth',
1298
1837
  '_content_type',
1299
- '_headers'
1838
+ '_headers',
1839
+ 'opts'
1300
1840
  ]
1301
1841
  )
1302
1842
 
@@ -1373,6 +1913,7 @@ class PortfoliosApi:
1373
1913
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1374
1914
  _preload_content=_params.get('_preload_content', True),
1375
1915
  _request_timeout=_params.get('_request_timeout'),
1916
+ opts=_params.get('opts'),
1376
1917
  collection_formats=_collection_formats,
1377
1918
  _request_auth=_params.get('_request_auth'))
1378
1919
 
@@ -1386,7 +1927,7 @@ class PortfoliosApi:
1386
1927
 
1387
1928
  @validate_arguments
1388
1929
  def get_portfolio_aggregate_returns(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], recipe_id_scope : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The Recipe Scope for getting the fx rates")] = None, recipe_id_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The Recipe Code for getting the fx rates")] = None, from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, composite_method : Annotated[Optional[StrictStr], Field(description="The method used to calculate the Portfolio performance: Equal/Asset.")] = None, period : Annotated[Optional[StrictStr], Field(description="The type of the returns used to calculate the aggregation result: Daily/Monthly.")] = None, output_frequency : Annotated[Optional[StrictStr], Field(description="The type of calculated output: Daily/Weekly/Monthly/Quarterly/Half-Yearly/Yearly.")] = None, metrics : Annotated[Optional[conlist(StrictStr)], Field(description="Determines what type of returns should be calculated, see https://support.lusid.com/knowledgebase/article/KA-01675/en-us for a list of available metrics.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, alternative_inc_date : Annotated[Optional[StrictStr], Field(description="The date from which to consider the Returns on the Portfolio, if this is different from the date when Returns begin. Can be a date string or Portfolio property.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfAggregatedReturn, Awaitable[ResourceListOfAggregatedReturn]]: # noqa: E501
1389
- """[EXPERIMENTAL] GetPortfolioAggregateReturns: Aggregate Returns (This is a deprecated endpoint). # noqa: E501
1930
+ """[DEPRECATED] GetPortfolioAggregateReturns: Aggregate Returns (This is a deprecated endpoint). # noqa: E501
1390
1931
 
1391
1932
  Aggregate Returns which are on the specified portfolio. # noqa: E501
1392
1933
  This method makes a synchronous HTTP request by default. To make an
@@ -1425,10 +1966,9 @@ class PortfoliosApi:
1425
1966
  :type alternative_inc_date: str
1426
1967
  :param async_req: Whether to execute the request asynchronously.
1427
1968
  :type async_req: bool, optional
1428
- :param _request_timeout: timeout setting for this request.
1429
- If one number provided, it will be total request
1430
- timeout. It can also be a pair (tuple) of
1431
- (connection, read) timeouts.
1969
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1970
+ :param opts: Configuration options for this request
1971
+ :type opts: ConfigurationOptions, optional
1432
1972
  :return: Returns the result object.
1433
1973
  If the method is called asynchronously,
1434
1974
  returns the request thread.
@@ -1444,7 +1984,7 @@ class PortfoliosApi:
1444
1984
 
1445
1985
  @validate_arguments
1446
1986
  def get_portfolio_aggregate_returns_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], recipe_id_scope : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The Recipe Scope for getting the fx rates")] = None, recipe_id_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The Recipe Code for getting the fx rates")] = None, from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, composite_method : Annotated[Optional[StrictStr], Field(description="The method used to calculate the Portfolio performance: Equal/Asset.")] = None, period : Annotated[Optional[StrictStr], Field(description="The type of the returns used to calculate the aggregation result: Daily/Monthly.")] = None, output_frequency : Annotated[Optional[StrictStr], Field(description="The type of calculated output: Daily/Weekly/Monthly/Quarterly/Half-Yearly/Yearly.")] = None, metrics : Annotated[Optional[conlist(StrictStr)], Field(description="Determines what type of returns should be calculated, see https://support.lusid.com/knowledgebase/article/KA-01675/en-us for a list of available metrics.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, alternative_inc_date : Annotated[Optional[StrictStr], Field(description="The date from which to consider the Returns on the Portfolio, if this is different from the date when Returns begin. Can be a date string or Portfolio property.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1447
- """[EXPERIMENTAL] GetPortfolioAggregateReturns: Aggregate Returns (This is a deprecated endpoint). # noqa: E501
1987
+ """[DEPRECATED] GetPortfolioAggregateReturns: Aggregate Returns (This is a deprecated endpoint). # noqa: E501
1448
1988
 
1449
1989
  Aggregate Returns which are on the specified portfolio. # noqa: E501
1450
1990
  This method makes a synchronous HTTP request by default. To make an
@@ -1491,10 +2031,9 @@ class PortfoliosApi:
1491
2031
  :param _return_http_data_only: response data instead of ApiResponse
1492
2032
  object with status code, headers, etc
1493
2033
  :type _return_http_data_only: bool, optional
1494
- :param _request_timeout: timeout setting for this request. If one
1495
- number provided, it will be total request
1496
- timeout. It can also be a pair (tuple) of
1497
- (connection, read) timeouts.
2034
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2035
+ :param opts: Configuration options for this request
2036
+ :type opts: ConfigurationOptions, optional
1498
2037
  :param _request_auth: set to override the auth_settings for an a single
1499
2038
  request; this effectively ignores the authentication
1500
2039
  in the spec for a single request.
@@ -1532,7 +2071,8 @@ class PortfoliosApi:
1532
2071
  '_request_timeout',
1533
2072
  '_request_auth',
1534
2073
  '_content_type',
1535
- '_headers'
2074
+ '_headers',
2075
+ 'opts'
1536
2076
  ]
1537
2077
  )
1538
2078
 
@@ -1632,6 +2172,7 @@ class PortfoliosApi:
1632
2172
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1633
2173
  _preload_content=_params.get('_preload_content', True),
1634
2174
  _request_timeout=_params.get('_request_timeout'),
2175
+ opts=_params.get('opts'),
1635
2176
  collection_formats=_collection_formats,
1636
2177
  _request_auth=_params.get('_request_auth'))
1637
2178
 
@@ -1645,7 +2186,7 @@ class PortfoliosApi:
1645
2186
 
1646
2187
  @validate_arguments
1647
2188
  def get_portfolio_aggregated_returns(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], aggregated_returns_request : Annotated[AggregatedReturnsRequest, Field(..., description="The request used in the AggregatedReturns.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[AggregatedReturnsResponse, Awaitable[AggregatedReturnsResponse]]: # noqa: E501
1648
- """[EARLY ACCESS] GetPortfolioAggregatedReturns: Aggregated Returns # noqa: E501
2189
+ """GetPortfolioAggregatedReturns: Aggregated Returns # noqa: E501
1649
2190
 
1650
2191
  Aggregate Returns which are on the specified portfolio. # noqa: E501
1651
2192
  This method makes a synchronous HTTP request by default. To make an
@@ -1668,10 +2209,9 @@ class PortfoliosApi:
1668
2209
  :type as_at: datetime
1669
2210
  :param async_req: Whether to execute the request asynchronously.
1670
2211
  :type async_req: bool, optional
1671
- :param _request_timeout: timeout setting for this request.
1672
- If one number provided, it will be total request
1673
- timeout. It can also be a pair (tuple) of
1674
- (connection, read) timeouts.
2212
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2213
+ :param opts: Configuration options for this request
2214
+ :type opts: ConfigurationOptions, optional
1675
2215
  :return: Returns the result object.
1676
2216
  If the method is called asynchronously,
1677
2217
  returns the request thread.
@@ -1687,7 +2227,7 @@ class PortfoliosApi:
1687
2227
 
1688
2228
  @validate_arguments
1689
2229
  def get_portfolio_aggregated_returns_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], aggregated_returns_request : Annotated[AggregatedReturnsRequest, Field(..., description="The request used in the AggregatedReturns.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to calculate the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date for which to calculate the Returns.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1690
- """[EARLY ACCESS] GetPortfolioAggregatedReturns: Aggregated Returns # noqa: E501
2230
+ """GetPortfolioAggregatedReturns: Aggregated Returns # noqa: E501
1691
2231
 
1692
2232
  Aggregate Returns which are on the specified portfolio. # noqa: E501
1693
2233
  This method makes a synchronous HTTP request by default. To make an
@@ -1718,10 +2258,9 @@ class PortfoliosApi:
1718
2258
  :param _return_http_data_only: response data instead of ApiResponse
1719
2259
  object with status code, headers, etc
1720
2260
  :type _return_http_data_only: bool, optional
1721
- :param _request_timeout: timeout setting for this request. If one
1722
- number provided, it will be total request
1723
- timeout. It can also be a pair (tuple) of
1724
- (connection, read) timeouts.
2261
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2262
+ :param opts: Configuration options for this request
2263
+ :type opts: ConfigurationOptions, optional
1725
2264
  :param _request_auth: set to override the auth_settings for an a single
1726
2265
  request; this effectively ignores the authentication
1727
2266
  in the spec for a single request.
@@ -1751,7 +2290,8 @@ class PortfoliosApi:
1751
2290
  '_request_timeout',
1752
2291
  '_request_auth',
1753
2292
  '_content_type',
1754
- '_headers'
2293
+ '_headers',
2294
+ 'opts'
1755
2295
  ]
1756
2296
  )
1757
2297
 
@@ -1833,6 +2373,7 @@ class PortfoliosApi:
1833
2373
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1834
2374
  _preload_content=_params.get('_preload_content', True),
1835
2375
  _request_timeout=_params.get('_request_timeout'),
2376
+ opts=_params.get('opts'),
1836
2377
  collection_formats=_collection_formats,
1837
2378
  _request_auth=_params.get('_request_auth'))
1838
2379
 
@@ -1871,10 +2412,9 @@ class PortfoliosApi:
1871
2412
  :type limit: int
1872
2413
  :param async_req: Whether to execute the request asynchronously.
1873
2414
  :type async_req: bool, optional
1874
- :param _request_timeout: timeout setting for this request.
1875
- If one number provided, it will be total request
1876
- timeout. It can also be a pair (tuple) of
1877
- (connection, read) timeouts.
2415
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2416
+ :param opts: Configuration options for this request
2417
+ :type opts: ConfigurationOptions, optional
1878
2418
  :return: Returns the result object.
1879
2419
  If the method is called asynchronously,
1880
2420
  returns the request thread.
@@ -1923,10 +2463,9 @@ class PortfoliosApi:
1923
2463
  :param _return_http_data_only: response data instead of ApiResponse
1924
2464
  object with status code, headers, etc
1925
2465
  :type _return_http_data_only: bool, optional
1926
- :param _request_timeout: timeout setting for this request. If one
1927
- number provided, it will be total request
1928
- timeout. It can also be a pair (tuple) of
1929
- (connection, read) timeouts.
2466
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2467
+ :param opts: Configuration options for this request
2468
+ :type opts: ConfigurationOptions, optional
1930
2469
  :param _request_auth: set to override the auth_settings for an a single
1931
2470
  request; this effectively ignores the authentication
1932
2471
  in the spec for a single request.
@@ -1957,7 +2496,8 @@ class PortfoliosApi:
1957
2496
  '_request_timeout',
1958
2497
  '_request_auth',
1959
2498
  '_content_type',
1960
- '_headers'
2499
+ '_headers',
2500
+ 'opts'
1961
2501
  ]
1962
2502
  )
1963
2503
 
@@ -2038,6 +2578,7 @@ class PortfoliosApi:
2038
2578
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2039
2579
  _preload_content=_params.get('_preload_content', True),
2040
2580
  _request_timeout=_params.get('_request_timeout'),
2581
+ opts=_params.get('opts'),
2041
2582
  collection_formats=_collection_formats,
2042
2583
  _request_auth=_params.get('_request_auth'))
2043
2584
 
@@ -2051,7 +2592,7 @@ class PortfoliosApi:
2051
2592
 
2052
2593
  @validate_arguments
2053
2594
  def get_portfolio_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], effective_at : Annotated[Optional[StrictStr], Field(description="The effectiveAt datetime at which to retrieve the access metadata rule.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Dict[str, List[AccessMetadataValue]], Awaitable[Dict[str, List[AccessMetadataValue]]]]: # noqa: E501
2054
- """[EARLY ACCESS] GetPortfolioMetadata: Get access metadata rules for a portfolio # noqa: E501
2595
+ """GetPortfolioMetadata: Get access metadata rules for a portfolio # noqa: E501
2055
2596
 
2056
2597
  Pass the scope and portfolio code parameters to retrieve the AccessMetadata associated with a portfolio # noqa: E501
2057
2598
  This method makes a synchronous HTTP request by default. To make an
@@ -2070,10 +2611,9 @@ class PortfoliosApi:
2070
2611
  :type as_at: datetime
2071
2612
  :param async_req: Whether to execute the request asynchronously.
2072
2613
  :type async_req: bool, optional
2073
- :param _request_timeout: timeout setting for this request.
2074
- If one number provided, it will be total request
2075
- timeout. It can also be a pair (tuple) of
2076
- (connection, read) timeouts.
2614
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2615
+ :param opts: Configuration options for this request
2616
+ :type opts: ConfigurationOptions, optional
2077
2617
  :return: Returns the result object.
2078
2618
  If the method is called asynchronously,
2079
2619
  returns the request thread.
@@ -2089,7 +2629,7 @@ class PortfoliosApi:
2089
2629
 
2090
2630
  @validate_arguments
2091
2631
  def get_portfolio_metadata_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], effective_at : Annotated[Optional[StrictStr], Field(description="The effectiveAt datetime at which to retrieve the access metadata rule.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2092
- """[EARLY ACCESS] GetPortfolioMetadata: Get access metadata rules for a portfolio # noqa: E501
2632
+ """GetPortfolioMetadata: Get access metadata rules for a portfolio # noqa: E501
2093
2633
 
2094
2634
  Pass the scope and portfolio code parameters to retrieve the AccessMetadata associated with a portfolio # noqa: E501
2095
2635
  This method makes a synchronous HTTP request by default. To make an
@@ -2116,10 +2656,9 @@ class PortfoliosApi:
2116
2656
  :param _return_http_data_only: response data instead of ApiResponse
2117
2657
  object with status code, headers, etc
2118
2658
  :type _return_http_data_only: bool, optional
2119
- :param _request_timeout: timeout setting for this request. If one
2120
- number provided, it will be total request
2121
- timeout. It can also be a pair (tuple) of
2122
- (connection, read) timeouts.
2659
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2660
+ :param opts: Configuration options for this request
2661
+ :type opts: ConfigurationOptions, optional
2123
2662
  :param _request_auth: set to override the auth_settings for an a single
2124
2663
  request; this effectively ignores the authentication
2125
2664
  in the spec for a single request.
@@ -2147,7 +2686,8 @@ class PortfoliosApi:
2147
2686
  '_request_timeout',
2148
2687
  '_request_auth',
2149
2688
  '_content_type',
2150
- '_headers'
2689
+ '_headers',
2690
+ 'opts'
2151
2691
  ]
2152
2692
  )
2153
2693
 
@@ -2216,6 +2756,7 @@ class PortfoliosApi:
2216
2756
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2217
2757
  _preload_content=_params.get('_preload_content', True),
2218
2758
  _request_timeout=_params.get('_request_timeout'),
2759
+ opts=_params.get('opts'),
2219
2760
  collection_formats=_collection_formats,
2220
2761
  _request_auth=_params.get('_request_auth'))
2221
2762
 
@@ -2248,10 +2789,9 @@ class PortfoliosApi:
2248
2789
  :type as_at: datetime
2249
2790
  :param async_req: Whether to execute the request asynchronously.
2250
2791
  :type async_req: bool, optional
2251
- :param _request_timeout: timeout setting for this request.
2252
- If one number provided, it will be total request
2253
- timeout. It can also be a pair (tuple) of
2254
- (connection, read) timeouts.
2792
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2793
+ :param opts: Configuration options for this request
2794
+ :type opts: ConfigurationOptions, optional
2255
2795
  :return: Returns the result object.
2256
2796
  If the method is called asynchronously,
2257
2797
  returns the request thread.
@@ -2294,10 +2834,9 @@ class PortfoliosApi:
2294
2834
  :param _return_http_data_only: response data instead of ApiResponse
2295
2835
  object with status code, headers, etc
2296
2836
  :type _return_http_data_only: bool, optional
2297
- :param _request_timeout: timeout setting for this request. If one
2298
- number provided, it will be total request
2299
- timeout. It can also be a pair (tuple) of
2300
- (connection, read) timeouts.
2837
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2838
+ :param opts: Configuration options for this request
2839
+ :type opts: ConfigurationOptions, optional
2301
2840
  :param _request_auth: set to override the auth_settings for an a single
2302
2841
  request; this effectively ignores the authentication
2303
2842
  in the spec for a single request.
@@ -2325,7 +2864,8 @@ class PortfoliosApi:
2325
2864
  '_request_timeout',
2326
2865
  '_request_auth',
2327
2866
  '_content_type',
2328
- '_headers'
2867
+ '_headers',
2868
+ 'opts'
2329
2869
  ]
2330
2870
  )
2331
2871
 
@@ -2394,6 +2934,7 @@ class PortfoliosApi:
2394
2934
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2395
2935
  _preload_content=_params.get('_preload_content', True),
2396
2936
  _request_timeout=_params.get('_request_timeout'),
2937
+ opts=_params.get('opts'),
2397
2938
  collection_formats=_collection_formats,
2398
2939
  _request_auth=_params.get('_request_auth'))
2399
2940
 
@@ -2407,7 +2948,7 @@ class PortfoliosApi:
2407
2948
 
2408
2949
  @validate_arguments
2409
2950
  def get_portfolio_property_time_series(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], property_key : Annotated[StrictStr, Field(..., description="The property key of the property whose history to show. This must be from the 'Portfolio' domain and in the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")], portfolio_effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime used to resolve the portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to show the history. Defaults to returning the current datetime if not supplied.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing properties; this value is returned from the previous call. If a pagination token is provided, the filter, portfolioEffectiveAt, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPropertyInterval, Awaitable[ResourceListOfPropertyInterval]]: # noqa: E501
2410
- """[EARLY ACCESS] GetPortfolioPropertyTimeSeries: Get portfolio property time series # noqa: E501
2951
+ """GetPortfolioPropertyTimeSeries: Get portfolio property time series # noqa: E501
2411
2952
 
2412
2953
  Show the complete time series (history) for a particular portfolio property. # noqa: E501
2413
2954
  This method makes a synchronous HTTP request by default. To make an
@@ -2434,10 +2975,9 @@ class PortfoliosApi:
2434
2975
  :type limit: int
2435
2976
  :param async_req: Whether to execute the request asynchronously.
2436
2977
  :type async_req: bool, optional
2437
- :param _request_timeout: timeout setting for this request.
2438
- If one number provided, it will be total request
2439
- timeout. It can also be a pair (tuple) of
2440
- (connection, read) timeouts.
2978
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2979
+ :param opts: Configuration options for this request
2980
+ :type opts: ConfigurationOptions, optional
2441
2981
  :return: Returns the result object.
2442
2982
  If the method is called asynchronously,
2443
2983
  returns the request thread.
@@ -2453,7 +2993,7 @@ class PortfoliosApi:
2453
2993
 
2454
2994
  @validate_arguments
2455
2995
  def get_portfolio_property_time_series_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], property_key : Annotated[StrictStr, Field(..., description="The property key of the property whose history to show. This must be from the 'Portfolio' domain and in the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")], portfolio_effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime used to resolve the portfolio. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to show the history. Defaults to returning the current datetime if not supplied.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing properties; this value is returned from the previous call. If a pagination token is provided, the filter, portfolioEffectiveAt, and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2456
- """[EARLY ACCESS] GetPortfolioPropertyTimeSeries: Get portfolio property time series # noqa: E501
2996
+ """GetPortfolioPropertyTimeSeries: Get portfolio property time series # noqa: E501
2457
2997
 
2458
2998
  Show the complete time series (history) for a particular portfolio property. # noqa: E501
2459
2999
  This method makes a synchronous HTTP request by default. To make an
@@ -2488,10 +3028,9 @@ class PortfoliosApi:
2488
3028
  :param _return_http_data_only: response data instead of ApiResponse
2489
3029
  object with status code, headers, etc
2490
3030
  :type _return_http_data_only: bool, optional
2491
- :param _request_timeout: timeout setting for this request. If one
2492
- number provided, it will be total request
2493
- timeout. It can also be a pair (tuple) of
2494
- (connection, read) timeouts.
3031
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3032
+ :param opts: Configuration options for this request
3033
+ :type opts: ConfigurationOptions, optional
2495
3034
  :param _request_auth: set to override the auth_settings for an a single
2496
3035
  request; this effectively ignores the authentication
2497
3036
  in the spec for a single request.
@@ -2523,7 +3062,8 @@ class PortfoliosApi:
2523
3062
  '_request_timeout',
2524
3063
  '_request_auth',
2525
3064
  '_content_type',
2526
- '_headers'
3065
+ '_headers',
3066
+ 'opts'
2527
3067
  ]
2528
3068
  )
2529
3069
 
@@ -2604,6 +3144,7 @@ class PortfoliosApi:
2604
3144
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2605
3145
  _preload_content=_params.get('_preload_content', True),
2606
3146
  _request_timeout=_params.get('_request_timeout'),
3147
+ opts=_params.get('opts'),
2607
3148
  collection_formats=_collection_formats,
2608
3149
  _request_auth=_params.get('_request_auth'))
2609
3150
 
@@ -2640,10 +3181,9 @@ class PortfoliosApi:
2640
3181
  :type identifier_types: List[str]
2641
3182
  :param async_req: Whether to execute the request asynchronously.
2642
3183
  :type async_req: bool, optional
2643
- :param _request_timeout: timeout setting for this request.
2644
- If one number provided, it will be total request
2645
- timeout. It can also be a pair (tuple) of
2646
- (connection, read) timeouts.
3184
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3185
+ :param opts: Configuration options for this request
3186
+ :type opts: ConfigurationOptions, optional
2647
3187
  :return: Returns the result object.
2648
3188
  If the method is called asynchronously,
2649
3189
  returns the request thread.
@@ -2690,10 +3230,9 @@ class PortfoliosApi:
2690
3230
  :param _return_http_data_only: response data instead of ApiResponse
2691
3231
  object with status code, headers, etc
2692
3232
  :type _return_http_data_only: bool, optional
2693
- :param _request_timeout: timeout setting for this request. If one
2694
- number provided, it will be total request
2695
- timeout. It can also be a pair (tuple) of
2696
- (connection, read) timeouts.
3233
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3234
+ :param opts: Configuration options for this request
3235
+ :type opts: ConfigurationOptions, optional
2697
3236
  :param _request_auth: set to override the auth_settings for an a single
2698
3237
  request; this effectively ignores the authentication
2699
3238
  in the spec for a single request.
@@ -2723,7 +3262,8 @@ class PortfoliosApi:
2723
3262
  '_request_timeout',
2724
3263
  '_request_auth',
2725
3264
  '_content_type',
2726
- '_headers'
3265
+ '_headers',
3266
+ 'opts'
2727
3267
  ]
2728
3268
  )
2729
3269
 
@@ -2799,6 +3339,7 @@ class PortfoliosApi:
2799
3339
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2800
3340
  _preload_content=_params.get('_preload_content', True),
2801
3341
  _request_timeout=_params.get('_request_timeout'),
3342
+ opts=_params.get('opts'),
2802
3343
  collection_formats=_collection_formats,
2803
3344
  _request_auth=_params.get('_request_auth'))
2804
3345
 
@@ -2812,7 +3353,7 @@ class PortfoliosApi:
2812
3353
 
2813
3354
  @validate_arguments
2814
3355
  def get_portfolio_relationships(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve relationships. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve relationships. Defaults to returning the latest LUSID AsAt time if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the relationships. Provide a null or empty string for this field until further notice.")] = None, identifier_types : Annotated[Optional[conlist(StrictStr)], Field(description="Identifier types (as property keys) used for referencing Persons or Legal Entities. These can be specified from the 'Person' or 'LegalEntity' domains and have the format {domain}/{scope}/{code}, for example 'Person/CompanyDetails/Role'. An Empty array may be used to return all related Entities.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfRelationship, Awaitable[ResourceListOfRelationship]]: # noqa: E501
2815
- """[EARLY ACCESS] GetPortfolioRelationships: Get portfolio relationships # noqa: E501
3356
+ """GetPortfolioRelationships: Get portfolio relationships # noqa: E501
2816
3357
 
2817
3358
  Get relationships for a particular portfolio. # noqa: E501
2818
3359
  This method makes a synchronous HTTP request by default. To make an
@@ -2835,10 +3376,9 @@ class PortfoliosApi:
2835
3376
  :type identifier_types: List[str]
2836
3377
  :param async_req: Whether to execute the request asynchronously.
2837
3378
  :type async_req: bool, optional
2838
- :param _request_timeout: timeout setting for this request.
2839
- If one number provided, it will be total request
2840
- timeout. It can also be a pair (tuple) of
2841
- (connection, read) timeouts.
3379
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3380
+ :param opts: Configuration options for this request
3381
+ :type opts: ConfigurationOptions, optional
2842
3382
  :return: Returns the result object.
2843
3383
  If the method is called asynchronously,
2844
3384
  returns the request thread.
@@ -2854,7 +3394,7 @@ class PortfoliosApi:
2854
3394
 
2855
3395
  @validate_arguments
2856
3396
  def get_portfolio_relationships_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], effective_at : Annotated[Optional[constr(strict=True, max_length=256, min_length=0)], Field(description="The effective datetime or cut label at which to retrieve relationships. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve relationships. Defaults to returning the latest LUSID AsAt time if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the relationships. Provide a null or empty string for this field until further notice.")] = None, identifier_types : Annotated[Optional[conlist(StrictStr)], Field(description="Identifier types (as property keys) used for referencing Persons or Legal Entities. These can be specified from the 'Person' or 'LegalEntity' domains and have the format {domain}/{scope}/{code}, for example 'Person/CompanyDetails/Role'. An Empty array may be used to return all related Entities.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2857
- """[EARLY ACCESS] GetPortfolioRelationships: Get portfolio relationships # noqa: E501
3397
+ """GetPortfolioRelationships: Get portfolio relationships # noqa: E501
2858
3398
 
2859
3399
  Get relationships for a particular portfolio. # noqa: E501
2860
3400
  This method makes a synchronous HTTP request by default. To make an
@@ -2885,10 +3425,9 @@ class PortfoliosApi:
2885
3425
  :param _return_http_data_only: response data instead of ApiResponse
2886
3426
  object with status code, headers, etc
2887
3427
  :type _return_http_data_only: bool, optional
2888
- :param _request_timeout: timeout setting for this request. If one
2889
- number provided, it will be total request
2890
- timeout. It can also be a pair (tuple) of
2891
- (connection, read) timeouts.
3428
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3429
+ :param opts: Configuration options for this request
3430
+ :type opts: ConfigurationOptions, optional
2892
3431
  :param _request_auth: set to override the auth_settings for an a single
2893
3432
  request; this effectively ignores the authentication
2894
3433
  in the spec for a single request.
@@ -2918,7 +3457,8 @@ class PortfoliosApi:
2918
3457
  '_request_timeout',
2919
3458
  '_request_auth',
2920
3459
  '_content_type',
2921
- '_headers'
3460
+ '_headers',
3461
+ 'opts'
2922
3462
  ]
2923
3463
  )
2924
3464
 
@@ -2994,6 +3534,7 @@ class PortfoliosApi:
2994
3534
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2995
3535
  _preload_content=_params.get('_preload_content', True),
2996
3536
  _request_timeout=_params.get('_request_timeout'),
3537
+ opts=_params.get('opts'),
2997
3538
  collection_formats=_collection_formats,
2998
3539
  _request_auth=_params.get('_request_auth'))
2999
3540
 
@@ -3007,7 +3548,7 @@ class PortfoliosApi:
3007
3548
 
3008
3549
  @validate_arguments
3009
3550
  def get_portfolio_returns(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to get the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date from which to get the Returns.")] = None, period : Annotated[Optional[StrictStr], Field(description="Show the Returns on a Daily or Monthly period. Defaults to Daily.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPerformanceReturn, Awaitable[ResourceListOfPerformanceReturn]]: # noqa: E501
3010
- """[EARLY ACCESS] GetPortfolioReturns: Get Returns # noqa: E501
3551
+ """GetPortfolioReturns: Get Returns # noqa: E501
3011
3552
 
3012
3553
  Get Returns which are on the specified portfolio. # noqa: E501
3013
3554
  This method makes a synchronous HTTP request by default. To make an
@@ -3034,10 +3575,9 @@ class PortfoliosApi:
3034
3575
  :type as_at: datetime
3035
3576
  :param async_req: Whether to execute the request asynchronously.
3036
3577
  :type async_req: bool, optional
3037
- :param _request_timeout: timeout setting for this request.
3038
- If one number provided, it will be total request
3039
- timeout. It can also be a pair (tuple) of
3040
- (connection, read) timeouts.
3578
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3579
+ :param opts: Configuration options for this request
3580
+ :type opts: ConfigurationOptions, optional
3041
3581
  :return: Returns the result object.
3042
3582
  If the method is called asynchronously,
3043
3583
  returns the request thread.
@@ -3053,7 +3593,7 @@ class PortfoliosApi:
3053
3593
 
3054
3594
  @validate_arguments
3055
3595
  def get_portfolio_returns_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The start date from which to get the Returns.")] = None, to_effective_at : Annotated[Optional[StrictStr], Field(description="The end date from which to get the Returns.")] = None, period : Annotated[Optional[StrictStr], Field(description="Show the Returns on a Daily or Monthly period. Defaults to Daily.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the Returns. Defaults to the latest.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3056
- """[EARLY ACCESS] GetPortfolioReturns: Get Returns # noqa: E501
3596
+ """GetPortfolioReturns: Get Returns # noqa: E501
3057
3597
 
3058
3598
  Get Returns which are on the specified portfolio. # noqa: E501
3059
3599
  This method makes a synchronous HTTP request by default. To make an
@@ -3088,10 +3628,9 @@ class PortfoliosApi:
3088
3628
  :param _return_http_data_only: response data instead of ApiResponse
3089
3629
  object with status code, headers, etc
3090
3630
  :type _return_http_data_only: bool, optional
3091
- :param _request_timeout: timeout setting for this request. If one
3092
- number provided, it will be total request
3093
- timeout. It can also be a pair (tuple) of
3094
- (connection, read) timeouts.
3631
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3632
+ :param opts: Configuration options for this request
3633
+ :type opts: ConfigurationOptions, optional
3095
3634
  :param _request_auth: set to override the auth_settings for an a single
3096
3635
  request; this effectively ignores the authentication
3097
3636
  in the spec for a single request.
@@ -3123,7 +3662,203 @@ class PortfoliosApi:
3123
3662
  '_request_timeout',
3124
3663
  '_request_auth',
3125
3664
  '_content_type',
3126
- '_headers'
3665
+ '_headers',
3666
+ 'opts'
3667
+ ]
3668
+ )
3669
+
3670
+ # validate the arguments
3671
+ for _key, _val in _params['kwargs'].items():
3672
+ if _key not in _all_params:
3673
+ raise ApiTypeError(
3674
+ "Got an unexpected keyword argument '%s'"
3675
+ " to method get_portfolio_returns" % _key
3676
+ )
3677
+ _params[_key] = _val
3678
+ del _params['kwargs']
3679
+
3680
+ _collection_formats = {}
3681
+
3682
+ # process the path parameters
3683
+ _path_params = {}
3684
+ if _params['scope']:
3685
+ _path_params['scope'] = _params['scope']
3686
+
3687
+ if _params['code']:
3688
+ _path_params['code'] = _params['code']
3689
+
3690
+ if _params['return_scope']:
3691
+ _path_params['returnScope'] = _params['return_scope']
3692
+
3693
+ if _params['return_code']:
3694
+ _path_params['returnCode'] = _params['return_code']
3695
+
3696
+
3697
+ # process the query parameters
3698
+ _query_params = []
3699
+ if _params.get('from_effective_at') is not None: # noqa: E501
3700
+ _query_params.append(('fromEffectiveAt', _params['from_effective_at']))
3701
+
3702
+ if _params.get('to_effective_at') is not None: # noqa: E501
3703
+ _query_params.append(('toEffectiveAt', _params['to_effective_at']))
3704
+
3705
+ if _params.get('period') is not None: # noqa: E501
3706
+ _query_params.append(('period', _params['period']))
3707
+
3708
+ if _params.get('as_at') is not None: # noqa: E501
3709
+ if isinstance(_params['as_at'], datetime):
3710
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
3711
+ else:
3712
+ _query_params.append(('asAt', _params['as_at']))
3713
+
3714
+ # process the header parameters
3715
+ _header_params = dict(_params.get('_headers', {}))
3716
+ # process the form parameters
3717
+ _form_params = []
3718
+ _files = {}
3719
+ # process the body parameter
3720
+ _body_params = None
3721
+ # set the HTTP header `Accept`
3722
+ _header_params['Accept'] = self.api_client.select_header_accept(
3723
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
3724
+
3725
+ # authentication setting
3726
+ _auth_settings = ['oauth2'] # noqa: E501
3727
+
3728
+ _response_types_map = {
3729
+ '200': "ResourceListOfPerformanceReturn",
3730
+ '400': "LusidValidationProblemDetails",
3731
+ }
3732
+
3733
+ return self.api_client.call_api(
3734
+ '/api/portfolios/{scope}/{code}/returns/{returnScope}/{returnCode}', 'GET',
3735
+ _path_params,
3736
+ _query_params,
3737
+ _header_params,
3738
+ body=_body_params,
3739
+ post_params=_form_params,
3740
+ files=_files,
3741
+ response_types_map=_response_types_map,
3742
+ auth_settings=_auth_settings,
3743
+ async_req=_params.get('async_req'),
3744
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3745
+ _preload_content=_params.get('_preload_content', True),
3746
+ _request_timeout=_params.get('_request_timeout'),
3747
+ opts=_params.get('opts'),
3748
+ collection_formats=_collection_formats,
3749
+ _request_auth=_params.get('_request_auth'))
3750
+
3751
+ @overload
3752
+ async def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, **kwargs) -> List[AccessMetadataValue]: # noqa: E501
3753
+ ...
3754
+
3755
+ @overload
3756
+ def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, async_req: Optional[bool]=True, **kwargs) -> List[AccessMetadataValue]: # noqa: E501
3757
+ ...
3758
+
3759
+ @validate_arguments
3760
+ def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[List[AccessMetadataValue], Awaitable[List[AccessMetadataValue]]]: # noqa: E501
3761
+ """[EARLY ACCESS] GetPortfoliosAccessMetadataByKey: Get an entry identified by a metadataKey in the access metadata object # noqa: E501
3762
+
3763
+ Get a specific portfolio access metadata rule by specifying the corresponding identifier parts No matching will be performed through this endpoint. To retrieve a rule, it is necessary to specify, exactly, the identifier of the rule # noqa: E501
3764
+ This method makes a synchronous HTTP request by default. To make an
3765
+ asynchronous HTTP request, please pass async_req=True
3766
+
3767
+ >>> thread = api.get_portfolios_access_metadata_by_key(scope, code, metadata_key, effective_at, as_at, async_req=True)
3768
+ >>> result = thread.get()
3769
+
3770
+ :param scope: The scope of the Portfolio Access Metadata Rule to retrieve. (required)
3771
+ :type scope: str
3772
+ :param code: The code of the portfolio (required)
3773
+ :type code: str
3774
+ :param metadata_key: Key of the metadata to retrieve (required)
3775
+ :type metadata_key: str
3776
+ :param effective_at: The effective date of the rule
3777
+ :type effective_at: str
3778
+ :param as_at: The asAt datetime at which to retrieve the portfolio access metadata.
3779
+ :type as_at: datetime
3780
+ :param async_req: Whether to execute the request asynchronously.
3781
+ :type async_req: bool, optional
3782
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3783
+ :param opts: Configuration options for this request
3784
+ :type opts: ConfigurationOptions, optional
3785
+ :return: Returns the result object.
3786
+ If the method is called asynchronously,
3787
+ returns the request thread.
3788
+ :rtype: List[AccessMetadataValue]
3789
+ """
3790
+ kwargs['_return_http_data_only'] = True
3791
+ if '_preload_content' in kwargs:
3792
+ message = "Error! Please call the get_portfolios_access_metadata_by_key_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3793
+ raise ValueError(message)
3794
+ if async_req is not None:
3795
+ kwargs['async_req'] = async_req
3796
+ return self.get_portfolios_access_metadata_by_key_with_http_info(scope, code, metadata_key, effective_at, as_at, **kwargs) # noqa: E501
3797
+
3798
+ @validate_arguments
3799
+ def get_portfolios_access_metadata_by_key_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3800
+ """[EARLY ACCESS] GetPortfoliosAccessMetadataByKey: Get an entry identified by a metadataKey in the access metadata object # noqa: E501
3801
+
3802
+ Get a specific portfolio access metadata rule by specifying the corresponding identifier parts No matching will be performed through this endpoint. To retrieve a rule, it is necessary to specify, exactly, the identifier of the rule # noqa: E501
3803
+ This method makes a synchronous HTTP request by default. To make an
3804
+ asynchronous HTTP request, please pass async_req=True
3805
+
3806
+ >>> thread = api.get_portfolios_access_metadata_by_key_with_http_info(scope, code, metadata_key, effective_at, as_at, async_req=True)
3807
+ >>> result = thread.get()
3808
+
3809
+ :param scope: The scope of the Portfolio Access Metadata Rule to retrieve. (required)
3810
+ :type scope: str
3811
+ :param code: The code of the portfolio (required)
3812
+ :type code: str
3813
+ :param metadata_key: Key of the metadata to retrieve (required)
3814
+ :type metadata_key: str
3815
+ :param effective_at: The effective date of the rule
3816
+ :type effective_at: str
3817
+ :param as_at: The asAt datetime at which to retrieve the portfolio access metadata.
3818
+ :type as_at: datetime
3819
+ :param async_req: Whether to execute the request asynchronously.
3820
+ :type async_req: bool, optional
3821
+ :param _preload_content: if False, the ApiResponse.data will
3822
+ be set to none and raw_data will store the
3823
+ HTTP response body without reading/decoding.
3824
+ Default is True.
3825
+ :type _preload_content: bool, optional
3826
+ :param _return_http_data_only: response data instead of ApiResponse
3827
+ object with status code, headers, etc
3828
+ :type _return_http_data_only: bool, optional
3829
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3830
+ :param opts: Configuration options for this request
3831
+ :type opts: ConfigurationOptions, optional
3832
+ :param _request_auth: set to override the auth_settings for an a single
3833
+ request; this effectively ignores the authentication
3834
+ in the spec for a single request.
3835
+ :type _request_auth: dict, optional
3836
+ :type _content_type: string, optional: force content-type for the request
3837
+ :return: Returns the result object.
3838
+ If the method is called asynchronously,
3839
+ returns the request thread.
3840
+ :rtype: tuple(List[AccessMetadataValue], status_code(int), headers(HTTPHeaderDict))
3841
+ """
3842
+
3843
+ _params = locals()
3844
+
3845
+ _all_params = [
3846
+ 'scope',
3847
+ 'code',
3848
+ 'metadata_key',
3849
+ 'effective_at',
3850
+ 'as_at'
3851
+ ]
3852
+ _all_params.extend(
3853
+ [
3854
+ 'async_req',
3855
+ '_return_http_data_only',
3856
+ '_preload_content',
3857
+ '_request_timeout',
3858
+ '_request_auth',
3859
+ '_content_type',
3860
+ '_headers',
3861
+ 'opts'
3127
3862
  ]
3128
3863
  )
3129
3864
 
@@ -3132,7 +3867,7 @@ class PortfoliosApi:
3132
3867
  if _key not in _all_params:
3133
3868
  raise ApiTypeError(
3134
3869
  "Got an unexpected keyword argument '%s'"
3135
- " to method get_portfolio_returns" % _key
3870
+ " to method get_portfolios_access_metadata_by_key" % _key
3136
3871
  )
3137
3872
  _params[_key] = _val
3138
3873
  del _params['kwargs']
@@ -3147,23 +3882,14 @@ class PortfoliosApi:
3147
3882
  if _params['code']:
3148
3883
  _path_params['code'] = _params['code']
3149
3884
 
3150
- if _params['return_scope']:
3151
- _path_params['returnScope'] = _params['return_scope']
3152
-
3153
- if _params['return_code']:
3154
- _path_params['returnCode'] = _params['return_code']
3885
+ if _params['metadata_key']:
3886
+ _path_params['metadataKey'] = _params['metadata_key']
3155
3887
 
3156
3888
 
3157
3889
  # process the query parameters
3158
3890
  _query_params = []
3159
- if _params.get('from_effective_at') is not None: # noqa: E501
3160
- _query_params.append(('fromEffectiveAt', _params['from_effective_at']))
3161
-
3162
- if _params.get('to_effective_at') is not None: # noqa: E501
3163
- _query_params.append(('toEffectiveAt', _params['to_effective_at']))
3164
-
3165
- if _params.get('period') is not None: # noqa: E501
3166
- _query_params.append(('period', _params['period']))
3891
+ if _params.get('effective_at') is not None: # noqa: E501
3892
+ _query_params.append(('effectiveAt', _params['effective_at']))
3167
3893
 
3168
3894
  if _params.get('as_at') is not None: # noqa: E501
3169
3895
  if isinstance(_params['as_at'], datetime):
@@ -3186,12 +3912,12 @@ class PortfoliosApi:
3186
3912
  _auth_settings = ['oauth2'] # noqa: E501
3187
3913
 
3188
3914
  _response_types_map = {
3189
- '200': "ResourceListOfPerformanceReturn",
3915
+ '200': "List[AccessMetadataValue]",
3190
3916
  '400': "LusidValidationProblemDetails",
3191
3917
  }
3192
3918
 
3193
3919
  return self.api_client.call_api(
3194
- '/api/portfolios/{scope}/{code}/returns/{returnScope}/{returnCode}', 'GET',
3920
+ '/api/portfolios/{scope}/{code}/metadata/{metadataKey}', 'GET',
3195
3921
  _path_params,
3196
3922
  _query_params,
3197
3923
  _header_params,
@@ -3204,78 +3930,90 @@ class PortfoliosApi:
3204
3930
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3205
3931
  _preload_content=_params.get('_preload_content', True),
3206
3932
  _request_timeout=_params.get('_request_timeout'),
3933
+ opts=_params.get('opts'),
3207
3934
  collection_formats=_collection_formats,
3208
3935
  _request_auth=_params.get('_request_auth'))
3209
3936
 
3210
3937
  @overload
3211
- async def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, **kwargs) -> List[AccessMetadataValue]: # noqa: E501
3938
+ async def list_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, **kwargs) -> PagedResourceListOfInstrumentEventInstruction: # noqa: E501
3212
3939
  ...
3213
3940
 
3214
3941
  @overload
3215
- def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, async_req: Optional[bool]=True, **kwargs) -> List[AccessMetadataValue]: # noqa: E501
3942
+ def list_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfInstrumentEventInstruction: # noqa: E501
3216
3943
  ...
3217
3944
 
3218
3945
  @validate_arguments
3219
- def get_portfolios_access_metadata_by_key(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[List[AccessMetadataValue], Awaitable[List[AccessMetadataValue]]]: # noqa: E501
3220
- """[EARLY ACCESS] GetPortfoliosAccessMetadataByKey: Get an entry identified by a metadataKey in the access metadata object # noqa: E501
3946
+ def list_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfInstrumentEventInstruction, Awaitable[PagedResourceListOfInstrumentEventInstruction]]: # noqa: E501
3947
+ """[EARLY ACCESS] ListInstrumentEventInstructions: List Instrument Event Instructions # noqa: E501
3221
3948
 
3222
- Get a specific portfolio access metadata rule by specifying the corresponding identifier parts No matching will be performed through this endpoint. To retrieve a rule, it is necessary to specify, exactly, the identifier of the rule # noqa: E501
3949
+ Lists all instructions for a particular portfolio # noqa: E501
3223
3950
  This method makes a synchronous HTTP request by default. To make an
3224
3951
  asynchronous HTTP request, please pass async_req=True
3225
3952
 
3226
- >>> thread = api.get_portfolios_access_metadata_by_key(scope, code, metadata_key, effective_at, as_at, async_req=True)
3953
+ >>> thread = api.list_instrument_event_instructions(scope, code, portfolio_effective_at, as_at, page, limit, filter, sort_by, async_req=True)
3227
3954
  >>> result = thread.get()
3228
3955
 
3229
- :param scope: The scope of the Portfolio Access Metadata Rule to retrieve. (required)
3956
+ :param scope: The scope of the portfolio. (required)
3230
3957
  :type scope: str
3231
- :param code: The code of the portfolio (required)
3958
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
3232
3959
  :type code: str
3233
- :param metadata_key: Key of the metadata to retrieve (required)
3234
- :type metadata_key: str
3235
- :param effective_at: The effective date of the rule
3236
- :type effective_at: str
3237
- :param as_at: The asAt datetime at which to retrieve the portfolio access metadata.
3960
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
3961
+ :type portfolio_effective_at: str
3962
+ :param as_at: The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.
3238
3963
  :type as_at: datetime
3964
+ :param page: The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
3965
+ :type page: str
3966
+ :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3967
+ :type limit: int
3968
+ :param filter: Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3969
+ :type filter: str
3970
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
3971
+ :type sort_by: List[str]
3239
3972
  :param async_req: Whether to execute the request asynchronously.
3240
3973
  :type async_req: bool, optional
3241
- :param _request_timeout: timeout setting for this request.
3242
- If one number provided, it will be total request
3243
- timeout. It can also be a pair (tuple) of
3244
- (connection, read) timeouts.
3974
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3975
+ :param opts: Configuration options for this request
3976
+ :type opts: ConfigurationOptions, optional
3245
3977
  :return: Returns the result object.
3246
3978
  If the method is called asynchronously,
3247
3979
  returns the request thread.
3248
- :rtype: List[AccessMetadataValue]
3980
+ :rtype: PagedResourceListOfInstrumentEventInstruction
3249
3981
  """
3250
3982
  kwargs['_return_http_data_only'] = True
3251
3983
  if '_preload_content' in kwargs:
3252
- message = "Error! Please call the get_portfolios_access_metadata_by_key_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3984
+ message = "Error! Please call the list_instrument_event_instructions_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3253
3985
  raise ValueError(message)
3254
3986
  if async_req is not None:
3255
3987
  kwargs['async_req'] = async_req
3256
- return self.get_portfolios_access_metadata_by_key_with_http_info(scope, code, metadata_key, effective_at, as_at, **kwargs) # noqa: E501
3988
+ return self.list_instrument_event_instructions_with_http_info(scope, code, portfolio_effective_at, as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
3257
3989
 
3258
3990
  @validate_arguments
3259
- def get_portfolios_access_metadata_by_key_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the metadata to retrieve")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date of the rule")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio access metadata.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3260
- """[EARLY ACCESS] GetPortfoliosAccessMetadataByKey: Get an entry identified by a metadataKey in the access metadata object # noqa: E501
3991
+ def list_instrument_event_instructions_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, **kwargs) -> ApiResponse: # noqa: E501
3992
+ """[EARLY ACCESS] ListInstrumentEventInstructions: List Instrument Event Instructions # noqa: E501
3261
3993
 
3262
- Get a specific portfolio access metadata rule by specifying the corresponding identifier parts No matching will be performed through this endpoint. To retrieve a rule, it is necessary to specify, exactly, the identifier of the rule # noqa: E501
3994
+ Lists all instructions for a particular portfolio # noqa: E501
3263
3995
  This method makes a synchronous HTTP request by default. To make an
3264
3996
  asynchronous HTTP request, please pass async_req=True
3265
3997
 
3266
- >>> thread = api.get_portfolios_access_metadata_by_key_with_http_info(scope, code, metadata_key, effective_at, as_at, async_req=True)
3998
+ >>> thread = api.list_instrument_event_instructions_with_http_info(scope, code, portfolio_effective_at, as_at, page, limit, filter, sort_by, async_req=True)
3267
3999
  >>> result = thread.get()
3268
4000
 
3269
- :param scope: The scope of the Portfolio Access Metadata Rule to retrieve. (required)
4001
+ :param scope: The scope of the portfolio. (required)
3270
4002
  :type scope: str
3271
- :param code: The code of the portfolio (required)
4003
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
3272
4004
  :type code: str
3273
- :param metadata_key: Key of the metadata to retrieve (required)
3274
- :type metadata_key: str
3275
- :param effective_at: The effective date of the rule
3276
- :type effective_at: str
3277
- :param as_at: The asAt datetime at which to retrieve the portfolio access metadata.
4005
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
4006
+ :type portfolio_effective_at: str
4007
+ :param as_at: The asAt datetime at which to retrieve the instructions. Defaults to latest if not specified.
3278
4008
  :type as_at: datetime
4009
+ :param page: The pagination token to use to continue listing instructions; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
4010
+ :type page: str
4011
+ :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
4012
+ :type limit: int
4013
+ :param filter: Expression to filter the results. For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
4014
+ :type filter: str
4015
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
4016
+ :type sort_by: List[str]
3279
4017
  :param async_req: Whether to execute the request asynchronously.
3280
4018
  :type async_req: bool, optional
3281
4019
  :param _preload_content: if False, the ApiResponse.data will
@@ -3286,10 +4024,9 @@ class PortfoliosApi:
3286
4024
  :param _return_http_data_only: response data instead of ApiResponse
3287
4025
  object with status code, headers, etc
3288
4026
  :type _return_http_data_only: bool, optional
3289
- :param _request_timeout: timeout setting for this request. If one
3290
- number provided, it will be total request
3291
- timeout. It can also be a pair (tuple) of
3292
- (connection, read) timeouts.
4027
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4028
+ :param opts: Configuration options for this request
4029
+ :type opts: ConfigurationOptions, optional
3293
4030
  :param _request_auth: set to override the auth_settings for an a single
3294
4031
  request; this effectively ignores the authentication
3295
4032
  in the spec for a single request.
@@ -3298,7 +4035,7 @@ class PortfoliosApi:
3298
4035
  :return: Returns the result object.
3299
4036
  If the method is called asynchronously,
3300
4037
  returns the request thread.
3301
- :rtype: tuple(List[AccessMetadataValue], status_code(int), headers(HTTPHeaderDict))
4038
+ :rtype: tuple(PagedResourceListOfInstrumentEventInstruction, status_code(int), headers(HTTPHeaderDict))
3302
4039
  """
3303
4040
 
3304
4041
  _params = locals()
@@ -3306,9 +4043,12 @@ class PortfoliosApi:
3306
4043
  _all_params = [
3307
4044
  'scope',
3308
4045
  'code',
3309
- 'metadata_key',
3310
- 'effective_at',
3311
- 'as_at'
4046
+ 'portfolio_effective_at',
4047
+ 'as_at',
4048
+ 'page',
4049
+ 'limit',
4050
+ 'filter',
4051
+ 'sort_by'
3312
4052
  ]
3313
4053
  _all_params.extend(
3314
4054
  [
@@ -3318,7 +4058,8 @@ class PortfoliosApi:
3318
4058
  '_request_timeout',
3319
4059
  '_request_auth',
3320
4060
  '_content_type',
3321
- '_headers'
4061
+ '_headers',
4062
+ 'opts'
3322
4063
  ]
3323
4064
  )
3324
4065
 
@@ -3327,7 +4068,7 @@ class PortfoliosApi:
3327
4068
  if _key not in _all_params:
3328
4069
  raise ApiTypeError(
3329
4070
  "Got an unexpected keyword argument '%s'"
3330
- " to method get_portfolios_access_metadata_by_key" % _key
4071
+ " to method list_instrument_event_instructions" % _key
3331
4072
  )
3332
4073
  _params[_key] = _val
3333
4074
  del _params['kwargs']
@@ -3342,14 +4083,11 @@ class PortfoliosApi:
3342
4083
  if _params['code']:
3343
4084
  _path_params['code'] = _params['code']
3344
4085
 
3345
- if _params['metadata_key']:
3346
- _path_params['metadataKey'] = _params['metadata_key']
3347
-
3348
4086
 
3349
4087
  # process the query parameters
3350
4088
  _query_params = []
3351
- if _params.get('effective_at') is not None: # noqa: E501
3352
- _query_params.append(('effectiveAt', _params['effective_at']))
4089
+ if _params.get('portfolio_effective_at') is not None: # noqa: E501
4090
+ _query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
3353
4091
 
3354
4092
  if _params.get('as_at') is not None: # noqa: E501
3355
4093
  if isinstance(_params['as_at'], datetime):
@@ -3357,6 +4095,19 @@ class PortfoliosApi:
3357
4095
  else:
3358
4096
  _query_params.append(('asAt', _params['as_at']))
3359
4097
 
4098
+ if _params.get('page') is not None: # noqa: E501
4099
+ _query_params.append(('page', _params['page']))
4100
+
4101
+ if _params.get('limit') is not None: # noqa: E501
4102
+ _query_params.append(('limit', _params['limit']))
4103
+
4104
+ if _params.get('filter') is not None: # noqa: E501
4105
+ _query_params.append(('filter', _params['filter']))
4106
+
4107
+ if _params.get('sort_by') is not None: # noqa: E501
4108
+ _query_params.append(('sortBy', _params['sort_by']))
4109
+ _collection_formats['sortBy'] = 'multi'
4110
+
3360
4111
  # process the header parameters
3361
4112
  _header_params = dict(_params.get('_headers', {}))
3362
4113
  # process the form parameters
@@ -3372,12 +4123,12 @@ class PortfoliosApi:
3372
4123
  _auth_settings = ['oauth2'] # noqa: E501
3373
4124
 
3374
4125
  _response_types_map = {
3375
- '200': "List[AccessMetadataValue]",
4126
+ '200': "PagedResourceListOfInstrumentEventInstruction",
3376
4127
  '400': "LusidValidationProblemDetails",
3377
4128
  }
3378
4129
 
3379
4130
  return self.api_client.call_api(
3380
- '/api/portfolios/{scope}/{code}/metadata/{metadataKey}', 'GET',
4131
+ '/api/portfolios/{scope}/{code}/instrumenteventinstructions', 'GET',
3381
4132
  _path_params,
3382
4133
  _query_params,
3383
4134
  _header_params,
@@ -3390,6 +4141,7 @@ class PortfoliosApi:
3390
4141
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3391
4142
  _preload_content=_params.get('_preload_content', True),
3392
4143
  _request_timeout=_params.get('_request_timeout'),
4144
+ opts=_params.get('opts'),
3393
4145
  collection_formats=_collection_formats,
3394
4146
  _request_auth=_params.get('_request_auth'))
3395
4147
 
@@ -3426,10 +4178,9 @@ class PortfoliosApi:
3426
4178
  :type limit: int
3427
4179
  :param async_req: Whether to execute the request asynchronously.
3428
4180
  :type async_req: bool, optional
3429
- :param _request_timeout: timeout setting for this request.
3430
- If one number provided, it will be total request
3431
- timeout. It can also be a pair (tuple) of
3432
- (connection, read) timeouts.
4181
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4182
+ :param opts: Configuration options for this request
4183
+ :type opts: ConfigurationOptions, optional
3433
4184
  :return: Returns the result object.
3434
4185
  If the method is called asynchronously,
3435
4186
  returns the request thread.
@@ -3476,10 +4227,9 @@ class PortfoliosApi:
3476
4227
  :param _return_http_data_only: response data instead of ApiResponse
3477
4228
  object with status code, headers, etc
3478
4229
  :type _return_http_data_only: bool, optional
3479
- :param _request_timeout: timeout setting for this request. If one
3480
- number provided, it will be total request
3481
- timeout. It can also be a pair (tuple) of
3482
- (connection, read) timeouts.
4230
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4231
+ :param opts: Configuration options for this request
4232
+ :type opts: ConfigurationOptions, optional
3483
4233
  :param _request_auth: set to override the auth_settings for an a single
3484
4234
  request; this effectively ignores the authentication
3485
4235
  in the spec for a single request.
@@ -3509,7 +4259,8 @@ class PortfoliosApi:
3509
4259
  '_request_timeout',
3510
4260
  '_request_auth',
3511
4261
  '_content_type',
3512
- '_headers'
4262
+ '_headers',
4263
+ 'opts'
3513
4264
  ]
3514
4265
  )
3515
4266
 
@@ -3584,41 +4335,40 @@ class PortfoliosApi:
3584
4335
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3585
4336
  _preload_content=_params.get('_preload_content', True),
3586
4337
  _request_timeout=_params.get('_request_timeout'),
4338
+ opts=_params.get('opts'),
3587
4339
  collection_formats=_collection_formats,
3588
4340
  _request_auth=_params.get('_request_auth'))
3589
4341
 
3590
4342
  @overload
3591
- async def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
4343
+ async def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
3592
4344
  ...
3593
4345
 
3594
4346
  @overload
3595
- def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
4347
+ def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
3596
4348
  ...
3597
4349
 
3598
4350
  @validate_arguments
3599
- def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPortfolio, Awaitable[ResourceListOfPortfolio]]: # noqa: E501
4351
+ def list_portfolios(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPortfolio, Awaitable[ResourceListOfPortfolio]]: # noqa: E501
3600
4352
  """ListPortfolios: List portfolios # noqa: E501
3601
4353
 
3602
4354
  List all the portfolios matching particular criteria. # noqa: E501
3603
4355
  This method makes a synchronous HTTP request by default. To make an
3604
4356
  asynchronous HTTP request, please pass async_req=True
3605
4357
 
3606
- >>> thread = api.list_portfolios(effective_at, as_at, page, start, limit, filter, sort_by, query, property_keys, relationship_definition_ids, async_req=True)
4358
+ >>> thread = api.list_portfolios(effective_at, as_at, page, limit, filter, sort_by, query, property_keys, relationship_definition_ids, async_req=True)
3607
4359
  >>> result = thread.get()
3608
4360
 
3609
4361
  :param effective_at: The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.
3610
4362
  :type effective_at: str
3611
4363
  :param as_at: The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.
3612
4364
  :type as_at: datetime
3613
- :param page: The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
4365
+ :param page: The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
3614
4366
  :type page: str
3615
- :param start: When paginating, skip this number of results.
3616
- :type start: int
3617
4367
  :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3618
4368
  :type limit: int
3619
4369
  :param filter: Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3620
4370
  :type filter: str
3621
- :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
4371
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".
3622
4372
  :type sort_by: List[str]
3623
4373
  :param query: Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".
3624
4374
  :type query: str
@@ -3628,10 +4378,9 @@ class PortfoliosApi:
3628
4378
  :type relationship_definition_ids: List[str]
3629
4379
  :param async_req: Whether to execute the request asynchronously.
3630
4380
  :type async_req: bool, optional
3631
- :param _request_timeout: timeout setting for this request.
3632
- If one number provided, it will be total request
3633
- timeout. It can also be a pair (tuple) of
3634
- (connection, read) timeouts.
4381
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4382
+ :param opts: Configuration options for this request
4383
+ :type opts: ConfigurationOptions, optional
3635
4384
  :return: Returns the result object.
3636
4385
  If the method is called asynchronously,
3637
4386
  returns the request thread.
@@ -3643,32 +4392,30 @@ class PortfoliosApi:
3643
4392
  raise ValueError(message)
3644
4393
  if async_req is not None:
3645
4394
  kwargs['async_req'] = async_req
3646
- return self.list_portfolios_with_http_info(effective_at, as_at, page, start, limit, filter, sort_by, query, property_keys, relationship_definition_ids, **kwargs) # noqa: E501
4395
+ return self.list_portfolios_with_http_info(effective_at, as_at, page, limit, filter, sort_by, query, property_keys, relationship_definition_ids, **kwargs) # noqa: E501
3647
4396
 
3648
4397
  @validate_arguments
3649
- def list_portfolios_with_http_info(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ApiResponse: # noqa: E501
4398
+ def list_portfolios_with_http_info(self, effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, query : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3650
4399
  """ListPortfolios: List portfolios # noqa: E501
3651
4400
 
3652
4401
  List all the portfolios matching particular criteria. # noqa: E501
3653
4402
  This method makes a synchronous HTTP request by default. To make an
3654
4403
  asynchronous HTTP request, please pass async_req=True
3655
4404
 
3656
- >>> thread = api.list_portfolios_with_http_info(effective_at, as_at, page, start, limit, filter, sort_by, query, property_keys, relationship_definition_ids, async_req=True)
4405
+ >>> thread = api.list_portfolios_with_http_info(effective_at, as_at, page, limit, filter, sort_by, query, property_keys, relationship_definition_ids, async_req=True)
3657
4406
  >>> result = thread.get()
3658
4407
 
3659
4408
  :param effective_at: The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.
3660
4409
  :type effective_at: str
3661
4410
  :param as_at: The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.
3662
4411
  :type as_at: datetime
3663
- :param page: The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
4412
+ :param page: The pagination token to use to continue listing portfolios; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
3664
4413
  :type page: str
3665
- :param start: When paginating, skip this number of results.
3666
- :type start: int
3667
4414
  :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3668
4415
  :type limit: int
3669
4416
  :param filter: Expression to filter the results. For example, to filter on the transaction type, specify \"type eq 'Transaction'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3670
4417
  :type filter: str
3671
- :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
4418
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".
3672
4419
  :type sort_by: List[str]
3673
4420
  :param query: Expression specifying the criteria that the returned portfolios must meet. For example, to see which portfolios have holdings in instruments with a LusidInstrumentId (LUID) of 'LUID_PPA8HI6M' or a Figi of 'BBG000BLNNH6', specify \"instrument.identifiers in (('LusidInstrumentId', 'LUID_PPA8HI6M'), ('Figi', 'BBG000BLNNH6'))\".
3674
4421
  :type query: str
@@ -3686,10 +4433,9 @@ class PortfoliosApi:
3686
4433
  :param _return_http_data_only: response data instead of ApiResponse
3687
4434
  object with status code, headers, etc
3688
4435
  :type _return_http_data_only: bool, optional
3689
- :param _request_timeout: timeout setting for this request. If one
3690
- number provided, it will be total request
3691
- timeout. It can also be a pair (tuple) of
3692
- (connection, read) timeouts.
4436
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4437
+ :param opts: Configuration options for this request
4438
+ :type opts: ConfigurationOptions, optional
3693
4439
  :param _request_auth: set to override the auth_settings for an a single
3694
4440
  request; this effectively ignores the authentication
3695
4441
  in the spec for a single request.
@@ -3707,7 +4453,6 @@ class PortfoliosApi:
3707
4453
  'effective_at',
3708
4454
  'as_at',
3709
4455
  'page',
3710
- 'start',
3711
4456
  'limit',
3712
4457
  'filter',
3713
4458
  'sort_by',
@@ -3723,7 +4468,8 @@ class PortfoliosApi:
3723
4468
  '_request_timeout',
3724
4469
  '_request_auth',
3725
4470
  '_content_type',
3726
- '_headers'
4471
+ '_headers',
4472
+ 'opts'
3727
4473
  ]
3728
4474
  )
3729
4475
 
@@ -3756,9 +4502,6 @@ class PortfoliosApi:
3756
4502
  if _params.get('page') is not None: # noqa: E501
3757
4503
  _query_params.append(('page', _params['page']))
3758
4504
 
3759
- if _params.get('start') is not None: # noqa: E501
3760
- _query_params.append(('start', _params['start']))
3761
-
3762
4505
  if _params.get('limit') is not None: # noqa: E501
3763
4506
  _query_params.append(('limit', _params['limit']))
3764
4507
 
@@ -3813,26 +4556,27 @@ class PortfoliosApi:
3813
4556
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3814
4557
  _preload_content=_params.get('_preload_content', True),
3815
4558
  _request_timeout=_params.get('_request_timeout'),
4559
+ opts=_params.get('opts'),
3816
4560
  collection_formats=_collection_formats,
3817
4561
  _request_auth=_params.get('_request_auth'))
3818
4562
 
3819
4563
  @overload
3820
- async def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
4564
+ async def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
3821
4565
  ...
3822
4566
 
3823
4567
  @overload
3824
- def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
4568
+ def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfPortfolio: # noqa: E501
3825
4569
  ...
3826
4570
 
3827
4571
  @validate_arguments
3828
- def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPortfolio, Awaitable[ResourceListOfPortfolio]]: # noqa: E501
4572
+ def list_portfolios_for_scope(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfPortfolio, Awaitable[ResourceListOfPortfolio]]: # noqa: E501
3829
4573
  """ListPortfoliosForScope: List portfolios for scope # noqa: E501
3830
4574
 
3831
4575
  List all the portfolios in a particular scope. # noqa: E501
3832
4576
  This method makes a synchronous HTTP request by default. To make an
3833
4577
  asynchronous HTTP request, please pass async_req=True
3834
4578
 
3835
- >>> thread = api.list_portfolios_for_scope(scope, effective_at, as_at, page, start, limit, filter, sort_by, property_keys, relationship_definition_ids, async_req=True)
4579
+ >>> thread = api.list_portfolios_for_scope(scope, effective_at, as_at, page, limit, filter, sort_by, property_keys, relationship_definition_ids, async_req=True)
3836
4580
  >>> result = thread.get()
3837
4581
 
3838
4582
  :param scope: The scope whose portfolios to list. (required)
@@ -3841,15 +4585,13 @@ class PortfoliosApi:
3841
4585
  :type effective_at: str
3842
4586
  :param as_at: The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.
3843
4587
  :type as_at: datetime
3844
- :param page: The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
4588
+ :param page: The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
3845
4589
  :type page: str
3846
- :param start: When paginating, skip this number of results.
3847
- :type start: int
3848
4590
  :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3849
4591
  :type limit: int
3850
4592
  :param filter: Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3851
4593
  :type filter: str
3852
- :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
4594
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".
3853
4595
  :type sort_by: List[str]
3854
4596
  :param property_keys: A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.
3855
4597
  :type property_keys: List[str]
@@ -3857,10 +4599,9 @@ class PortfoliosApi:
3857
4599
  :type relationship_definition_ids: List[str]
3858
4600
  :param async_req: Whether to execute the request asynchronously.
3859
4601
  :type async_req: bool, optional
3860
- :param _request_timeout: timeout setting for this request.
3861
- If one number provided, it will be total request
3862
- timeout. It can also be a pair (tuple) of
3863
- (connection, read) timeouts.
4602
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4603
+ :param opts: Configuration options for this request
4604
+ :type opts: ConfigurationOptions, optional
3864
4605
  :return: Returns the result object.
3865
4606
  If the method is called asynchronously,
3866
4607
  returns the request thread.
@@ -3872,17 +4613,17 @@ class PortfoliosApi:
3872
4613
  raise ValueError(message)
3873
4614
  if async_req is not None:
3874
4615
  kwargs['async_req'] = async_req
3875
- return self.list_portfolios_for_scope_with_http_info(scope, effective_at, as_at, page, start, limit, filter, sort_by, property_keys, relationship_definition_ids, **kwargs) # noqa: E501
4616
+ return self.list_portfolios_for_scope_with_http_info(scope, effective_at, as_at, page, limit, filter, sort_by, property_keys, relationship_definition_ids, **kwargs) # noqa: E501
3876
4617
 
3877
4618
  @validate_arguments
3878
- def list_portfolios_for_scope_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt 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="When paginating, skip this number of results.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ApiResponse: # noqa: E501
4619
+ def list_portfolios_for_scope_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope whose portfolios to list.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the portfolios. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolios in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3879
4620
  """ListPortfoliosForScope: List portfolios for scope # noqa: E501
3880
4621
 
3881
4622
  List all the portfolios in a particular scope. # noqa: E501
3882
4623
  This method makes a synchronous HTTP request by default. To make an
3883
4624
  asynchronous HTTP request, please pass async_req=True
3884
4625
 
3885
- >>> thread = api.list_portfolios_for_scope_with_http_info(scope, effective_at, as_at, page, start, limit, filter, sort_by, property_keys, relationship_definition_ids, async_req=True)
4626
+ >>> thread = api.list_portfolios_for_scope_with_http_info(scope, effective_at, as_at, page, limit, filter, sort_by, property_keys, relationship_definition_ids, async_req=True)
3886
4627
  >>> result = thread.get()
3887
4628
 
3888
4629
  :param scope: The scope whose portfolios to list. (required)
@@ -3891,15 +4632,13 @@ class PortfoliosApi:
3891
4632
  :type effective_at: str
3892
4633
  :param as_at: The asAt datetime at which to list the portfolios. Defaults to returning the latest version of each portfolio if not specified.
3893
4634
  :type as_at: datetime
3894
- :param page: The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request. Also, if set, a start value cannot be provided.
4635
+ :param page: The pagination token to use to continue listing portfolios. This value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.
3895
4636
  :type page: str
3896
- :param start: When paginating, skip this number of results.
3897
- :type start: int
3898
4637
  :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3899
4638
  :type limit: int
3900
4639
  :param filter: Expression to filter the results. For example, to return only transactions with a transaction type of 'Buy', specify \"type eq 'Buy'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3901
4640
  :type filter: str
3902
- :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
4641
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\".
3903
4642
  :type sort_by: List[str]
3904
4643
  :param property_keys: A list of property keys from the 'Portfolio' domain to decorate onto each portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.
3905
4644
  :type property_keys: List[str]
@@ -3915,10 +4654,9 @@ class PortfoliosApi:
3915
4654
  :param _return_http_data_only: response data instead of ApiResponse
3916
4655
  object with status code, headers, etc
3917
4656
  :type _return_http_data_only: bool, optional
3918
- :param _request_timeout: timeout setting for this request. If one
3919
- number provided, it will be total request
3920
- timeout. It can also be a pair (tuple) of
3921
- (connection, read) timeouts.
4657
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4658
+ :param opts: Configuration options for this request
4659
+ :type opts: ConfigurationOptions, optional
3922
4660
  :param _request_auth: set to override the auth_settings for an a single
3923
4661
  request; this effectively ignores the authentication
3924
4662
  in the spec for a single request.
@@ -3937,7 +4675,6 @@ class PortfoliosApi:
3937
4675
  'effective_at',
3938
4676
  'as_at',
3939
4677
  'page',
3940
- 'start',
3941
4678
  'limit',
3942
4679
  'filter',
3943
4680
  'sort_by',
@@ -3952,7 +4689,8 @@ class PortfoliosApi:
3952
4689
  '_request_timeout',
3953
4690
  '_request_auth',
3954
4691
  '_content_type',
3955
- '_headers'
4692
+ '_headers',
4693
+ 'opts'
3956
4694
  ]
3957
4695
  )
3958
4696
 
@@ -3988,9 +4726,6 @@ class PortfoliosApi:
3988
4726
  if _params.get('page') is not None: # noqa: E501
3989
4727
  _query_params.append(('page', _params['page']))
3990
4728
 
3991
- if _params.get('start') is not None: # noqa: E501
3992
- _query_params.append(('start', _params['start']))
3993
-
3994
4729
  if _params.get('limit') is not None: # noqa: E501
3995
4730
  _query_params.append(('limit', _params['limit']))
3996
4731
 
@@ -4042,22 +4777,23 @@ class PortfoliosApi:
4042
4777
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4043
4778
  _preload_content=_params.get('_preload_content', True),
4044
4779
  _request_timeout=_params.get('_request_timeout'),
4780
+ opts=_params.get('opts'),
4045
4781
  collection_formats=_collection_formats,
4046
4782
  _request_auth=_params.get('_request_auth'))
4047
4783
 
4048
4784
  @overload
4049
- async def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], **kwargs) -> ActionResultOfPortfolio: # noqa: E501
4785
+ async def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], **kwargs) -> Portfolio: # noqa: E501
4050
4786
  ...
4051
4787
 
4052
4788
  @overload
4053
- def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], async_req: Optional[bool]=True, **kwargs) -> ActionResultOfPortfolio: # noqa: E501
4789
+ def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], async_req: Optional[bool]=True, **kwargs) -> Portfolio: # noqa: E501
4054
4790
  ...
4055
4791
 
4056
4792
  @validate_arguments
4057
- def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], async_req: Optional[bool]=None, **kwargs) -> Union[ActionResultOfPortfolio, Awaitable[ActionResultOfPortfolio]]: # noqa: E501
4058
- """[EARLY ACCESS] PatchPortfolio: Patch portfolio. # noqa: E501
4793
+ def patch_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], async_req: Optional[bool]=None, **kwargs) -> Union[Portfolio, Awaitable[Portfolio]]: # noqa: E501
4794
+ """PatchPortfolio: Patch portfolio. # noqa: E501
4059
4795
 
4060
- Create or update certain fields for a particular portfolio. The behaviour is defined by the JSON Patch specification. Currently supported are: CreationDate, InstrumentScopes. # noqa: E501
4796
+ Create or update certain fields for a particular portfolio. The behaviour is defined by the JSON Patch specification. Currently supported are: Created, InstrumentScopes, Type. # noqa: E501
4061
4797
  This method makes a synchronous HTTP request by default. To make an
4062
4798
  asynchronous HTTP request, please pass async_req=True
4063
4799
 
@@ -4072,14 +4808,13 @@ class PortfoliosApi:
4072
4808
  :type operation: List[Operation]
4073
4809
  :param async_req: Whether to execute the request asynchronously.
4074
4810
  :type async_req: bool, optional
4075
- :param _request_timeout: timeout setting for this request.
4076
- If one number provided, it will be total request
4077
- timeout. It can also be a pair (tuple) of
4078
- (connection, read) timeouts.
4811
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4812
+ :param opts: Configuration options for this request
4813
+ :type opts: ConfigurationOptions, optional
4079
4814
  :return: Returns the result object.
4080
4815
  If the method is called asynchronously,
4081
4816
  returns the request thread.
4082
- :rtype: ActionResultOfPortfolio
4817
+ :rtype: Portfolio
4083
4818
  """
4084
4819
  kwargs['_return_http_data_only'] = True
4085
4820
  if '_preload_content' in kwargs:
@@ -4091,9 +4826,9 @@ class PortfoliosApi:
4091
4826
 
4092
4827
  @validate_arguments
4093
4828
  def patch_portfolio_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], operation : Annotated[conlist(Operation), Field(..., description="The json patch document. For more check: https://datatracker.ietf.org/doc/html/rfc6902.")], **kwargs) -> ApiResponse: # noqa: E501
4094
- """[EARLY ACCESS] PatchPortfolio: Patch portfolio. # noqa: E501
4829
+ """PatchPortfolio: Patch portfolio. # noqa: E501
4095
4830
 
4096
- Create or update certain fields for a particular portfolio. The behaviour is defined by the JSON Patch specification. Currently supported are: CreationDate, InstrumentScopes. # noqa: E501
4831
+ Create or update certain fields for a particular portfolio. The behaviour is defined by the JSON Patch specification. Currently supported are: Created, InstrumentScopes, Type. # noqa: E501
4097
4832
  This method makes a synchronous HTTP request by default. To make an
4098
4833
  asynchronous HTTP request, please pass async_req=True
4099
4834
 
@@ -4116,10 +4851,9 @@ class PortfoliosApi:
4116
4851
  :param _return_http_data_only: response data instead of ApiResponse
4117
4852
  object with status code, headers, etc
4118
4853
  :type _return_http_data_only: bool, optional
4119
- :param _request_timeout: timeout setting for this request. If one
4120
- number provided, it will be total request
4121
- timeout. It can also be a pair (tuple) of
4122
- (connection, read) timeouts.
4854
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4855
+ :param opts: Configuration options for this request
4856
+ :type opts: ConfigurationOptions, optional
4123
4857
  :param _request_auth: set to override the auth_settings for an a single
4124
4858
  request; this effectively ignores the authentication
4125
4859
  in the spec for a single request.
@@ -4128,7 +4862,7 @@ class PortfoliosApi:
4128
4862
  :return: Returns the result object.
4129
4863
  If the method is called asynchronously,
4130
4864
  returns the request thread.
4131
- :rtype: tuple(ActionResultOfPortfolio, status_code(int), headers(HTTPHeaderDict))
4865
+ :rtype: tuple(Portfolio, status_code(int), headers(HTTPHeaderDict))
4132
4866
  """
4133
4867
 
4134
4868
  _params = locals()
@@ -4146,7 +4880,8 @@ class PortfoliosApi:
4146
4880
  '_request_timeout',
4147
4881
  '_request_auth',
4148
4882
  '_content_type',
4149
- '_headers'
4883
+ '_headers',
4884
+ 'opts'
4150
4885
  ]
4151
4886
  )
4152
4887
 
@@ -4198,7 +4933,7 @@ class PortfoliosApi:
4198
4933
  _auth_settings = ['oauth2'] # noqa: E501
4199
4934
 
4200
4935
  _response_types_map = {
4201
- '200': "ActionResultOfPortfolio",
4936
+ '200': "Portfolio",
4202
4937
  '400': "LusidValidationProblemDetails",
4203
4938
  }
4204
4939
 
@@ -4216,6 +4951,7 @@ class PortfoliosApi:
4216
4951
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4217
4952
  _preload_content=_params.get('_preload_content', True),
4218
4953
  _request_timeout=_params.get('_request_timeout'),
4954
+ opts=_params.get('opts'),
4219
4955
  collection_formats=_collection_formats,
4220
4956
  _request_auth=_params.get('_request_auth'))
4221
4957
 
@@ -4250,10 +4986,9 @@ class PortfoliosApi:
4250
4986
  :type effective_until: datetime
4251
4987
  :param async_req: Whether to execute the request asynchronously.
4252
4988
  :type async_req: bool, optional
4253
- :param _request_timeout: timeout setting for this request.
4254
- If one number provided, it will be total request
4255
- timeout. It can also be a pair (tuple) of
4256
- (connection, read) timeouts.
4989
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
4990
+ :param opts: Configuration options for this request
4991
+ :type opts: ConfigurationOptions, optional
4257
4992
  :return: Returns the result object.
4258
4993
  If the method is called asynchronously,
4259
4994
  returns the request thread.
@@ -4298,10 +5033,9 @@ class PortfoliosApi:
4298
5033
  :param _return_http_data_only: response data instead of ApiResponse
4299
5034
  object with status code, headers, etc
4300
5035
  :type _return_http_data_only: bool, optional
4301
- :param _request_timeout: timeout setting for this request. If one
4302
- number provided, it will be total request
4303
- timeout. It can also be a pair (tuple) of
4304
- (connection, read) timeouts.
5036
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5037
+ :param opts: Configuration options for this request
5038
+ :type opts: ConfigurationOptions, optional
4305
5039
  :param _request_auth: set to override the auth_settings for an a single
4306
5040
  request; this effectively ignores the authentication
4307
5041
  in the spec for a single request.
@@ -4330,7 +5064,8 @@ class PortfoliosApi:
4330
5064
  '_request_timeout',
4331
5065
  '_request_auth',
4332
5066
  '_content_type',
4333
- '_headers'
5067
+ '_headers',
5068
+ 'opts'
4334
5069
  ]
4335
5070
  )
4336
5071
 
@@ -4409,6 +5144,7 @@ class PortfoliosApi:
4409
5144
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4410
5145
  _preload_content=_params.get('_preload_content', True),
4411
5146
  _request_timeout=_params.get('_request_timeout'),
5147
+ opts=_params.get('opts'),
4412
5148
  collection_formats=_collection_formats,
4413
5149
  _request_auth=_params.get('_request_auth'))
4414
5150
 
@@ -4441,10 +5177,9 @@ class PortfoliosApi:
4441
5177
  :type effective_at: str
4442
5178
  :param async_req: Whether to execute the request asynchronously.
4443
5179
  :type async_req: bool, optional
4444
- :param _request_timeout: timeout setting for this request.
4445
- If one number provided, it will be total request
4446
- timeout. It can also be a pair (tuple) of
4447
- (connection, read) timeouts.
5180
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5181
+ :param opts: Configuration options for this request
5182
+ :type opts: ConfigurationOptions, optional
4448
5183
  :return: Returns the result object.
4449
5184
  If the method is called asynchronously,
4450
5185
  returns the request thread.
@@ -4487,10 +5222,9 @@ class PortfoliosApi:
4487
5222
  :param _return_http_data_only: response data instead of ApiResponse
4488
5223
  object with status code, headers, etc
4489
5224
  :type _return_http_data_only: bool, optional
4490
- :param _request_timeout: timeout setting for this request. If one
4491
- number provided, it will be total request
4492
- timeout. It can also be a pair (tuple) of
4493
- (connection, read) timeouts.
5225
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5226
+ :param opts: Configuration options for this request
5227
+ :type opts: ConfigurationOptions, optional
4494
5228
  :param _request_auth: set to override the auth_settings for an a single
4495
5229
  request; this effectively ignores the authentication
4496
5230
  in the spec for a single request.
@@ -4518,7 +5252,8 @@ class PortfoliosApi:
4518
5252
  '_request_timeout',
4519
5253
  '_request_auth',
4520
5254
  '_content_type',
4521
- '_headers'
5255
+ '_headers',
5256
+ 'opts'
4522
5257
  ]
4523
5258
  )
4524
5259
 
@@ -4591,6 +5326,197 @@ class PortfoliosApi:
4591
5326
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4592
5327
  _preload_content=_params.get('_preload_content', True),
4593
5328
  _request_timeout=_params.get('_request_timeout'),
5329
+ opts=_params.get('opts'),
5330
+ collection_formats=_collection_formats,
5331
+ _request_auth=_params.get('_request_auth'))
5332
+
5333
+ @overload
5334
+ async def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> InstrumentEventInstructionsResponse: # noqa: E501
5335
+ ...
5336
+
5337
+ @overload
5338
+ def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> InstrumentEventInstructionsResponse: # noqa: E501
5339
+ ...
5340
+
5341
+ @validate_arguments
5342
+ def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InstrumentEventInstructionsResponse, Awaitable[InstrumentEventInstructionsResponse]]: # noqa: E501
5343
+ """[EARLY ACCESS] UpsertInstrumentEventInstructions: Upsert Instrument Event Instructions # noqa: E501
5344
+
5345
+ Batch upsert for instrument event instructions, for the portfolio or individual holdings # noqa: E501
5346
+ This method makes a synchronous HTTP request by default. To make an
5347
+ asynchronous HTTP request, please pass async_req=True
5348
+
5349
+ >>> thread = api.upsert_instrument_event_instructions(scope, code, success_mode, request_body, portfolio_effective_at, async_req=True)
5350
+ >>> result = thread.get()
5351
+
5352
+ :param scope: The scope of the portfolio. (required)
5353
+ :type scope: str
5354
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
5355
+ :type code: str
5356
+ :param success_mode: Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default) (required)
5357
+ :type success_mode: str
5358
+ :param request_body: The instructions to be upserted to the portfolio. (required)
5359
+ :type request_body: Dict[str, InstrumentEventInstructionRequest]
5360
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
5361
+ :type portfolio_effective_at: str
5362
+ :param async_req: Whether to execute the request asynchronously.
5363
+ :type async_req: bool, optional
5364
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5365
+ :param opts: Configuration options for this request
5366
+ :type opts: ConfigurationOptions, optional
5367
+ :return: Returns the result object.
5368
+ If the method is called asynchronously,
5369
+ returns the request thread.
5370
+ :rtype: InstrumentEventInstructionsResponse
5371
+ """
5372
+ kwargs['_return_http_data_only'] = True
5373
+ if '_preload_content' in kwargs:
5374
+ message = "Error! Please call the upsert_instrument_event_instructions_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
5375
+ raise ValueError(message)
5376
+ if async_req is not None:
5377
+ kwargs['async_req'] = async_req
5378
+ return self.upsert_instrument_event_instructions_with_http_info(scope, code, success_mode, request_body, portfolio_effective_at, **kwargs) # noqa: E501
5379
+
5380
+ @validate_arguments
5381
+ def upsert_instrument_event_instructions_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
5382
+ """[EARLY ACCESS] UpsertInstrumentEventInstructions: Upsert Instrument Event Instructions # noqa: E501
5383
+
5384
+ Batch upsert for instrument event instructions, for the portfolio or individual holdings # noqa: E501
5385
+ This method makes a synchronous HTTP request by default. To make an
5386
+ asynchronous HTTP request, please pass async_req=True
5387
+
5388
+ >>> thread = api.upsert_instrument_event_instructions_with_http_info(scope, code, success_mode, request_body, portfolio_effective_at, async_req=True)
5389
+ >>> result = thread.get()
5390
+
5391
+ :param scope: The scope of the portfolio. (required)
5392
+ :type scope: str
5393
+ :param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
5394
+ :type code: str
5395
+ :param success_mode: Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default) (required)
5396
+ :type success_mode: str
5397
+ :param request_body: The instructions to be upserted to the portfolio. (required)
5398
+ :type request_body: Dict[str, InstrumentEventInstructionRequest]
5399
+ :param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
5400
+ :type portfolio_effective_at: str
5401
+ :param async_req: Whether to execute the request asynchronously.
5402
+ :type async_req: bool, optional
5403
+ :param _preload_content: if False, the ApiResponse.data will
5404
+ be set to none and raw_data will store the
5405
+ HTTP response body without reading/decoding.
5406
+ Default is True.
5407
+ :type _preload_content: bool, optional
5408
+ :param _return_http_data_only: response data instead of ApiResponse
5409
+ object with status code, headers, etc
5410
+ :type _return_http_data_only: bool, optional
5411
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5412
+ :param opts: Configuration options for this request
5413
+ :type opts: ConfigurationOptions, optional
5414
+ :param _request_auth: set to override the auth_settings for an a single
5415
+ request; this effectively ignores the authentication
5416
+ in the spec for a single request.
5417
+ :type _request_auth: dict, optional
5418
+ :type _content_type: string, optional: force content-type for the request
5419
+ :return: Returns the result object.
5420
+ If the method is called asynchronously,
5421
+ returns the request thread.
5422
+ :rtype: tuple(InstrumentEventInstructionsResponse, status_code(int), headers(HTTPHeaderDict))
5423
+ """
5424
+
5425
+ _params = locals()
5426
+
5427
+ _all_params = [
5428
+ 'scope',
5429
+ 'code',
5430
+ 'success_mode',
5431
+ 'request_body',
5432
+ 'portfolio_effective_at'
5433
+ ]
5434
+ _all_params.extend(
5435
+ [
5436
+ 'async_req',
5437
+ '_return_http_data_only',
5438
+ '_preload_content',
5439
+ '_request_timeout',
5440
+ '_request_auth',
5441
+ '_content_type',
5442
+ '_headers',
5443
+ 'opts'
5444
+ ]
5445
+ )
5446
+
5447
+ # validate the arguments
5448
+ for _key, _val in _params['kwargs'].items():
5449
+ if _key not in _all_params:
5450
+ raise ApiTypeError(
5451
+ "Got an unexpected keyword argument '%s'"
5452
+ " to method upsert_instrument_event_instructions" % _key
5453
+ )
5454
+ _params[_key] = _val
5455
+ del _params['kwargs']
5456
+
5457
+ _collection_formats = {}
5458
+
5459
+ # process the path parameters
5460
+ _path_params = {}
5461
+ if _params['scope']:
5462
+ _path_params['scope'] = _params['scope']
5463
+
5464
+ if _params['code']:
5465
+ _path_params['code'] = _params['code']
5466
+
5467
+
5468
+ # process the query parameters
5469
+ _query_params = []
5470
+ if _params.get('portfolio_effective_at') is not None: # noqa: E501
5471
+ _query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
5472
+
5473
+ if _params.get('success_mode') is not None: # noqa: E501
5474
+ _query_params.append(('successMode', _params['success_mode']))
5475
+
5476
+ # process the header parameters
5477
+ _header_params = dict(_params.get('_headers', {}))
5478
+ # process the form parameters
5479
+ _form_params = []
5480
+ _files = {}
5481
+ # process the body parameter
5482
+ _body_params = None
5483
+ if _params['request_body'] is not None:
5484
+ _body_params = _params['request_body']
5485
+
5486
+ # set the HTTP header `Accept`
5487
+ _header_params['Accept'] = self.api_client.select_header_accept(
5488
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
5489
+
5490
+ # set the HTTP header `Content-Type`
5491
+ _content_types_list = _params.get('_content_type',
5492
+ self.api_client.select_header_content_type(
5493
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
5494
+ if _content_types_list:
5495
+ _header_params['Content-Type'] = _content_types_list
5496
+
5497
+ # authentication setting
5498
+ _auth_settings = ['oauth2'] # noqa: E501
5499
+
5500
+ _response_types_map = {
5501
+ '200': "InstrumentEventInstructionsResponse",
5502
+ '400': "LusidValidationProblemDetails",
5503
+ }
5504
+
5505
+ return self.api_client.call_api(
5506
+ '/api/portfolios/{scope}/{code}/instrumenteventinstructions', 'POST',
5507
+ _path_params,
5508
+ _query_params,
5509
+ _header_params,
5510
+ body=_body_params,
5511
+ post_params=_form_params,
5512
+ files=_files,
5513
+ response_types_map=_response_types_map,
5514
+ auth_settings=_auth_settings,
5515
+ async_req=_params.get('async_req'),
5516
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
5517
+ _preload_content=_params.get('_preload_content', True),
5518
+ _request_timeout=_params.get('_request_timeout'),
5519
+ opts=_params.get('opts'),
4594
5520
  collection_formats=_collection_formats,
4595
5521
  _request_auth=_params.get('_request_auth'))
4596
5522
 
@@ -4604,7 +5530,7 @@ class PortfoliosApi:
4604
5530
 
4605
5531
  @validate_arguments
4606
5532
  def upsert_portfolio_access_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope to use when updating or inserting the Portfolio Access Metadata Rule.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the access metadata to upsert")], upsert_portfolio_access_metadata_request : Annotated[UpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfAccessMetadataValueOf, Awaitable[ResourceListOfAccessMetadataValueOf]]: # noqa: E501
4607
- """[EARLY ACCESS] UpsertPortfolioAccessMetadata: Upsert a Portfolio Access Metadata Rule associated with specific metadataKey. This creates or updates the data in LUSID. # noqa: E501
5533
+ """UpsertPortfolioAccessMetadata: Upsert a Portfolio Access Metadata Rule associated with specific metadataKey. This creates or updates the data in LUSID. # noqa: E501
4608
5534
 
4609
5535
  Update or insert one Portfolio Access Metadata Rule in a single scope. An item will be updated if it already exists and inserted if it does not. The response will return the successfully updated or inserted Portfolio Access Metadata Rule or failure message if unsuccessful It is important to always check to verify success (or failure). Multiple rules for a metadataKey can exists with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
4610
5536
  This method makes a synchronous HTTP request by default. To make an
@@ -4627,10 +5553,9 @@ class PortfoliosApi:
4627
5553
  :type effective_until: datetime
4628
5554
  :param async_req: Whether to execute the request asynchronously.
4629
5555
  :type async_req: bool, optional
4630
- :param _request_timeout: timeout setting for this request.
4631
- If one number provided, it will be total request
4632
- timeout. It can also be a pair (tuple) of
4633
- (connection, read) timeouts.
5556
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5557
+ :param opts: Configuration options for this request
5558
+ :type opts: ConfigurationOptions, optional
4634
5559
  :return: Returns the result object.
4635
5560
  If the method is called asynchronously,
4636
5561
  returns the request thread.
@@ -4646,7 +5571,7 @@ class PortfoliosApi:
4646
5571
 
4647
5572
  @validate_arguments
4648
5573
  def upsert_portfolio_access_metadata_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope to use when updating or inserting the Portfolio Access Metadata Rule.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the access metadata to upsert")], upsert_portfolio_access_metadata_request : Annotated[UpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> ApiResponse: # noqa: E501
4649
- """[EARLY ACCESS] UpsertPortfolioAccessMetadata: Upsert a Portfolio Access Metadata Rule associated with specific metadataKey. This creates or updates the data in LUSID. # noqa: E501
5574
+ """UpsertPortfolioAccessMetadata: Upsert a Portfolio Access Metadata Rule associated with specific metadataKey. This creates or updates the data in LUSID. # noqa: E501
4650
5575
 
4651
5576
  Update or insert one Portfolio Access Metadata Rule in a single scope. An item will be updated if it already exists and inserted if it does not. The response will return the successfully updated or inserted Portfolio Access Metadata Rule or failure message if unsuccessful It is important to always check to verify success (or failure). Multiple rules for a metadataKey can exists with different effective at dates, when resources are accessed the rule that is active for the current time will be fetched # noqa: E501
4652
5577
  This method makes a synchronous HTTP request by default. To make an
@@ -4677,10 +5602,9 @@ class PortfoliosApi:
4677
5602
  :param _return_http_data_only: response data instead of ApiResponse
4678
5603
  object with status code, headers, etc
4679
5604
  :type _return_http_data_only: bool, optional
4680
- :param _request_timeout: timeout setting for this request. If one
4681
- number provided, it will be total request
4682
- timeout. It can also be a pair (tuple) of
4683
- (connection, read) timeouts.
5605
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5606
+ :param opts: Configuration options for this request
5607
+ :type opts: ConfigurationOptions, optional
4684
5608
  :param _request_auth: set to override the auth_settings for an a single
4685
5609
  request; this effectively ignores the authentication
4686
5610
  in the spec for a single request.
@@ -4710,7 +5634,8 @@ class PortfoliosApi:
4710
5634
  '_request_timeout',
4711
5635
  '_request_auth',
4712
5636
  '_content_type',
4713
- '_headers'
5637
+ '_headers',
5638
+ 'opts'
4714
5639
  ]
4715
5640
  )
4716
5641
 
@@ -4792,6 +5717,7 @@ class PortfoliosApi:
4792
5717
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4793
5718
  _preload_content=_params.get('_preload_content', True),
4794
5719
  _request_timeout=_params.get('_request_timeout'),
5720
+ opts=_params.get('opts'),
4795
5721
  collection_formats=_collection_formats,
4796
5722
  _request_auth=_params.get('_request_auth'))
4797
5723
 
@@ -4822,10 +5748,9 @@ class PortfoliosApi:
4822
5748
  :type request_body: Dict[str, ModelProperty]
4823
5749
  :param async_req: Whether to execute the request asynchronously.
4824
5750
  :type async_req: bool, optional
4825
- :param _request_timeout: timeout setting for this request.
4826
- If one number provided, it will be total request
4827
- timeout. It can also be a pair (tuple) of
4828
- (connection, read) timeouts.
5751
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5752
+ :param opts: Configuration options for this request
5753
+ :type opts: ConfigurationOptions, optional
4829
5754
  :return: Returns the result object.
4830
5755
  If the method is called asynchronously,
4831
5756
  returns the request thread.
@@ -4866,10 +5791,9 @@ class PortfoliosApi:
4866
5791
  :param _return_http_data_only: response data instead of ApiResponse
4867
5792
  object with status code, headers, etc
4868
5793
  :type _return_http_data_only: bool, optional
4869
- :param _request_timeout: timeout setting for this request. If one
4870
- number provided, it will be total request
4871
- timeout. It can also be a pair (tuple) of
4872
- (connection, read) timeouts.
5794
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5795
+ :param opts: Configuration options for this request
5796
+ :type opts: ConfigurationOptions, optional
4873
5797
  :param _request_auth: set to override the auth_settings for an a single
4874
5798
  request; this effectively ignores the authentication
4875
5799
  in the spec for a single request.
@@ -4896,7 +5820,8 @@ class PortfoliosApi:
4896
5820
  '_request_timeout',
4897
5821
  '_request_auth',
4898
5822
  '_content_type',
4899
- '_headers'
5823
+ '_headers',
5824
+ 'opts'
4900
5825
  ]
4901
5826
  )
4902
5827
 
@@ -4966,6 +5891,7 @@ class PortfoliosApi:
4966
5891
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
4967
5892
  _preload_content=_params.get('_preload_content', True),
4968
5893
  _request_timeout=_params.get('_request_timeout'),
5894
+ opts=_params.get('opts'),
4969
5895
  collection_formats=_collection_formats,
4970
5896
  _request_auth=_params.get('_request_auth'))
4971
5897
 
@@ -4979,7 +5905,7 @@ class PortfoliosApi:
4979
5905
 
4980
5906
  @validate_arguments
4981
5907
  def upsert_portfolio_returns(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], performance_return : Annotated[conlist(PerformanceReturn), Field(..., description="This contains the Returns which need to be upsert.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertReturnsResponse, Awaitable[UpsertReturnsResponse]]: # noqa: E501
4982
- """[EARLY ACCESS] UpsertPortfolioReturns: Upsert Returns # noqa: E501
5908
+ """UpsertPortfolioReturns: Upsert Returns # noqa: E501
4983
5909
 
4984
5910
  Update or insert returns into the specified portfolio. # noqa: E501
4985
5911
  This method makes a synchronous HTTP request by default. To make an
@@ -5000,10 +5926,9 @@ class PortfoliosApi:
5000
5926
  :type performance_return: List[PerformanceReturn]
5001
5927
  :param async_req: Whether to execute the request asynchronously.
5002
5928
  :type async_req: bool, optional
5003
- :param _request_timeout: timeout setting for this request.
5004
- If one number provided, it will be total request
5005
- timeout. It can also be a pair (tuple) of
5006
- (connection, read) timeouts.
5929
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5930
+ :param opts: Configuration options for this request
5931
+ :type opts: ConfigurationOptions, optional
5007
5932
  :return: Returns the result object.
5008
5933
  If the method is called asynchronously,
5009
5934
  returns the request thread.
@@ -5019,7 +5944,7 @@ class PortfoliosApi:
5019
5944
 
5020
5945
  @validate_arguments
5021
5946
  def upsert_portfolio_returns_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Portfolio.")], return_scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Returns.")], return_code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Returns.")], performance_return : Annotated[conlist(PerformanceReturn), Field(..., description="This contains the Returns which need to be upsert.")], **kwargs) -> ApiResponse: # noqa: E501
5022
- """[EARLY ACCESS] UpsertPortfolioReturns: Upsert Returns # noqa: E501
5947
+ """UpsertPortfolioReturns: Upsert Returns # noqa: E501
5023
5948
 
5024
5949
  Update or insert returns into the specified portfolio. # noqa: E501
5025
5950
  This method makes a synchronous HTTP request by default. To make an
@@ -5048,10 +5973,9 @@ class PortfoliosApi:
5048
5973
  :param _return_http_data_only: response data instead of ApiResponse
5049
5974
  object with status code, headers, etc
5050
5975
  :type _return_http_data_only: bool, optional
5051
- :param _request_timeout: timeout setting for this request. If one
5052
- number provided, it will be total request
5053
- timeout. It can also be a pair (tuple) of
5054
- (connection, read) timeouts.
5976
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
5977
+ :param opts: Configuration options for this request
5978
+ :type opts: ConfigurationOptions, optional
5055
5979
  :param _request_auth: set to override the auth_settings for an a single
5056
5980
  request; this effectively ignores the authentication
5057
5981
  in the spec for a single request.
@@ -5080,7 +6004,8 @@ class PortfoliosApi:
5080
6004
  '_request_timeout',
5081
6005
  '_request_auth',
5082
6006
  '_content_type',
5083
- '_headers'
6007
+ '_headers',
6008
+ 'opts'
5084
6009
  ]
5085
6010
  )
5086
6011
 
@@ -5156,5 +6081,6 @@ class PortfoliosApi:
5156
6081
  _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
5157
6082
  _preload_content=_params.get('_preload_content', True),
5158
6083
  _request_timeout=_params.get('_request_timeout'),
6084
+ opts=_params.get('opts'),
5159
6085
  collection_formats=_collection_formats,
5160
6086
  _request_auth=_params.get('_request_auth'))